Messages in this thread | | | Date | Mon, 1 Aug 2022 16:25:36 +0200 | From | Sebastian Andrzej Siewior <> | Subject | Re: [PATCH v4] lib/vsprintf: defer filling siphash key on RT |
| |
On 2022-08-01 15:44:12 [+0200], Jason A. Donenfeld wrote: > Hey again, Hi Jason,
> By the way, another option that would be fine with me would be to make > random.c use all raw spinlocks. From a non-RT perspective, that wouldn't > change the codegen at all, so it doesn't make a huge difference to me. > From an RT perspective, it would presumably fix a lot of these issues, > and enable randomness to be available in any context, which is maybe > what we want anyway. From an RT-safety point of view, I suspect doing > this might actually be okay, because the locks are only ever protecting > operations that are fixed duration CPU-bound, like generating a chacha > block or something, not waiting for some I/O. > > Thoughts on that?
That random-core change regarding random numbers broke lockdep, kasan (I think) and now printk's %p. Each one of them appears to be exceptional since we don't have _that_ many users asking for random numbers in atomic context. Making the locks raw would indeed solve all the issues at once. Last time I was looking into this, would include three locks and I tried to trigger the worst-case via "re-seed" and this was visible back then. After the rework you did back thinks looked good.
> Jason
Sebastian
| |