Re: Bug in drivers/block/ll_rw_blk.c ?
From: Livio Baldini Soares
Date: Fri Aug 22 2003 - 10:40:01 EST
Hi Yoav!
Yoav Weiss writes:
> A few days ago I posted the report attached below. After some more
> research, I'm starting to think I've hit a bug in ll_rw_blk.c.
>
> If the maintainer of the block dev subsystem happens to be reading
> this, please contact me on the list or by mail.
I'm not the maintainer, but I'm pretty sure that there is no problem in
that specific code... but I think you're hitting another bug in the 2.4
tree (read below...)
[...snip...]
> The cloop (compressed loop) code I'm debugging is this one:
>
> http://developer.linuxtag.net/knoppix/sources/cloop_1.0-2.tar.gz
>
> I'm testing with kernel 2.4.22-rc2.
[...snip...]
> The stalled process waits on a page in mm/filemap.c:1505:
>
> /* Again, try some read-ahead while waiting for the page to finish.. */
> generic_file_readahead(reada_ok, filp, inode, page);
> ------> wait_on_page(page);
>
>
> I found who wakes it up in calls that don't stall:
> unlock_page(), called from
> drivers/block/ll_rw_blk.c:end_that_request_first().
> bh->b_end_io(bh, uptodate) seems to do it.
From this description it seems that you are hitting a bug which was
discussed to death here on the list. Here's a thread with 143 messages for
you:
http://marc.theaimsgroup.com/?t=105400721000001&r=5&w=2
And here are the threads in which a solution was dicussed:
http://marc.theaimsgroup.com/?t=105519528200001&r=1&w=2
http://marc.theaimsgroup.com/?t=105769525800005&r=3&w=2
Notice, however, that the patch Chris, Andrea, Jens and others made for
this problem is _already_ included in 2.4 (so, yes, 2.4.22-rc2 has the
fix).
So, you are probably hitting the same bug, which was not fixed 100%. If
you think that your test is very easily reproducible and can shed more
light on this problem, perhaps you should write to Chris, Andrea and Jens
(with Cc: to the list), and show them the test. I don't know if they would
be willing to spend more time on this issue, specially with 2.6 around the
corner...
best regards,
--
Livio B. Soares
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/