diff options
author | 2013-06-15 09:36:10 -0400 | |
---|---|---|
committer | 2013-07-23 16:47:09 -0700 | |
commit | e9975fdec0138f1b2a85b9624e41660abd9865d4 (patch) | |
tree | 6c90bac37cfe6843b4e78cb9280aa10524da351d /include/linux/tty.h | |
parent | tty: Make driver-side flip buffers lockless (diff) | |
download | linux-e9975fdec0138f1b2a85b9624e41660abd9865d4.tar.gz linux-e9975fdec0138f1b2a85b9624e41660abd9865d4.tar.bz2 linux-e9975fdec0138f1b2a85b9624e41660abd9865d4.zip |
tty: Ensure single-threaded flip buffer consumer with mutex
The buffer work may race with parallel tty_buffer_flush. Use a
mutex to guarantee exclusive modify access to the head flip
buffer.
Remove the unneeded spin lock.
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.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/tty.h b/include/linux/tty.h index 7c124541f011..1c8fef0e3ff6 100644 --- a/include/linux/tty.h +++ b/include/linux/tty.h @@ -66,7 +66,7 @@ static inline char *flag_buf_ptr(struct tty_buffer *b, int ofs) struct tty_bufhead { struct work_struct work; - spinlock_t lock; + struct mutex flush_mutex; struct tty_buffer sentinel; struct tty_buffer *head; /* Queue head */ struct tty_buffer *tail; /* Active buffer */ |