aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/tty.h
diff options
context:
space:
mode:
authorPeter Hurley <peter@hurleysoftware.com>2013-06-15 09:36:13 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-07-23 19:47:09 -0400
commit0f56bd2f6a97d8b0eb5c8f9bc04b83a6c16d1d48 (patch)
tree70337a7fd95f71d5f39aa9d168c09be2ff3465a1 /include/linux/tty.h
parent8c1fb49ba107c7db9441ef6ec0ab5830d112cc2a (diff)
tty: Use non-atomic state to signal flip buffer flush pending
Atomic bit ops are no longer required to indicate a flip buffer flush is pending, as the flush_mutex is sufficient barrier. Remove the unnecessary port .iflags field and localize flip buffer state to struct tty_bufhead. Signed-off-by: Peter Hurley <peter@hurleysoftware.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/tty.h')
-rw-r--r--include/linux/tty.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/include/linux/tty.h b/include/linux/tty.h
index b8e8adf95bf3..991575fe3451 100644
--- a/include/linux/tty.h
+++ b/include/linux/tty.h
@@ -68,6 +68,7 @@ struct tty_bufhead {
68 struct tty_buffer *head; /* Queue head */ 68 struct tty_buffer *head; /* Queue head */
69 struct work_struct work; 69 struct work_struct work;
70 struct mutex flush_mutex; 70 struct mutex flush_mutex;
71 unsigned int flushpending:1;
71 struct tty_buffer sentinel; 72 struct tty_buffer sentinel;
72 struct llist_head free; /* Free queue head */ 73 struct llist_head free; /* Free queue head */
73 atomic_t memory_used; /* In-use buffers excluding free list */ 74 atomic_t memory_used; /* In-use buffers excluding free list */
@@ -212,8 +213,6 @@ struct tty_port {
212 wait_queue_head_t close_wait; /* Close waiters */ 213 wait_queue_head_t close_wait; /* Close waiters */
213 wait_queue_head_t delta_msr_wait; /* Modem status change */ 214 wait_queue_head_t delta_msr_wait; /* Modem status change */
214 unsigned long flags; /* TTY flags ASY_*/ 215 unsigned long flags; /* TTY flags ASY_*/
215 unsigned long iflags; /* TTYP_ internal flags */
216#define TTYP_FLUSHPENDING 2 /* Queued buffer flush pending */
217 unsigned char console:1, /* port is a console */ 216 unsigned char console:1, /* port is a console */
218 low_latency:1; /* direct buffer flush */ 217 low_latency:1; /* direct buffer flush */
219 struct mutex mutex; /* Locking */ 218 struct mutex mutex; /* Locking */