diff mbox series

[V3,2/2] libxl: fix matching of generic virtio device

Message ID 888e60d2ec49f53230bc82df393b6bed4180cb8a.1680771422.git.viresh.kumar@linaro.org (mailing list archive)
State New, archived
Headers show
Series [V3,1/2] docs: Allow generic virtio device types to contain device-id | expand

Commit Message

Viresh Kumar April 6, 2023, 8:58 a.m. UTC
The strings won't be an exact match, as we are only looking to match the
prefix here, i.e. "virtio,device". This is already done properly in
libxl_virtio.c file, lets do the same here too.

Fixes: 43ba5202e2ee ("libxl: add support for generic virtio device")
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
---
V2->V3:
- Tag from Oleksandr.

 tools/libs/light/libxl_arm.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

Comments

Anthony PERARD April 28, 2023, 1:49 p.m. UTC | #1
On Thu, Apr 06, 2023 at 02:28:18PM +0530, Viresh Kumar wrote:
> The strings won't be an exact match, as we are only looking to match the
> prefix here, i.e. "virtio,device". This is already done properly in
> libxl_virtio.c file, lets do the same here too.
> 
> Fixes: 43ba5202e2ee ("libxl: add support for generic virtio device")
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>

Acked-by: Anthony PERARD <anthony.perard@citrix.com>

Thanks,
Jan Beulich May 3, 2023, 11:42 a.m. UTC | #2
On 06.04.2023 10:58, Viresh Kumar wrote:
> The strings won't be an exact match, as we are only looking to match the
> prefix here, i.e. "virtio,device". This is already done properly in
> libxl_virtio.c file, lets do the same here too.
> 
> Fixes: 43ba5202e2ee ("libxl: add support for generic virtio device")
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>

While I've committed the doc patch (patch 1), I don't think I should
commit this one without a maintainer ack, even if it looks pretty
straightforward. Anthony, Wei?

Jan

> ---
> V2->V3:
> - Tag from Oleksandr.
> 
>  tools/libs/light/libxl_arm.c | 12 ++++++++----
>  1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c
> index ddc7b2a15975..97c80d7ed0fa 100644
> --- a/tools/libs/light/libxl_arm.c
> +++ b/tools/libs/light/libxl_arm.c
> @@ -1033,10 +1033,14 @@ static int make_virtio_mmio_node_device(libxl__gc *gc, void *fdt, uint64_t base,
>      } else if (!strcmp(type, VIRTIO_DEVICE_TYPE_GPIO)) {
>          res = make_virtio_mmio_node_gpio(gc, fdt);
>          if (res) return res;
> -    } else if (strcmp(type, VIRTIO_DEVICE_TYPE_GENERIC)) {
> -        /* Doesn't match generic virtio device */
> -        LOG(ERROR, "Invalid type for virtio device: %s", type);
> -        return -EINVAL;
> +    } else {
> +        int len = sizeof(VIRTIO_DEVICE_TYPE_GENERIC) - 1;
> +
> +        if (strncmp(type, VIRTIO_DEVICE_TYPE_GENERIC, len)) {
> +            /* Doesn't match generic virtio device */
> +            LOG(ERROR, "Invalid type for virtio device: %s", type);
> +            return -EINVAL;
> +        }
>      }
>  
>      return fdt_end_node(fdt);
Julien Grall May 3, 2023, 12:04 p.m. UTC | #3
Hi Jan,

On 03/05/2023 12:42, Jan Beulich wrote:
> On 06.04.2023 10:58, Viresh Kumar wrote:
>> The strings won't be an exact match, as we are only looking to match the
>> prefix here, i.e. "virtio,device". This is already done properly in
>> libxl_virtio.c file, lets do the same here too.
>>
>> Fixes: 43ba5202e2ee ("libxl: add support for generic virtio device")
>> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
>> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
> 
> While I've committed the doc patch (patch 1), I don't think I should
> commit this one without a maintainer ack, even if it looks pretty
> straightforward. Anthony, Wei?

AFAICT Anthony has already given his acked-by:

https://lore.kernel.org/xen-devel/5e98d465-be8f-4050-a988-2a0829a71a2e@perard/#R

Cheers,
Jan Beulich May 3, 2023, 12:27 p.m. UTC | #4
On 03.05.2023 14:04, Julien Grall wrote:
> On 03/05/2023 12:42, Jan Beulich wrote:
>> On 06.04.2023 10:58, Viresh Kumar wrote:
>>> The strings won't be an exact match, as we are only looking to match the
>>> prefix here, i.e. "virtio,device". This is already done properly in
>>> libxl_virtio.c file, lets do the same here too.
>>>
>>> Fixes: 43ba5202e2ee ("libxl: add support for generic virtio device")
>>> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
>>> Reviewed-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@epam.com>
>>
>> While I've committed the doc patch (patch 1), I don't think I should
>> commit this one without a maintainer ack, even if it looks pretty
>> straightforward. Anthony, Wei?
> 
> AFAICT Anthony has already given his acked-by:
> 
> https://lore.kernel.org/xen-devel/5e98d465-be8f-4050-a988-2a0829a71a2e@perard/#R

Oh, right you are. Thanks for pointing this out. And, Anthony: I'm sorry.

Jan
diff mbox series

Patch

diff --git a/tools/libs/light/libxl_arm.c b/tools/libs/light/libxl_arm.c
index ddc7b2a15975..97c80d7ed0fa 100644
--- a/tools/libs/light/libxl_arm.c
+++ b/tools/libs/light/libxl_arm.c
@@ -1033,10 +1033,14 @@  static int make_virtio_mmio_node_device(libxl__gc *gc, void *fdt, uint64_t base,
     } else if (!strcmp(type, VIRTIO_DEVICE_TYPE_GPIO)) {
         res = make_virtio_mmio_node_gpio(gc, fdt);
         if (res) return res;
-    } else if (strcmp(type, VIRTIO_DEVICE_TYPE_GENERIC)) {
-        /* Doesn't match generic virtio device */
-        LOG(ERROR, "Invalid type for virtio device: %s", type);
-        return -EINVAL;
+    } else {
+        int len = sizeof(VIRTIO_DEVICE_TYPE_GENERIC) - 1;
+
+        if (strncmp(type, VIRTIO_DEVICE_TYPE_GENERIC, len)) {
+            /* Doesn't match generic virtio device */
+            LOG(ERROR, "Invalid type for virtio device: %s", type);
+            return -EINVAL;
+        }
     }
 
     return fdt_end_node(fdt);