Re: [PATCH, RFC] Remove fasync() BKL usage, take 3325

Jonathan Corbet
2009-01-23T05:21:59Z

On Thu, 22 Jan 2009 17:09:35 +0100
Andi Kleen <andi@firstfloor.org> wrote:

> > OK, replacing a lock_kernel() with a spin_lock(&global_lock) is
> > pretty straightforwad. But it's really really sad. It basically
> > leaves a great big FIXME in there. It'd be better to fix it.
>
> Also it might be that it's even worse than the BKL.

I don't quite see how now. Like the BKL, it's a spinlock.

> It would still require a bitlock because some state in the low
> level fasync needs to be protected.
>
> Oleg has a proposal to do this using a flag bit which seemed
> reasonable to me.

I didn't see a reason to add a one-off custom locking regime for such a
non-hot-path situation. But it would certainly work; if we want to go
that way I'll not fight it.

jon