* [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning
@ 2024-08-21 0:50 Gustavo A. R. Silva
2024-08-22 17:41 ` Kees Cook
2024-09-13 8:07 ` Gustavo A. R. Silva
0 siblings, 2 replies; 5+ messages in thread
From: Gustavo A. R. Silva @ 2024-08-21 0:50 UTC (permalink / raw)
To: Juergen Gross, Stefano Stabellini, Oleksandr Tyshchenko
Cc: xen-devel, linux-kernel, Gustavo A. R. Silva, linux-hardening
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@kernel.org>
---
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;
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning
2024-08-21 0:50 [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning Gustavo A. R. Silva
@ 2024-08-22 17:41 ` Kees Cook
2024-09-13 8:07 ` Gustavo A. R. Silva
1 sibling, 0 replies; 5+ messages in thread
From: Kees Cook @ 2024-08-22 17:41 UTC (permalink / raw)
To: Gustavo A. R. Silva
Cc: Juergen Gross, Stefano Stabellini, Oleksandr Tyshchenko,
xen-devel, linux-kernel, linux-hardening
On Tue, Aug 20, 2024 at 06:50:56PM -0600, 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@kernel.org>
> ---
> 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;
Looks correct to me!
Reviewed-by: Kees Cook <kees@kernel.org>
--
Kees Cook
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning
2024-08-21 0:50 [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning Gustavo A. R. Silva
2024-08-22 17:41 ` Kees Cook
@ 2024-09-13 8:07 ` Gustavo A. R. Silva
2024-09-13 8:12 ` Jürgen Groß
1 sibling, 1 reply; 5+ messages in thread
From: Gustavo A. R. Silva @ 2024-09-13 8:07 UTC (permalink / raw)
To: Gustavo A. R. Silva, Juergen Gross, Stefano Stabellini,
Oleksandr Tyshchenko
Cc: xen-devel, linux-kernel, linux-hardening
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@kernel.org>
> ---
> 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;
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning
2024-09-13 8:07 ` Gustavo A. R. Silva
@ 2024-09-13 8:12 ` Jürgen Groß
2024-09-13 8:16 ` Gustavo A. R. Silva
0 siblings, 1 reply; 5+ messages in thread
From: Jürgen Groß @ 2024-09-13 8:12 UTC (permalink / raw)
To: Gustavo A. R. Silva, Gustavo A. R. Silva, Stefano Stabellini,
Oleksandr Tyshchenko
Cc: xen-devel, linux-kernel, linux-hardening
[-- Attachment #1.1.1: Type: text/plain, Size: 163 bytes --]
On 13.09.24 10:07, Gustavo A. R. Silva wrote:
> Hi all,
>
> Friendly ping: who can take this, please? 🙂
I can carry it via the Xen tree.
Juergen
[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 3743 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 495 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning
2024-09-13 8:12 ` Jürgen Groß
@ 2024-09-13 8:16 ` Gustavo A. R. Silva
0 siblings, 0 replies; 5+ messages in thread
From: Gustavo A. R. Silva @ 2024-09-13 8:16 UTC (permalink / raw)
To: Jürgen Groß, Gustavo A. R. Silva, Stefano Stabellini,
Oleksandr Tyshchenko
Cc: xen-devel, linux-kernel, linux-hardening
On 13/09/24 10:12, Jürgen Groß wrote:
> On 13.09.24 10:07, Gustavo A. R. Silva wrote:
>> Hi all,
>>
>> Friendly ping: who can take this, please? 🙂
>
> I can carry it via the Xen tree.
Sounds good. :)
Thank you!
--
Gustavo
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-09-13 8:16 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-21 0:50 [PATCH][next] xen/pci: Avoid -Wflex-array-member-not-at-end warning Gustavo A. R. Silva
2024-08-22 17:41 ` Kees Cook
2024-09-13 8:07 ` Gustavo A. R. Silva
2024-09-13 8:12 ` Jürgen Groß
2024-09-13 8:16 ` Gustavo A. R. Silva
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.