Messages in this thread | | | Date | Mon, 1 Aug 2022 14:46:35 +0200 | From | Sebastian Andrzej Siewior <> | Subject | Re: [PATCH v4] lib/vsprintf: defer filling siphash key on RT |
| |
On 2022-08-01 14:39:46 [+0200], Jason A. Donenfeld wrote: > On RT, we can't call get_random_bytes() from inside of the raw locks > that callers of vsprintf might take, because get_random_bytes() takes > normal spinlocks. So on those RT systems, defer the siphash key > generation to a worker. > > Also, avoid using a static_branch, as this isn't the fast path. > Using static_branch_likely() to signal that ptr_key has been filled is a > bit much given that it is not a fast path. > > Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> > Reported-by: Mike Galbraith <efault@gmx.de> > Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> > --- > Sebastian - feel free to take this and tweak it as needed. Sending this > mostly as something illustrative of what the "simpler" thing would be > that I had in mind. -Jason
Can have the same behaviour regardless of CONFIG_PREEMPT_RT? Here lockdep _may_ yell with !RT because it is broken for RT. If we agree that we drop the first %p print here, can we do this on both (regardless of CONFIG_PREEMPT_RT)?
Sebastian
| |