* [linux-stable-rc:linux-4.19.y 5303/9999] drivers/scsi/FlashPoint.c:2947:34: warning: equality comparison with extraneous parentheses
@ 2020-12-27 10:47 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-12-27 10:47 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 34724 bytes --]
TO: Joel Stanley <joel@jms.id.au>
CC: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
CC: Nick Desaulniers <ndesaulniers@google.com>
CC: Michael Ellerman <mpe@ellerman.id.au>
CC: Sasha Levin <alexander.levin@microsoft.com>
Hi Joel,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
head: e864f43593ccf9180c61738abdf1c1dde091367d
commit: b92e5db0f492026778cb31dfc479e50f33f75bca [5303/9999] powerpc/32: Avoid unsupported flags with clang
config: powerpc64-randconfig-r015-20201221 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project cee1e7d14f4628d6174b33640d502bff3b54ae45)
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
# install powerpc64 cross compiling tool for clang build
# apt-get install binutils-powerpc64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit/?id=b92e5db0f492026778cb31dfc479e50f33f75bca
git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
git fetch --no-tags linux-stable-rc linux-4.19.y
git checkout b92e5db0f492026778cb31dfc479e50f33f75bca
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc64
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 >>):
In file included from drivers/scsi/BusLogic.c:32:
In file included from include/linux/module.h:9:
In file included from include/linux/list.h:9:
In file included from include/linux/kernel.h:11:
In file included from include/linux/bitops.h:19:
In file included from arch/powerpc/include/asm/bitops.h:247:
In file included from include/asm-generic/bitops/le.h:6:
In file included from arch/powerpc/include/uapi/asm/byteorder.h:14:
In file included from include/linux/byteorder/big_endian.h:11:
include/linux/byteorder/generic.h:195:16: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare]
for (i = 0; i < len; i++)
~ ^ ~~~
include/linux/byteorder/generic.h:203:16: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare]
for (i = 0; i < len; i++)
~ ^ ~~~
In file included from drivers/scsi/BusLogic.c:32:
In file included from include/linux/module.h:10:
In file included from include/linux/stat.h:19:
In file included from include/linux/time.h:6:
In file included from include/linux/seqlock.h:36:
In file included from include/linux/spinlock.h:51:
In file included from include/linux/preempt.h:81:
In file included from ./arch/powerpc/include/generated/asm/preempt.h:1:
In file included from include/asm-generic/preempt.h:5:
include/linux/thread_info.h:141:29: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare]
if (unlikely(sz >= 0 && sz < bytes)) {
~~ ^ ~~~~~
include/linux/compiler.h:77:42: note: expanded from macro 'unlikely'
# define unlikely(x) __builtin_expect(!!(x), 0)
^
In file included from drivers/scsi/BusLogic.c:32:
In file included from include/linux/module.h:13:
In file included from include/linux/kmod.h:22:
In file included from include/linux/umh.h:4:
In file included from include/linux/gfp.h:6:
include/linux/mmzone.h:984:44: warning: comparison of integers of different signs: 'int' and 'enum zone_type' [-Wsign-compare]
if (likely(!nodes && zonelist_zone_idx(z) <= highest_zoneidx))
~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~
include/linux/compiler.h:76:40: note: expanded from macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
In file included from drivers/scsi/BusLogic.c:36:
In file included from include/linux/blkdev.h:16:
In file included from include/linux/pagemap.h:8:
In file included from include/linux/mm.h:26:
In file included from include/linux/page_ref.h:7:
include/linux/page-flags.h:162:21: warning: comparison of integers of different signs: 'const unsigned long' and 'long' [-Wsign-compare]
return page->flags == PAGE_POISON_PATTERN;
~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi/BusLogic.c:36:
In file included from include/linux/blkdev.h:16:
In file included from include/linux/pagemap.h:8:
include/linux/mm.h:560:14: warning: comparison of integers of different signs: 'unsigned long' and 'long' [-Wsign-compare]
return addr >= VMALLOC_START && addr < VMALLOC_END;
~~~~ ^ ~~~~~~~~~~~~~
In file included from drivers/scsi/BusLogic.c:36:
In file included from include/linux/blkdev.h:21:
include/linux/bio.h:412:14: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
if (sectors >= bio_sectors(bio))
~~~~~~~ ^ ~~~~~~~~~~~~~~~~
In file included from drivers/scsi/BusLogic.c:57:
drivers/scsi/FlashPoint.c:914:57: warning: missing field 'state' initializer [-Wmissing-field-initializers]
static SCCBSCAM_INFO FPT_scamInfo[MAX_SCSI_TAR] = { {{0}} };
^
>> drivers/scsi/FlashPoint.c:2947:34: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
drivers/scsi/FlashPoint.c:2947:34: note: remove extraneous parentheses around the comparison to silence this warning
if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
~ ^ ~
drivers/scsi/FlashPoint.c:2947:34: note: use '=' to turn this equality comparison into an assignment
if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
^~
=
drivers/scsi/FlashPoint.c:2956:39: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
else if ((currSCCB->Sccb_scsistat ==
~~~~~~~~~~~~~~~~~~~~~~~~^~
drivers/scsi/FlashPoint.c:2956:39: note: remove extraneous parentheses around the comparison to silence this warning
else if ((currSCCB->Sccb_scsistat ==
~ ^
drivers/scsi/FlashPoint.c:2956:39: note: use '=' to turn this equality comparison into an assignment
else if ((currSCCB->Sccb_scsistat ==
^~
=
drivers/scsi/BusLogic.c:157:9: warning: returning 'unsigned char [18]' from a function with result type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
return adapter->full_model;
^~~~~~~~~~~~~~~~~~~
drivers/scsi/BusLogic.c:1375:10: warning: passing 'unsigned char [6]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcpy(adapter->fw_ver, FLASHPOINT_FW_VER);
^~~~~~~~~~~~~~~
include/linux/string.h:425:37: note: passing argument to parameter 'p' here
__FORTIFY_INLINE char *strcpy(char *p, const char *q)
^
drivers/scsi/BusLogic.c:1451:10: warning: passing 'unsigned char [5]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcpy(model, "542B");
^~~~~
include/linux/string.h:425:37: note: passing argument to parameter 'p' here
__FORTIFY_INLINE char *strcpy(char *p, const char *q)
^
drivers/scsi/BusLogic.c:1456:10: warning: passing 'unsigned char [5]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcpy(model, "742A");
^~~~~
include/linux/string.h:425:37: note: passing argument to parameter 'p' here
__FORTIFY_INLINE char *strcpy(char *p, const char *q)
^
drivers/scsi/BusLogic.c:1459:10: warning: passing 'unsigned char [5]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcpy(model, "747A");
^~~~~
include/linux/string.h:425:37: note: passing argument to parameter 'p' here
__FORTIFY_INLINE char *strcpy(char *p, const char *q)
^
drivers/scsi/BusLogic.c:1512:13: warning: passing 'unsigned char [6]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
if (strcmp(adapter->fw_ver, "3.3") >= 0) {
^~~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1652:16: warning: passing 'unsigned char [9]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
if (strcmp(adapter->model, "BT-757") == 0)
^~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1698:13: warning: passing 'unsigned char [6]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
if (strcmp(adapter->fw_ver, "3.31") >= 0) {
^~~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1721:14: warning: passing 'unsigned char [6]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
if (strcmp(adapter->fw_ver, "4.22") >= 0)
^~~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1725:14: warning: passing 'unsigned char [6]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
if (strcmp(adapter->fw_ver, "3.35") >= 0)
^~~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1751:39: warning: passing 'unsigned char [9]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
if (adapter->bios_addr > 0 && strcmp(adapter->model, "BT-445S") == 0 &&
^~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1752:11: warning: passing 'unsigned char [6]' to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcmp(adapter->fw_ver, "3.37") < 0 &&
^~~~~~~~~~~~~~~
include/linux/string.h:44:31: note: passing argument to parameter here
extern int strcmp(const char *,const char *);
^
drivers/scsi/BusLogic.c:1763:9: warning: passing 'unsigned char [18]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcpy(adapter->full_model, "BusLogic ");
^~~~~~~~~~~~~~~~~~~
include/linux/string.h:425:37: note: passing argument to parameter 'p' here
__FORTIFY_INLINE char *strcpy(char *p, const char *q)
^
drivers/scsi/BusLogic.c:1764:9: warning: passing 'unsigned char [18]' to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign]
strcat(adapter->full_model, adapter->model);
^~~~~~~~~~~~~~~~~~~
include/linux/string.h:252:37: note: passing argument to parameter 'p' here
__FORTIFY_INLINE char *strcat(char *p, const char *q)
^
--
In file included from drivers/scsi/pcmcia/nsp_cs.c:28:
In file included from include/linux/module.h:9:
In file included from include/linux/list.h:9:
In file included from include/linux/kernel.h:11:
In file included from include/linux/bitops.h:19:
In file included from arch/powerpc/include/asm/bitops.h:247:
In file included from include/asm-generic/bitops/le.h:6:
In file included from arch/powerpc/include/uapi/asm/byteorder.h:14:
In file included from include/linux/byteorder/big_endian.h:11:
include/linux/byteorder/generic.h:195:16: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare]
for (i = 0; i < len; i++)
~ ^ ~~~
include/linux/byteorder/generic.h:203:16: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare]
for (i = 0; i < len; i++)
~ ^ ~~~
In file included from drivers/scsi/pcmcia/nsp_cs.c:28:
In file included from include/linux/module.h:10:
In file included from include/linux/stat.h:19:
In file included from include/linux/time.h:6:
In file included from include/linux/seqlock.h:36:
In file included from include/linux/spinlock.h:51:
In file included from include/linux/preempt.h:81:
In file included from ./arch/powerpc/include/generated/asm/preempt.h:1:
In file included from include/asm-generic/preempt.h:5:
include/linux/thread_info.h:141:29: warning: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Wsign-compare]
if (unlikely(sz >= 0 && sz < bytes)) {
~~ ^ ~~~~~
include/linux/compiler.h:77:42: note: expanded from macro 'unlikely'
# define unlikely(x) __builtin_expect(!!(x), 0)
^
In file included from drivers/scsi/pcmcia/nsp_cs.c:28:
In file included from include/linux/module.h:13:
In file included from include/linux/kmod.h:22:
In file included from include/linux/umh.h:4:
In file included from include/linux/gfp.h:6:
include/linux/mmzone.h:984:44: warning: comparison of integers of different signs: 'int' and 'enum zone_type' [-Wsign-compare]
if (likely(!nodes && zonelist_zone_idx(z) <= highest_zoneidx))
~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~
include/linux/compiler.h:76:40: note: expanded from macro 'likely'
# define likely(x) __builtin_expect(!!(x), 1)
^
In file included from drivers/scsi/pcmcia/nsp_cs.c:38:
In file included from include/linux/blkdev.h:16:
In file included from include/linux/pagemap.h:8:
In file included from include/linux/mm.h:26:
In file included from include/linux/page_ref.h:7:
include/linux/page-flags.h:162:21: warning: comparison of integers of different signs: 'const unsigned long' and 'long' [-Wsign-compare]
return page->flags == PAGE_POISON_PATTERN;
~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~
In file included from drivers/scsi/pcmcia/nsp_cs.c:38:
In file included from include/linux/blkdev.h:16:
In file included from include/linux/pagemap.h:8:
include/linux/mm.h:560:14: warning: comparison of integers of different signs: 'unsigned long' and 'long' [-Wsign-compare]
return addr >= VMALLOC_START && addr < VMALLOC_END;
~~~~ ^ ~~~~~~~~~~~~~
In file included from drivers/scsi/pcmcia/nsp_cs.c:38:
In file included from include/linux/blkdev.h:21:
include/linux/bio.h:412:14: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
if (sectors >= bio_sectors(bio))
~~~~~~~ ^ ~~~~~~~~~~~~~~~~
In file included from drivers/scsi/pcmcia/nsp_cs.c:63:
drivers/scsi/pcmcia/nsp_io.h:230:16: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
for (i = 0; i < count; i++) {
~ ^ ~~~~~
drivers/scsi/pcmcia/nsp_io.h:256:16: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
for (i = 0; i < count; i++) {
~ ^ ~~~~~
drivers/scsi/pcmcia/nsp_cs.c:298:17: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for ( i = 0; i < ARRAY_SIZE(data->Sync); i++ ) {
~ ^ ~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/pcmcia/nsp_cs.c:583:13: warning: initializing 'char *' with an expression of type 'unsigned char [20]' converts between pointers to integer types with different sign [-Wpointer-sign]
char *buf = data->MsgBuffer;
^ ~~~~~~~~~~~~~~~
drivers/scsi/pcmcia/nsp_cs.c:631:22: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
if (data->FifoCount == count) {
~~~~~~~~~~~~~~~ ^ ~~~~~
drivers/scsi/pcmcia/nsp_cs.c:673:21: warning: comparison of integers of different signs: 'unsigned int' and 'int' [-Wsign-compare]
if (scmd_id(SCpnt) != target) {
~~~~~~~~~~~~~~ ^ ~~~~~~
drivers/scsi/pcmcia/nsp_cs.c:928:28: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
scsi_get_resid(SCpnt) <= PAGE_SIZE ) {
~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~
>> drivers/scsi/pcmcia/nsp_cs.c:1137:27: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
if ((tmpSC->SCp.Message == MSG_COMMAND_COMPLETE)) { /* all command complete and return status */
~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
drivers/scsi/pcmcia/nsp_cs.c:1137:27: note: remove extraneous parentheses around the comparison to silence this warning
if ((tmpSC->SCp.Message == MSG_COMMAND_COMPLETE)) { /* all command complete and return status */
~ ^ ~
drivers/scsi/pcmcia/nsp_cs.c:1137:27: note: use '=' to turn this equality comparison into an assignment
if ((tmpSC->SCp.Message == MSG_COMMAND_COMPLETE)) { /* all command complete and return status */
^~
=
drivers/scsi/pcmcia/nsp_cs.c:1408:17: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
for(id = 0; id < ARRAY_SIZE(data->Sync); id++) {
~~ ^ ~~~~~~~~~~~~~~~~~~~~~~
16 warnings generated.
Assembler messages:
Fatal error: invalid listing option `3'
clang-12: error: assembler command failed with exit code 1 (use -v to see invocation)
vim +2947 drivers/scsi/FlashPoint.c
^1da177e4c3f415 Linus Torvalds 2005-04-16 2877
^1da177e4c3f415 Linus Torvalds 2005-04-16 2878 /*---------------------------------------------------------------------
^1da177e4c3f415 Linus Torvalds 2005-04-16 2879 *
47b5d69c4aa753f James Bottomley 2005-04-24 2880 * Function: FPT_sdecm
^1da177e4c3f415 Linus Torvalds 2005-04-16 2881 *
25985edcedea639 Lucas De Marchi 2011-03-30 2882 * Description: Determine the proper response to the message from the
^1da177e4c3f415 Linus Torvalds 2005-04-16 2883 * target device.
^1da177e4c3f415 Linus Torvalds 2005-04-16 2884 *
^1da177e4c3f415 Linus Torvalds 2005-04-16 2885 *---------------------------------------------------------------------*/
391e2f25601e34a Khalid Aziz 2013-05-16 2886 static void FPT_sdecm(unsigned char message, u32 port, unsigned char p_card)
^1da177e4c3f415 Linus Torvalds 2005-04-16 2887 {
69eb2ea47793366 Alexey Dobriyan 2006-03-08 2888 struct sccb *currSCCB;
13e6851aa1e8f7d Alexey Dobriyan 2006-03-08 2889 struct sccb_card *CurrCard;
f31dc0cde69761d Alexey Dobriyan 2006-03-08 2890 struct sccb_mgr_tar_info *currTar_Info;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2891
47b5d69c4aa753f James Bottomley 2005-04-24 2892 CurrCard = &FPT_BL_Card[p_card];
^1da177e4c3f415 Linus Torvalds 2005-04-16 2893 currSCCB = CurrCard->currentSCCB;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2894
47b5d69c4aa753f James Bottomley 2005-04-24 2895 currTar_Info = &FPT_sccbMgrTbl[p_card][currSCCB->TargID];
^1da177e4c3f415 Linus Torvalds 2005-04-16 2896
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2897 if (message == SMREST_DATA_PTR) {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2898 if (!(currSCCB->Sccb_XferState & F_NO_DATA_YET)) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2899 currSCCB->Sccb_ATC = currSCCB->Sccb_savedATC;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2900
47b5d69c4aa753f James Bottomley 2005-04-24 2901 FPT_hostDataXferRestart(currSCCB);
^1da177e4c3f415 Linus Torvalds 2005-04-16 2902 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2903
^1da177e4c3f415 Linus Torvalds 2005-04-16 2904 ACCEPT_MSG(port);
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2905 WR_HARPOON(port + hp_autostart_1,
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2906 (AUTO_IMMED + DISCONNECT_START));
^1da177e4c3f415 Linus Torvalds 2005-04-16 2907 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2908
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2909 else if (message == SMCMD_COMP) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2910
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2911 if (currSCCB->Sccb_scsistat == SELECT_Q_ST) {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2912 currTar_Info->TarStatus &=
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2913 ~(unsigned char)TAR_TAG_Q_MASK;
db038cf86fc63d3 Alexey Dobriyan 2006-03-08 2914 currTar_Info->TarStatus |= (unsigned char)TAG_Q_REJECT;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2915 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2916
^1da177e4c3f415 Linus Torvalds 2005-04-16 2917 ACCEPT_MSG(port);
^1da177e4c3f415 Linus Torvalds 2005-04-16 2918
^1da177e4c3f415 Linus Torvalds 2005-04-16 2919 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2920
^1da177e4c3f415 Linus Torvalds 2005-04-16 2921 else if ((message == SMNO_OP) || (message >= SMIDENT)
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2922 || (message == SMINIT_RECOVERY) || (message == SMREL_RECOVERY)) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2923
^1da177e4c3f415 Linus Torvalds 2005-04-16 2924 ACCEPT_MSG(port);
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2925 WR_HARPOON(port + hp_autostart_1,
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2926 (AUTO_IMMED + DISCONNECT_START));
^1da177e4c3f415 Linus Torvalds 2005-04-16 2927 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2928
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2929 else if (message == SMREJECT) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2930
^1da177e4c3f415 Linus Torvalds 2005-04-16 2931 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST) ||
^1da177e4c3f415 Linus Torvalds 2005-04-16 2932 (currSCCB->Sccb_scsistat == SELECT_WN_ST) ||
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2933 ((currTar_Info->TarStatus & TAR_SYNC_MASK) == SYNC_TRYING)
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2934 || ((currTar_Info->TarStatus & TAR_TAG_Q_MASK) ==
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2935 TAG_Q_TRYING))
^1da177e4c3f415 Linus Torvalds 2005-04-16 2936 {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2937 WRW_HARPOON((port + hp_intstat), BUS_FREE);
^1da177e4c3f415 Linus Torvalds 2005-04-16 2938
^1da177e4c3f415 Linus Torvalds 2005-04-16 2939 ACCEPT_MSG(port);
^1da177e4c3f415 Linus Torvalds 2005-04-16 2940
^1da177e4c3f415 Linus Torvalds 2005-04-16 2941 while ((!(RD_HARPOON(port + hp_scsisig) & SCSI_REQ)) &&
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2942 (!(RDW_HARPOON((port + hp_intstat)) & BUS_FREE)))
^1da177e4c3f415 Linus Torvalds 2005-04-16 2943 {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2944 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2945
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2946 if (currSCCB->Lun == 0x00) {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 @2947 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2948
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2949 currTar_Info->TarStatus |=
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2950 (unsigned char)SYNC_SUPPORTED;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2951
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2952 currTar_Info->TarEEValue &=
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2953 ~EE_SYNC_MASK;
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2954 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2955
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2956 else if ((currSCCB->Sccb_scsistat ==
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2957 SELECT_WN_ST)) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2958
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2959 currTar_Info->TarStatus =
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2960 (currTar_Info->
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2961 TarStatus & ~WIDE_ENABLED) |
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2962 WIDE_NEGOCIATED;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2963
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2964 currTar_Info->TarEEValue &=
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2965 ~EE_WIDE_SCSI;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2966
^1da177e4c3f415 Linus Torvalds 2005-04-16 2967 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2968
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2969 else if ((currTar_Info->
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2970 TarStatus & TAR_TAG_Q_MASK) ==
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2971 TAG_Q_TRYING) {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2972 currTar_Info->TarStatus =
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2973 (currTar_Info->
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2974 TarStatus & ~(unsigned char)
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2975 TAR_TAG_Q_MASK) | TAG_Q_REJECT;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2976
^1da177e4c3f415 Linus Torvalds 2005-04-16 2977 currSCCB->ControlByte &= ~F_USE_CMD_Q;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2978 CurrCard->discQCount--;
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2979 CurrCard->discQ_Tbl[currSCCB->
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2980 Sccb_tag] = NULL;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2981 currSCCB->Sccb_tag = 0x00;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2982
^1da177e4c3f415 Linus Torvalds 2005-04-16 2983 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2984 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2985
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2986 if (RDW_HARPOON((port + hp_intstat)) & BUS_FREE) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2987
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2988 if (currSCCB->Lun == 0x00) {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2989 WRW_HARPOON((port + hp_intstat),
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2990 BUS_FREE);
^1da177e4c3f415 Linus Torvalds 2005-04-16 2991 CurrCard->globalFlags |= F_NEW_SCCB_CMD;
^1da177e4c3f415 Linus Torvalds 2005-04-16 2992 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2993 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 2994
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2995 else {
^1da177e4c3f415 Linus Torvalds 2005-04-16 2996
^1da177e4c3f415 Linus Torvalds 2005-04-16 2997 if ((CurrCard->globalFlags & F_CONLUN_IO) &&
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2998 ((currTar_Info->
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 2999 TarStatus & TAR_TAG_Q_MASK) !=
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3000 TAG_Q_TRYING))
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3001 currTar_Info->TarLUNBusy[currSCCB->
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3002 Lun] = 1;
^1da177e4c3f415 Linus Torvalds 2005-04-16 3003 else
47b5d69c4aa753f James Bottomley 2005-04-24 3004 currTar_Info->TarLUNBusy[0] = 1;
^1da177e4c3f415 Linus Torvalds 2005-04-16 3005
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3006 currSCCB->ControlByte &=
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3007 ~(unsigned char)F_USE_CMD_Q;
^1da177e4c3f415 Linus Torvalds 2005-04-16 3008
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3009 WR_HARPOON(port + hp_autostart_1,
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3010 (AUTO_IMMED + DISCONNECT_START));
^1da177e4c3f415 Linus Torvalds 2005-04-16 3011
^1da177e4c3f415 Linus Torvalds 2005-04-16 3012 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3013 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3014
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3015 else {
^1da177e4c3f415 Linus Torvalds 2005-04-16 3016 ACCEPT_MSG(port);
^1da177e4c3f415 Linus Torvalds 2005-04-16 3017
^1da177e4c3f415 Linus Torvalds 2005-04-16 3018 while ((!(RD_HARPOON(port + hp_scsisig) & SCSI_REQ)) &&
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3019 (!(RDW_HARPOON((port + hp_intstat)) & BUS_FREE)))
^1da177e4c3f415 Linus Torvalds 2005-04-16 3020 {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3021 }
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3022
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3023 if (!(RDW_HARPOON((port + hp_intstat)) & BUS_FREE)) {
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3024 WR_HARPOON(port + hp_autostart_1,
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3025 (AUTO_IMMED + DISCONNECT_START));
^1da177e4c3f415 Linus Torvalds 2005-04-16 3026 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3027 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3028 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3029
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3030 else if (message == SMEXT) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 3031
^1da177e4c3f415 Linus Torvalds 2005-04-16 3032 ACCEPT_MSG(port);
47b5d69c4aa753f James Bottomley 2005-04-24 3033 FPT_shandem(port, p_card, currSCCB);
^1da177e4c3f415 Linus Torvalds 2005-04-16 3034 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3035
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3036 else if (message == SMIGNORWR) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 3037
^1da177e4c3f415 Linus Torvalds 2005-04-16 3038 ACCEPT_MSG(port); /* ACK the RESIDUE MSG */
^1da177e4c3f415 Linus Torvalds 2005-04-16 3039
47b5d69c4aa753f James Bottomley 2005-04-24 3040 message = FPT_sfm(port, currSCCB);
^1da177e4c3f415 Linus Torvalds 2005-04-16 3041
^1da177e4c3f415 Linus Torvalds 2005-04-16 3042 if (currSCCB->Sccb_scsimsg != SMPARITY)
^1da177e4c3f415 Linus Torvalds 2005-04-16 3043 ACCEPT_MSG(port);
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3044 WR_HARPOON(port + hp_autostart_1,
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3045 (AUTO_IMMED + DISCONNECT_START));
^1da177e4c3f415 Linus Torvalds 2005-04-16 3046 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3047
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3048 else {
^1da177e4c3f415 Linus Torvalds 2005-04-16 3049
^1da177e4c3f415 Linus Torvalds 2005-04-16 3050 currSCCB->HostStatus = SCCB_PHASE_SEQUENCE_FAIL;
^1da177e4c3f415 Linus Torvalds 2005-04-16 3051 currSCCB->Sccb_scsimsg = SMREJECT;
^1da177e4c3f415 Linus Torvalds 2005-04-16 3052
^1da177e4c3f415 Linus Torvalds 2005-04-16 3053 ACCEPT_MSG_ATN(port);
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3054 WR_HARPOON(port + hp_autostart_1,
5c04a7b8981f285 Alexey Dobriyan 2006-03-08 3055 (AUTO_IMMED + DISCONNECT_START));
^1da177e4c3f415 Linus Torvalds 2005-04-16 3056 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3057 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 3058
:::::: The code at line 2947 was first introduced by commit
:::::: 5c04a7b8981f2855869bf04c881553135445d701 [SCSI] drivers/scsi/FlashPoint.c: Lindent
:::::: TO: Alexey Dobriyan <adobriyan@gmail.com>
:::::: CC: James Bottomley <jejb@mulgrave.il.steeleye.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 31341 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-12-27 10:47 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-27 10:47 [linux-stable-rc:linux-4.19.y 5303/9999] drivers/scsi/FlashPoint.c:2947:34: warning: equality comparison with extraneous parentheses kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.