* 2.6.9-rc2-mm4 BIO's still broken
@ 2004-10-01 17:14 jmerkey
2004-10-03 12:23 ` Jens Axboe
0 siblings, 1 reply; 2+ messages in thread
From: jmerkey @ 2004-10-01 17:14 UTC (permalink / raw)
To: linux-kernel; +Cc: jmerkey
I have more information on the problem with bio requests. I am seeing the bi_size
value return through bi_end_io early with an odd size if the interface is passed
an unaligned 4K write. What's busted here is that bio_add_page accepts the
4K unaligned write request, then the callback from the SCSI layer calls back
with a partial compleation with the bi_size field set to the value of 0x1FE (????)
and no other callback is received. What's busted here is if you use the
recommended logic of
if (bio->bi_size)
return 1;
then you never get the completed callback and the IO request just sits off in left
field and the driver never returns any error status through the callback interface.
I am also still seeing the disappearing pages and after tracking through the code,
I am certain they are related since I am not getting any callbacks from the driver
layer after I receive the first end_io callback with bi_size set.
Also, my drdos.com address is blocked from posting to the list again, so I am using
comcast.net. What's up with this?
Jeff
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: 2.6.9-rc2-mm4 BIO's still broken
2004-10-01 17:14 2.6.9-rc2-mm4 BIO's still broken jmerkey
@ 2004-10-03 12:23 ` Jens Axboe
0 siblings, 0 replies; 2+ messages in thread
From: Jens Axboe @ 2004-10-03 12:23 UTC (permalink / raw)
To: jmerkey; +Cc: linux-kernel, jmerkey
(please wrap your out going emails, the lines are way too long)
On Fri, Oct 01 2004, jmerkey@comcast.net wrote:
>
> I have more information on the problem with bio requests. I am seeing
> the bi_size value return through bi_end_io early with an odd size if
> the interface is passed an unaligned 4K write. What's busted here is
> that bio_add_page accepts the 4K unaligned write request, then the
> callback from the SCSI layer calls back with a partial compleation
> with the bi_size field set to the value of 0x1FE (????) and no other
> callback is received. What's busted here is if you use the
> recommended logic of
>
> if (bio->bi_size) return 1;
>
> then you never get the completed callback and the IO request just sits
> off in left field and the driver never returns any error status
> through the callback interface. I am also still seeing the
> disappearing pages and after tracking through the code, I am certain
> they are related since I am not getting any callbacks from the driver
> layer after I receive the first end_io callback with bi_size set.
Please send a test case, thanks.
--
Jens Axboe
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-10-03 12:26 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-10-01 17:14 2.6.9-rc2-mm4 BIO's still broken jmerkey
2004-10-03 12:23 ` Jens Axboe
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome