[net.bugs.4bsd] dumpdir bug

sls@allegra.UUCP (08/15/83)

We are running Berkeley 4.1, and had the following problem recently.

Take a look at dumpdir.c ......
	#define MAXINO 2000
This recently caused a core dump when the inodes of a directory referenced
exceeded 2000.
I don't know about the rest of you, but we have a maximum of about 65536
inodes on our filesystems!
Changing the value of MAXINO from 2000 to 65536 solved the problem.

mikeg@mprvaxa (08/17/83)

The bug appears in restor as well.  However, the name MAXINO is
a slighlty misleading, as the only place it is used concerns directory
inodes.  We use 9000 for restor and haven't had any problems.
To prevent core dumps whenever that limit might get exceeded, in
pass1() ipos should be checked against MAXINO.
If you decide to up MAXINO, take a look at how isearch() does it's
work -- it blindly charges on past the last used entry in inotab
checking the entire table.  It shouldn't check more than than
the first ipos entries.  Profiling shows it to be the worst offender
(one run it used 86%! forcing early exit dropped that to 6.4%)

The restor we are using it the posted version for 4.1 which will
restor entire trees by filename.

Michael Ghesquiere
Microtel Pacific Research
..!uw-beaver!ubc-vision!mprvaxa!mikeg