Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753626Ab3CEV5E (ORCPT ); Tue, 5 Mar 2013 16:57:04 -0500 Received: from mail-ee0-f46.google.com ([74.125.83.46]:41929 "EHLO mail-ee0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752838Ab3CEV5C (ORCPT ); Tue, 5 Mar 2013 16:57:02 -0500 Message-ID: <51366A29.2060808@suse.cz> Date: Tue, 05 Mar 2013 22:56:57 +0100 From: Jiri Slaby User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:19.0) Gecko/20130124 Thunderbird/19.0 MIME-Version: 1.0 To: Peter Hurley CC: jhovold@gmail.com, Greg Kroah-Hartman , Alan Stern , USB list , linux-serial@vger.kernel.org, Alan Cox , LKML Subject: Re: [Fwd: [PATCH v2 0/4] TTY: port hangup and close fixes] References: <1362085054.3337.20.camel@thor.lan> <51361724.4050107@suse.cz> <1362503170.18799.33.camel@thor.lan> In-Reply-To: <1362503170.18799.33.camel@thor.lan> X-Enigmail-Version: 1.6a1pre Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1071 Lines: 30 On 03/05/2013 06:06 PM, Peter Hurley wrote: >>> @@ -225,15 +232,13 @@ void tty_port_hangup(struct tty_port *port) >> spin_lock_irqsave(&port->lock, flags); >> port->count = 0; >> port->flags &= ~ASYNC_NORMAL_ACTIVE; >> - if (port->tty) { >> + if (port->tty) >> set_bit(TTY_IO_ERROR, &port->tty->flags); >> - tty_kref_put(port->tty); >> - } >> - port->tty = NULL; >> spin_unlock_irqrestore(&port->lock, flags); >>> + tty_port_shutdown(port, port->tty); >> >> What prevents port->tty to be NULL here already? > > Nothing. That's why it's tested in tty_port_shutdown() above. I know :). But the question is rather don't we want to pass the real refcounted port->tty (take a snapshot inside the lock) instead? thanks, -- js suse labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/