Messages in this thread | | | From | "Jason A. Donenfeld" <> | Date | Fri, 28 Jan 2022 17:04:13 +0100 | Subject | Re: "BUG: Invalid wait context" in invalidate_batched_entropy |
| |
Hi Sebastian/Jonathan,
On Fri, Jan 28, 2022 at 9:35 AM Sebastian Andrzej Siewior <bigeasy@linutronix.de> wrote: > This report is due to CONFIG_PROVE_LOCKING=y _and_ > CONFIG_PROVE_RAW_LOCK_NESTING=y. It reports a nesting problem > (raw_spinlock_t -> spinlock_t lock ordering) which becomes a real > problem on PREEMPT_RT.
Hmm, I'm still having a tough time reproducing this. I'm trying to understand your intuition. Is the problem you see that something else in the IRQ path uses a raw_spinlock_t, and then with that lock still held, we call invalidate_batched_entropy(), which takes an ordinary spinlock_t, non-raw? And taking a spinlock-t while holding a raw_spinlock_t is illegal?
Jason
| |