hw/virtio/virtio-pci.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-)
"len" is used as parameter of the function virtio_write_config()
and as a local variable, so this causes a compiler warning
when compiling with "-Wshadow" and can be confusing for the reader.
Rename the local variable to "caplen" to avoid this problem.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/virtio/virtio-pci.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index edbc0daa18..d0ef1edd66 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -780,15 +780,15 @@ static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,
pci_cfg_data),
sizeof cfg->pci_cfg_data)) {
uint32_t off;
- uint32_t len;
+ uint32_t caplen;
cfg = (void *)(proxy->pci_dev.config + proxy->config_cap);
off = le32_to_cpu(cfg->cap.offset);
- len = le32_to_cpu(cfg->cap.length);
+ caplen = le32_to_cpu(cfg->cap.length);
- if (len == 1 || len == 2 || len == 4) {
- assert(len <= sizeof cfg->pci_cfg_data);
- virtio_address_space_write(proxy, off, cfg->pci_cfg_data, len);
+ if (caplen == 1 || caplen == 2 || caplen == 4) {
+ assert(caplen <= sizeof cfg->pci_cfg_data);
+ virtio_address_space_write(proxy, off, cfg->pci_cfg_data, caplen);
}
}
}
--
2.41.0
Thomas Huth <thuth@redhat.com> writes:
> "len" is used as parameter of the function virtio_write_config()
> and as a local variable, so this causes a compiler warning
> when compiling with "-Wshadow" and can be confusing for the reader.
> Rename the local variable to "caplen" to avoid this problem.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/virtio/virtio-pci.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index edbc0daa18..d0ef1edd66 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -780,15 +780,15 @@ static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,
> pci_cfg_data),
> sizeof cfg->pci_cfg_data)) {
> uint32_t off;
> - uint32_t len;
> + uint32_t caplen;
>
> cfg = (void *)(proxy->pci_dev.config + proxy->config_cap);
> off = le32_to_cpu(cfg->cap.offset);
> - len = le32_to_cpu(cfg->cap.length);
> + caplen = le32_to_cpu(cfg->cap.length);
>
> - if (len == 1 || len == 2 || len == 4) {
> - assert(len <= sizeof cfg->pci_cfg_data);
> - virtio_address_space_write(proxy, off, cfg->pci_cfg_data, len);
> + if (caplen == 1 || caplen == 2 || caplen == 4) {
> + assert(caplen <= sizeof cfg->pci_cfg_data);
> + virtio_address_space_write(proxy, off, cfg->pci_cfg_data, caplen);
> }
> }
> }
I see the same warning in virtio_read_config(). Care to patch that,
too?
On 04/10/2023 12.58, Markus Armbruster wrote:
> Thomas Huth <thuth@redhat.com> writes:
>
>> "len" is used as parameter of the function virtio_write_config()
>> and as a local variable, so this causes a compiler warning
>> when compiling with "-Wshadow" and can be confusing for the reader.
>> Rename the local variable to "caplen" to avoid this problem.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>> hw/virtio/virtio-pci.c | 10 +++++-----
>> 1 file changed, 5 insertions(+), 5 deletions(-)
>>
>> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
>> index edbc0daa18..d0ef1edd66 100644
>> --- a/hw/virtio/virtio-pci.c
>> +++ b/hw/virtio/virtio-pci.c
>> @@ -780,15 +780,15 @@ static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,
>> pci_cfg_data),
>> sizeof cfg->pci_cfg_data)) {
>> uint32_t off;
>> - uint32_t len;
>> + uint32_t caplen;
>>
>> cfg = (void *)(proxy->pci_dev.config + proxy->config_cap);
>> off = le32_to_cpu(cfg->cap.offset);
>> - len = le32_to_cpu(cfg->cap.length);
>> + caplen = le32_to_cpu(cfg->cap.length);
>>
>> - if (len == 1 || len == 2 || len == 4) {
>> - assert(len <= sizeof cfg->pci_cfg_data);
>> - virtio_address_space_write(proxy, off, cfg->pci_cfg_data, len);
>> + if (caplen == 1 || caplen == 2 || caplen == 4) {
>> + assert(caplen <= sizeof cfg->pci_cfg_data);
>> + virtio_address_space_write(proxy, off, cfg->pci_cfg_data, caplen);
>> }
>> }
>> }
>
> I see the same warning in virtio_read_config(). Care to patch that,
> too?
Patch is already on the list:
https://lore.kernel.org/qemu-devel/20231004095302.99037-1-thuth@redhat.com/
Thomas
Thomas Huth <thuth@redhat.com> writes: > On 04/10/2023 12.58, Markus Armbruster wrote: >> Thomas Huth <thuth@redhat.com> writes: >> >>> "len" is used as parameter of the function virtio_write_config() >>> and as a local variable, so this causes a compiler warning >>> when compiling with "-Wshadow" and can be confusing for the reader. >>> Rename the local variable to "caplen" to avoid this problem. >>> >>> Signed-off-by: Thomas Huth <thuth@redhat.com> [...] >> I see the same warning in virtio_read_config(). Care to patch that, >> too? > > Patch is already on the list: > https://lore.kernel.org/qemu-devel/20231004095302.99037-1-thuth@redhat.com/ Awesome, thanks!
Thomas Huth <thuth@redhat.com> writes: > "len" is used as parameter of the function virtio_write_config() > and as a local variable, so this causes a compiler warning > when compiling with "-Wshadow" and can be confusing for the reader. > Rename the local variable to "caplen" to avoid this problem. > > Signed-off-by: Thomas Huth <thuth@redhat.com> Queued. Thanks!
On 04/10/2023 09.55, Thomas Huth wrote:
> "len" is used as parameter of the function virtio_write_config()
> and as a local variable, so this causes a compiler warning
> when compiling with "-Wshadow" and can be confusing for the reader.
> Rename the local variable to "caplen" to avoid this problem.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/virtio/virtio-pci.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index edbc0daa18..d0ef1edd66 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -780,15 +780,15 @@ static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,
> pci_cfg_data),
> sizeof cfg->pci_cfg_data)) {
> uint32_t off;
> - uint32_t len;
> + uint32_t caplen;
>
> cfg = (void *)(proxy->pci_dev.config + proxy->config_cap);
> off = le32_to_cpu(cfg->cap.offset);
> - len = le32_to_cpu(cfg->cap.length);
> + caplen = le32_to_cpu(cfg->cap.length);
>
> - if (len == 1 || len == 2 || len == 4) {
> - assert(len <= sizeof cfg->pci_cfg_data);
> - virtio_address_space_write(proxy, off, cfg->pci_cfg_data, len);
> + if (caplen == 1 || caplen == 2 || caplen == 4) {
> + assert(caplen <= sizeof cfg->pci_cfg_data);
> + virtio_address_space_write(proxy, off, cfg->pci_cfg_data, caplen);
> }
> }
> }
Ooops, there is a second warning in this file, in the virtio_read_config()
... I somehow missed that in the crowded console output, sorry. I'll send a v2.
Thomas
On Wed, Oct 04, 2023 at 09:55:36AM +0200, Thomas Huth wrote:
> "len" is used as parameter of the function virtio_write_config()
> and as a local variable, so this causes a compiler warning
> when compiling with "-Wshadow" and can be confusing for the reader.
> Rename the local variable to "caplen" to avoid this problem.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
ok sure
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
feel free to merge with rest of -Wshadow things.
> ---
> hw/virtio/virtio-pci.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index edbc0daa18..d0ef1edd66 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -780,15 +780,15 @@ static void virtio_write_config(PCIDevice *pci_dev, uint32_t address,
> pci_cfg_data),
> sizeof cfg->pci_cfg_data)) {
> uint32_t off;
> - uint32_t len;
> + uint32_t caplen;
>
> cfg = (void *)(proxy->pci_dev.config + proxy->config_cap);
> off = le32_to_cpu(cfg->cap.offset);
> - len = le32_to_cpu(cfg->cap.length);
> + caplen = le32_to_cpu(cfg->cap.length);
>
> - if (len == 1 || len == 2 || len == 4) {
> - assert(len <= sizeof cfg->pci_cfg_data);
> - virtio_address_space_write(proxy, off, cfg->pci_cfg_data, len);
> + if (caplen == 1 || caplen == 2 || caplen == 4) {
> + assert(caplen <= sizeof cfg->pci_cfg_data);
> + virtio_address_space_write(proxy, off, cfg->pci_cfg_data, caplen);
> }
> }
> }
> --
> 2.41.0
On 4/10/23 09:55, Thomas Huth wrote: > "len" is used as parameter of the function virtio_write_config() > and as a local variable, so this causes a compiler warning > when compiling with "-Wshadow" and can be confusing for the reader. > Rename the local variable to "caplen" to avoid this problem. > > Signed-off-by: Thomas Huth <thuth@redhat.com> > --- > hw/virtio/virtio-pci.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
© 2016 - 2026 Red Hat, Inc.