All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johan Hovold <jhovold@gmail.com>
To: Paul Chavent <Paul.Chavent@onera.fr>
Cc: linux-usb@vger.kernel.org, gregkh@linuxfoundation.org,
	jhovold@gmail.com, fschaefer.oss@googlemail.com, jslaby@suse.cz,
	max@suse.de, giometti@enneenne.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/5] USB : serial : remove tty arg of handle_dcd_change.
Date: Mon, 9 Sep 2013 19:48:16 +0200	[thread overview]
Message-ID: <20130909174816.GC7726@localhost> (raw)
In-Reply-To: <20130909174523.GB7726@localhost>

On Mon, Sep 09, 2013 at 07:45:23PM +0200, Johan Hovold wrote:
> On Mon, Sep 09, 2013 at 06:01:16PM +0200, Paul Chavent wrote:
> > Do the same way as in serialcore.c for uart_handle_dcd_change.  It
> > removes duplicated code around the usb_serial_handle_dcd_change calls.
> > 
> > Signed-off-by: Paul Chavent <paul.chavent@onera.fr>
> > ---
> >  drivers/usb/serial/ch341.c   | 7 ++-----
> >  drivers/usb/serial/generic.c | 4 ++--
> >  drivers/usb/serial/pl2303.c  | 7 +------
> >  include/linux/usb/serial.h   | 1 -
> >  4 files changed, 5 insertions(+), 14 deletions(-)
> > 
> > diff --git a/drivers/usb/serial/ch341.c b/drivers/usb/serial/ch341.c
> > index c2a4171..51c3d3a 100644
> > --- a/drivers/usb/serial/ch341.c
> > +++ b/drivers/usb/serial/ch341.c
> > @@ -481,11 +481,8 @@ static void ch341_read_int_callback(struct urb *urb)
> >  		spin_unlock_irqrestore(&priv->lock, flags);
> >  
> >  		if ((priv->line_status ^ prev_line_status) & CH341_BIT_DCD) {
> > -			struct tty_struct *tty = tty_port_tty_get(&port->port);
> > -			if (tty)
> > -				usb_serial_handle_dcd_change(port, tty,
> > -					    priv->line_status & CH341_BIT_DCD);
> > -			tty_kref_put(tty);
> > +			usb_serial_handle_dcd_change(port,
> > +				    priv->line_status & CH341_BIT_DCD);
> >  		}
> >  
> >  		wake_up_interruptible(&port->port.delta_msr_wait);
> > diff --git a/drivers/usb/serial/generic.c b/drivers/usb/serial/generic.c
> > index 1f31e6b..33f1df1 100644
> > --- a/drivers/usb/serial/generic.c
> > +++ b/drivers/usb/serial/generic.c
> > @@ -560,13 +560,13 @@ EXPORT_SYMBOL_GPL(usb_serial_handle_break);
> >  /**
> >   *	usb_serial_handle_dcd_change - handle a change of carrier detect state
> >   *	@port: usb_serial_port structure for the open port
> > - *	@tty: tty_struct structure for the port
> >   *	@status: new carrier detect status, nonzero if active
> >   */
> >  void usb_serial_handle_dcd_change(struct usb_serial_port *usb_port,
> > -				struct tty_struct *tty, unsigned int status)
> > +				unsigned int status)
> >  {
> >  	struct tty_port *port = &usb_port->port;
> > +	struct tty_struct *tty = port->tty;
> 
> No, this is not right. There's a reason tty_port_tty_get was used. You
> cannot simply remove it (even if your next patch adds it back, but
> without the NULL check).

My bad, the NULL check was already there. But this still would have to
be done as one patch, although I prefer keeping the current interface
for now.

Johan

  reply	other threads:[~2013-09-09 17:48 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-09 16:01 [PATCH 0/5] Enable PPS reporting for USB serial devices Paul Chavent
2013-09-09 16:01 ` [PATCH 1/5] USB : serial : remove tty arg of handle_dcd_change Paul Chavent
2013-09-09 17:45   ` Johan Hovold
2013-09-09 17:48     ` Johan Hovold [this message]
2013-09-10  8:09     ` Paul Chavent
2013-09-09 16:01 ` [PATCH 2/5] USB : serial : get protected tty in handle_dcd_change Paul Chavent
2013-09-09 18:03   ` Sergei Shtylyov
2013-09-09 16:01 ` [PATCH 3/5] USB : serial : call handle_dcd_change in ftdi driver Paul Chavent
2013-09-09 16:01 ` [PATCH 4/5] USB : serial : invoke dcd_change ldisc's handler Paul Chavent
2013-09-09 16:36   ` Greg KH
2013-09-09 16:01 ` [PATCH 5/5] USB : serial : pl2303 wake up after dcd status check Paul Chavent
2013-09-10  7:31 ` [PATCH 0/5] Enable PPS reporting for USB serial devices Rodolfo Giometti
2013-09-10  8:00   ` Paul Chavent
2013-09-10 20:02   ` Gary E. Miller
2013-09-12  7:53     ` Rodolfo Giometti

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130909174816.GC7726@localhost \
    --to=jhovold@gmail.com \
    --cc=Paul.Chavent@onera.fr \
    --cc=fschaefer.oss@googlemail.com \
    --cc=giometti@enneenne.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=jslaby@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=max@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.