linux/include/scsi
Sedat Dilek 1ef1b20f87 scsi: fcoe: make use of fip_mode enum complete
[ Upstream commit 8beb90aaf3 ]

commit 1917d42d14 ("fcoe: use enum for fip_mode") introduces a separate
enum for the fip_mode that shall be used during initialisation handling
until it is passed to fcoe_ctrl_link_up to set the initial fip_state.  That
change was incomplete and gcc quietly converted in various places between
the fip_mode and the fip_state enum values with implicit enum conversions,
which fortunately cannot cause any issues in the actual code's execution.

clang however warns about these implicit enum conversions in the scsi
drivers. This commit consolidates the use of the two enums, guided by
clang's enum-conversion warnings.

This commit now completes the use of the fip_mode: It expects and uses
fip_mode in {bnx2fc,fcoe}_interface_create and fcoe_ctlr_init, and it calls
fcoe_ctrl_set_set() with the correct values in fcoe_ctlr_link_up().  It
also breaks the association between FIP_MODE_AUTO and FIP_ST_AUTO to
indicate these two enums are distinct.

Link: https://github.com/ClangBuiltLinux/linux/issues/151
Fixes: 1917d42d14 ("fcoe: use enum for fip_mode")
Reported-by: Dmitry Golovin <dima@golovin.in>
Original-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
CC: Lukas Bulwahn <lukas.bulwahn@gmail.com>
CC: Nick Desaulniers <ndesaulniers@google.com>
CC: Nathan Chancellor <natechancellor@gmail.com>
Reviewed-by: Nathan Chancellor <natechancellor@gmail.com>
Tested-by: Nathan Chancellor <natechancellor@gmail.com>
Suggested-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>
Signed-off-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-04-05 22:33:04 +02:00
..
fc
fc_encode.h
fc_frame.h
fcoe_sysfs.h
iscsi_if.h
iscsi_proto.h
iser.h
libfc.h
libfcoe.h scsi: fcoe: make use of fip_mode enum complete 2019-04-05 22:33:04 +02:00
libiscsi_tcp.h
libiscsi.h
libsas.h scsi: libsas: dynamically allocate and free ata host 2018-06-19 22:02:25 -04:00
osd_attributes.h
osd_initiator.h scsi/osd: remove the gfp argument to osd_start_request 2018-05-14 08:55:09 -06:00
osd_ore.h
osd_protocol.h
osd_sec.h
osd_sense.h
osd_types.h
sas_ata.h
sas.h
scsi_bsg_iscsi.h
scsi_cmnd.h scsi: Check sense buffer size at build time 2018-08-02 15:23:51 -06:00
scsi_common.h
scsi_dbg.h scsi: core: remove reference to scsi_show_extd_sense() 2018-04-18 23:37:39 -04:00
scsi_device.h scsi: Check sense buffer size at build time 2018-08-02 15:23:51 -06:00
scsi_devinfo.h scsi: devinfo: BLIST_RETRY_ASC_C1 for Fujitsu ETERNUS 2018-04-20 19:14:36 -04:00
scsi_dh.h
scsi_driver.h
scsi_eh.h
scsi_host.h scsi: read host_busy via scsi_host_busy() 2018-06-26 12:53:26 -04:00
scsi_ioctl.h
scsi_proto.h scsi: core: Add VENDOR_SPECIFIC sense code definitions 2018-01-22 20:04:02 -05:00
scsi_request.h
scsi_tcq.h
scsi_transport_fc.h scsi: scsi_transport_fc: fix typos on 64/128 GBit define names 2018-01-03 22:51:02 -05:00
scsi_transport_iscsi.h
scsi_transport_sas.h scsi: libsas: direct call probe and destruct 2018-01-10 23:24:02 -05:00
scsi_transport_spi.h
scsi_transport_srp.h
scsi_transport.h
scsi.h scsi: core: Make SCSI Status CONDITION MET equivalent to GOOD 2018-03-12 21:55:24 -04:00
scsicam.h
sg.h
srp.h IB/srp: Add RDMA/CM support 2018-01-23 11:35:04 -05:00
viosrp.h