mirror of
https://github.com/torvalds/linux.git
synced 2026-05-27 08:33:17 +02:00
lockdep/mm: Fix might_fault() lockdep check of current->mm->mmap_lock
Turns out that this commit, about 10 years ago:9ec23531fd("sched/preempt, mm/fault: Trigger might_sleep() in might_fault() with disabled pagefaults") ... accidentally (and unnessecarily) put the lockdep part of __might_fault() under CONFIG_DEBUG_ATOMIC_SLEEP=y. This is potentially notable because large distributions such as Ubuntu are running with !CONFIG_DEBUG_ATOMIC_SLEEP. Restore the debug check. [ mingo: Update changelog. ] Fixes:9ec23531fd("sched/preempt, mm/fault: Trigger might_sleep() in might_fault() with disabled pagefaults") Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Signed-off-by: Ingo Molnar <mingo@kernel.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Andrew Morton <akpm@linux-foundation.org> Link: https://lore.kernel.org/r/20241104135517.536628371@infradead.org
This commit is contained in:
parent
023f3290b0
commit
a1b65f3f7c
|
|
@ -6835,10 +6835,8 @@ void __might_fault(const char *file, int line)
|
|||
if (pagefault_disabled())
|
||||
return;
|
||||
__might_sleep(file, line);
|
||||
#if defined(CONFIG_DEBUG_ATOMIC_SLEEP)
|
||||
if (current->mm)
|
||||
might_lock_read(¤t->mm->mmap_lock);
|
||||
#endif
|
||||
}
|
||||
EXPORT_SYMBOL(__might_fault);
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user