Messages in this thread | | | Date | Tue, 4 May 2021 11:49:08 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH] stackdepot: Use a raw spinlock in stack depot |
| |
On Tue, May 04, 2021 at 09:23:34AM +0200, Dmitry Vyukov wrote: > So why is this a false positive that we just need to silence?
No, it's a correctness issue for PREEMPT_RT.
> I see LOCKDEP is saying we are doing something wrong, and your > description just describes how we are doing something wrong :) > If this is a special false positive case, it would be good to have a > comment on DEFINE_RAW_SPINLOCK explaining why we are using it.
Documentation/locking/locktypes.rst has the low-down IIRC
> I wonder why we never saw this on syzbot. Is it an RT kernel or some > other special config?
IIRC the kernel isn't really PROVE_RAW_LOCK_NESTING=y clean yet, so mostly these checks aren't on by default. printk() used to be a common offender, but I've not checked the very latest printk status to see if that got fixed meanwhile.
> A similar issue was discussed recently for RT kernel: > https://groups.google.com/g/kasan-dev/c/MyHh8ov-ciU/m/nahiuqFLAQAJ > And I think it may be fixable in the same way -- make stackdepot not > allocate in contexts where it's not OK to allocate.
That would be preferable I think.
| |