All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] attempts at catching mmu_notifer deadlocks
@ 2018-10-25 14:35 Daniel Vetter
  2018-10-25 14:35 ` [PATCH 1/6] locking/lockdep: restore cross-release checks Daniel Vetter
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Daniel Vetter @ 2018-10-25 14:35 UTC (permalink / raw)
  To: DRI Development; +Cc: Intel Graphics Development

Hi all,

So this is my 2nd attempt (more successful I hope also with CI) at
catching the mmu notifier deadlock using lockdep. Ingredients:
- cross-release patches resurrect (so that lockdep see through
  flush_workqueue).
- fake lock context for mmu notifier callbacks (similar trick to
  fs_reclaim)
- bunch of sanity checks because hey! paranoia is good

Intentionally not yet submitting to core/mm since I want to figure out
whether this is indeed useful for us first.

Cheers, Daniel

Daniel Vetter (6):
  locking/lockdep: restore cross-release checks
  kthread: finer-grained lockdep/cross-release completion
  lockdep: Remove GFP_NOLOCKDEP annotation
  mm: Check if mmut notifier callbacks are allowed to fail
  mm, notifier: Catch sleeping/blocking for !blockable
  mm, notifier: Add a lockdep map for invalidate_range_start

 .../admin-guide/kernel-parameters.txt         |   3 +
 Documentation/locking/crossrelease.txt        | 874 ++++++++++++++++++
 include/linux/completion.h                    |  46 +
 include/linux/gfp.h                           |  10 +-
 include/linux/irqflags.h                      |   4 +
 include/linux/kthread.h                       |  48 +-
 include/linux/lockdep.h                       | 127 +++
 include/linux/mmu_notifier.h                  |   7 +
 include/linux/sched.h                         |  11 +
 kernel/kthread.c                              |  68 +-
 kernel/locking/lockdep.c                      | 652 ++++++++++++-
 kernel/sched/completion.c                     |   5 +
 lib/Kconfig.debug                             |  33 +
 mm/mmu_notifier.c                             |  17 +-
 mm/page_alloc.c                               |   3 -
 15 files changed, 1832 insertions(+), 76 deletions(-)
 create mode 100644 Documentation/locking/crossrelease.txt

-- 
2.19.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2018-10-25 22:53 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-25 14:35 [PATCH 0/6] attempts at catching mmu_notifer deadlocks Daniel Vetter
2018-10-25 14:35 ` [PATCH 1/6] locking/lockdep: restore cross-release checks Daniel Vetter
2018-10-25 14:35 ` [PATCH 2/6] kthread: finer-grained lockdep/cross-release completion Daniel Vetter
2018-10-25 14:35 ` [PATCH 3/6] lockdep: Remove GFP_NOLOCKDEP annotation Daniel Vetter
2018-10-25 14:35 ` [PATCH 4/6] mm: Check if mmut notifier callbacks are allowed to fail Daniel Vetter
2018-10-25 14:35 ` [PATCH 5/6] mm, notifier: Catch sleeping/blocking for !blockable Daniel Vetter
2018-10-25 14:35 ` [PATCH 6/6] mm, notifier: Add a lockdep map for invalidate_range_start Daniel Vetter
2018-10-25 15:56 ` ✗ Fi.CI.CHECKPATCH: warning for attempts at catching mmu_notifer deadlocks Patchwork
2018-10-25 16:00 ` ✗ Fi.CI.SPARSE: " Patchwork
2018-10-25 16:16 ` ✓ Fi.CI.BAT: success " Patchwork
2018-10-25 22:53 ` ✗ Fi.CI.IGT: failure " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.