Skip to content
  • Arnd Bergmann's avatar
    c0ecbd66
    scsi: advansys: fix uninitialized data access · c0ecbd66
    Arnd Bergmann authored
    
    
    commit 44a5b977 upstream.
    
    gcc-7.0.1 now warns about a previously unnoticed access of uninitialized
    struct members:
    
    drivers/scsi/advansys.c: In function 'AscMsgOutSDTR':
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+5)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
             ((ushort)s_buffer[i + 1] << 8) | s_buffer[i]);
                              ^
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+7)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+5)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+7)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    
    The code has existed in this exact form at least since v2.6.12, and the
    warning seems correct. This uses named initializers to ensure we
    initialize all members of the structure.
    
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    c0ecbd66
    scsi: advansys: fix uninitialized data access
    Arnd Bergmann authored
    
    
    commit 44a5b977 upstream.
    
    gcc-7.0.1 now warns about a previously unnoticed access of uninitialized
    struct members:
    
    drivers/scsi/advansys.c: In function 'AscMsgOutSDTR':
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+5)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
             ((ushort)s_buffer[i + 1] << 8) | s_buffer[i]);
                              ^
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+7)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+5)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    drivers/scsi/advansys.c:3860:26: error: '*((void *)&sdtr_buf+7)' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    
    The code has existed in this exact form at least since v2.6.12, and the
    warning seems correct. This uses named initializers to ensure we
    initialize all members of the structure.
    
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Loading