On Mon, Jul 10, 2006 at 07:49:31PM -0400, Jon Smirl wrote:
> How about the use of lock/unlock_kernel(). Is there some hidden global
> synchronization going on? Every time lock/unlock_kernel() is used
> there is a tty_struct available. My first thought would be to turn
> this into a per tty spinlock. Looking at where it is used it looks
> like it was added to protect all of the VFS calls. I see no obvious
> coordination with other ttys that isn't handled by other locks.
No, it was just a case of not being worth it to get rid of the BKL for
the tty subsystem, since opening and closing tty's isn't exactly a
common event. Switching it to use a per-tty spinlock makes sense if
we're going to rototill the code, but to be honest it's probably not
going to make a noticeable difference on any benchmark and most
workloads.