Re: [PATCH 4/5] ibmvfc: complete commands outside the host/queue lock

kernel test robot
2020-12-29T02:31:15Z

[-- Attachment #1: Type: text/plain, Size: 5008 bytes --]

Hi Tyrel,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20201218]
[also build test WARNING on v5.11-rc1]
[cannot apply to powerpc/next v5.10 v5.10-rc7 v5.10-rc6]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/Tyrel-Datwyler/ibmvfc-MQ-preparatory-locking-work/20201219-072334
base: 0d52778b8710eb11cb616761a02aee0a7fd60425
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/0day-ci/linux/commit/2609a2691baaf1f06d8306a56575ae2eb076f625
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Tyrel-Datwyler/ibmvfc-MQ-preparatory-locking-work/20201219-072334
git checkout 2609a2691baaf1f06d8306a56575ae2eb076f625
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc

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

All warnings (new ones prefixed by >>):

>> drivers/scsi/ibmvscsi/ibmvfc.c:1418:6: warning: no previous prototype for 'ibmvfc_locked_done' [-Wmissing-prototypes]
1418 | void ibmvfc_locked_done(struct ibmvfc_event *evt)
| ^~~~~~~~~~~~~~~~~~
In file included from arch/powerpc/include/asm/paca.h:15,
from arch/powerpc/include/asm/current.h:13,
from include/linux/thread_info.h:21,
from include/asm-generic/preempt.h:5,
from ./arch/powerpc/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:78,
from include/linux/spinlock.h:51,
from include/linux/mmzone.h:8,
from include/linux/gfp.h:6,
from include/linux/umh.h:4,
from include/linux/kmod.h:9,
from include/linux/module.h:16,
from drivers/scsi/ibmvscsi/ibmvfc.c:10:
In function 'strncpy',
inlined from 'ibmvfc_gather_partition_info' at drivers/scsi/ibmvscsi/ibmvfc.c:1267:3,
inlined from 'ibmvfc_npiv_login' at drivers/scsi/ibmvscsi/ibmvfc.c:4538:2:
include/linux/string.h:291:30: warning: '__builtin_strncpy' specified bound 97 equals destination size [-Wstringop-truncation]
291 | #define __underlying_strncpy __builtin_strncpy
| ^
include/linux/string.h:301:9: note: in expansion of macro '__underlying_strncpy'
301 | return __underlying_strncpy(p, q, size);
| ^~~~~~~~~~~~~~~~~~~~
In function 'strncpy',
inlined from 'ibmvfc_set_login_info' at drivers/scsi/ibmvscsi/ibmvfc.c:1307:2,
inlined from 'ibmvfc_npiv_login' at drivers/scsi/ibmvscsi/ibmvfc.c:4539:2:
include/linux/string.h:291:30: warning: '__builtin_strncpy' specified bound 256 equals destination size [-Wstringop-truncation]
291 | #define __underlying_strncpy __builtin_strncpy
| ^
include/linux/string.h:301:9: note: in expansion of macro '__underlying_strncpy'
301 | return __underlying_strncpy(p, q, size);
| ^~~~~~~~~~~~~~~~~~~~
In function 'strncpy',
inlined from 'ibmvfc_set_login_info' at drivers/scsi/ibmvscsi/ibmvfc.c:1312:2,
inlined from 'ibmvfc_npiv_login' at drivers/scsi/ibmvscsi/ibmvfc.c:4539:2:
include/linux/string.h:291:30: warning: '__builtin_strncpy' specified bound 256 equals destination size [-Wstringop-truncation]
291 | #define __underlying_strncpy __builtin_strncpy
| ^
include/linux/string.h:301:9: note: in expansion of macro '__underlying_strncpy'
301 | return __underlying_strncpy(p, q, size);
| ^~~~~~~~~~~~~~~~~~~~

vim +/ibmvfc_locked_done +1418 drivers/scsi/ibmvscsi/ibmvfc.c

1409
1410 /**
1411 * ibmvfc_locked_done - Calls evt completion with host_lock held
1412 * @evt: ibmvfc evt to complete
1413 *
1414 * All non-scsi command completion callbacks have the expectation that the
1415 * host_lock is held. This callback is used by ibmvfc_init_event to wrap a
1416 * MAD evt with the host_lock.
1417 **/
> 1418 void ibmvfc_locked_done(struct ibmvfc_event *evt)
1419 {
1420 unsigned long flags;
1421
1422 spin_lock_irqsave(evt->vhost->host->host_lock, flags);
1423 evt->_done(evt);
1424 spin_unlock_irqrestore(evt->vhost->host->host_lock, flags);
1425 }
1426

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 72494 bytes --]