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]
Message-ID: <AS8PR05MB9810FA4CE091AD28EEE9B73683E52@AS8PR05MB9810.eurprd05.prod.outlook.com>
Date: Sat, 18 Jan 2025 12:14:13 +0000
From: Maarten Brock <Maarten.Brock@...ls.nl>
To: Andre Werner <andre.werner@...tec-electronic.com>,
	"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
	"jirislaby@...nel.org" <jirislaby@...nel.org>, "hvilleneuve@...onoff.com"
	<hvilleneuve@...onoff.com>, "andy@...nel.org" <andy@...nel.org>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"linux-serial@...r.kernel.org" <linux-serial@...r.kernel.org>,
	"lech.perczak@...lingroup.com" <lech.perczak@...lingroup.com>
Subject: RE: [PATCH v2] serial: sc16is7xx: Extend IRQ check for negative
 values

> -----Original Message-----
> Fix the IRQ check to treat the negative values as No IRQ.

It seems to me that this is a real fix and needs a Fixes tag.
See below.

> Signed-off-by: Andre Werner <andre.werner@...tec-electronic.com>
> ---
> diff --git a/drivers/tty/serial/sc16is7xx.c b/drivers/tty/serial/sc16is7xx.c
> index 7b51cdc274fd..560f45ed19ae 100644
> --- a/drivers/tty/serial/sc16is7xx.c
> +++ b/drivers/tty/serial/sc16is7xx.c
> @@ -1561,7 +1561,7 @@ int sc16is7xx_probe(struct device *dev, const struct
> sc16is7xx_devtype *devtype,
>  	/* Always ask for fixed clock rate from a property. */
>  	device_property_read_u32(dev, "clock-frequency", &uartclk);
> 
> -	s->polling = !!irq;
> +	s->polling = (irq <= 0);

When irq>=0 these two lines above have a different outcome!
irq==0   =>   !!irq==false   <=>   (irq<=0)==true
irq==1   =>   !!irq==true   <=>   (irq<=0)==false

>  	if (s->polling)
>  		dev_dbg(dev,
>  			"No interrupt pin definition, falling back to polling mode\n");

Kind regards,
Maarten

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ