Linux 5.18-rc4
Linus Torvalds
torvalds at linux-foundation.org
Mon Jun 6 19:47:54 UTC 2022
On Mon, Jun 6, 2022 at 12:19 PM John Johansen
<john.johansen at canonical.com> wrote:
>
> > I suspect that part is that both Apparmor and IPC use the idr local lock.
>
> bingo,
>
> apparmor moved its secids allocation from a custom radix tree to idr in
>
> 99cc45e48678 apparmor: Use an IDR to allocate apparmor secids
>
> and ipc is using the idr for its id allocation as well
The thing is, I'm not entirely convinced you can deadlock on a local lock.
A local lock is per-cpu, so one CPU holding that lock won't actually
block another CPU holding it. Even on RT, I think.
I *think* local locks are useful for lockdep not because of any lock
chains they introduce, but because of how lockdep catches irq mis-use
(where they *can* deadlock).
But I may be entirely wrong, and maybe that lock chain through the
local lock actually does matter.
Let's bring in people who actually know what they are doing, rather
than my wild speculation. Thomas?
Linus
More information about the Linux-security-module-archive
mailing list