[hare-scsi-devel:scsi-private.v2 5/21] drivers/scsi/scsi_lib.c:1622:17: error: implicit declaration of function 'scsi_device_queue_ready'; did you mean 'scsi_dev_queue_ready'?

From: kernel test robot
Date: Wed Nov 10 2021 - 18:35:12 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git scsi-private.v2
head: 915b986531e666d840f72752c597fb6b4ea69d35
commit: 24f76588c2ef9b23dea2ead5dca53992e15d083b [5/21] scsi: check for NULL queuedata
config: ia64-defconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 11.2.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://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git/commit/?id=24f76588c2ef9b23dea2ead5dca53992e15d083b
git remote add hare-scsi-devel https://git.kernel.org/pub/scm/linux/kernel/git/hare/scsi-devel.git
git fetch --no-tags hare-scsi-devel scsi-private.v2
git checkout 24f76588c2ef9b23dea2ead5dca53992e15d083b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=ia64

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

drivers/scsi/scsi_lib.c: In function 'scsi_mq_get_budget':
>> drivers/scsi/scsi_lib.c:1622:17: error: implicit declaration of function 'scsi_device_queue_ready'; did you mean 'scsi_dev_queue_ready'? [-Werror=implicit-function-declaration]
1622 | token = scsi_device_queue_ready(q, sdev);
| ^~~~~~~~~~~~~~~~~~~~~~~
| scsi_dev_queue_ready
drivers/scsi/scsi_lib.c: In function 'scsi_get_internal_cmd':
drivers/scsi/scsi_lib.c:1997:27: error: 'REQ_INTERNAL' undeclared (first use in this function); did you mean 'MNT_INTERNAL'?
1997 | unsigned int op = REQ_INTERNAL | op_flags;
| ^~~~~~~~~~~~
| MNT_INTERNAL
drivers/scsi/scsi_lib.c:1997:27: note: each undeclared identifier is reported only once for each function it appears in
drivers/scsi/scsi_lib.c:2005:13: error: 'struct scsi_cmnd' has no member named 'request'
2005 | scmd->request = rq;
| ^~
drivers/scsi/scsi_lib.c: In function 'scsi_put_internal_cmd':
drivers/scsi/scsi_lib.c:2019:13: error: implicit declaration of function 'blk_rq_is_internal'; did you mean 'blk_qc_t_is_internal'? [-Werror=implicit-function-declaration]
2019 | if (blk_rq_is_internal(rq))
| ^~~~~~~~~~~~~~~~~~
| blk_qc_t_is_internal
cc1: some warnings being treated as errors


vim +1622 drivers/scsi/scsi_lib.c

1614
1615 static int scsi_mq_get_budget(struct request_queue *q)
1616 {
1617 struct scsi_device *sdev = q->queuedata;
1618 int token = scsi_dev_queue_ready(q, sdev);
1619
1620 if (!sdev)
1621 return -1;
> 1622 token = scsi_device_queue_ready(q, sdev);
1623 if (token >= 0)
1624 return token;
1625
1626 atomic_inc(&sdev->restarts);
1627
1628 /*
1629 * Orders atomic_inc(&sdev->restarts) and atomic_read(&sdev->device_busy).
1630 * .restarts must be incremented before .device_busy is read because the
1631 * code in scsi_run_queue_async() depends on the order of these operations.
1632 */
1633 smp_mb__after_atomic();
1634
1635 /*
1636 * If all in-flight requests originated from this LUN are completed
1637 * before reading .device_busy, sdev->device_busy will be observed as
1638 * zero, then blk_mq_delay_run_hw_queues() will dispatch this request
1639 * soon. Otherwise, completion of one of these requests will observe
1640 * the .restarts flag, and the request queue will be run for handling
1641 * this request, see scsi_end_request().
1642 */
1643 if (unlikely(scsi_device_busy(sdev) == 0 &&
1644 !scsi_device_blocked(sdev)))
1645 blk_mq_delay_run_hw_queues(sdev->request_queue, SCSI_QUEUE_DELAY);
1646 return -1;
1647 }
1648

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip