[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning
 
 
Hi all,
Friendly ping: who can take this, please? 🙂
Thanks
--
Gustavo
On 21/08/24 02:50, Gustavo A. R. Silva wrote:
 
Use the `DEFINE_RAW_FLEX()` helper for an on-stack definition of
a flexible structure where the size of the flexible-array member
is known at compile-time, and refactor the rest of the code,
accordingly.
So, with this, fix the following warning:
drivers/xen/pci.c:48:55: warning: structure containing a flexible array member 
is not at the end of another structure [-Wflex-array-member-not-at-end]
Signed-off-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx>
---
  drivers/xen/pci.c | 14 +++++---------
  1 file changed, 5 insertions(+), 9 deletions(-)
diff --git a/drivers/xen/pci.c b/drivers/xen/pci.c
index 72d4e3f193af..a2facd8f7e51 100644
--- a/drivers/xen/pci.c
+++ b/drivers/xen/pci.c
@@ -44,15 +44,11 @@ static int xen_add_device(struct device *dev)
        }
  #endif
        if (pci_seg_supported) {
-               struct {
-                       struct physdev_pci_device_add add;
-                       uint32_t pxm;
-               } add_ext = {
-                       .add.seg = pci_domain_nr(pci_dev->bus),
-                       .add.bus = pci_dev->bus->number,
-                       .add.devfn = pci_dev->devfn
-               };
-               struct physdev_pci_device_add *add = &add_ext.add;
+               DEFINE_RAW_FLEX(struct physdev_pci_device_add, add, optarr, 1);
+
+               add->seg = pci_domain_nr(pci_dev->bus);
+               add->bus = pci_dev->bus->number;
+               add->devfn = pci_dev->devfn;
  
  #ifdef CONFIG_ACPI
                acpi_handle handle;
 
 
 
    
     |