[PATCH 1/1] determine last ext3 LBA to fix wild LBA reads - v2
Benjamin Herrenschmidt
benh at kernel.crashing.org
Thu Jan 4 14:31:10 EST 2007
On Wed, 2007-01-03 at 20:11 -0600, Doug Maxey wrote:
> On Thu, 04 Jan 2007 12:09:16 +1100, Benjamin Herrenschmidt wrote:
> > > tempb = (((unsigned long long) block) *
> > > ((unsigned long long)bs)) + (unsigned long long)doff;
> > > + if (tempb > dend) {
> > > + DEBUG_F("\nSeek error on block %lx, tempb=%Lx\n", block, tempb >> 9);
> > > + return EXT2_ET_LLSEEK_FAILED;
> > > + }
> > > +
> >
> > In the case where we don't pass a "part", dend is 0 no ? We should check
> > this case and not apply the test...
>
> well, I guess we should not test in that case. (dend && tempb >> dend)
> But that puts us back in the position of searching past the end of the
> disk.
>
> On what system would we get here without having found a partition table?
> Ext2 on a optical disk?
Or if you explicitely pass something like hd:0,\xxxx I suppose and it
detects it as ext2... I don't remember for sure :-)
Ben.
More information about the Linuxppc-dev
mailing list