> 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.

> 
> We don't have a handy lock in struct file which could be borrowed.
> 
> - We could add one
> 
> - We could borrow file->f_path.dentry->d_inode->i_lock
> 
> - We could convert that field to long and use bitops (sounds nice?)

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.

-Andi

--
To unsubscribe from this list: send the line "unsubscribe linux-api" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to