Messages in this thread | | | From | dan carpenter <> | Subject | Re: [bug] ieee1394/sbp2 - sleeping in invalid context | Date | Sun, 27 Jul 2003 03:46:50 -0700 |
| |
I think sbp2scsi_queuecommand is called from outside interrupt context. The obvious but possibly wrong way to fix this would be to change the calls to hpsb_get_tlabel() to check in_atomic() instead of in_interrupt().
regards, dan carpenter
On Saturday 26 July 2003 05:24 am, Brad Hards wrote: > Debug: sleeping function called from invalid context at > include/asm/semaphore.h:119 Call Trace: > [<c011c61e>] __might_sleep+0x5e/0x62 > [<c031bfad>] hpsb_get_tlabel+0x5d/0x230 calls down()
> [<c0319d97>] alloc_hpsb_packet+0xa7/0xd0 calls hpsb_get_tlabel(packet, in_interrupt() ? 0 : 1)
> [<c031c4e2>] hpsb_make_writepacket+0xa2/0x140 calls alloc_hpsb_packet(length + (length % 4 ? 4 - (length % 4) : 0)); calls hpsb_get_tlabel(packet, in_interrupt() ? 0 : 1)
> [<c032c5c6>] sbp2_link_orb_command+0x86/0x190 calls hpsb_make_writepacket()
> [<c032c773>] sbp2_send_command+0xa3/0xf0 calls sbp2util_allocate_command_orb(scsi_id, SCpnt, done);
> [<c032cd70>] sbp2scsi_queuecommand+0xb0/0x210 calls sbp2_send_command under a spinlock
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |