Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Feb 2008 08:11:06 +1100
From:      Peter Jeremy <peterjeremy@optushome.com.au>
To:        Jim Bryant <freebsd@electron-tube.net>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: How to take down a system to the point of requiring a newfs with one line of C (userland)
Message-ID:  <20080218211106.GA55016@server.vk2pj.dyndns.org>
In-Reply-To: <47B90868.7000900@electron-tube.net>
References:  <47B90868.7000900@electron-tube.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--IJpNTDwzlM2Ie8A6
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

[CC list trimmed]

On Sun, Feb 17, 2008 at 10:24:08PM -0600, Jim Bryant wrote:
>How to repeat the problem:
>   Compile and run the following as instructed:
>
>#include <stdio.h>
>#include <stdlib.h>
>
>int main(int argc, char **argv) { int i; char buf[1024]; bzero(buf, 1024);=
=20
>for(i =3D 0; i < 10000; i++) { sprintf(buf, "touch %s%05d\n", argv[1], i);=
=20
>system((const char *)buf);} return(0);}
>
>/* pass a top-level mountpoint directory name of a mounted filesystem, wit=
h=20
>a trailing slash to the above as argv[1], and run.
>
>This will create 10,000 zero-length files in the specified directory.
>
>umount that filesystem.
>
>perform a shitload of sync's to make sure everything outstanding is flushe=
d=20
>to disk on all filesystems.
>
>mount the target filesystem (preferably from a vty or serial console to=20
>catch the messages when it panics, which it will as soon as the mount is=
=20
>attempted).
>*/

FreeBSD pjfbsd6.alcatel.com.au 6.3-STABLE FreeBSD 6.3-STABLE #4: Wed Jan 23=
 08:21:27 EST 2008     root@pjfbsd6.alcatel.com.au:/var/obj/usr/src/sys/pjf=
bsd6  i386

I have been unable to reproduce the problem as described with or without
softupdates, even when I run the filesystem out of inodes.  I have also
tried filling '/'=C3=A4 and rebooting to no avail.

That said, I did run into a bug where, for some time after deleting the
files from a soft-updates partition, 'df' would report that the inodes
were freed but attempting to create a new file would fail with ENOSPC.

--=20
Peter Jeremy
Please excuse any delays as the result of my ISP's inability to implement
an MTA that is either RFC2821-compliant or matches their claimed behaviour.

--IJpNTDwzlM2Ie8A6
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.4 (FreeBSD)

iD8DBQFHufRq/opHv/APuIcRAnMXAJwMiw8ELN36bz7MTRWac7vOyGubngCgwmfE
Wcwr3bQlf9N8adqPNsZ8gh8=
=Rd2N
-----END PGP SIGNATURE-----

--IJpNTDwzlM2Ie8A6--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080218211106.GA55016>