On Tue, 2008-02-26 at 10:48 +0100, Mike Galbraith wrote: > Greetings, > > I straced both a good and a bad kernel (good being .git with attached > revert patch applied) and filtered/diffed/merged the output. Scroll > down to "HERE" to see the problem (resid). > > I'm poking around, but not having much luck.
Seems the problem is data_len changes, but raw_data_len doesn't. I've not the foggiest IO-land clue, but k3b works again, so the below may have some diagnostic value. diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index ba21d97..7a6f784 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c @@ -871,7 +871,7 @@ void scsi_io_completion(struct scsi_cmnd *cmd, unsigned int good_bytes) scsi_end_bidi_request(cmd); return; } - req->data_len = scsi_get_resid(cmd); + req->data_len = req->raw_data_len = scsi_get_resid(cmd); } BUG_ON(blk_bidi_rq(req)); /* bidi not support for !blk_pc_request yet */ -Mike -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/