Re: [PATCH] scsi: ibmvscsis: Silence -Warray-bounds warning

From: Martin K. Petersen
Date: Mon Feb 14 2022 - 22:19:57 EST


On Mon, 7 Feb 2022 22:12:31 -0800, Kees Cook wrote:

> Instead of doing a cast to storage that is too small, add a union for
> the high 64 bits. Silences the warnings under -Warray-bounds:
>
> drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c: In function 'ibmvscsis_send_messages':
> drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c:1934:44: error: array subscript 'struct viosrp_crq[0]' is partly outside array bounds of 'u64[1]' {aka 'long long unsigned int[1]'} [-Werror=array-bounds]
> 1934 | crq->valid = VALID_CMD_RESP_EL;
> | ^~
> drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c:1875:13: note: while referencing 'msg_hi'
> 1875 | u64 msg_hi = 0;
> | ^~~~~~
>
> [...]

Applied to 5.18/scsi-queue, thanks!

[1/1] scsi: ibmvscsis: Silence -Warray-bounds warning
https://git.kernel.org/mkp/scsi/c/03e4383c7ce3

--
Martin K. Petersen Oracle Linux Engineering