Re: [PATCH 2/2] virtio-mmio: Reject invalid IRQ 0 command line argument

2020-07-22 Thread Michael S. Tsirkin
On Wed, Jul 01, 2020 at 05:10:40PM -0500, Bjorn Helgaas wrote:
> From: Bjorn Helgaas 
> 
> The "virtio_mmio.device=" command line argument allows a user to specify
> the size, address, and IRQ of a virtio device.  Previously the only
> requirement for the IRQ was that it be an unsigned integer.
> 
> Zero is an unsigned integer but an invalid IRQ number, and after
> a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid"),
> attempts to use IRQ 0 cause warnings.
> 
> If the user specifies IRQ 0, return failure instead of registering a device
> with IRQ 0.
> 
> Fixes: a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid")
> Signed-off-by: Bjorn Helgaas 
> Cc: Michael S. Tsirkin 
> Cc: Jason Wang 
> Cc: virtualization@lists.linux-foundation.org

Acked-by: Michael S. Tsirkin 

> ---
>  drivers/virtio/virtio_mmio.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
> index 9d16aaffca9d..627ac0487494 100644
> --- a/drivers/virtio/virtio_mmio.c
> +++ b/drivers/virtio/virtio_mmio.c
> @@ -641,11 +641,11 @@ static int vm_cmdline_set(const char *device,
>   _cmdline_id, );
>  
>   /*
> -  * sscanf() must processes at least 2 chunks; also there
> +  * sscanf() must process at least 2 chunks; also there
>* must be no extra characters after the last chunk, so
>* str[consumed] must be '\0'
>*/
> - if (processed < 2 || str[consumed])
> + if (processed < 2 || str[consumed] || irq == 0)
>   return -EINVAL;
>  
>   resources[0].flags = IORESOURCE_MEM;
> -- 
> 2.25.1

___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization


Re: [PATCH 2/2] virtio-mmio: Reject invalid IRQ 0 command line argument

2020-07-21 Thread Bjorn Helgaas
On Thu, Jul 02, 2020 at 11:06:11AM +0800, Jason Wang wrote:
> On 2020/7/2 上午6:10, Bjorn Helgaas wrote:
> > From: Bjorn Helgaas 
> > 
> > The "virtio_mmio.device=" command line argument allows a user to specify
> > the size, address, and IRQ of a virtio device.  Previously the only
> > requirement for the IRQ was that it be an unsigned integer.
> > 
> > Zero is an unsigned integer but an invalid IRQ number, and after
> > a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid"),
> > attempts to use IRQ 0 cause warnings.
> > 
> > If the user specifies IRQ 0, return failure instead of registering a device
> > with IRQ 0.
> > 
> > Fixes: a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is 
> > invalid")
> > Signed-off-by: Bjorn Helgaas 
> > Cc: Michael S. Tsirkin 
> > Cc: Jason Wang 
> > Cc: virtualization@lists.linux-foundation.org
> > ---
> >   drivers/virtio/virtio_mmio.c | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
> > index 9d16aaffca9d..627ac0487494 100644
> > --- a/drivers/virtio/virtio_mmio.c
> > +++ b/drivers/virtio/virtio_mmio.c
> > @@ -641,11 +641,11 @@ static int vm_cmdline_set(const char *device,
> > _cmdline_id, );
> > /*
> > -* sscanf() must processes at least 2 chunks; also there
> > +* sscanf() must process at least 2 chunks; also there
> >  * must be no extra characters after the last chunk, so
> >  * str[consumed] must be '\0'
> >  */
> > -   if (processed < 2 || str[consumed])
> > +   if (processed < 2 || str[consumed] || irq == 0)
> > return -EINVAL;
> > resources[0].flags = IORESOURCE_MEM;
> 
> Acked-by: Jason Wang 

Thanks, I applied this to my for-linus branch for v5.8.
___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Re: [PATCH 2/2] virtio-mmio: Reject invalid IRQ 0 command line argument

2020-07-01 Thread Jason Wang


On 2020/7/2 上午6:10, Bjorn Helgaas wrote:

From: Bjorn Helgaas 

The "virtio_mmio.device=" command line argument allows a user to specify
the size, address, and IRQ of a virtio device.  Previously the only
requirement for the IRQ was that it be an unsigned integer.

Zero is an unsigned integer but an invalid IRQ number, and after
a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid"),
attempts to use IRQ 0 cause warnings.

If the user specifies IRQ 0, return failure instead of registering a device
with IRQ 0.

Fixes: a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid")
Signed-off-by: Bjorn Helgaas 
Cc: Michael S. Tsirkin 
Cc: Jason Wang 
Cc: virtualization@lists.linux-foundation.org
---
  drivers/virtio/virtio_mmio.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
index 9d16aaffca9d..627ac0487494 100644
--- a/drivers/virtio/virtio_mmio.c
+++ b/drivers/virtio/virtio_mmio.c
@@ -641,11 +641,11 @@ static int vm_cmdline_set(const char *device,
_cmdline_id, );
  
  	/*

-* sscanf() must processes at least 2 chunks; also there
+* sscanf() must process at least 2 chunks; also there
 * must be no extra characters after the last chunk, so
 * str[consumed] must be '\0'
 */
-   if (processed < 2 || str[consumed])
+   if (processed < 2 || str[consumed] || irq == 0)
return -EINVAL;
  
  	resources[0].flags = IORESOURCE_MEM;



Acked-by: Jason Wang 


___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

[PATCH 2/2] virtio-mmio: Reject invalid IRQ 0 command line argument

2020-07-01 Thread Bjorn Helgaas
From: Bjorn Helgaas 

The "virtio_mmio.device=" command line argument allows a user to specify
the size, address, and IRQ of a virtio device.  Previously the only
requirement for the IRQ was that it be an unsigned integer.

Zero is an unsigned integer but an invalid IRQ number, and after
a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid"),
attempts to use IRQ 0 cause warnings.

If the user specifies IRQ 0, return failure instead of registering a device
with IRQ 0.

Fixes: a85a6c86c25be ("driver core: platform: Clarify that IRQ 0 is invalid")
Signed-off-by: Bjorn Helgaas 
Cc: Michael S. Tsirkin 
Cc: Jason Wang 
Cc: virtualization@lists.linux-foundation.org
---
 drivers/virtio/virtio_mmio.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
index 9d16aaffca9d..627ac0487494 100644
--- a/drivers/virtio/virtio_mmio.c
+++ b/drivers/virtio/virtio_mmio.c
@@ -641,11 +641,11 @@ static int vm_cmdline_set(const char *device,
_cmdline_id, );
 
/*
-* sscanf() must processes at least 2 chunks; also there
+* sscanf() must process at least 2 chunks; also there
 * must be no extra characters after the last chunk, so
 * str[consumed] must be '\0'
 */
-   if (processed < 2 || str[consumed])
+   if (processed < 2 || str[consumed] || irq == 0)
return -EINVAL;
 
resources[0].flags = IORESOURCE_MEM;
-- 
2.25.1

___
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization