OSDN Git Service

i40e: Replace one-element array with flexible-array member
authorGustavo A. R. Silva <gustavoars@kernel.org>
Tue, 25 May 2021 23:00:38 +0000 (18:00 -0500)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Wed, 26 May 2021 23:16:17 +0000 (16:16 -0700)
commit125217e0967fc905be35a3b2c9ba4db9a8616b92
tree87b52e4b4dc330e01723b76fb5d2f8fa7c7116b6
parent6efb943b8616ec53a5e444193dccf1af9ad627b5
i40e: Replace one-element array with flexible-array member

There is a regular need in the kernel to provide a way to declare having a
dynamically sized set of trailing elements in a structure. Kernel code
should always use “flexible array members”[1] for these cases. The older
style of one-element or zero-length arrays should no longer be used[2].

Refactor the code according to the use of a flexible-array member in struct
i40e_qvlist_info instead of one-element array, and use the struct_size()
helper.

[1] https://en.wikipedia.org/wiki/Flexible_array_member
[2] https://www.kernel.org/doc/html/v5.10/process/deprecated.html#zero-length-and-one-element-arrays

Link: https://github.com/KSPP/linux/issues/79
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Acked-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/infiniband/hw/i40iw/i40iw_main.c
drivers/net/ethernet/intel/i40e/i40e_client.c
include/linux/net/intel/i40e_client.h