Messages in this thread | | | Date | Tue, 12 Nov 2002 18:53:45 +0000 | From | "Stephen C. Tweedie" <> | Subject | Re: [patch/2.4] ll_rw_blk stomping on bh state [Re: kernel BUG at journal.c:1732! (2.4.19)] |
| |
Hi,
On Tue, Nov 12, 2002 at 09:57:05AM -0800, Andrew Morton wrote: > "Stephen C. Tweedie" wrote: > > > > if (maxsector < count || maxsector - count < sector) { > > /* Yecch */ > > bh->b_state &= (1 << BH_Lock) | (1 << BH_Mapped); > > ... > > Folks, just which buffer flags do we want to preserve in this case?
> Why do we want to clear any flags in there at all? To prevent > a storm of error messages from a buffer which has a silly block > number?
That's the only reason I can think of. Simply scrubbing all the state bits is totally the wrong way of going about that, of course.
> If so, how about setting a new state bit which causes subsequent > IO attempts to silently drop the IO on the floor?
The only problem I could think of there would be weird interactions with LVM if somebody lvextends a volume and the buffer suddenly becomes valid again. I can't bring myself to care about breaking that situation. :-)
--Stephen - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |