All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 0/8] sched: Clean up might_sleep() and make it RT aware
@ 2021-09-23 16:54 Thomas Gleixner
  2021-09-23 16:54 ` [patch 1/8] sched: Clean up the might_sleep() underscore zoo Thomas Gleixner
                   ` (7 more replies)
  0 siblings, 8 replies; 17+ messages in thread
From: Thomas Gleixner @ 2021-09-23 16:54 UTC (permalink / raw)
  To: LKML; +Cc: Peter Zijlstra, Ingo Molnar, Paul McKenney, Sebastian Siewior

The might sleep checks have grown some warts over time and especially the
underscore zoo is hard to follow.

Also the debug output is slightly confusing especially when PREEMPT_RCU is
enabled as it does not provide information about the RCU nesting depth
which might be the actual culprit. In such a case it might even print
confusing information about the place which disabled preemption despite the
fact that preemption is actually enabled.

RT in turn had it's own nasty hack to ignore RCU nesting depth because
that's required for spin/rw lock held sections.

This series addresses this by:

  - Cleaning up the underscore zoo

  - Enhancing the debug output

  - Making RCU nest depth and preempt count checks distinct

  - Fixing up the relevant places to hand in the correct expected values
    for RT and !RT kernels.

The series is also available from

    git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git sched

Thanks,

	tglx
---
 include/linux/kernel.h       |   13 +++-----
 include/linux/preempt.h      |    5 +--
 include/linux/sched.h        |   39 ++++++++++++++++++-------
 kernel/locking/spinlock_rt.c |   17 ++++++++--
 kernel/sched/core.c          |   67 +++++++++++++++++++++++++++----------------
 mm/memory.c                  |    2 -
 6 files changed, 96 insertions(+), 47 deletions(-)




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

end of thread, other threads:[~2021-10-01 15:05 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-23 16:54 [patch 0/8] sched: Clean up might_sleep() and make it RT aware Thomas Gleixner
2021-09-23 16:54 ` [patch 1/8] sched: Clean up the might_sleep() underscore zoo Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 2/8] sched: Make cond_resched_*lock() variants consistent vs. might_sleep() Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 3/8] sched: Remove preempt_offset argument from __might_sleep() Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 4/8] sched: Cleanup might_sleep() printks Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 5/8] sched: Make might_sleep() output less confusing Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 6/8] sched: Make RCU nest depth distinct in __might_resched() Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 7/8] sched: Make cond_resched_lock() variants RT aware Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner
2021-09-23 16:54 ` [patch 8/8] locking/rt: Take RCU nesting into account for __might_resched() Thomas Gleixner
2021-10-01 15:05   ` [tip: locking/core] " tip-bot2 for Thomas Gleixner

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.