On Sat, Apr 09, 2016 at 05:53:19PM -0700, Peter Hurley wrote:
> As outlined in my January email ("RFC: out-of-tree tty driver breakage"),
> the tty/serial core uses 5 bits in the tty_port.flags field to manage
> state. They are:
> 
> ASYNCB_INITIALIZED
> ASYNCB_SUSPENDED
> ASYNCB_NORMAL_ACTIVE
> ASYNCB_CTS_FLOW
> ASYNCB_CHECK_CD
> 
> (NB: ASYNC_CLOSING was recently removed)
> 
> However, updates to this field (tty_port.flags) can be and often are
> non-atomic. Additionally, the field is visible to/modifiable by userspace
> (the state bits above are not modifiable by userspace though).
> 
> This series moves these state bits into a different tty_port field
> (iflags) and abstracts state tests and changes with trivial helpers.
> 
> The last patch of the series purposefully breaks out-of-tree driver
> builds to ensure they update state test/change methods to the helpers
> instead.
> 
> REQUIRES: "tty: Replace TTY_IO_ERROR bit tests with tty_io_error()"
>           "tty: Replace TTY_THROTTLED bit tests with tty_throttled()"

Wonderful, thanks for doing this work.

greg k-h

Reply via email to