android_kernel_msm-6.1_noth.../include/uapi/rdma
Gustavo A. R. Silva 94dfc73e7c treewide: uapi: Replace zero-length arrays with flexible-array members
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].

This code was transformed with the help of Coccinelle:
(linux-5.19-rc2$ spatch --jobs $(getconf _NPROCESSORS_ONLN) --sp-file script.cocci --include-headers --dir . > output.patch)

@@
identifier S, member, array;
type T1, T2;
@@

struct S {
  ...
  T1 member;
  T2 array[
- 0
  ];
};

-fstrict-flex-arrays=3 is coming and we need to land these changes
to prevent issues like these in the short future:

../fs/minix/dir.c:337:3: warning: 'strcpy' will always overflow; destination buffer has size 0,
but the source string has length 2 (including NUL byte) [-Wfortify-source]
		strcpy(de3->name, ".");
		^

Since these are all [0] to [] changes, the risk to UAPI is nearly zero. If
this breaks anything, we can use a union with a new member name.

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

Link: https://github.com/KSPP/linux/issues/78
Build-tested-by: kernel test robot <lkp@intel.com>
Link: https://lore.kernel.org/lkml/62b675ec.wKX6AOZ6cbE71vtF%25lkp@intel.com/
Acked-by: Dan Williams <dan.j.williams@intel.com> # For ndctl.h
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
2022-06-28 21:26:05 +02:00
..
hfi treewide: uapi: Replace zero-length arrays with flexible-array members 2022-06-28 21:26:05 +02:00
bnxt_re-abi.h RDMA/bnxt_re: Update ABI to pass wqe-mode to user space 2021-06-21 20:58:52 -03:00
cxgb4-abi.h iw_cxgb4: RDMA write with immediate support 2018-08-02 20:16:02 -06:00
efa-abi.h RDMA/efa: CQ notifications 2021-10-06 19:47:18 -03:00
hns-abi.h RDMA/hns: Support direct wqe of userspace 2021-12-14 19:59:07 -04:00
ib_user_ioctl_cmds.h RDMA/uverbs: Add uverbs command for dma-buf based MR registration 2021-01-20 16:07:52 -04:00
ib_user_ioctl_verbs.h RDMA/irdma: Implement device supported verb APIs 2021-06-02 19:55:18 -03:00
ib_user_mad.h RDMA/core: Use flexible array for mad data 2021-06-22 14:05:34 -03:00
ib_user_sa.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ib_user_verbs.h treewide: uapi: Replace zero-length arrays with flexible-array members 2022-06-28 21:26:05 +02:00
irdma-abi.h RDMA/irdma: Make spdxcheck.py happy 2021-07-12 14:52:25 -03:00
mlx4-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
mlx5-abi.h RDMA/mlx5: Add DCS offload support 2021-07-20 15:04:14 -03:00
mlx5_user_ioctl_cmds.h net/mlx5: Add misc5 flow table match parameters 2021-12-31 00:17:23 -08:00
mlx5_user_ioctl_verbs.h RDMA/mlx5: Expose private query port 2021-04-20 17:00:18 -03:00
mthca-abi.h uapi: Fix SPDX tags for files referring to the 'OpenIB.org' license 2018-04-23 11:10:33 -04:00
ocrdma-abi.h RDMA: Change all uapi headers to use __aligned_u64 instead of __u64 2018-03-27 14:25:09 -06:00
qedr-abi.h RDMA/qedr: Add EDPM max size to alloc ucontext response 2020-07-16 16:01:55 -03:00
rdma_netlink.h RDMA/nldev: Add support to get status of all counters 2021-10-12 12:48:05 -03:00
rdma_user_cm.h treewide: uapi: Replace zero-length arrays with flexible-array members 2022-06-28 21:26:05 +02:00
rdma_user_ioctl.h RDMA: rdma_user_ioctl.h: fix a duplicated word + clarify 2020-07-20 16:42:08 -03:00
rdma_user_ioctl_cmds.h treewide: uapi: Replace zero-length arrays with flexible-array members 2022-06-28 21:26:05 +02:00
rdma_user_rxe.h RDMA v5.16 merge window pull request 2021-11-03 08:05:59 -07:00
rvt-abi.h treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers 2019-07-25 11:05:10 +02:00
siw-abi.h RDMA/siw: Change CQ flags from 64->32 bits 2019-08-13 12:22:06 -04:00
vmw_pvrdma-abi.h RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC 2021-01-19 20:17:27 -04:00