1*6a54128fSAndroid Build Coastguard WorkerE2fsprogs 1.13 (December 15, 1998) 2*6a54128fSAndroid Build Coastguard Worker================================== 3*6a54128fSAndroid Build Coastguard Worker 4*6a54128fSAndroid Build Coastguard WorkerFixed a bug in debugfs where an error messages weren't getting printed 5*6a54128fSAndroid Build Coastguard Workerwhen the ext2 library routines to read inodes returned errors in the 6*6a54128fSAndroid Build Coastguard Workerstat, cmri and rm commands. 7*6a54128fSAndroid Build Coastguard Worker 8*6a54128fSAndroid Build Coastguard WorkerFixed a bug in mke2fs so that if a ridiculous inode ratio parameter is 9*6a54128fSAndroid Build Coastguard Workerprovided, it won't create an inode table smaller than the minimum 10*6a54128fSAndroid Build Coastguard Workernumber of inodes required for a proper ext2 filesystem. 11*6a54128fSAndroid Build Coastguard Worker 12*6a54128fSAndroid Build Coastguard WorkerFsck now parses the /etc/fstab file directly (instead of using 13*6a54128fSAndroid Build Coastguard Workergetmntent()), so that it can distinguish between a missing pass number 14*6a54128fSAndroid Build Coastguard Workerfield and pass number field of zero. This caused problems for 15*6a54128fSAndroid Build Coastguard Workerdiskless workstations where all of the filesystems in /etc/fstab have 16*6a54128fSAndroid Build Coastguard Workeran explicit pass number of zero, and fsck could not distinguish this 17*6a54128fSAndroid Build Coastguard Workerfrom a /etc/fstab file with missing pass numbers. 18*6a54128fSAndroid Build Coastguard Worker 19*6a54128fSAndroid Build Coastguard WorkerE2fsck will create a /lost+found directory if there isn't one in the 20*6a54128fSAndroid Build Coastguard Workerfilesystem, since it's safer to create the lost+found directory before 21*6a54128fSAndroid Build Coastguard Workerit's needed. 22*6a54128fSAndroid Build Coastguard Worker 23*6a54128fSAndroid Build Coastguard WorkerFixed e2fsck so that it would detect bogus immutable inodes which 24*6a54128fSAndroid Build Coastguard Workerhappen to be sockets and FIFO files, and offer to clear them. 25*6a54128fSAndroid Build Coastguard Worker 26*6a54128fSAndroid Build Coastguard WorkerIf a filesystem has multiple reasons why it needs to be checked, and 27*6a54128fSAndroid Build Coastguard Workerone of the reasons is that it is uncleanly mounted, e2fsck will print 28*6a54128fSAndroid Build Coastguard Workerthat as the reason why the filesystem is being checked. 29*6a54128fSAndroid Build Coastguard Worker 30*6a54128fSAndroid Build Coastguard WorkerCleaned up the output routines of mke2fs so that it doesn't overflow 31*6a54128fSAndroid Build Coastguard Workeran 80 column display when formatting really big filesystems. 32*6a54128fSAndroid Build Coastguard Worker 33*6a54128fSAndroid Build Coastguard WorkerAdded a sanity check to e2fsck to make sure that file descriptors 0, 34*6a54128fSAndroid Build Coastguard Worker1, 2 are open before opening the hard disk. This avoids a problem 35*6a54128fSAndroid Build Coastguard Workerwhere a broken program might exec e2fsck with those file descriptors 36*6a54128fSAndroid Build Coastguard Workerclosed, which would cause disastrous results if the kernel returns a 37*6a54128fSAndroid Build Coastguard Workerfile descriptor for the block device which is also used by FILE * 38*6a54128fSAndroid Build Coastguard Workerstdout. 39*6a54128fSAndroid Build Coastguard Worker 40*6a54128fSAndroid Build Coastguard WorkerFixed up the e2fsck progress reporting functions so that the values 41*6a54128fSAndroid Build Coastguard Workerreliably reach 100% at the completion of all of the e2fsck passes. 42*6a54128fSAndroid Build Coastguard Worker 43*6a54128fSAndroid Build Coastguard WorkerFixed minor documentation bugs in man pages and usage messages. 44*6a54128fSAndroid Build Coastguard Worker 45*6a54128fSAndroid Build Coastguard WorkerProgrammer's notes: 46*6a54128fSAndroid Build Coastguard Worker------------------- 47*6a54128fSAndroid Build Coastguard Worker 48*6a54128fSAndroid Build Coastguard WorkerFixed a number of lint warnings in the ext2fs library and potential 49*6a54128fSAndroid Build Coastguard Workerportability problems from other OS's header files that might define 50*6a54128fSAndroid Build Coastguard WorkerCPP macros for names like "max" and "min". 51*6a54128fSAndroid Build Coastguard Worker 52*6a54128fSAndroid Build Coastguard Workerext2fs_badblocks_list_add() has been made more efficient when it needs 53*6a54128fSAndroid Build Coastguard Workerto grow the bad blocks list. 54*6a54128fSAndroid Build Coastguard Worker 55*6a54128fSAndroid Build Coastguard WorkerFixed a bug in e2fsck which caused it to dereference a freed pointer 56*6a54128fSAndroid Build Coastguard Workerjust before exiting. 57*6a54128fSAndroid Build Coastguard Worker 58*6a54128fSAndroid Build Coastguard WorkerFixed the substitution process for generating the mk_cmds and compile_et 59*6a54128fSAndroid Build Coastguard Workerscripts so that they will work outside of the build tree. 60*6a54128fSAndroid Build Coastguard Worker 61*6a54128fSAndroid Build Coastguard WorkerAdd sanity check to e2fsck so that if an internal routine 62*6a54128fSAndroid Build Coastguard Worker(ext2fs_get_dir_info) returns NULL, avoid dereferencing the pointer 63*6a54128fSAndroid Build Coastguard Workerand causing a core dump. This should never happen, but... 64*6a54128fSAndroid Build Coastguard Worker 65