lkml.org 
[lkml]   [2012]   [Apr]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 47/69] TTY: ipwireless, use synchronous hangup
    Date
    Do not touch internal workqueue. Call tty_vhangup instead.

    Note that finished hangup does not necessarily mean that all processes
    are dead. Especially when the tty is a console. The code assumes that
    right now.

    Signed-off-by: Jiri Slaby <jslaby@suse.cz>
    Cc: Jiri Kosina <jkosina@suse.cz>
    Cc: David Sterba <dsterba@suse.cz>
    ---
    drivers/tty/ipwireless/tty.c | 6 +++---
    1 file changed, 3 insertions(+), 3 deletions(-)

    diff --git a/drivers/tty/ipwireless/tty.c b/drivers/tty/ipwireless/tty.c
    index 4daf962..e539621 100644
    --- a/drivers/tty/ipwireless/tty.c
    +++ b/drivers/tty/ipwireless/tty.c
    @@ -565,11 +565,11 @@ void ipwireless_tty_free(struct ipw_tty *tty)
    ttyj->closing = 1;
    if (ttyj->linux_tty != NULL) {
    mutex_unlock(&ttyj->ipw_tty_mutex);
    - tty_hangup(ttyj->linux_tty);
    - /* Wait till the tty_hangup has completed */
    - flush_work_sync(&ttyj->linux_tty->hangup_work);
    + tty_vhangup(ttyj->linux_tty);
    /* FIXME: Exactly how is the tty object locked here
    against a parallel ioctl etc */
    + /* FIXME2: hangup does not mean all processes
    + * are gone */
    mutex_lock(&ttyj->ipw_tty_mutex);
    }
    while (ttyj->open_count)
    --
    1.7.9.2



    \
     
     \ /
      Last update: 2012-04-02 14:07    [W:0.021 / U:0.336 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site