From: Daniel K. on 15 May 2010 23:40 Arnd Bergmann wrote: > diff --git a/drivers/char/tty_mutex.c b/drivers/char/tty_mutex.c > new file mode 100644 > index 0000000..f66dfdf > --- /dev/null > +++ b/drivers/char/tty_mutex.c > @@ -0,0 +1,47 @@ > +/* > + * drivers/char/tty_lock.c > + */ > +#include <linux/tty.h> > +#include <linux/module.h> > +#include <linux/kallsyms.h> > +#include <linux/semaphore.h> > +#include <linux/sched.h> > + > +/* > + * The 'big tty semaphore' Referred to as Big TTY Mutex or BTM elsewhere. > + * This mutex is taken and released by tty_lock() and tty_unlock(), > + * replacing the older big kernel mutex. big kernel lock, or BKL? > + * It can no longer be taken recursively, and does not get > + * released implicitly while sleeping. > + * > + * Don't use in new code. > + */ > +static DEFINE_MUTEX(big_tty_mutex); > +struct task_struct *__big_tty_mutex_owner; > +EXPORT_SYMBOL_GPL(__big_tty_mutex_owner); > +config TTY_MUTEX > + bool "Use a mutex instead of BKL for TTY locking" > + depends on EXPERIMENTAL && SMP > + help > + The TTY subsystem traditionally depends on the big kernel lock > + for serialization. Saying Y here replaces the BKL with the Big > + TTY Mutex (BTM). > + Building a kernel without the BKL is only possible with TTY_MUTEX > + enabled. > + Daniel K. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Arnd Bergmann on 16 May 2010 09:00 On Sunday 16 May 2010 05:33:14 Daniel K. wrote: > Arnd Bergmann wrote: > > diff --git a/drivers/char/tty_mutex.c b/drivers/char/tty_mutex.c > > new file mode 100644 > > index 0000000..f66dfdf > > --- /dev/null > > +++ b/drivers/char/tty_mutex.c > > @@ -0,0 +1,47 @@ > > +/* > > + * drivers/char/tty_lock.c > > + */ > > +#include <linux/tty.h> > > +#include <linux/module.h> > > +#include <linux/kallsyms.h> > > +#include <linux/semaphore.h> > > +#include <linux/sched.h> > > + > > +/* > > + * The 'big tty semaphore' > > Referred to as Big TTY Mutex or BTM elsewhere. > > > > + * This mutex is taken and released by tty_lock() and tty_unlock(), > > + * replacing the older big kernel mutex. > > big kernel lock, or BKL? > Thanks for looking at this, this (and the bug you found in amiserial) were caused by changing it a few times from one implementation to the next. Fixed now and pushed out to git. Anrd -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|
Pages: 1 Prev: [GIT PULL] Lockup detector build fixes Next: drivers/bluetooth: Use kmemdup |