diff options
author | Ivo Sieben <meltedpianoman@gmail.com> | 2012-05-03 08:37:43 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-05-10 14:24:03 -0400 |
commit | 1541f845d123a48fbca3cee32b2963b3fb3da83a (patch) | |
tree | ace9a1f9278ea84101359d189894c71548193136 /include/linux/tty_ldisc.h | |
parent | 3e62c413fb0c75c8cfaf086d00a9ecc6b55009d6 (diff) |
tty: move global ldisc idle waitqueue to the individual ldisc
The global wait_queue that is used for line discipline idle handling is
moved to a separate wait_queue for each line instance. This prevents
unnecessary blocking on one line, because of idle handling on another
line.
Signed-off-by: Ivo Sieben <meltedpianoman@gmail.com>
Acked-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/tty_ldisc.h')
-rw-r--r-- | include/linux/tty_ldisc.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/tty_ldisc.h b/include/linux/tty_ldisc.h index ff7dc08696a8..fb79dd8d1537 100644 --- a/include/linux/tty_ldisc.h +++ b/include/linux/tty_ldisc.h | |||
@@ -110,6 +110,7 @@ | |||
110 | #include <linux/fs.h> | 110 | #include <linux/fs.h> |
111 | #include <linux/wait.h> | 111 | #include <linux/wait.h> |
112 | #include <linux/pps_kernel.h> | 112 | #include <linux/pps_kernel.h> |
113 | #include <linux/wait.h> | ||
113 | 114 | ||
114 | struct tty_ldisc_ops { | 115 | struct tty_ldisc_ops { |
115 | int magic; | 116 | int magic; |
@@ -154,6 +155,7 @@ struct tty_ldisc_ops { | |||
154 | struct tty_ldisc { | 155 | struct tty_ldisc { |
155 | struct tty_ldisc_ops *ops; | 156 | struct tty_ldisc_ops *ops; |
156 | atomic_t users; | 157 | atomic_t users; |
158 | wait_queue_head_t wq_idle; | ||
157 | }; | 159 | }; |
158 | 160 | ||
159 | #define TTY_LDISC_MAGIC 0x5403 | 161 | #define TTY_LDISC_MAGIC 0x5403 |