lkml.org 
[lkml]   [2012]   [Mar]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 09/68] TTY: tty_driver, document tty->ops->shutdown limitation
    Date
    Note that tty->ops->shutdown is called from whatever context the user
    drops the last tty reference from. E.g. if one takes a reference in
    an ISR, tty close happens on other CPU and the final tty put is from
    the ISR, tty->ops->shutdown will be called from that hard irq context.

    We would have a problem in vt if we start using tty refcounting from
    other contexts than user there. It is because vt's shutdown uses
    mutexes. This is yet to be fixed.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Reported-by: Al Viro <viro@zeniv.linux.org.uk>
    ---
    include/linux/tty_driver.h | 2 ++
    1 file changed, 2 insertions(+)

    diff --git a/include/linux/tty_driver.h b/include/linux/tty_driver.h
    index e064f17..6e6dbb7 100644
    --- a/include/linux/tty_driver.h
    +++ b/include/linux/tty_driver.h
    @@ -50,6 +50,8 @@
    * Note that tty_shutdown() is not called if ops->shutdown is defined.
    * This means one is responsible to take care of calling ops->remove (e.g.
    * via tty_driver_remove_tty) and releasing tty->termios.
    + * Note that this hook may be called from *all* the contexts where one
    + * uses tty refcounting (e.g. tty_port_tty_get).
    *
    *
    * void (*cleanup)(struct tty_struct * tty);
    --
    1.7.9.2



    \
     
     \ /
      Last update: 2012-03-05 15:07    [W:4.188 / U:0.064 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site