Message ID | 5827758.TJ1SttVevJ@mobilepool36.emlix.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm: use mmap_assert_write_locked() instead of open coding it | expand |
On Mon, Mar 28, 2022 at 10:24:51AM +0200, Rolf Eike Beer wrote: > In case the lock is actually not held at this point this also avoids a > stale lock reference if built with NDEBUG. The change looks good: Reviewed-by: Christoph Hellwig <hch@lst.de> But I don't think NDEBUG is a thing in the kernel.
Am Dienstag, 29. März 2022, 08:36:39 CEST schrieb Christoph Hellwig: > On Mon, Mar 28, 2022 at 10:24:51AM +0200, Rolf Eike Beer wrote: > > In case the lock is actually not held at this point this also avoids a > > stale lock reference if built with NDEBUG. > > The change looks good: > > Reviewed-by: Christoph Hellwig <hch@lst.de> > > But I don't think NDEBUG is a thing in the kernel. You are right, it was in tools/include/linux/kernel.h and I didn't spot the prefix. Andrew, maybe you could just delete the sentence when you add the Reviewed-by? Eike
On Tue, 29 Mar 2022 08:45:37 +0200 Rolf Eike Beer <eb@emlix.com> wrote: > You are right, it was in tools/include/linux/kernel.h and I didn't spot the > prefix. Andrew, maybe you could just delete the sentence when you add the > Reviewed-by? Did that. I used simply "In case the lock is actually not held at this point."
diff --git a/mm/mmap.c b/mm/mmap.c index 3aa839f81e63..d62598dc2fdd 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -3561,7 +3561,7 @@ int mm_take_all_locks(struct mm_struct *mm) struct vm_area_struct *vma; struct anon_vma_chain *avc; - BUG_ON(mmap_read_trylock(mm)); + mmap_assert_write_locked(mm); mutex_lock(&mm_all_locks_mutex); @@ -3641,7 +3641,7 @@ void mm_drop_all_locks(struct mm_struct *mm) struct vm_area_struct *vma; struct anon_vma_chain *avc; - BUG_ON(mmap_read_trylock(mm)); + mmap_assert_write_locked(mm); BUG_ON(!mutex_is_locked(&mm_all_locks_mutex)); for (vma = mm->mmap; vma; vma = vma->vm_next) {
In case the lock is actually not held at this point this also avoids a stale lock reference if built with NDEBUG. Signed-off-by: Rolf Eike Beer <eb@emlix.com> --- mm/mmap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)