tree:
https://github.com/bvanassche/linux scsi-for-next
head: d8044d773ae9d9e70f9c61f98296c6c8391447ad
commit: d8044d773ae9d9e70f9c61f98296c6c8391447ad [41/41] Change the return type of
fc_remote_port_chkready() into union scsi_status
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
#
https://github.com/bvanassche/linux/commit/d8044d773ae9d9e70f9c61f98296c6...
git remote add bvanassche
https://github.com/bvanassche/linux
git fetch --no-tags bvanassche scsi-for-next
git checkout d8044d773ae9d9e70f9c61f98296c6c8391447ad
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross W=1 ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/scsi/ibmvscsi/ibmvfc.c: In function 'ibmvfc_get_err_result':
drivers/scsi/ibmvscsi/ibmvfc.c:348:52: error: request for member 'combined' in
something not a structure or union
348 | return rsp->scsi_status | (cmd_status[err].result.combined << 16);
| ^
In file included from include/linux/kernel.h:10,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/scsi/ibmvscsi/ibmvfc.c:10:
drivers/scsi/ibmvscsi/ibmvfc.c: In function 'ibmvfc_queuecommand':
> include/linux/compiler.h:78:40: error: wrong type argument to
unary exclamation mark
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
drivers/scsi/ibmvscsi/ibmvfc.c:1916:6: note: in expansion of macro 'unlikely'
1916 | if (unlikely((rc = fc_remote_port_chkready(rport))) ||
| ^~~~~~~~
> include/linux/compiler.h:78:40: error: wrong type argument to
unary exclamation mark
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
drivers/scsi/ibmvscsi/ibmvfc.c:1917:6: note: in expansion of macro 'unlikely'
1917 | unlikely((rc = ibmvfc_host_chkready(vhost)))) {
| ^~~~~~~~
> drivers/scsi/ibmvscsi/ibmvfc.c:1947:20: error: incompatible types
when assigning to type 'union scsi_status' from type 'int'
1947
| if (likely(!(rc = ibmvfc_map_sg_data(cmnd, evt, vfc_cmd, vhost->dev))))
| ^~~~~~~~~~~~~~~~~~
include/linux/compiler.h:77:40: note: in definition of macro 'likely'
77 | # define likely(x) __builtin_expect(!!(x), 1)
| ^
> drivers/scsi/ibmvscsi/ibmvfc.c:1951:9: error: invalid operands to
binary == (have 'union scsi_status' and 'int')
1951 | if (rc ==
-ENOMEM)
| ^~
drivers/scsi/ibmvscsi/ibmvfc.c:1956:51: warning: format '%d' expects argument
of type 'int', but argument 4 has type 'union scsi_status' [-Wformat=]
1956 | "Failed to map DMA buffer for command. rc=%d\n", rc);
| ~^ ~~
| | |
| int union scsi_status
In file included from include/linux/kernel.h:10,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers/scsi/ibmvscsi/ibmvfc.c:10:
drivers/scsi/ibmvscsi/ibmvfc.c: In function 'ibmvfc_bsg_plogi':
> drivers/scsi/ibmvscsi/ibmvfc.c:2071:21: error: incompatible types
when assigning to type 'int' from type 'union scsi_status'
2071
| if (unlikely((rc = ibmvfc_host_chkready(vhost))))
| ^~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:78:42: note: in definition of macro 'unlikely'
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
drivers/scsi/ibmvscsi/ibmvfc.c: In function 'ibmvfc_bsg_request':
drivers/scsi/ibmvscsi/ibmvfc.c:2241:29: error: incompatible type for argument 2 of
'bsg_job_done'
2241 | bsg_job_done(job, bsg_reply->result,
| ~~~~~~~~~^~~~~~~~
| |
| union scsi_status
In file included from drivers/scsi/ibmvscsi/ibmvfc.c:21:
include/linux/bsg-lib.h:65:44: note: expected 'int' but argument is of type
'union scsi_status'
65 | void bsg_job_done(struct bsg_job *job, int result,
| ~~~~^~~~~~
drivers/scsi/ibmvscsi/ibmvfc.c: In function 'ibmvfc_slave_alloc':
> drivers/scsi/ibmvscsi/ibmvfc.c:3308:13: error: invalid operands
to binary || (have 'int' and 'union scsi_status')
3308 | if
(!rport || fc_remote_port_chkready(rport))
| ~~~~~~ ^~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| | |
| int union scsi_status
vim +1947 drivers/scsi/ibmvscsi/ibmvfc.c
fad74a1be2dbea Tyrel Datwyler 2020-11-17 1895
072b91f9c6510d Brian King 2008-07-01 1896 /**
072b91f9c6510d Brian King 2008-07-01 1897 * ibmvfc_queuecommand - The
queuecommand function of the scsi template
dd9c772971485d Lee Jones 2021-03-17 1898 * @shost: scsi host struct
072b91f9c6510d Brian King 2008-07-01 1899 * @cmnd: struct scsi_cmnd to be
executed
072b91f9c6510d Brian King 2008-07-01 1900 *
072b91f9c6510d Brian King 2008-07-01 1901 * Returns:
072b91f9c6510d Brian King 2008-07-01 1902 * 0 on success / other on failure
072b91f9c6510d Brian King 2008-07-01 1903 **/
654080d02edb60 Tyrel Datwyler 2021-01-06 1904 static int ibmvfc_queuecommand(struct
Scsi_Host *shost, struct scsi_cmnd *cmnd)
072b91f9c6510d Brian King 2008-07-01 1905 {
654080d02edb60 Tyrel Datwyler 2021-01-06 1906 struct ibmvfc_host *vhost =
shost_priv(shost);
072b91f9c6510d Brian King 2008-07-01 1907 struct fc_rport *rport =
starget_to_rport(scsi_target(cmnd->device));
072b91f9c6510d Brian King 2008-07-01 1908 struct ibmvfc_cmd *vfc_cmd;
5a9d16f71c264a Tyrel Datwyler 2020-11-17 1909 struct ibmvfc_fcp_cmd_iu *iu;
072b91f9c6510d Brian King 2008-07-01 1910 struct ibmvfc_event *evt;
cb72477be7290c Tyrel Datwyler 2021-01-14 1911 u32 tag_and_hwq =
blk_mq_unique_tag(cmnd->request);
cb72477be7290c Tyrel Datwyler 2021-01-14 1912 u16 hwq =
blk_mq_unique_tag_to_hwq(tag_and_hwq);
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1913 u16 scsi_channel;
d8044d773ae9d9 Bart Van Assche 2021-04-13 1914 union scsi_status rc;
072b91f9c6510d Brian King 2008-07-01 1915
072b91f9c6510d Brian King 2008-07-01 1916 if (unlikely((rc =
fc_remote_port_chkready(rport))) ||
072b91f9c6510d Brian King 2008-07-01 1917 unlikely((rc =
ibmvfc_host_chkready(vhost)))) {
d8044d773ae9d9 Bart Van Assche 2021-04-13 1918 cmnd->result = rc;
654080d02edb60 Tyrel Datwyler 2021-01-06 1919 cmnd->scsi_done(cmnd);
072b91f9c6510d Brian King 2008-07-01 1920 return 0;
072b91f9c6510d Brian King 2008-07-01 1921 }
072b91f9c6510d Brian King 2008-07-01 1922
fd78f07ace9e37 Bart Van Assche 2021-04-09 1923 cmnd->result.combined = (DID_OK
<< 16);
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1924 if (vhost->using_channels) {
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1925 scsi_channel = hwq %
vhost->scsi_scrqs.active_queues;
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1926 evt =
ibmvfc_get_event(&vhost->scsi_scrqs.scrqs[scsi_channel]);
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1927 evt->hwq = hwq %
vhost->scsi_scrqs.active_queues;
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1928 } else
e4b26f3db86498 Tyrel Datwyler 2021-01-06 1929 evt =
ibmvfc_get_event(&vhost->crq);
31750fbd7b6dec Tyrel Datwyler 2021-01-14 1930
072b91f9c6510d Brian King 2008-07-01 1931 ibmvfc_init_event(evt,
ibmvfc_scsi_done, IBMVFC_CMD_FORMAT);
072b91f9c6510d Brian King 2008-07-01 1932 evt->cmnd = cmnd;
fad74a1be2dbea Tyrel Datwyler 2020-11-17 1933
fad74a1be2dbea Tyrel Datwyler 2020-11-17 1934 vfc_cmd = ibmvfc_init_vfc_cmd(evt,
cmnd->device);
5a9d16f71c264a Tyrel Datwyler 2020-11-17 1935 iu = ibmvfc_get_fcp_iu(vhost,
vfc_cmd);
fad74a1be2dbea Tyrel Datwyler 2020-11-17 1936
5a9d16f71c264a Tyrel Datwyler 2020-11-17 1937 iu->xfer_len =
cpu_to_be32(scsi_bufflen(cmnd));
5a9d16f71c264a Tyrel Datwyler 2020-11-17 1938 memcpy(iu->cdb, cmnd->cmnd,
cmnd->cmd_len);
072b91f9c6510d Brian King 2008-07-01 1939
5066863337afdb Christoph Hellwig 2014-10-30 1940 if (cmnd->flags & SCMD_TAGGED)
{
5066863337afdb Christoph Hellwig 2014-10-30 1941 vfc_cmd->task_tag =
cpu_to_be64(cmnd->tag);
5a9d16f71c264a Tyrel Datwyler 2020-11-17 1942 iu->pri_task_attr =
IBMVFC_SIMPLE_TASK;
072b91f9c6510d Brian King 2008-07-01 1943 }
072b91f9c6510d Brian King 2008-07-01 1944
901d01c8e50c35 Tyrel Datwyler 2021-01-06 1945 vfc_cmd->correlation =
cpu_to_be64((u64)evt);
2aa0102c668830 Tyrel Datwyler 2020-11-17 1946
072b91f9c6510d Brian King 2008-07-01 @1947 if (likely(!(rc =
ibmvfc_map_sg_data(cmnd, evt, vfc_cmd, vhost->dev))))
072b91f9c6510d Brian King 2008-07-01 1948 return ibmvfc_send_event(evt, vhost,
0);
072b91f9c6510d Brian King 2008-07-01 1949
072b91f9c6510d Brian King 2008-07-01 1950 ibmvfc_free_event(evt);
072b91f9c6510d Brian King 2008-07-01 @1951 if (rc == -ENOMEM)
072b91f9c6510d Brian King 2008-07-01 1952 return SCSI_MLQUEUE_HOST_BUSY;
072b91f9c6510d Brian King 2008-07-01 1953
072b91f9c6510d Brian King 2008-07-01 1954 if (vhost->log_level >
IBMVFC_DEFAULT_LOG_LEVEL)
072b91f9c6510d Brian King 2008-07-01 1955 scmd_printk(KERN_ERR, cmnd,
072b91f9c6510d Brian King 2008-07-01 1956 "Failed to map DMA buffer
for command. rc=%d\n", rc);
072b91f9c6510d Brian King 2008-07-01 1957
fd78f07ace9e37 Bart Van Assche 2021-04-09 1958 cmnd->result.combined = DID_ERROR
<< 16;
654080d02edb60 Tyrel Datwyler 2021-01-06 1959 cmnd->scsi_done(cmnd);
072b91f9c6510d Brian King 2008-07-01 1960 return 0;
072b91f9c6510d Brian King 2008-07-01 1961 }
072b91f9c6510d Brian King 2008-07-01 1962
072b91f9c6510d Brian King 2008-07-01 1963 /**
072b91f9c6510d Brian King 2008-07-01 1964 * ibmvfc_sync_completion - Signal
that a synchronous command has completed
072b91f9c6510d Brian King 2008-07-01 1965 * @evt: ibmvfc event struct
072b91f9c6510d Brian King 2008-07-01 1966 *
072b91f9c6510d Brian King 2008-07-01 1967 **/
072b91f9c6510d Brian King 2008-07-01 1968 static void
ibmvfc_sync_completion(struct ibmvfc_event *evt)
072b91f9c6510d Brian King 2008-07-01 1969 {
072b91f9c6510d Brian King 2008-07-01 1970 /* copy the response back */
072b91f9c6510d Brian King 2008-07-01 1971 if (evt->sync_iu)
072b91f9c6510d Brian King 2008-07-01 1972 *evt->sync_iu =
*evt->xfer_iu;
072b91f9c6510d Brian King 2008-07-01 1973
072b91f9c6510d Brian King 2008-07-01 1974 complete(&evt->comp);
072b91f9c6510d Brian King 2008-07-01 1975 }
072b91f9c6510d Brian King 2008-07-01 1976
d31429e1517c00 Brian King 2009-10-19 1977 /**
d31429e1517c00 Brian King 2009-10-19 1978 * ibmvfc_bsg_timeout_done -
Completion handler for cancelling BSG commands
d31429e1517c00 Brian King 2009-10-19 1979 * @evt: struct ibmvfc_event
d31429e1517c00 Brian King 2009-10-19 1980 *
d31429e1517c00 Brian King 2009-10-19 1981 **/
d31429e1517c00 Brian King 2009-10-19 1982 static void
ibmvfc_bsg_timeout_done(struct ibmvfc_event *evt)
d31429e1517c00 Brian King 2009-10-19 1983 {
d31429e1517c00 Brian King 2009-10-19 1984 struct ibmvfc_host *vhost =
evt->vhost;
d31429e1517c00 Brian King 2009-10-19 1985
d31429e1517c00 Brian King 2009-10-19 1986 ibmvfc_free_event(evt);
d31429e1517c00 Brian King 2009-10-19 1987 vhost->aborting_passthru = 0;
d31429e1517c00 Brian King 2009-10-19 1988 dev_info(vhost->dev,
"Passthru command cancelled\n");
d31429e1517c00 Brian King 2009-10-19 1989 }
d31429e1517c00 Brian King 2009-10-19 1990
d31429e1517c00 Brian King 2009-10-19 1991 /**
d31429e1517c00 Brian King 2009-10-19 1992 * ibmvfc_bsg_timeout - Handle a BSG
timeout
75cc8cfc6e13d4 Johannes Thumshirn 2016-11-17 1993 * @job: struct bsg_job that timed
out
d31429e1517c00 Brian King 2009-10-19 1994 *
d31429e1517c00 Brian King 2009-10-19 1995 * Returns:
d31429e1517c00 Brian King 2009-10-19 1996 * 0 on success / other on failure
d31429e1517c00 Brian King 2009-10-19 1997 **/
75cc8cfc6e13d4 Johannes Thumshirn 2016-11-17 1998 static int ibmvfc_bsg_timeout(struct
bsg_job *job)
d31429e1517c00 Brian King 2009-10-19 1999 {
cd21c605b2cf1c Johannes Thumshirn 2016-11-17 2000 struct ibmvfc_host *vhost =
shost_priv(fc_bsg_to_shost(job));
d31429e1517c00 Brian King 2009-10-19 2001 unsigned long port_id = (unsigned
long)job->dd_data;
d31429e1517c00 Brian King 2009-10-19 2002 struct ibmvfc_event *evt;
d31429e1517c00 Brian King 2009-10-19 2003 struct ibmvfc_tmf *tmf;
d31429e1517c00 Brian King 2009-10-19 2004 unsigned long flags;
d31429e1517c00 Brian King 2009-10-19 2005 int rc;
d31429e1517c00 Brian King 2009-10-19 2006
d31429e1517c00 Brian King 2009-10-19 2007 ENTER;
d31429e1517c00 Brian King 2009-10-19 2008
spin_lock_irqsave(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2009 if (vhost->aborting_passthru ||
vhost->state != IBMVFC_ACTIVE) {
d31429e1517c00 Brian King 2009-10-19 2010 __ibmvfc_reset_host(vhost);
d31429e1517c00 Brian King 2009-10-19 2011
spin_unlock_irqrestore(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2012 return 0;
d31429e1517c00 Brian King 2009-10-19 2013 }
d31429e1517c00 Brian King 2009-10-19 2014
d31429e1517c00 Brian King 2009-10-19 2015 vhost->aborting_passthru = 1;
e4b26f3db86498 Tyrel Datwyler 2021-01-06 2016 evt =
ibmvfc_get_event(&vhost->crq);
d31429e1517c00 Brian King 2009-10-19 2017 ibmvfc_init_event(evt,
ibmvfc_bsg_timeout_done, IBMVFC_MAD_FORMAT);
d31429e1517c00 Brian King 2009-10-19 2018
d31429e1517c00 Brian King 2009-10-19 2019 tmf = &evt->iu.tmf;
d31429e1517c00 Brian King 2009-10-19 2020 memset(tmf, 0, sizeof(*tmf));
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2021 tmf->common.version =
cpu_to_be32(1);
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2022 tmf->common.opcode =
cpu_to_be32(IBMVFC_TMF_MAD);
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2023 tmf->common.length =
cpu_to_be16(sizeof(*tmf));
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2024 tmf->scsi_id =
cpu_to_be64(port_id);
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2025 tmf->cancel_key =
cpu_to_be32(IBMVFC_PASSTHRU_CANCEL_KEY);
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2026 tmf->my_cancel_key =
cpu_to_be32(IBMVFC_INTERNAL_CANCEL_KEY);
d31429e1517c00 Brian King 2009-10-19 2027 rc = ibmvfc_send_event(evt, vhost,
default_timeout);
d31429e1517c00 Brian King 2009-10-19 2028
d31429e1517c00 Brian King 2009-10-19 2029 if (rc != 0) {
d31429e1517c00 Brian King 2009-10-19 2030 vhost->aborting_passthru = 0;
d31429e1517c00 Brian King 2009-10-19 2031 dev_err(vhost->dev, "Failed
to send cancel event. rc=%d\n", rc);
d31429e1517c00 Brian King 2009-10-19 2032 rc = -EIO;
d31429e1517c00 Brian King 2009-10-19 2033 } else
d31429e1517c00 Brian King 2009-10-19 2034 dev_info(vhost->dev,
"Cancelling passthru command to port id 0x%lx\n",
d31429e1517c00 Brian King 2009-10-19 2035 port_id);
d31429e1517c00 Brian King 2009-10-19 2036
d31429e1517c00 Brian King 2009-10-19 2037
spin_unlock_irqrestore(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2038
d31429e1517c00 Brian King 2009-10-19 2039 LEAVE;
d31429e1517c00 Brian King 2009-10-19 2040 return rc;
d31429e1517c00 Brian King 2009-10-19 2041 }
d31429e1517c00 Brian King 2009-10-19 2042
d31429e1517c00 Brian King 2009-10-19 2043 /**
d31429e1517c00 Brian King 2009-10-19 2044 * ibmvfc_bsg_plogi - PLOGI into a
target to handle a BSG command
d31429e1517c00 Brian King 2009-10-19 2045 * @vhost: struct ibmvfc_host to send
command
d31429e1517c00 Brian King 2009-10-19 2046 * @port_id: port ID to send command
d31429e1517c00 Brian King 2009-10-19 2047 *
d31429e1517c00 Brian King 2009-10-19 2048 * Returns:
d31429e1517c00 Brian King 2009-10-19 2049 * 0 on success / other on failure
d31429e1517c00 Brian King 2009-10-19 2050 **/
d31429e1517c00 Brian King 2009-10-19 2051 static int ibmvfc_bsg_plogi(struct
ibmvfc_host *vhost, unsigned int port_id)
d31429e1517c00 Brian King 2009-10-19 2052 {
d31429e1517c00 Brian King 2009-10-19 2053 struct ibmvfc_port_login *plogi;
d31429e1517c00 Brian King 2009-10-19 2054 struct ibmvfc_target *tgt;
d31429e1517c00 Brian King 2009-10-19 2055 struct ibmvfc_event *evt;
d31429e1517c00 Brian King 2009-10-19 2056 union ibmvfc_iu rsp_iu;
d31429e1517c00 Brian King 2009-10-19 2057 unsigned long flags;
d31429e1517c00 Brian King 2009-10-19 2058 int rc = 0, issue_login = 1;
d31429e1517c00 Brian King 2009-10-19 2059
d31429e1517c00 Brian King 2009-10-19 2060 ENTER;
d31429e1517c00 Brian King 2009-10-19 2061
spin_lock_irqsave(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2062 list_for_each_entry(tgt,
&vhost->targets, queue) {
d31429e1517c00 Brian King 2009-10-19 2063 if (tgt->scsi_id == port_id) {
d31429e1517c00 Brian King 2009-10-19 2064 issue_login = 0;
d31429e1517c00 Brian King 2009-10-19 2065 break;
d31429e1517c00 Brian King 2009-10-19 2066 }
d31429e1517c00 Brian King 2009-10-19 2067 }
d31429e1517c00 Brian King 2009-10-19 2068
d31429e1517c00 Brian King 2009-10-19 2069 if (!issue_login)
d31429e1517c00 Brian King 2009-10-19 2070 goto unlock_out;
d31429e1517c00 Brian King 2009-10-19 @2071 if (unlikely((rc =
ibmvfc_host_chkready(vhost))))
d31429e1517c00 Brian King 2009-10-19 2072 goto unlock_out;
d31429e1517c00 Brian King 2009-10-19 2073
e4b26f3db86498 Tyrel Datwyler 2021-01-06 2074 evt =
ibmvfc_get_event(&vhost->crq);
d31429e1517c00 Brian King 2009-10-19 2075 ibmvfc_init_event(evt,
ibmvfc_sync_completion, IBMVFC_MAD_FORMAT);
d31429e1517c00 Brian King 2009-10-19 2076 plogi = &evt->iu.plogi;
d31429e1517c00 Brian King 2009-10-19 2077 memset(plogi, 0, sizeof(*plogi));
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2078 plogi->common.version =
cpu_to_be32(1);
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2079 plogi->common.opcode =
cpu_to_be32(IBMVFC_PORT_LOGIN);
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2080 plogi->common.length =
cpu_to_be16(sizeof(*plogi));
0aab6c3f125e9e Tyrel Datwyler 2014-06-26 2081 plogi->scsi_id =
cpu_to_be64(port_id);
d31429e1517c00 Brian King 2009-10-19 2082 evt->sync_iu = &rsp_iu;
d31429e1517c00 Brian King 2009-10-19 2083 init_completion(&evt->comp);
d31429e1517c00 Brian King 2009-10-19 2084
d31429e1517c00 Brian King 2009-10-19 2085 rc = ibmvfc_send_event(evt, vhost,
default_timeout);
d31429e1517c00 Brian King 2009-10-19 2086
spin_unlock_irqrestore(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2087
d31429e1517c00 Brian King 2009-10-19 2088 if (rc)
d31429e1517c00 Brian King 2009-10-19 2089 return -EIO;
d31429e1517c00 Brian King 2009-10-19 2090
d31429e1517c00 Brian King 2009-10-19 2091
wait_for_completion(&evt->comp);
d31429e1517c00 Brian King 2009-10-19 2092
d31429e1517c00 Brian King 2009-10-19 2093 if (rsp_iu.plogi.common.status)
d31429e1517c00 Brian King 2009-10-19 2094 rc = -EIO;
d31429e1517c00 Brian King 2009-10-19 2095
d31429e1517c00 Brian King 2009-10-19 2096
spin_lock_irqsave(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2097 ibmvfc_free_event(evt);
d31429e1517c00 Brian King 2009-10-19 2098 unlock_out:
d31429e1517c00 Brian King 2009-10-19 2099
spin_unlock_irqrestore(vhost->host->host_lock, flags);
d31429e1517c00 Brian King 2009-10-19 2100 LEAVE;
d31429e1517c00 Brian King 2009-10-19 2101 return rc;
d31429e1517c00 Brian King 2009-10-19 2102 }
d31429e1517c00 Brian King 2009-10-19 2103
:::::: The code at line 1947 was first introduced by commit
:::::: 072b91f9c6510d0ec4a49d07dbc318760c7da7b3 [SCSI] ibmvfc: IBM Power Virtual Fibre
Channel Adapter Client Driver
:::::: TO: Brian King <brking(a)linux.vnet.ibm.com>
:::::: CC: James Bottomley <James.Bottomley(a)HansenPartnership.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org