tty: Make lock subclasses available for other tty locks
Besides nested legacy_mutex locking which is required on pty pair teardown, other nested pty operations require lock subclassing. Move lock subclass definition to tty interface header, include/linux/tty.h, and document its use. Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
fb5ef9e7da
commit
3abf87cd3e
2 changed files with 18 additions and 11 deletions
|
@ -14,6 +14,23 @@
|
|||
#include <linux/llist.h>
|
||||
|
||||
|
||||
/*
|
||||
* Lock subclasses for tty locks
|
||||
*
|
||||
* TTY_LOCK_NORMAL is for normal ttys and master ptys.
|
||||
* TTY_LOCK_SLAVE is for slave ptys only.
|
||||
*
|
||||
* Lock subclasses are necessary for handling nested locking with pty pairs.
|
||||
* tty locks which use nested locking:
|
||||
*
|
||||
* legacy_mutex - Nested tty locks are necessary for releasing pty pairs.
|
||||
* The stable lock order is master pty first, then slave pty.
|
||||
*/
|
||||
|
||||
enum {
|
||||
TTY_LOCK_NORMAL = 0,
|
||||
TTY_LOCK_SLAVE,
|
||||
};
|
||||
|
||||
/*
|
||||
* (Note: the *_driver.minor_start values 1, 64, 128, 192 are
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue