On 1/11/2024 5:11 AM, Simon Horman wrote:
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 protected]>
Closes: 
https://lore.kernel.org/netdev/[email protected]/
Fixes: 56df345917c0 ("i40e: Remove circular header dependencies and fix 
headers")
Reviewed-by: Jesse Brandeburg <[email protected]>
Signed-off-by: Tony Nguyen <[email protected]>

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?

Hi Simon,

Unfortunately, I was not able to reproduce the problem. Since it was fairly straightforward on what was happening, I made the patch and Martin confirmed it resolved his issue.

Thanks,
Tony

Reply via email to