Hi Ming, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on scsi/for-next] [also build test WARNING on mkp-scsi/for-next block/for-next v5.6-rc1 next-20200213] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Ming-Lei/scsi-tracking-device-queue-depth-via-sbitmap/20200213-215727 base: https://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git for-next config: arm-allmodconfig (attached as .config) compiler: arm-linux-gnueabi-gcc (GCC) 7.5.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.5.0 make.cross ARCH=arm If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): In file included from drivers/message/fusion/mptbase.h:839:0, from drivers/message/fusion/mptsas.c:63: drivers/message/fusion/mptsas.c: In function 'mptsas_send_link_status_event': drivers/message/fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message/fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message/fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message/fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message/fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message/fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message/fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message/fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message/fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message/fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message/fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message/fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message/fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message/fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message/fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message/fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message/fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message/fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message/fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message/fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ -- In file included from drivers/message//fusion/mptbase.h:839:0, from drivers/message//fusion/mptsas.c:63: drivers/message//fusion/mptsas.c: In function 'mptsas_send_link_status_event': drivers/message//fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message//fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message//fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message//fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message//fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message//fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message//fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message//fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message//fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message//fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message//fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message//fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message//fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message//fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message//fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message//fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ drivers/message//fusion/mptsas.c:3759:26: error: 'struct scsi_device' has no member named 'device_busy'; did you mean 'device_blocked'? atomic_read(&sdev->device_busy))); ^ drivers/message//fusion/mptdebug.h:72:3: note: in definition of macro 'MPT_CHECK_LOGGING' CMD; \ ^~~ drivers/message//fusion/mptsas.c:3755:7: note: in expansion of macro 'devtprintk' devtprintk(ioc, ^~~~~~~~~~ include/linux/compiler.h:269:22: note: in expansion of macro '__READ_ONCE' #define READ_ONCE(x) __READ_ONCE(x, 1) ^~~~~~~~~~~ >> arch/arm/include/asm/atomic.h:27:24: note: in expansion of macro 'READ_ONCE' #define atomic_read(v) READ_ONCE((v)->counter) ^~~~~~~~~ drivers/message//fusion/mptsas.c:3759:7: note: in expansion of macro 'atomic_read' atomic_read(&sdev->device_busy))); ^~~~~~~~~~~ vim +/READ_ONCE +27 arch/arm/include/asm/atomic.h ^1da177e4c3f415 include/asm-arm/atomic.h Linus Torvalds 2005-04-16 21 200b812d0084f80 arch/arm/include/asm/atomic.h Catalin Marinas 2009-09-18 22 /* 200b812d0084f80 arch/arm/include/asm/atomic.h Catalin Marinas 2009-09-18 23 * On ARM, ordinary assignment (str instruction) doesn't clear the local 200b812d0084f80 arch/arm/include/asm/atomic.h Catalin Marinas 2009-09-18 24 * strex/ldrex monitor on some implementations. The reason we can use it for 200b812d0084f80 arch/arm/include/asm/atomic.h Catalin Marinas 2009-09-18 25 * atomic_set() is the clrex or dummy strex done on every exception return. 200b812d0084f80 arch/arm/include/asm/atomic.h Catalin Marinas 2009-09-18 26 */ 62e8a3258bda118 arch/arm/include/asm/atomic.h Peter Zijlstra 2015-09-18 @27 #define atomic_read(v) READ_ONCE((v)->counter) 62e8a3258bda118 arch/arm/include/asm/atomic.h Peter Zijlstra 2015-09-18 28 #define atomic_set(v,i) WRITE_ONCE(((v)->counter), (i)) ^1da177e4c3f415 include/asm-arm/atomic.h Linus Torvalds 2005-04-16 29 :::::: The code at line 27 was first introduced by commit :::::: 62e8a3258bda118f24ff462fe04cfbe75b8189b5 atomic, arch: Audit atomic_{read,set}() :::::: TO: Peter Zijlstra <peterz@xxxxxxxxxxxxx> :::::: CC: Ingo Molnar <mingo@xxxxxxxxxx> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip