diff options
author | 2013-06-15 09:36:08 -0400 | |
---|---|---|
committer | 2013-07-23 16:47:08 -0700 | |
commit | 7bfe0b7116be207cf2204ae06335cc89d8f8ee02 (patch) | |
tree | 03175cd2ce9dd8013c4aaa8e2dd426767aa1a4c7 /include/linux/tty.h | |
parent | tty: Simplify flip buffer list with 0-sized sentinel (diff) | |
download | linux-7bfe0b7116be207cf2204ae06335cc89d8f8ee02.tar.gz linux-7bfe0b7116be207cf2204ae06335cc89d8f8ee02.tar.bz2 linux-7bfe0b7116be207cf2204ae06335cc89d8f8ee02.zip |
tty: Track flip buffer memory limit atomically
Lockless flip buffers require atomically updating the bytes-in-use
watermark.
The pty driver also peeks at the watermark value to limit
memory consumption to a much lower value than the default; query
the watermark with new fn, tty_buffer_space_avail().
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 | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/include/linux/tty.h b/include/linux/tty.h index 2e93eb831c61..7c124541f011 100644 --- a/include/linux/tty.h +++ b/include/linux/tty.h @@ -71,8 +71,7 @@ struct tty_bufhead { struct tty_buffer *head; /* Queue head */ struct tty_buffer *tail; /* Active buffer */ struct llist_head free; /* Free queue head */ - int memory_used; /* Buffer space used excluding - free queue */ + atomic_t memory_used; /* In-use buffers excluding free list */ }; /* * When a break, frame error, or parity error happens, these codes are |