linux/drivers/scsi/aic94xx
Kees Cook fa7845cfd5 treewide: Replace open-coded flex arrays in unions
In support of enabling -Warray-bounds and -Wzero-length-bounds and
correctly handling run-time memcpy() bounds checking, replace all
open-coded flexible arrays (i.e. 0-element arrays) in unions with the
DECLARE_FLEX_ARRAY() helper macro.

This fixes warnings such as:

fs/hpfs/anode.c: In function 'hpfs_add_sector_to_btree':
fs/hpfs/anode.c:209:27: warning: array subscript 0 is outside the bounds of an interior zero-length array 'struct bplus_internal_node[0]' [-Wzero-length-bounds]
  209 |    anode->btree.u.internal[0].down = cpu_to_le32(a);
      |    ~~~~~~~~~~~~~~~~~~~~~~~^~~
In file included from fs/hpfs/hpfs_fn.h:26,
                 from fs/hpfs/anode.c:10:
fs/hpfs/hpfs.h:412:32: note: while referencing 'internal'
  412 |     struct bplus_internal_node internal[0]; /* (internal) 2-word entries giving
      |                                ^~~~~~~~

drivers/net/can/usb/etas_es58x/es58x_fd.c: In function 'es58x_fd_tx_can_msg':
drivers/net/can/usb/etas_es58x/es58x_fd.c:360:35: warning: array subscript 65535 is outside the bounds of an interior zero-length array 'u8[0]' {aka 'unsigned char[]'} [-Wzero-length-bounds]
  360 |  tx_can_msg = (typeof(tx_can_msg))&es58x_fd_urb_cmd->raw_msg[msg_len];
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/net/can/usb/etas_es58x/es58x_core.h:22,
                 from drivers/net/can/usb/etas_es58x/es58x_fd.c:17:
drivers/net/can/usb/etas_es58x/es58x_fd.h:231:6: note: while referencing 'raw_msg'
  231 |   u8 raw_msg[0];
      |      ^~~~~~~

Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Ayush Sawal <ayush.sawal@chelsio.com>
Cc: Vinay Kumar Yadav <vinay.yadav@chelsio.com>
Cc: Rohit Maheshwari <rohitm@chelsio.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Kalle Valo <kvalo@codeaurora.org>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Stanislaw Gruszka <stf_xl@wp.pl>
Cc: Luca Coelho <luciano.coelho@intel.com>
Cc: "James E.J. Bottomley" <jejb@linux.ibm.com>
Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Daniel Borkmann <daniel@iogearbox.net>
Cc: Andrii Nakryiko <andrii@kernel.org>
Cc: Martin KaFai Lau <kafai@fb.com>
Cc: Song Liu <songliubraving@fb.com>
Cc: Yonghong Song <yhs@fb.com>
Cc: John Fastabend <john.fastabend@gmail.com>
Cc: KP Singh <kpsingh@kernel.org>
Cc: Johannes Berg <johannes.berg@intel.com>
Cc: Mordechay Goodstein <mordechay.goodstein@intel.com>
Cc: Lee Jones <lee.jones@linaro.org>
Cc: Wolfgang Grandegger <wg@grandegger.com>
Cc: Marc Kleine-Budde <mkl@pengutronix.de>
Cc: Arunachalam Santhanam <arunachalam.santhanam@in.bosch.com>
Cc: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Cc: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
Cc: linux-crypto@vger.kernel.org
Cc: ath10k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: linux-scsi@vger.kernel.org
Cc: linux-can@vger.kernel.org
Cc: bpf@vger.kernel.org
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de> # drivers/net/can/usb/etas_es58x/*
Signed-off-by: Kees Cook <keescook@chromium.org>
2021-10-18 12:28:53 -07:00
..
aic94xx_dev.c scsi: aic94xx: Fix a couple of kerneldoc formatting issues 2020-07-24 22:09:58 -04:00
aic94xx_dump.c scsi: aic94xx: Correct misspelling of function asd_dump_seq_state() 2021-03-18 23:35:54 -04:00
aic94xx_dump.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_hwi.c scsi: aic94xx: Fix a couple of misnamed function names 2021-03-15 22:14:50 -04:00
aic94xx_hwi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_init.c scsi: libsas: Add LUN number check in .slave_alloc callback 2021-06-22 21:33:33 -04:00
aic94xx_reg_def.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_reg.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_reg.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_sas.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_scb.c scsi: aic94xx: Switch back to original libsas event notifiers 2021-01-22 21:31:09 -05:00
aic94xx_sds.c treewide: Replace open-coded flex arrays in unions 2021-10-18 12:28:53 -07:00
aic94xx_sds.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_seq.c scsi: aic94xx: Document 'lseq' and repair asd_update_port_links() header 2020-07-15 17:25:12 -04:00
aic94xx_seq.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00
aic94xx_task.c scsi: libsas: Introduce more SAM status code aliases in enum exec_status 2021-06-02 16:10:46 -04:00
aic94xx_tmf.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
aic94xx.h scsi: aic94xx: Avoid -Wempty-body warning 2021-04-01 22:55:25 -04:00
Kconfig treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 457 2019-06-19 17:09:09 +02:00
Makefile treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 411 2019-06-05 17:37:14 +02:00