Re: [PATCH 1/3] SCSI: Introduce device_lock and target_lock in Scsi_Host

From: kbuild test robot
Date: Wed Oct 14 2015 - 10:36:43 EST


Hi Johannes,

[auto build test ERROR on scsi/for-next -- if it's inappropriate base, please suggest rules for selecting the more suitable base]

url: https://github.com/0day-ci/linux/commits/Johannes-Thumshirn/SCSI-Introduce-device_lock-and-target_lock-in-Scsi_Host/20151014-215532
config: i386-allmodconfig (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

All error/warnings (new ones prefixed by >>):

In file included from include/linux/mmzone.h:7:0,
from include/linux/gfp.h:5,
from include/linux/slab.h:14,
from drivers/scsi/53c700.c:120:
drivers/scsi/53c700.c: In function 'process_script_interrupt':
>> drivers/scsi/53c700.c:1104:21: error: incompatible type for argument 1 of 'spinlock_check'
spin_lock_irqsave(host->device_lock, flags);
^
include/linux/spinlock.h:208:34: note: in definition of macro 'raw_spin_lock_irqsave'
flags = _raw_spin_lock_irqsave(lock); \
^
>> drivers/scsi/53c700.c:1104:3: note: in expansion of macro 'spin_lock_irqsave'
spin_lock_irqsave(host->device_lock, flags);
^
In file included from include/linux/mmzone.h:7:0,
from include/linux/gfp.h:5,
from include/linux/slab.h:14,
from drivers/scsi/53c700.c:120:
include/linux/spinlock.h:289:40: note: expected 'spinlock_t * {aka struct spinlock *}' but argument is of type 'spinlock_t {aka struct spinlock}'
static __always_inline raw_spinlock_t *spinlock_check(spinlock_t *lock)
^
>> drivers/scsi/53c700.c:1106:26: error: incompatible type for argument 1 of 'spin_unlock_irqrestore'
spin_unlock_irqrestore(host->device_lock, flags);
^
In file included from include/linux/mmzone.h:7:0,
from include/linux/gfp.h:5,
from include/linux/slab.h:14,
from drivers/scsi/53c700.c:120:
include/linux/spinlock.h:360:29: note: expected 'spinlock_t * {aka struct spinlock *}' but argument is of type 'spinlock_t {aka struct spinlock}'
static __always_inline void spin_unlock_irqrestore(spinlock_t *lock, unsigned long flags)
^

vim +/spinlock_check +1104 drivers/scsi/53c700.c

1098 lun = hostdata->msgin[0] & 0x1f;
1099
1100 hostdata->reselection_id = 0xff;
1101 DEBUG(("scsi%d: (%d:%d) RESELECTED!\n",
1102 host->host_no, reselection_id, lun));
1103 /* clear the reselection indicator */
> 1104 spin_lock_irqsave(host->device_lock, flags);
1105 SDp = __scsi_device_lookup(host, 0, reselection_id, lun);
> 1106 spin_unlock_irqrestore(host->device_lock, flags);
1107 if(unlikely(SDp == NULL)) {
1108 printk(KERN_ERR "scsi%d: (%d:%d) HAS NO device\n",
1109 host->host_no, reselection_id, lun);

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: Binary data