On Sun 04-11-18 07:44:56, Yangtao Li wrote: > WARN_ON() already contains an unlikely(), so it's not necessary to use > unlikely. We should just get rid of this ugliness altogether. It no longer serves its purpose. This is a historical artifact from 2005 where do_brk was called outside of the core mm. We do have a proper abstraction in vm_brk_flags and that one does the locking properly. > > Signed-off-by: Yangtao Li <tiny.windzz@xxxxxxxxx> > --- > mm/mmap.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/mm/mmap.c b/mm/mmap.c > index 6c04292e16a7..2077008ade0c 100644 > --- a/mm/mmap.c > +++ b/mm/mmap.c > @@ -2965,10 +2965,8 @@ SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size, > static inline void verify_mm_writelocked(struct mm_struct *mm) > { > #ifdef CONFIG_DEBUG_VM > - if (unlikely(down_read_trylock(&mm->mmap_sem))) { > - WARN_ON(1); > + if (WARN_ON(down_read_trylock(&mm->mmap_sem))) > up_read(&mm->mmap_sem); > - } > #endif > } > > -- > 2.17.0 > -- Michal Hocko SUSE Labs