Subject: Re: [PATCH iwl-net] i40e: Include types.h to some headers

From: Simon Horman <[email-masked]>
Date: Thu, 11 Jan 2024 13:11:42 +0000

On Wed, Jan 10, 2024 at 04:39:25PM -0800, Tony Nguyen wrote:
> Commit 56df345917c0 ("i40e: Remove circular header dependencies and fix
> headers") redistributed a number of includes from one large header file
> to the locations they were needed. In some environments, types.h is not
> included and causing compile issues. The driver should not rely on
> implicit inclusion from other locations; explicitly include it to these
> files.
> 
> Snippet of issue. Entire log can be seen through the Closes: link.
> 
> In file included from drivers/net/ethernet/intel/i40e/i40e_diag.h:7,
>                  from drivers/net/ethernet/intel/i40e/i40e_diag.c:4:
> drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h:33:9: error: unknown type name '__le16'
>    33 |         __le16 flags;
>       |         ^~~~~~
> drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h:34:9: error: unknown type name '__le16'
>    34 |         __le16 opcode;
>       |         ^~~~~~
> ...
> drivers/net/ethernet/intel/i40e/i40e_diag.h:22:9: error: unknown type name 'u32'
>    22 |         u32 elements;   /* number of elements if array */
>       |         ^~~
> drivers/net/ethernet/intel/i40e/i40e_diag.h:23:9: error: unknown type name 'u32'
>    23 |         u32 stride;     /* bytes between each element */
> 
> Reported-by: Martin Zaharinov <[email-masked]>
> Closes: https://lore.kernel.org/netdev/[email-masked]/
> Fixes: 56df345917c0 ("i40e: Remove circular header dependencies and fix headers")
> Reviewed-by: Jesse Brandeburg <[email-masked]>
> Signed-off-by: Tony Nguyen <[email-masked]>

Hi Tony,

I agree this is a good change to make.
But I am curious to know if you were able to reproduce
the problem reported at the link above.
Or perhaps more to the point, do you have a config that breaks
without this patch?