Re: aha1542: rework locking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tuesday 21 April 2015, Dan Carpenter wrote:
> Hello Ondrej Zary,
> 
> The patch 1b0224b0ec60: "aha1542: rework locking" from Feb 6, 2015,
> leads to the following static checker warning:
> 
> 	drivers/scsi/aha1542.c:448 aha1542_queuecommand()
> 	error: scheduling with locks held: 'spin_lock:host_lock'
> 
> drivers/scsi/aha1542.c
>    400          /* Use the outgoing mailboxes in a round-robin fashion, because this
>    401             is how the host adapter will scan for them */
>    402  
>    403          spin_lock_irqsave(sh->host_lock, flags);
>                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> 
> Holding lock.
> 
>    404          mbo = aha1542->aha1542_last_mbo_used + 1;
>    405          if (mbo >= AHA1542_MAILBOXES)
>    406                  mbo = 0;
>    407  
> 
> [ snip ]
> 
>    442          if (bufflen) {
>    443                  struct scatterlist *sg;
>    444                  struct chain *cptr;
>    445                  int i, sg_count = scsi_sg_count(cmd);
>    446  
>    447                  ccb[mbo].op = 2;        /* SCSI Initiator Command  w/scatter-gather */
>    448                  cmd->host_scribble = kmalloc(sizeof(*cptr)*sg_count,
>    449                                                           GFP_KERNEL | GFP_DMA);
>                                                                  ^^^^^^^^^^
> Sleeping allocation.

Thanks, I missed that as it was already wrong before (since at least when
DEF_SCSI_QCMD was introduced). And it worked despite that.

Should I just change that to GFP_ATOMIC?

-- 
Ondrej Zary
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux