lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 19 May 2021 11:07:54 +0200
From:   Johan Hovold <johan@...nel.org>
To:     Jiri Slaby <jslaby@...e.cz>
Cc:     gregkh@...uxfoundation.org, linux-serial@...r.kernel.org,
        linux-kernel@...r.kernel.org, linux-usb@...r.kernel.org
Subject: Re: [PATCH 23/35] USB: serial: make usb_serial_driver::write_room
 return uint

On Wed, May 05, 2021 at 11:19:16AM +0200, Jiri Slaby wrote:
> Line disciplines expect a positive value or zero returned from
> tty->ops->write_room (invoked by tty_write_room). Both of them were
> switched in the previous patch. So now, switch also
> usb_serial_driver::write_room and all its users.
> 
> Signed-off-by: Jiri Slaby <jslaby@...e.cz>
> Cc: Johan Hovold <johan@...nel.org>
> Cc: linux-usb@...r.kernel.org
> ---
>  drivers/usb/serial/cyberjack.c        | 4 ++--
>  drivers/usb/serial/cypress_m8.c       | 8 ++++----
>  drivers/usb/serial/digi_acceleport.c  | 8 ++++----
>  drivers/usb/serial/garmin_gps.c       | 2 +-
>  drivers/usb/serial/generic.c          | 6 +++---
>  drivers/usb/serial/io_edgeport.c      | 6 +++---
>  drivers/usb/serial/io_ti.c            | 6 +++---
>  drivers/usb/serial/ir-usb.c           | 6 +++---
>  drivers/usb/serial/keyspan.c          | 4 ++--
>  drivers/usb/serial/kobil_sct.c        | 4 ++--
>  drivers/usb/serial/mos7720.c          | 6 +++---
>  drivers/usb/serial/mos7840.c          | 7 +++----
>  drivers/usb/serial/opticon.c          | 2 +-
>  drivers/usb/serial/oti6858.c          | 6 +++---
>  drivers/usb/serial/quatech2.c         | 4 ++--
>  drivers/usb/serial/sierra.c           | 2 +-
>  drivers/usb/serial/ti_usb_3410_5052.c | 8 ++++----
>  drivers/usb/serial/usb-wwan.h         | 2 +-
>  drivers/usb/serial/usb_wwan.c         | 6 +++---
>  include/linux/usb/serial.h            | 4 ++--
>  20 files changed, 50 insertions(+), 51 deletions(-)
 
> diff --git a/drivers/usb/serial/mos7720.c b/drivers/usb/serial/mos7720.c
> index 6ee83886e2c9..d9cc7f840d48 100644
> --- a/drivers/usb/serial/mos7720.c
> +++ b/drivers/usb/serial/mos7720.c
> @@ -1033,11 +1033,11 @@ static void mos7720_break(struct tty_struct *tty, int break_state)
>   *	If successful, we return the amount of room that we have for this port
>   *	Otherwise we return a negative error number.
>   */
> -static int mos7720_write_room(struct tty_struct *tty)
> +static unsigned int mos7720_write_room(struct tty_struct *tty)
>  {
>  	struct usb_serial_port *port = tty->driver_data;
>  	struct moschip_port *mos7720_port;
> -	int room = 0;
> +	unsigned int room = 0;
>  	int i;
>  
>  	mos7720_port = usb_get_serial_port_data(port);
> @@ -1051,7 +1051,7 @@ static int mos7720_write_room(struct tty_struct *tty)
>  			room += URB_TRANSFER_BUFFER_SIZE;
>  	}
>  
> -	dev_dbg(&port->dev, "%s - returns %d\n", __func__, room);
> +	dev_dbg(&port->dev, "%s - returns %u\n", __func__, room);
>  	return room;
>  }
>  
> diff --git a/drivers/usb/serial/mos7840.c b/drivers/usb/serial/mos7840.c
> index 28e4093794e0..f25d4ba43b9a 100644
> --- a/drivers/usb/serial/mos7840.c
> +++ b/drivers/usb/serial/mos7840.c
> @@ -815,15 +815,14 @@ static void mos7840_break(struct tty_struct *tty, int break_state)
>   *	this function is called by the tty driver when it wants to know how many
>   *	bytes of data we can accept for a specific port.
>   *	If successful, we return the amount of room that we have for this port
> - *	Otherwise we return a negative error number.

This is arguably an unrelated change, and you're not removing these
outdated comments consistently (e.g. mos7720 above) so I've dropped this
bit for now.

Will send a follow up patch to clean it up all these instances instead.

>   *****************************************************************************/
>  
> -static int mos7840_write_room(struct tty_struct *tty)
> +static unsigned int mos7840_write_room(struct tty_struct *tty)
>  {
>  	struct usb_serial_port *port = tty->driver_data;
>  	struct moschip_port *mos7840_port = usb_get_serial_port_data(port);
>  	int i;
> -	int room = 0;
> +	unsigned int room = 0;
>  	unsigned long flags;
>  
>  	spin_lock_irqsave(&mos7840_port->pool_lock, flags);

Now applied with an amended commit message.

Johan

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ