2021-10-23 08:55 (UTC+0200), David Marchand:
> Windows compilation gives us a splat:
> In file included from ../drivers/dma/idxd/idxd_pci.c:10:
> In file included from ..\drivers\dma\idxd/idxd_internal.h:11:
> ..\drivers\dma\idxd/idxd_hw_defs.h:46:21: error: expected member name or
>  ';' after declaration specifiers
>         uint16_t __reserved[13];
>         ~~~~~~~~           ^
> 1 error generated.
> 
> Ironically, __reserved is probably a reserved token.

Yes, and it's used in system headers for static analyzer annotations:
https://docs.microsoft.com/en-us/windows/win32/winprog/header-annotations#advanced-annotations

> Some drivers that build fine on Windows have structs with a "reserved"
> field, let's go with this.
> 
> Fixes: 82147042d062 ("dma/idxd: add datapath structures")
> 
> Signed-off-by: David Marchand <david.march...@redhat.com>
> ---
>  drivers/dma/idxd/idxd_hw_defs.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/dma/idxd/idxd_hw_defs.h b/drivers/dma/idxd/idxd_hw_defs.h
> index 55ca9f7f52..2a219c1312 100644
> --- a/drivers/dma/idxd/idxd_hw_defs.h
> +++ b/drivers/dma/idxd/idxd_hw_defs.h
> @@ -43,7 +43,7 @@ struct idxd_hw_desc {
>       uint16_t intr_handle; /* completion interrupt handle */
>  
>       /* remaining 26 bytes are reserved */
> -     uint16_t __reserved[13];
> +     uint16_t reserved[13];
>  } __rte_aligned(64);
>  
>  #define IDXD_COMP_STATUS_INCOMPLETE        0

Reply via email to