mm/hmm: Remove duplicate condition test before wait_event_timeout
authorJason Gunthorpe <jgg@mellanox.com>
Thu, 23 May 2019 14:17:22 +0000 (11:17 -0300)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 18 Jun 2019 14:55:20 +0000 (11:55 -0300)
commit378a60406415bd20ec6e845a3d6883d460656537
tree7aeef111174ad31e590e3564a01a5668be484db9
parent8a9320b7ec5d879884c547fb73c35ac411a0b977
mm/hmm: Remove duplicate condition test before wait_event_timeout

The wait_event_timeout macro already tests the condition as its first
action, so there is no reason to open code another version of this, all
that does is skip the might_sleep() debugging in common cases, which is
not helpful.

Further, based on prior patches, we can now simplify the required condition
test:
 - If range is valid memory then so is range->hmm
 - If hmm_release() has run then range->valid is set to false
   at the same time as dead, so no reason to check both.
 - A valid hmm has a valid hmm->mm.

Allowing the return value of wait_event_timeout() (along with its internal
barriers) to compute the result of the function.

Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Reviewed-by: Ralph Campbell <rcampbell@nvidia.com>
Reviewed-by: John Hubbard <jhubbard@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>
include/linux/hmm.h