lkml.org 
[lkml]   [2008]   [Jan]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch] scsi: revert "[SCSI] Get rid of scsi_cmnd->done"
On Sun, Jan 06 2008 at 5:43 +0200, Linus Torvalds <torvalds@linux-foundation.org> wrote:
>
>
> This all still leaves the question unanswered why that commit
> 6f5391c283d7fdcf24bf40786ea79061919d1e1d changed any behaviour at all.
> Because the thing that Peter is describing has nothing to do with any
> low-level drivers what-so-ever.
>
> Linus
>

James Matthew.
I have a (very) wild guess at what maybe have changed with the cmnd->done
patch:

Do you remember the effective loop in scsi_lib:scsi_end_request() where
if bufflen was smaller then original request size, do to truncation
of bufflen by ULD, then the remaining of the request is re-queued again
as a new scsi-command. Well I think that the old system would call
cmnd->done for every iteration, and the new system, since the done is
called by the block-Q, does not see the resubmit of the new command.

I have not followed all code path of the matter, but I know that sr does
alters bufflen in some cases.
All this is not a bug in itself, but it is a change in behavior that might
cause the current sr hack to fail.

Boaz


\
 
 \ /
  Last update: 2008-01-06 17:23    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site