lkml.org 
[lkml]   [2011]   [Jul]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Linux 3.0 oopses when pulling a USB CDROM
> The problem is that blk_peek_request() calls scsi_prep_fn(), which 
> does this:
>
> struct scsi_device *sdev = q->queuedata;
> int ret = BLKPREP_KILL;
>
> if (req->cmd_type == REQ_TYPE_BLOCK_PC)
> ret = scsi_setup_blk_pc_cmnd(sdev, req);
> return scsi_prep_return(q, req, ret);
>
> It doesn't check to see if sdev is NULL, nor does
> scsi_setup_blk_pc_cmnd(). That accounts for this error:

I actually added a NULL check in scsi_setup_blk_pc_cmnd early on,
but that just caused RCU CPU stalls afterwards and then eventually
a hung system.

-Andi


\
 
 \ /
  Last update: 2011-07-02 20:13    [from the cache]
©2003-2011 Jasper Spaans