Revert size limits.
The size limits came from a flawed understanding of dump records. The real issue was that dump was bogusly interpreting c_count sometimes. r334978 fixes that.
This commit is contained in:
parent
b9c7cba522
commit
37d6a8f458
7
UPDATING
7
UPDATING
@ -32,13 +32,6 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW:
|
||||
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
|
||||
|
||||
|
||||
20180611:
|
||||
A bug in dump has been found where it can incorrectly dump filesystems
|
||||
with more than 512k inodes and produce corrupted dump images. r334968
|
||||
closes the door by not dumping filesystems with more than 512k inodes.
|
||||
While older dumps may 'work' the image they produce may or may not be
|
||||
readable depending on many factors.
|
||||
|
||||
20180530:
|
||||
The kernel / userland interface for devinfo changed, so you'll
|
||||
need a new kernel and userland as a pair for it to work (rebuilding
|
||||
|
@ -566,8 +566,3 @@ This will be fixed in a later version of
|
||||
.Fx .
|
||||
Presently, it works if you set it setuid (like it used to be), but this
|
||||
might constitute a security risk.
|
||||
.Pp
|
||||
It is not possible to safely dump filesystems that use more than
|
||||
524288 inodes.
|
||||
.Nm
|
||||
refuses to dump any filesystem that has more than 524288 inodes.
|
||||
|
@ -100,7 +100,7 @@ main(int argc, char *argv[])
|
||||
struct fstab *dt;
|
||||
char *map, *mntpt;
|
||||
int ch, mode, mntflags;
|
||||
int i, ret, anydirskipped, c_count, bflag = 0, Tflag = 0, honorlevel = 1;
|
||||
int i, ret, anydirskipped, bflag = 0, Tflag = 0, honorlevel = 1;
|
||||
int just_estimate = 0;
|
||||
ino_t maxino;
|
||||
char *tmsg;
|
||||
@ -452,9 +452,6 @@ main(int argc, char *argv[])
|
||||
quit("TP_BSIZE (%d) is not a power of 2", TP_BSIZE);
|
||||
maxino = sblock->fs_ipg * sblock->fs_ncg;
|
||||
mapsize = roundup(howmany(maxino, CHAR_BIT), TP_BSIZE);
|
||||
c_count = howmany(mapsize * sizeof(char), TP_BSIZE);
|
||||
if (c_count > TP_NINDIR)
|
||||
quit("fs is too large for dump!");
|
||||
usedinomap = (char *)calloc((unsigned) mapsize, sizeof(char));
|
||||
dumpdirmap = (char *)calloc((unsigned) mapsize, sizeof(char));
|
||||
dumpinomap = (char *)calloc((unsigned) mapsize, sizeof(char));
|
||||
|
Loading…
Reference in New Issue
Block a user