Jason Gunthorpe
c8a53b2db0
mm/hmm: Hold a mmgrab from hmm to mm
...
So long as a struct hmm pointer exists, so should the struct mm it is
linked too. Hold the mmgrab() as soon as a hmm is created, and mmdrop() it
once the hmm refcount goes to zero.
Since mmdrop() (ie a 0 kref on struct mm) is now impossible with a !NULL
mm->hmm delete the hmm_hmm_destroy().
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Reviewed-by: Jérôme Glisse <jglisse@redhat.com>
Reviewed-by: John Hubbard <jhubbard@nvidia.com>
Reviewed-by: Ralph Campbell <rcampbell@nvidia.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Tested-by: Philip Yang <Philip.Yang@amd.com>
2019-06-10 10:10:33 -03:00
..
2019-05-30 11:29:53 -07:00
2019-06-01 15:51:31 -07:00
2018-10-24 20:55:56 -04:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 09:00:11 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:45 +02:00
2019-05-30 11:26:37 -07:00
2019-05-27 10:51:45 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-30 11:26:37 -07:00
2019-05-21 10:50:46 +02:00
2019-05-29 11:26:40 -07:00
2019-04-29 16:48:03 +02:00
2019-04-04 21:04:13 -04:00
2019-04-09 14:19:06 +02:00
2019-05-30 11:26:37 -07:00
2019-04-26 13:51:03 -04:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2019-05-07 20:03:32 -07:00
2019-04-29 12:37:47 +02:00
2018-10-31 08:54:14 -07:00
2019-01-25 11:22:43 -08:00
2019-05-15 08:16:14 -07:00
2019-03-07 18:32:02 -08:00
2019-05-21 10:50:45 +02:00
2019-05-06 14:50:46 -07:00
2019-03-05 21:07:14 -08:00
2019-05-21 10:50:45 +02:00
2019-05-24 17:27:11 +02:00
2019-05-21 11:52:39 +02:00
2018-05-16 07:23:35 +02:00
2018-05-16 07:23:35 +02:00
2019-05-21 10:50:45 +02:00
2019-05-30 11:26:35 -07:00
2019-04-09 14:19:06 +02:00
2019-06-10 10:10:33 -03:00
2019-05-21 10:50:45 +02:00
2019-05-30 11:26:35 -07:00
2019-04-29 16:48:03 +02:00
2017-12-14 16:00:49 -08:00
2019-05-21 10:50:45 +02:00
2019-04-19 12:59:36 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-03-07 18:32:02 -08:00
2019-05-03 19:42:41 +02:00
2019-05-14 09:47:50 -07:00
2018-07-16 12:31:57 -07:00
2019-04-29 16:48:03 +02:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:39 -07:00
2019-05-21 10:50:45 +02:00
2019-05-14 19:52:49 -07:00
2019-05-14 19:52:47 -07:00
2019-05-14 09:47:51 -07:00
2019-05-24 17:27:11 +02:00
2019-05-24 17:27:11 +02:00
2019-05-30 11:26:35 -07:00
2019-05-21 10:50:45 +02:00
2019-04-25 22:06:11 +02:00
2019-05-21 10:50:45 +02:00
2019-05-30 11:26:35 -07:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-03-12 13:27:20 -07:00
2019-05-21 10:50:45 +02:00
2019-04-19 12:39:32 +02:00
2019-05-07 19:06:04 -07:00
2019-06-01 15:51:32 -07:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2019-03-22 14:36:02 +01:00
2018-12-05 19:31:44 -08:00
2019-06-02 11:04:42 -07:00
2019-05-24 17:27:11 +02:00
2019-05-07 14:31:03 +02:00
2019-06-01 15:51:31 -07:00
2019-01-04 13:13:47 -08:00
2019-05-21 10:50:45 +02:00
2017-12-17 13:57:15 +01:00
2019-05-30 11:26:37 -07:00
2019-05-21 11:52:39 +02:00
2019-03-26 14:42:53 -07:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:37 -07:00
2018-04-05 21:36:27 -07:00
2018-04-02 20:15:59 +02:00
2018-04-02 20:15:30 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2018-11-07 23:51:16 -06:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00
2018-08-11 02:05:53 -05:00
2018-04-11 10:28:35 -07:00
2019-04-19 09:46:05 -07:00
2019-04-18 14:05:51 +02:00
2019-04-16 16:55:15 +02:00
2019-05-21 10:50:45 +02:00