Re: fsck cannot alloc X bytes for inphead

From: Bernd Walter <ticso(at)cicely12.cicely.de>
Date: Tue, 6 May 2008 17:09:35 +0200

On Tue, May 06, 2008 at 04:55:52PM +0200, Oliver Fromme wrote:
> Bernd Walter wrote:
> > Oliver Fromme wrote:
> > > Till Toenges wrote:
> > > > [...]
> > > > # fsck -t ffs -y /dev/ad2s1c.bde
> > > > ** /dev/ad2s1c.bde
> > > > cannot alloc 18446744067450876580 bytes for inphead
> > > [...]
> > > 5.3 ist immerhin ca. 4 Jahre alt. Du könntest mal ein
> > > aktuelleres fsck verwenden, z.B. von 6.3 oder 7.0.
> > > Ich erinnere mich, dass gerade in den letzten Monaten
> > > ein paar Fixes in fsck eingeflossen sind.
> >
> > Der ist auch schon vor Ewigkeiten gefixed worden.
>
> Nein, dieser nicht (leider).
>
> > Konkret am 02.12.2002 in Rev 1.42 der setup.c:
> > @@ -258,12 +258,8 @@
> > (unsigned)(sizeof(struct inostatlist) * (sblock.fs_ncg)));
> > goto badsb;
> > }
> > - numdirs = sblock.fs_cstotal.cs_ndir;
> > + numdirs = MAX(sblock.fs_cstotal.cs_ndir, 128);
>
> Diese Änderung begrenzt den Wert von numdirs nach unten,
> nicht nach oben. MAX(1000000000, 128) ergibt 1000000000.

Ups - stimmt - ist noch früh ;-)
Hatte mich nur gewundert, ob man das überhaupt so ohne weiteres nach
oben begrenzen darf.
Ein alternativer Superblock hätte das Problem aber denoch mit hoher
Wahrscheinlichkeit in den Griff bekommen.

-- 
B.Walter <bernd@bwct.de> http://www.bwct.de
Modbus/TCP Ethernet I/O Baugruppen, ARM basierte FreeBSD Rechner uvm.
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Tue 06 May 2008 - 17:09:46 CEST

search this site