• Kees Cook's avatar
    scsi: mpi3mr: Replace 1-element array with flex-array · c6f2e6b6
    Kees Cook authored
    Nothing else defined MPI3_NVME_ENCAP_CMD_MAX, so the "command" buffer was
    being defined as a fake flexible array of size 1. Replace this with a
    proper flex array. Avoids this GCC 13 warning under -fstrict-flex-arrays=3:
    
    In function 'fortify_memset_chk',
        inlined from 'mpi3mr_build_nvme_sgl' at ../drivers/scsi/mpi3mr/mpi3mr_app.c:693:2,
        inlined from 'mpi3mr_bsg_process_mpt_cmds.constprop' at ../drivers/scsi/mpi3mr/mpi3mr_app.c:1214:8:
    ../include/linux/fortify-string.h:430:25: warning: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()?  [-Wattribute-warning]
      430 |                         __write_overflow_field(p_size_field, size);
          |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Link: https://lore.kernel.org/r/20230204183715.never.937-kees@kernel.org
    Cc: Sumit Saxena <sumit.saxena@broadcom.com>
    Cc: Himanshu Madhani <himanshu.madhani@oracle.com>
    Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
    Cc: Stephen Rothwell <sfr@canb.auug.org.au>
    Cc: kernel test robot <lkp@intel.com>
    Signed-off-by: default avatarKees Cook <keescook@chromium.org>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    c6f2e6b6
scsi_bsg_mpi3mr.h 15 KB