diff options
author | Theodore Ts'o <tytso@mit.edu> | 1997-04-26 14:37:06 +0000 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 1997-04-26 14:37:06 +0000 |
commit | 74becf3c0a065f8d64e07ce4d31f9fe53be91d62 (patch) | |
tree | df6573f851195eb5a0beaa0bc540a74fc89cda3d | |
parent | 900e442732393189b8ecfd3bb39176e398b24970 (diff) | |
download | e2fsprogs-74becf3c0a065f8d64e07ce4d31f9fe53be91d62.tar.gz |
Many files:
Checkin of e2fsprogs 1.02.
109 files changed, 659 insertions, 263 deletions
@@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Thu Oct 26 11:59:44 1995 <tytso@rsts-11.mit.edu> * configure.in (LDFALG_STATIC): Add temporary kludge for @@ -25,9 +25,11 @@ INSTALL_DATA = @INSTALL_DATA@ CC = @CC@ DEFS = @DEFS@ LIBS = @LIBS@ -CFLAGS = $(CPPFLAGS) $(DEFS) $(WFLAGS) @CFLAGS@ $(XTRA_CFLAGS) \ +CFLAGS = @CFLAGS@ +ALL_CFLAGS = $(CPPFLAGS) $(DEFS) $(WFLAGS) $(CFLAGS) $(XTRA_CFLAGS) \ -I$(top_builddir)/lib -I$(top_srcdir)/lib $(LINUX_INCLUDE) LDFLAGS = @LDFLAGS@ +ALL_LDFLAGS = $(LDFLAGS) RM = @RM@ LN = @LN@ MV = @MV@ @@ -93,7 +95,7 @@ all:: .depend: Makefile $(SRCS) $(top_srcdir)/depfix.sed if test -n "$(SRCS)" ; then \ - $(CC) -M $(CFLAGS) $(SRCS) | \ + $(CC) -M $(ALL_CFLAGS) $(SRCS) | \ sed -f $(top_srcdir)/depfix.sed | \ sed -e 's; $(srcdir)/; $$(srcdir)/;g' | \ sed -e 's; $(top_srcdir)/; $$(top_srcdir)/;g' | \ diff --git a/Makefile.in b/Makefile.in index 7aaa85e4..15fd1ae1 100644 --- a/Makefile.in +++ b/Makefile.in @@ -60,6 +60,16 @@ realclean-local: distclean-local check: (cd tests; make check) +distribution_tar_file: + rm -rf /tmp/dest + make DESTDIR=/tmp/dest install + cd .. + cp -r $(srcdir)/README $(srcdir)/install-utils /tmp/dest + cp $(srcdir)/INSTALL.@BINARY_TYPE@ /tmp/dest/INSTALL + (cd /tmp/dest; tar cf - . ) | gzip -9 \ + > e2fsprogs-@E2FSPROGS_VERSION@-@BINARY_TYPE@.tar.gz + + Makefile: config.status $(srcdir)/Makefile.in CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status @@ -1,4 +1,4 @@ - This is the new version (1.01) of the second extended file system + This is the new version (1.02) of the second extended file system management programs. See the file INSTALL for installation instructions. This is diff --git a/RELEASE-NOTES b/RELEASE-NOTES new file mode 100644 index 00000000..e1da8cf2 --- /dev/null +++ b/RELEASE-NOTES @@ -0,0 +1,25 @@ + +E2fsprogs 1.02 (January 16, 1996) +================================= + +Fix to allow e2fsprogs to be compiled on recent 1.3 (pl45+) kernels. + +Change e2fsck to print statistics of how many non-contiguous files are +on the system. Note that a file which is larger than 8k blocks, it is +guaranteed to be non-contiguous. + +In mke2fs, print a warning message if a user tries to format a whole +disk (/dev/hda versus /dev/hda1). If a user really wants to format a +whole disk, the -F (force) option forces mke2fs to format a whole disk +as a filesytem. + +Fix a bug in fsck where in some cases it might start checking +partitions in the next pass before it finishes checking partitions in +the current pass. This still won't cause two partitions on the same +disk will be checked, so it's rarely a problem in real life. + +Patch lsattr so that it won't hang when checking a named pipe. + +Minor compilation fixes: + * Fix the order of libraries that were linked in debugfs. + * Allow the sources to be compiled with -ansi turned on. @@ -12,6 +12,14 @@ ac_help= ac_default_prefix=/usr/local # Any additions from configure.in: ac_help="$ac_help + --with-cc=COMPILER select compiler to use" +ac_help="$ac_help + --with-linker=LINKER select linker to use" +ac_help="$ac_help + --with-ccopts=CCOPTS select compiler command line options" +ac_help="$ac_help + --with-ldopts=LDOPTS select linker command line options" +ac_help="$ac_help --enable-dll-shlibs select DLL libraries" ac_help="$ac_help --enable-elf-shlibs select ELF shared libraries" @@ -412,6 +420,83 @@ fi MCONFIG=./MCONFIG +BINARY_TYPE=bin +E2FSPROGS_VERSION=`grep E2FSPROGS_VERSION ${srcdir}/version.h \ + | awk '{print $3}' | tr \" " " | awk '{print $1}'` +DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \ + | tr \" " "` +MONTH=`echo $DATE | awk -F- '{print $2}'` +YEAR=`echo $DATE | awk -F- '{print $3}'` + +if expr $YEAR ">" 90 >/dev/null ; then + E2FSPROGS_YEAR=19$YEAR +else + E2FSPROGS_YEAR=20$YEAR +fi + +case $MONTH in +Jan) E2FSPROGS_MONTH="January" ;; +Feb) E2FSPROGS_MONTH="February" ;; +Mar) E2FSPROGS_MONTH="March" ;; +Apr) E2FSPROGS_MONTH="April" ;; +May) E2FSPROGS_MONTH="May" ;; +Jun) E2FSPROGS_MONTH="June" ;; +Jul) E2FSPROGS_MONTH="July" ;; +Aug) E2FSPROGS_MONTH="August" ;; +Sep) E2FSPROGS_MONTH="September" ;; +Oct) E2FSPROGS_MONTH="October" ;; +Nov) E2FSPROGS_MONTH="November" ;; +Dec) E2FSPROGS_MONTH="December" ;; +*) echo "Unknown month $MONTH??" ;; +esac + +unset DATE MONTH YEAR +echo "Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION" +echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}" + + + +# Check whether --with-cc or --without-cc was given. +withval="$with_cc" +if test -n "$withval"; then + echo "$ac_t""CC=$withval" 1>&6 +CC=$withval +else + if test -z "$CC" ; then CC=cc; fi +echo "$ac_t""CC defaults to $CC" 1>&6 +fi +export CC + +# Check whether --with-linker or --without-linker was given. +withval="$with_linker" +if test -n "$withval"; then + echo "$ac_t""LD=$withval" 1>&6 +LD=$withval +else + if test -z "$LD" ; then LD=$CC; fi +echo "$ac_t""LD defaults to $LD" 1>&6 +fi +export LD + +# Check whether --with-ccopts or --without-ccopts was given. +withval="$with_ccopts" +if test -n "$withval"; then + echo "$ac_t""CCOPTS is $withval" 1>&6 +CCOPTS=$withval +CFLAGS="$CFLAGS $withval" +else + CCOPTS= +fi + +# Check whether --with-ldopts or --without-ldopts was given. +withval="$with_ldopts" +if test -n "$withval"; then + echo "$ac_t""LDFLAGS is $withval" 1>&6 +LDFLAGS=$withval +else + LDFLAGS= +fi + # Check whether --enable-dll-shlibs or --disable-dll-shlibs was given. enableval="$enable_dll_shlibs" if test -n "$enableval"; then @@ -423,6 +508,7 @@ then else DLL_CMT= MAKEFILE_DLL=$srcdir/lib/Makefile.dll-lib + BINARY_TYPE=dllbin echo "Enabling DLL shared libraries" fi @@ -446,6 +532,7 @@ then else ELF_CMT= MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib + BINARY_TYPE=elfbin echo "Enabling ELF shared libraries" fi @@ -548,6 +635,7 @@ fi MAKEFILE_LIBRARY=$srcdir/lib/Makefile.library + echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 set dummy ${MAKE-make}; ac_make=$2 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then @@ -1182,7 +1270,7 @@ else ac_cv_c_cross=yes else cat > conftest.$ac_ext <<EOF -#line 1186 "configure" +#line 1274 "configure" #include "confdefs.h" main(){return(0);} EOF @@ -1213,7 +1301,7 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext <<EOF -#line 1217 "configure" +#line 1305 "configure" #include "confdefs.h" #include <assert.h> Syntax Error @@ -1227,7 +1315,7 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext <<EOF -#line 1231 "configure" +#line 1319 "configure" #include "confdefs.h" #include <assert.h> Syntax Error @@ -1252,7 +1340,7 @@ else fi echo "$ac_t""$CPP" 1>&6 -for ac_hdr in stdlib.h unistd.h stdarg.h errno.h mntent.h dirent.h getopt.h linux/fd.h sys/disklabel.h +for ac_hdr in stdlib.h unistd.h stdarg.h errno.h mntent.h dirent.h getopt.h linux/fd.h linux/major.h sys/disklabel.h do ac_safe=`echo "$ac_hdr" | tr './\055' '___'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 @@ -1260,7 +1348,7 @@ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1264 "configure" +#line 1352 "configure" #include "confdefs.h" #include <$ac_hdr> EOF @@ -1293,7 +1381,7 @@ if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1297 "configure" +#line 1385 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char vprintf(); below. */ @@ -1341,7 +1429,7 @@ if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1345 "configure" +#line 1433 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char _doprnt(); below. */ @@ -1390,7 +1478,7 @@ if eval "test \"`echo '$''{'e2fsprogs_cv_struct_d_namlen'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1394 "configure" +#line 1482 "configure" #include "confdefs.h" #include <sys/types.h> #include <dirent.h> @@ -1432,7 +1520,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <<EOF -#line 1436 "configure" +#line 1524 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -1466,7 +1554,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <<EOF -#line 1470 "configure" +#line 1558 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -1500,7 +1588,7 @@ else { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <<EOF -#line 1504 "configure" +#line 1592 "configure" #include "confdefs.h" #include <stdio.h> main() @@ -1537,7 +1625,7 @@ if eval "test \"`echo '$''{'e2fsprogs_cv_struct_st_flags'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1541 "configure" +#line 1629 "configure" #include "confdefs.h" #include <sys/stat.h> int main() { return 0; } @@ -1570,7 +1658,7 @@ if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1574 "configure" +#line 1662 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -1620,7 +1708,7 @@ if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1624 "configure" +#line 1712 "configure" #include "confdefs.h" #include <linux/fs.h> EOF @@ -1664,7 +1752,7 @@ if eval "test \"`echo '$''{'ac_cv_have_optreset'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1668 "configure" +#line 1756 "configure" #include "confdefs.h" #include <unistd.h> EOF @@ -1691,7 +1779,7 @@ if eval "test \"`echo '$''{'e2fsprogs_cv_struct_ext2_inode_frags'+set}'`\" = set echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1695 "configure" +#line 1783 "configure" #include "confdefs.h" #include <linux/ext2_fs.h> int main() { return 0; } @@ -1722,7 +1810,7 @@ if eval "test \"`echo '$''{'e2fsprogs_cv_ioctl_ext2'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1726 "configure" +#line 1814 "configure" #include "confdefs.h" #include <linux/ext2_fs.h> #include <sys/ioctl.h> @@ -1759,7 +1847,7 @@ linux*) ;; esac -LDFALG_STATIC= +LDFLAG_STATIC= case "$host_os" in linux*) LDFLAG_STATIC=-static @@ -1888,7 +1976,10 @@ ac_given_INSTALL="$INSTALL" trap 'rm -fr `echo "MCONFIG include/linux/types.h Makefile lib/et/Makefile lib/et/compile_et.sh lib/ss/Makefile lib/ss/mk_cmds.sh lib/ext2fs/Makefile lib/e2p/Makefile misc/Makefile - e2fsck/Makefile debugfs/Makefile tests/Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 + e2fsck/Makefile debugfs/Makefile tests/Makefile lib/ext2fs/ext2_err.et + debugfs/debugfs.8 e2fsck/e2fsck.8 misc/tune2fs.8 misc/lsattr.1 + misc/chattr.1 misc/badblocks.8 misc/dumpe2fs.8 misc/mke2fs.8 + misc/fsck.8 misc/mklost+found.8" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 # Protect against being on the right side of a sed subst in config.status. sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\\\&%]/\\\\&/g; @@ -1906,6 +1997,12 @@ s%@prefix@%$prefix%g s%@program_transform_name@%$program_transform_name%g /@MCONFIG@/r $MCONFIG s%@MCONFIG@%%g +s%@E2FSPROGS_YEAR@%$E2FSPROGS_YEAR%g +s%@E2FSPROGS_MONTH@%$E2FSPROGS_MONTH%g +s%@E2FSPROGS_VERSION@%$E2FSPROGS_VERSION%g +s%@CC@%$CC%g +s%@LD@%$LD%g +s%@CCOPTS@%$CCOPTS%g s%@DLL_CMT@%$DLL_CMT%g /@MAKEFILE_DLL@/r $MAKEFILE_DLL s%@MAKEFILE_DLL@%%g @@ -1924,6 +2021,7 @@ s%@MAKEFILE_CHECKER@%%g s%@W@%$W%g /@MAKEFILE_LIBRARY@/r $MAKEFILE_LIBRARY s%@MAKEFILE_LIBRARY@%%g +s%@BINARY_TYPE@%$BINARY_TYPE%g s%@SET_MAKE@%$SET_MAKE%g s%@LN@%$LN%g s%@MV@%$MV%g @@ -1945,7 +2043,6 @@ s%@build_os@%$build_os%g s%@AR@%$AR%g s%@RANLIB@%$RANLIB%g s%@STRIP@%$STRIP%g -s%@CC@%$CC%g s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g s%@INSTALL_DATA@%$INSTALL_DATA%g s%@CPP@%$CPP%g @@ -1967,7 +2064,10 @@ cat >> $CONFIG_STATUS <<EOF CONFIG_FILES=\${CONFIG_FILES-"MCONFIG include/linux/types.h Makefile lib/et/Makefile lib/et/compile_et.sh lib/ss/Makefile lib/ss/mk_cmds.sh lib/ext2fs/Makefile lib/e2p/Makefile misc/Makefile - e2fsck/Makefile debugfs/Makefile tests/Makefile"} + e2fsck/Makefile debugfs/Makefile tests/Makefile lib/ext2fs/ext2_err.et + debugfs/debugfs.8 e2fsck/e2fsck.8 misc/tune2fs.8 misc/lsattr.1 + misc/chattr.1 misc/badblocks.8 misc/dumpe2fs.8 misc/mke2fs.8 + misc/fsck.8 misc/mklost+found.8"} EOF cat >> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then diff --git a/configure.in b/configure.in index 5349abc3..43d149da 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,86 @@ AC_INIT(version.h) MCONFIG=./MCONFIG AC_SUBST_FILE(MCONFIG) +BINARY_TYPE=bin +dnl +dnl This is to figure out the version number and the date.... +dnl +E2FSPROGS_VERSION=`grep E2FSPROGS_VERSION ${srcdir}/version.h \ + | awk '{print $3}' | tr \" " " | awk '{print $1}'` +DATE=`grep E2FSPROGS_DATE ${srcdir}/version.h | awk '{print $3}' \ + | tr \" " "` +MONTH=`echo $DATE | awk -F- '{print $2}'` +YEAR=`echo $DATE | awk -F- '{print $3}'` + +if expr $YEAR ">" 90 >/dev/null ; then + E2FSPROGS_YEAR=19$YEAR +else + E2FSPROGS_YEAR=20$YEAR +fi + +case $MONTH in +Jan) E2FSPROGS_MONTH="January" ;; +Feb) E2FSPROGS_MONTH="February" ;; +Mar) E2FSPROGS_MONTH="March" ;; +Apr) E2FSPROGS_MONTH="April" ;; +May) E2FSPROGS_MONTH="May" ;; +Jun) E2FSPROGS_MONTH="June" ;; +Jul) E2FSPROGS_MONTH="July" ;; +Aug) E2FSPROGS_MONTH="August" ;; +Sep) E2FSPROGS_MONTH="September" ;; +Oct) E2FSPROGS_MONTH="October" ;; +Nov) E2FSPROGS_MONTH="November" ;; +Dec) E2FSPROGS_MONTH="December" ;; +*) echo "Unknown month $MONTH??" ;; +esac + +unset DATE MONTH YEAR +echo "Generating configuration file for e2fsprogs version $E2FSPROGS_VERSION" +echo "Release date is ${E2FSPROGS_MONTH}, ${E2FSPROGS_YEAR}" +AC_SUBST(E2FSPROGS_YEAR) +AC_SUBST(E2FSPROGS_MONTH) +AC_SUBST(E2FSPROGS_VERSION) +dnl +dnl set $(CC) from --with-cc=value +dnl +AC_ARG_WITH([cc], +[ --with-cc=COMPILER select compiler to use], +AC_MSG_RESULT(CC=$withval) +CC=$withval, +if test -z "$CC" ; then CC=cc; fi +[AC_MSG_RESULT(CC defaults to $CC)])dnl +export CC +AC_SUBST([CC]) +dnl +dnl set $(LD) from --with-linker=value +dnl +AC_ARG_WITH([linker], +[ --with-linker=LINKER select linker to use], +AC_MSG_RESULT(LD=$withval) +LD=$withval, +if test -z "$LD" ; then LD=$CC; fi +[AC_MSG_RESULT(LD defaults to $LD)])dnl +export LD +AC_SUBST([LD]) +dnl +dnl set $(CCOPTS) from --with-ccopts=value +dnl +AC_ARG_WITH([ccopts], +[ --with-ccopts=CCOPTS select compiler command line options], +AC_MSG_RESULT(CCOPTS is $withval) +CCOPTS=$withval +CFLAGS="$CFLAGS $withval", +CCOPTS=)dnl +AC_SUBST(CCOPTS) +dnl +dnl set $(LDFLAGS) from --with-ldopts=value +dnl +AC_ARG_WITH([ldopts], +[ --with-ldopts=LDOPTS select linker command line options], +AC_MSG_RESULT(LDFLAGS is $withval) +LDFLAGS=$withval, +LDFLAGS=)dnl +AC_SUBST(LDFLAGS) dnl dnl handle --enable-dll-shlibs dnl @@ -14,6 +94,7 @@ then else DLL_CMT= MAKEFILE_DLL=$srcdir/lib/Makefile.dll-lib + BINARY_TYPE=dllbin echo "Enabling DLL shared libraries" fi , @@ -36,6 +117,7 @@ then else ELF_CMT= MAKEFILE_ELF=$srcdir/lib/Makefile.elf-lib + BINARY_TYPE=elfbin echo "Enabling ELF shared libraries" fi , @@ -136,6 +218,7 @@ AC_SUBST_FILE(MAKEFILE_LIBRARY) dnl dnl End of configuration options dnl +AC_SUBST(BINARY_TYPE) AC_PROG_MAKE_SET AC_PATH_PROG(LN, ln, ln) AC_PATH_PROG(MV, mv, mv) @@ -150,7 +233,7 @@ AC_CHECK_TOOL(STRIP, strip, :) AC_PROG_CC AC_PROG_INSTALL AC_C_CROSS -AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.h errno.h mntent.h dirent.h getopt.h linux/fd.h sys/disklabel.h) +AC_CHECK_HEADERS(stdlib.h unistd.h stdarg.h errno.h mntent.h dirent.h getopt.h linux/fd.h linux/major.h sys/disklabel.h) AC_FUNC_VPRINTF dnl dnl See if struct dirent has a d_namlen field (like bsd systems), implying @@ -276,7 +359,7 @@ dnl See if -static works. dnl XXX for now, assume that only Linux systems support -static dnl AC_REQUIRE([AC_CANONICAL_HOST]) -LDFALG_STATIC= +LDFLAG_STATIC= case "$host_os" in linux*) LDFLAG_STATIC=-static @@ -319,4 +402,7 @@ test -d include/linux || mkdir include/linux AC_OUTPUT(MCONFIG include/linux/types.h Makefile lib/et/Makefile lib/et/compile_et.sh lib/ss/Makefile lib/ss/mk_cmds.sh lib/ext2fs/Makefile lib/e2p/Makefile misc/Makefile - e2fsck/Makefile debugfs/Makefile tests/Makefile) + e2fsck/Makefile debugfs/Makefile tests/Makefile lib/ext2fs/ext2_err.et + debugfs/debugfs.8 e2fsck/e2fsck.8 misc/tune2fs.8 misc/lsattr.1 + misc/chattr.1 misc/badblocks.8 misc/dumpe2fs.8 misc/mke2fs.8 + misc/fsck.8 misc/mklost+found.8) diff --git a/debugfs/ChangeLog b/debugfs/ChangeLog index 74df53fa..aa8f57df 100644 --- a/debugfs/ChangeLog +++ b/debugfs/ChangeLog @@ -1,3 +1,12 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + +Fri Dec 1 22:42:31 1995 <tytso@rsts-11.mit.edu> + + * Makefile.in (LIBS): Rearrange the order of the libraries to be + linked, so that -lext2fs is before -lcom_err. + Thu Oct 26 12:05:06 1995 <tytso@rsts-11.mit.edu> * Makefile.in (install): Strip programs when they are installed. diff --git a/debugfs/Makefile.in b/debugfs/Makefile.in index 36c8ab7c..7d425f8f 100644 --- a/debugfs/Makefile.in +++ b/debugfs/Makefile.in @@ -21,16 +21,16 @@ SRCS= debug_cmds.c $(srcdir)/debugfs.c $(srcdir)/util.c \ $(srcdir)/ncheck.c $(srcdir)/icheck.c $(srcdir)/lsdel.c \ $(srcdir)/dump.c -LIBS= -L../lib -lss -lcom_err -lext2fs -DEPLIBS= ../lib/libss.a ../lib/libcom_err.a ../lib/libext2fs.a +LIBS= -L../lib -lext2fs -lss -lcom_err +DEPLIBS= ../lib/libext2fs.a ../lib/libss.a ../lib/libcom_err.a .c.o: - $(CC) -c $(CFLAGS) $< -o $@ + $(CC) -c $(ALL_CFLAGS) $< -o $@ all:: $(PROGS) debugfs: $(DEBUG_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o debugfs $(DEBUG_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o debugfs $(DEBUG_OBJS) $(LIBS) debug_cmds.c debug_cmds.h: debug_cmds.ct $(MK_CMDS) $(srcdir)/debug_cmds.ct @@ -45,7 +45,7 @@ install: $(PROGS) $(MANPAGES) installdirs $(STRIP) $(DESTDIR)$(usbindir)/$$i; \ done for i in $(MANPAGES); do \ - $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(man8dir)/$$i; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(man8dir)/$$i; \ done uninstall: diff --git a/debugfs/debugfs.8 b/debugfs/debugfs.8.in index 7107d093..28c83dbc 100644 --- a/debugfs/debugfs.8 +++ b/debugfs/debugfs.8.in @@ -2,7 +2,7 @@ .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. .\" -.TH DEBUGFS 8 "October 1995" "Version 1.01" +.TH DEBUGFS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME debugfs \- ext2 file system debugger .SH SYNOPSIS diff --git a/e2fsck/ChangeLog b/e2fsck/ChangeLog index c1d04c9c..22969e5b 100644 --- a/e2fsck/ChangeLog +++ b/e2fsck/ChangeLog @@ -1,3 +1,32 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + +Wed Dec 15 21:24:26 1996 <tytso@rsts-11.mit.edu> + + * pass1.c (process_block): Check to see if a file is "fragmented". + i.e., non-contiguous. Note that any file which is larger + than the block group is guaranteed to be non-contiguous. + We may want to use a different hueristic for deciding + whether or not a file is "fragmented". + + * e2fsck.c (show_stats): Print statistics of how many + non-contiguous files are on the system. + +Fri Dec 15 19:19:47 1995 <tytso@rsts-11.mit.edu> + + * badblocks.c (read_bad_blocks_file, test_disk): Fold + functionality of test_disk() (which runs badblocks) into + read_bad_blocks_file(); test_disk() now calls + read_bad_blocks_file() with a NULL bad_blocks_file + argument. + +Mon Nov 20 18:30:10 1995 <tytso@rsts-11.mit.edu> + + * e2fsck.c (check_mount): Use #if defined(__linux__) instead of + #if defined(linux). The latter won't work if we're + compiling -ansi. + Mon Oct 30 20:31:17 1995 <tytso@rsts-11.mit.edu> * e2fsck.c (check_mount): For Linux systems, the check to see if diff --git a/e2fsck/Makefile.in b/e2fsck/Makefile.in index 328fc55a..9ed236ea 100644 --- a/e2fsck/Makefile.in +++ b/e2fsck/Makefile.in @@ -18,7 +18,7 @@ LIBS= -L../lib -lss -lcom_err -lext2fs $(CHECKLIB) DEPLIBS= ../lib/libss.a ../lib/libcom_err.a ../lib/libext2fs.a .c.o: - $(CC) -c $(CFLAGS) $< -o $@ + $(CC) -c $(ALL_CFLAGS) $< -o $@ # # Flags for using Checker @@ -70,16 +70,16 @@ SRCS= $(srcdir)/e2fsck.c \ all:: $(PROGS) e2fsck: $(OBJS) $(DEPLIBS) - $(LD) $(LDFLAGS) $(LDFLAG_STATIC) -o e2fsck $(OBJS) $(LIBS) + $(LD) $(ALL_LDFLAGS) $(LDFLAG_STATIC) -o e2fsck $(OBJS) $(LIBS) extend: extend.o - $(LD) $(LDFLAGS) -o extend extend.o $(CHECKLIB) + $(LD) $(ALL_LDFLAGS) -o extend extend.o $(CHECKLIB) flushb: flushb.o - $(LD) $(LDFLAGS) -o flushb flushb.o $(CHECKLIB) + $(LD) $(ALL_LDFLAGS) -o flushb flushb.o $(CHECKLIB) iscan: iscan.o util.o - $(LD) $(LDFLAGS) -o iscan iscan.o util.o ehandler.o $(LIBS) + $(LD) $(ALL_LDFLAGS) -o iscan iscan.o util.o ehandler.o $(LIBS) installdirs: @@ -93,8 +93,9 @@ install: $(PROGS) $(MANPAGES) installdirs done $(LN) -f $(DESTDIR)$(sbindir)/e2fsck $(DESTDIR)$(sbindir)/fsck.ext2 for i in $(MANPAGES); do \ - $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(man8dir)/$$i; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(man8dir)/$$i; \ done + uninstall: $(RM) -f $(sbindir)/e2fsck $(RM) -f $(sbindir)/flushb diff --git a/e2fsck/badblocks.c b/e2fsck/badblocks.c index f0613d9d..c81baae8 100644 --- a/e2fsck/badblocks.c +++ b/e2fsck/badblocks.c @@ -29,6 +29,7 @@ void read_bad_blocks_file(ext2_filsys fs, const char *bad_blocks_file, errcode_t retval; badblocks_list bb_list = 0; FILE *f; + char buf[1024]; read_bitmaps(fs); @@ -44,7 +45,6 @@ void read_bad_blocks_file(ext2_filsys fs, const char *bad_blocks_file, fatal_error(0); } - /* * If we're appending to the bad blocks inode, read in the * current bad blocks. @@ -59,16 +59,33 @@ void read_bad_blocks_file(ext2_filsys fs, const char *bad_blocks_file, } /* - * Now read in the bad blocks from the file. + * Now read in the bad blocks from the file; if + * bad_blocks_file is null, then try to run the badblocks + * command. */ - f = fopen(bad_blocks_file, "r"); - if (!f) { - com_err("read_bad_blocks_file", errno, - "while trying to open %s", bad_blocks_file); - fatal_error(0); + if (bad_blocks_file) { + f = fopen(bad_blocks_file, "r"); + if (!f) { + com_err("read_bad_blocks_file", errno, + "while trying to open %s", bad_blocks_file); + fatal_error(0); + } + } else { + sprintf(buf, "badblocks %s%s %d", preen ? "" : "-s ", + fs->device_name, + fs->super->s_blocks_count); + f = popen(buf, "r"); + if (!f) { + com_err("read_bad_blocks_file", errno, + "while trying popen '%s'", buf); + fatal_error(0); + } } retval = ext2fs_read_bb_FILE(fs, f, &bb_list, invalid_block); - fclose (f); + if (bad_blocks_file) + fclose(f); + else + pclose(f); if (retval) { com_err("ext2fs_read_bb_FILE", retval, "while reading in list of bad blocks from file"); @@ -89,6 +106,11 @@ void read_bad_blocks_file(ext2_filsys fs, const char *bad_blocks_file, return; } +void test_disk(ext2_filsys fs) +{ + read_bad_blocks_file(fs, 0, 1); +} + static int check_bb_inode_blocks(ext2_filsys fs, blk_t *block_nr, int blockcnt, void *private) { @@ -108,58 +130,3 @@ static int check_bb_inode_blocks(ext2_filsys fs, blk_t *block_nr, int blockcnt, return 0; } -void test_disk(ext2_filsys fs) -{ - errcode_t retval; - badblocks_list bb_list = 0; - FILE *f; - char buf[1024]; - - read_bitmaps(fs); - - /* - * Always read in the current list of bad blocks. - */ - retval = ext2fs_read_bb_inode(fs, &bb_list); - if (retval) { - com_err("ext2fs_read_bb_inode", retval, - "while reading the bad blocks inode"); - fatal_error(0); - } - - /* - * Now run the bad blocks program - */ - sprintf(buf, "badblocks %s%s %d", preen ? "" : "-s ", - fs->device_name, - fs->super->s_blocks_count); - if (verbose) - printf("Running command: %s\n", buf); - f = popen(buf, "r"); - if (!f) { - com_err("popen", errno, - "while trying to run %s", buf); - fatal_error(0); - } - retval = ext2fs_read_bb_FILE(fs, f, &bb_list, invalid_block); - fclose (f); - if (retval) { - com_err("ext2fs_read_bb_FILE", retval, - "while processing list of bad blocks from program"); - fatal_error(0); - } - - /* - * Finally, update the bad blocks from the bad_block_map - */ - retval = ext2fs_update_bb_inode(fs, bb_list); - if (retval) { - com_err("ext2fs_update_bb_inode", retval, - "while updating bad block inode"); - fatal_error(0); - } - - badblocks_list_free(bb_list); - return; -} - diff --git a/e2fsck/e2fsck.8 b/e2fsck/e2fsck.8.in index 0febc3ef..bfd20f3b 100644 --- a/e2fsck/e2fsck.8 +++ b/e2fsck/e2fsck.8.in @@ -2,13 +2,13 @@ .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. .\" -.TH E2FSCK 8 "October 1995" "Version 1.01" +.TH E2FSCK 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME e2fsck \- check a Linux second extended file system .SH SYNOPSIS .B e2fsck [ -.B \-panyrdfvtFV +.B \-pacnyrdfvtFV ] [ .B \-b @@ -51,6 +51,13 @@ search can be fooled in some cases. This option forces e2fsck to only try locating the superblock at a particular blocksize. If the superblock is not found, e2fsck will terminate with a fatal error. .TP +.I -c +This option causes e2fsck to run the +.BR badblocks (8) +program to find any blocks +which are bad on the filesystem, and then marks them as bad by adding them +to the bad block inode. +.TP .I -d Print debugging output (useless unless you are debugging .B e2fsck @@ -81,7 +88,8 @@ Open the filesystem read-only, and assume an answer of ``no'' to all questions. Allows .B e2fsck to be used non-interactively. (Note: if the -.I -l +.IR -c , +.IR -l , or .I -L options are specified in addition to the diff --git a/e2fsck/e2fsck.c b/e2fsck/e2fsck.c index bc9510cb..1c29e4c0 100644 --- a/e2fsck/e2fsck.c +++ b/e2fsck/e2fsck.c @@ -103,13 +103,17 @@ static void show_stats(ext2_filsys fs) fs->super->s_free_blocks_count); if (!verbose) { - printf("%s: %d/%d files, %d/%d blocks\n", device_name, - inodes_used, inodes, blocks_used, blocks); + printf("%s: %d/%d files (%3.1f%% non-contiguous), %d/%d blocks\n", + device_name, inodes_used, inodes, + 100.00 * fs_fragmented / inodes_used, + blocks_used, blocks); return; } printf ("\n%8d inode%s used (%d%%)\n", inodes_used, (inodes_used != 1) ? "s" : "", 100 * inodes_used / inodes); + printf ("%8d non-contiguous inodes (%3.1f%%)\n", + fs_fragmented, 100.00 * fs_fragmented / inodes_used); printf (" # of inodes with ind/dind/tind blocks: %d/%d/%d\n", fs_ind_count, fs_dind_count, fs_tind_count); printf ("%8d block%s used (%d%%)\n" @@ -156,7 +160,7 @@ static void check_mount(NOARGS) if (!(mount_flags & EXT2_MF_MOUNTED)) return; -#if (defined(linux) && defined(HAVE_MNTENT_H)) +#if (defined(__linux__) && defined(HAVE_MNTENT_H)) /* * If the root is mounted read-only, then /etc/mtab is * probably not correct; so we won't issue a warning based on diff --git a/e2fsck/e2fsck.h b/e2fsck/e2fsck.h index debd56a5..dea265dc 100644 --- a/e2fsck/e2fsck.h +++ b/e2fsck/e2fsck.h @@ -138,6 +138,7 @@ extern int fs_sockets_count; extern int fs_ind_count; extern int fs_dind_count; extern int fs_tind_count; +extern int fs_fragmented; extern struct resource_track global_rtrack; diff --git a/e2fsck/pass1.c b/e2fsck/pass1.c index 17b0939b..40955e16 100644 --- a/e2fsck/pass1.c +++ b/e2fsck/pass1.c @@ -59,6 +59,7 @@ int fs_sockets_count = 0; int fs_ind_count = 0; int fs_dind_count = 0; int fs_tind_count = 0; +int fs_fragmented = 0; ext2fs_inode_bitmap inode_used_map = 0; /* Inodes which are in use */ ext2fs_inode_bitmap inode_bad_map = 0; /* Inodes which are bad in some way */ @@ -92,11 +93,12 @@ static char *describe_illegal_block(ext2_filsys fs, blk_t block); struct process_block_struct { ino_t ino; - int is_dir:1, clear:1, suppress:1; + int is_dir:1, clear:1, suppress:1, fragmented:1; int num_blocks; int last_block; int num_illegal_blocks; int fix; + blk_t previous_block; struct ext2_inode *inode; }; @@ -157,6 +159,7 @@ static void unwind_pass1(ext2_filsys fs) fs_ind_count = 0; fs_dind_count = 0; fs_tind_count = 0; + fs_fragmented = 0; } void pass1(ext2_filsys fs) @@ -249,6 +252,7 @@ void pass1(ext2_filsys fs) pb.num_blocks = pb.last_block = 0; pb.num_illegal_blocks = 0; pb.suppress = pb.clear = pb.is_dir = 0; + pb.fragmented = 0; pb.fix = -1; pb.inode = &inode; retval = ext2fs_block_iterate(fs, ino, 0, block_buf, @@ -593,6 +597,8 @@ static void check_blocks(ext2_filsys fs, ino_t ino, struct ext2_inode *inode, pb.num_blocks = pb.last_block = 0; pb.num_illegal_blocks = 0; pb.suppress = pb.clear = 0; + pb.fragmented = 0; + pb.previous_block = 0; pb.is_dir = LINUX_S_ISDIR(inode->i_mode); pb.fix = -1; pb.inode = inode; @@ -603,6 +609,9 @@ static void check_blocks(ext2_filsys fs, ino_t ino, struct ext2_inode *inode, com_err(program_name, retval, "while calling ext2fs_block_iterate in check_blocks"); + if (pb.fragmented && pb.num_blocks < fs->super->s_blocks_per_group) + fs_fragmented++; + if (pb.clear) { e2fsck_read_inode(fs, ino, inode, "check_blocks"); if (retval) { @@ -756,6 +765,18 @@ int process_block(ext2_filsys fs, blockcnt); #endif + /* + * Simplistic fragmentation check. We merely require that the + * file be contiguous. (Which can never be true for really + * big files that are greater than a block group.) + */ + if (p->previous_block) { + if (p->previous_block+1 != blk) + p->fragmented = 1; + } + p->previous_block = blk; + + if (blk < fs->super->s_first_data_block || blk >= fs->super->s_blocks_count || ext2fs_test_block_bitmap(block_illegal_map, blk)) { diff --git a/include/linux/ChangeLog b/include/linux/ChangeLog index faa31c64..6506425d 100644 --- a/include/linux/ChangeLog +++ b/include/linux/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Mon Sep 4 21:50:12 1995 Remy Card <card@bbj> * ext2_fs.h: Updated to latest version. diff --git a/install-utils/ChangeLog b/install-utils/ChangeLog index abeddf46..0f1e7a60 100644 --- a/install-utils/ChangeLog +++ b/install-utils/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Sat Mar 11 18:26:33 1995 Theodore Y. Ts'o <tytso@localhost> * compile_manpages: Include an exit 0 at the end because some diff --git a/lib/ChangeLog b/lib/ChangeLog index 84b84134..3f3e0b6a 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Mon Oct 30 21:11:47 1995 <tytso@rsts-11.mit.edu> * Makefile.elf-lib: Changes to pass -soname to the linker, so that diff --git a/lib/Makefile.dll-lib b/lib/Makefile.dll-lib index 1a1f9698..8bcf121d 100644 --- a/lib/Makefile.dll-lib +++ b/lib/Makefile.dll-lib @@ -81,6 +81,7 @@ installdirs:: install-shlibs install:: $(DLL_IMAGE).so.$(DLL_VERSION) installdirs $(INSTALL_PROGRAM) $(DLL_IMAGE).so.$(DLL_VERSION) \ $(DESTDIR)$(DLL_INSTALL_DIR)/$(DLL_IMAGE).so.$(DLL_VERSION) + $(STRIP) $(DESTDIR)$(DLL_INSTALL_DIR)/$(DLL_IMAGE).so.$(DLL_VERSION) -ldconfig install:: $(DLL_STUB).sa diff --git a/lib/Makefile.elf-lib b/lib/Makefile.elf-lib index bd2693c0..93f1ace4 100644 --- a/lib/Makefile.elf-lib +++ b/lib/Makefile.elf-lib @@ -5,7 +5,7 @@ # In order to use this stub, the following makefile variables must be defined. # # ELF_VERSION = 1.0 -# ELF_SONAME = 1 +# ELF_SO_VERSION = 1 # ELF_IMAGE = libce # ELF_MYDIR = et # ELF_INSTALL_DIR = $(SHLIBDIR) @@ -36,6 +36,10 @@ installdirs:: install-shlibs install:: $(ELF_LIB) installdirs $(INSTALL_PROGRAM) $(ELF_LIB) $(DESTDIR)$(ELF_INSTALL_DIR)/$(ELF_LIB) + $(STRIP) --strip-debug \ + $(DESTDIR)$(DLL_INSTALL_DIR)/$(ELF_LIB) + $(LN) -sf $(ELF_LIB) $(DESTDIR)$(DLL_INSTALL_DIR)/$(ELF_SONAME) + $(LN) -sf $(ELF_SONAME) $(DESTDIR)$(DLL_INSTALL_DIR)/$(ELF_IMAGE).so -ldconfig clean:: diff --git a/lib/e2p/ChangeLog b/lib/e2p/ChangeLog index 631d8f68..05cac101 100644 --- a/lib/e2p/ChangeLog +++ b/lib/e2p/ChangeLog @@ -1,3 +1,16 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + +Tue Jan 2 20:50:44 1996 <tytso@rsts-11.mit.edu> + + * fgetflags.c (fgetflags): + * fsetflags.c (fsetflags): + * fgetversion.c (fgetversion): + * fsetversion.c (fsetversion): Add the O_NONBLOCK flag to open + call, so that we don't hang trying to open things like + named pipes. + Mon Oct 30 17:44:07 1995 <tytso@rsts-11.mit.edu> * ls.c (list_super): Use the correct field (s_def_resgid) when diff --git a/lib/e2p/Makefile.in b/lib/e2p/Makefile.in index 1e68fe6f..568c2ec0 100644 --- a/lib/e2p/Makefile.in +++ b/lib/e2p/Makefile.in @@ -57,13 +57,13 @@ BSDLIB_INSTALL_DIR = $(libdir) @MAKEFILE_CHECKER@ .c.o: - $(CC) $(CFLAGS) -c $< -o $@ -@PROFILE_CMT@ $(CC) $(CFLAGS) -pg -o profiled/$*.o -c $< -@CHECKER_CMT@ $(CC) $(CFLAGS) -checker -g -o checker/$*.o -c $< -@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(CFLAGS) \ + $(CC) $(ALL_CFLAGS) -c $< -o $@ +@PROFILE_CMT@ $(CC) $(ALL_CFLAGS) -pg -o profiled/$*.o -c $< +@CHECKER_CMT@ $(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $< +@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(ALL_CFLAGS) \ @DLL_CMT@ -o jump/$*.o -c $<) -@ELF_CMT@ $(CC) $(CFLAGS) -fPIC -o elfshared/$*.o -c $< -@BSDLIB_CMT@ $(CC) $(CFLAGS) -fpic -o pic/$*.o -c $< +@ELF_CMT@ $(CC) $(ALL_CFLAGS) -fPIC -o elfshared/$*.o -c $< +@BSDLIB_CMT@ $(CC) $(ALL_CFLAGS) -fpic -o pic/$*.o -c $< installdirs:: $(top_srcdir)/mkinstalldirs $(DESTDIR)$(ulibdir) diff --git a/lib/e2p/fgetflags.c b/lib/e2p/fgetflags.c index 752da0b5..099446d0 100644 --- a/lib/e2p/fgetflags.c +++ b/lib/e2p/fgetflags.c @@ -59,7 +59,7 @@ int fgetflags (const char * name, unsigned long * flags) int fd; int r; - fd = open (name, O_RDONLY); + fd = open (name, O_RDONLY|O_NONBLOCK); if (fd == -1) return -1; r = ioctl (fd, EXT2_IOC_GETFLAGS, flags); diff --git a/lib/e2p/fgetversion.c b/lib/e2p/fgetversion.c index 89e07131..ba4eec44 100644 --- a/lib/e2p/fgetversion.c +++ b/lib/e2p/fgetversion.c @@ -33,7 +33,7 @@ int fgetversion (const char * name, unsigned long * version) int fd; int r; - fd = open (name, O_RDONLY); + fd = open (name, O_RDONLY|O_NONBLOCK); if (fd == -1) return - 1; r = ioctl (fd, EXT2_IOC_GETVERSION, version); diff --git a/lib/e2p/fsetflags.c b/lib/e2p/fsetflags.c index a2584432..06aabba4 100644 --- a/lib/e2p/fsetflags.c +++ b/lib/e2p/fsetflags.c @@ -55,7 +55,7 @@ int fsetflags (const char * name, unsigned long flags) int fd; int r; - fd = open (name, O_RDONLY); + fd = open (name, O_RDONLY|O_NONBLOCK); if (fd == -1) return -1; r = ioctl (fd, EXT2_IOC_SETFLAGS, &flags); diff --git a/lib/e2p/fsetversion.c b/lib/e2p/fsetversion.c index afea3656..1443fb50 100644 --- a/lib/e2p/fsetversion.c +++ b/lib/e2p/fsetversion.c @@ -33,7 +33,7 @@ int fsetversion (const char * name, unsigned long version) int fd; int r; - fd = open (name, O_RDONLY); + fd = open (name, O_RDONLY|O_NONBLOCK); if (fd == -1) return -1; r = ioctl (fd, EXT2_IOC_SETVERSION, &version); diff --git a/lib/et/ChangeLog b/lib/et/ChangeLog index 99436325..de96335e 100644 --- a/lib/et/ChangeLog +++ b/lib/et/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Mon Sep 4 21:44:47 1995 Remy Card <card@bbj> * Makefile.in: Added support for BSD shared libraries. diff --git a/lib/et/Makefile.in b/lib/et/Makefile.in index 44b091a7..e3e52baf 100644 --- a/lib/et/Makefile.in +++ b/lib/et/Makefile.in @@ -45,13 +45,13 @@ BSDLIB_INSTALL_DIR = $(libdir) # what to build... # .c.o: - $(CC) $(CFLAGS) -c $< -o $@ -@PROFILE_CMT@ $(CC) $(CFLAGS) -pg -o profiled/$*.o -c $< -@CHECKER_CMT@ $(CC) $(CFLAGS) -checker -g -o checker/$*.o -c $< -@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(CFLAGS) \ + $(CC) $(ALL_CFLAGS) -c $< -o $@ +@PROFILE_CMT@ $(CC) $(ALL_CFLAGS) -pg -o profiled/$*.o -c $< +@CHECKER_CMT@ $(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $< +@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(ALL_CFLAGS) \ @DLL_CMT@ -o jump/$*.o -c $<) -@ELF_CMT@ $(CC) $(CFLAGS) -fPIC -o elfshared/$*.o -c $< -@BSDLIB_CMT@ $(CC) $(CFLAGS) -fpic -o pic/$*.o -c $< +@ELF_CMT@ $(CC) $(ALL_CFLAGS) -fPIC -o elfshared/$*.o -c $< +@BSDLIB_CMT@ $(CC) $(ALL_CFLAGS) -fpic -o pic/$*.o -c $< @MAKEFILE_LIBRARY@ @MAKEFILE_DLL@ diff --git a/lib/ext2fs/ChangeLog b/lib/ext2fs/ChangeLog index 4dd44ed4..ba77b939 100644 --- a/lib/ext2fs/ChangeLog +++ b/lib/ext2fs/ChangeLog @@ -1,3 +1,17 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + +Sat Dec 9 09:57:50 1995 <tytso@rsts-11.mit.edu> + + * rw_bitops.c (ext2fs_write_block_bitmap): + * bitops.c (ext2fs_test_bit, ext2fs_clear_bit, ext2fs_set_bit): + * bitops.h (ext2fs_test_bit, ext2fs_clear_bit, ext2fs_set_bit): + Rename {test,set,clear}_bit to ext2fs_{test,set,clear}_bit, + to avoid conflicts with with kernel include files. Also + rename ADDR and CONST_ADDR to EXT2FS_ADDR and + EXT2FS_CONST_ADDR. + Thu Oct 26 12:09:16 1995 <tytso@rsts-11.mit.edu> * ext2_err.et: Updated message in EXT2_ET_BASE to say version 0.5c diff --git a/lib/ext2fs/Makefile.in b/lib/ext2fs/Makefile.in index fd8301c9..c3311f88 100644 --- a/lib/ext2fs/Makefile.in +++ b/lib/ext2fs/Makefile.in @@ -102,20 +102,20 @@ BSDLIB_INSTALL_DIR = $(libdir) @MAKEFILE_CHECKER@ .c.o: - $(CC) $(CFLAGS) -c $< -o $@ -@PROFILE_CMT@ $(CC) $(CFLAGS) -pg -o profiled/$*.o -c $< -@CHECKER_CMT@ $(CC) $(CFLAGS) -checker -g -o checker/$*.o -c $< -@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(CFLAGS) \ + $(CC) $(ALL_CFLAGS) -c $< -o $@ +@PROFILE_CMT@ $(CC) $(ALL_CFLAGS) -pg -o profiled/$*.o -c $< +@CHECKER_CMT@ $(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $< +@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(ALL_CFLAGS) \ @DLL_CMT@ -o jump/$*.o -c $<) -@ELF_CMT@ $(CC) $(CFLAGS) -fPIC -o elfshared/$*.o -c $< -@BSDLIB_CMT@ $(CC) $(CFLAGS) -fpic -o pic/$*.o -c $< +@ELF_CMT@ $(CC) $(ALL_CFLAGS) -fPIC -o elfshared/$*.o -c $< +@BSDLIB_CMT@ $(CC) $(ALL_CFLAGS) -fpic -o pic/$*.o -c $< COMPILE_ET=../et/compile_et DISTFILES= Makefile *.c *.h image -ext2_err.c ext2_err.h: $(srcdir)/ext2_err.et - $(COMPILE_ET) $(srcdir)/ext2_err.et +ext2_err.c ext2_err.h: ext2_err.et + $(COMPILE_ET) ext2_err.et installdirs:: $(top_srcdir)/mkinstalldirs $(DESTDIR)$(ulibdir) \ diff --git a/lib/ext2fs/bitops.c b/lib/ext2fs/bitops.c index 0dc89677..da69e3b2 100644 --- a/lib/ext2fs/bitops.c +++ b/lib/ext2fs/bitops.c @@ -27,7 +27,7 @@ * systems, as well as non-32 bit systems. */ -int set_bit(int nr,void * addr) +int ext2fs_set_bit(int nr,void * addr) { int mask, retval; unsigned char *ADDR = (unsigned char *) addr; @@ -39,7 +39,7 @@ int set_bit(int nr,void * addr) return retval; } -int clear_bit(int nr, void * addr) +int ext2fs_clear_bit(int nr, void * addr) { int mask, retval; unsigned char *ADDR = (unsigned char *) addr; @@ -51,7 +51,7 @@ int clear_bit(int nr, void * addr) return retval; } -int test_bit(int nr, const void * addr) +int ext2fs_test_bit(int nr, const void * addr) { int mask; const unsigned char *ADDR = (const unsigned char *) addr; diff --git a/lib/ext2fs/bitops.h b/lib/ext2fs/bitops.h index 4b0fa39a..1703872c 100644 --- a/lib/ext2fs/bitops.h +++ b/lib/ext2fs/bitops.h @@ -9,9 +9,9 @@ */ -extern int set_bit(int nr,void * addr); -extern int clear_bit(int nr, void * addr); -extern int test_bit(int nr, const void * addr); +extern int ext2fs_set_bit(int nr,void * addr); +extern int ext2fs_clear_bit(int nr, void * addr); +extern int ext2fs_test_bit(int nr, const void * addr); extern __u16 ext2fs_swab16(__u16 val); extern __u32 ext2fs_swab32(__u32 val); @@ -95,40 +95,40 @@ extern blk_t ext2fs_get_inode_bitmap_end(ext2fs_inode_bitmap bitmap); * Some hacks to defeat gcc over-optimizations.. */ struct __dummy_h { unsigned long a[100]; }; -#define ADDR (*(struct __dummy_h *) addr) -#define CONST_ADDR (*(const struct __dummy_h *) addr) +#define EXT2FS_ADDR (*(struct __dummy_h *) addr) +#define EXT2FS_CONST_ADDR (*(const struct __dummy_h *) addr) -_INLINE_ int set_bit(int nr, void * addr) +_INLINE_ int ext2fs_set_bit(int nr, void * addr) { int oldbit; __asm__ __volatile__("btsl %2,%1\n\tsbbl %0,%0" - :"=r" (oldbit),"=m" (ADDR) + :"=r" (oldbit),"=m" (EXT2FS_ADDR) :"r" (nr)); return oldbit; } -_INLINE_ int clear_bit(int nr, void * addr) +_INLINE_ int ext2fs_clear_bit(int nr, void * addr) { int oldbit; __asm__ __volatile__("btrl %2,%1\n\tsbbl %0,%0" - :"=r" (oldbit),"=m" (ADDR) + :"=r" (oldbit),"=m" (EXT2FS_ADDR) :"r" (nr)); return oldbit; } -_INLINE_ int test_bit(int nr, const void * addr) +_INLINE_ int ext2fs_test_bit(int nr, const void * addr) { int oldbit; __asm__ __volatile__("btl %2,%1\n\tsbbl %0,%0" :"=r" (oldbit) - :"m" (CONST_ADDR),"r" (nr)); + :"m" (EXT2FS_CONST_ADDR),"r" (nr)); return oldbit; } -#undef ADDR +#undef EXT2FS_ADDR #endif /* i386 */ @@ -136,7 +136,7 @@ _INLINE_ int test_bit(int nr, const void * addr) #define _EXT2_HAVE_ASM_BITOPS_ -_INLINE_ int set_bit(int nr,void * addr) +_INLINE_ int ext2fs_set_bit(int nr,void * addr) { char retval; @@ -146,7 +146,7 @@ _INLINE_ int set_bit(int nr,void * addr) return retval; } -_INLINE_ int clear_bit(int nr, void * addr) +_INLINE_ int ext2fs_clear_bit(int nr, void * addr) { char retval; @@ -156,7 +156,7 @@ _INLINE_ int clear_bit(int nr, void * addr) return retval; } -_INLINE_ int test_bit(int nr, const void * addr) +_INLINE_ int ext2fs_test_bit(int nr, const void * addr) { char retval; @@ -172,7 +172,7 @@ _INLINE_ int test_bit(int nr, const void * addr) #define _EXT2_HAVE_ASM_BITOPS_ -_INLINE_ int set_bit(int nr, void *addr) +_INLINE_ int ext2fs_set_bit(int nr, void *addr) { int mask, retval; unsigned long *ADDR = (unsigned long *) addr; @@ -184,7 +184,7 @@ _INLINE_ int set_bit(int nr, void *addr) return retval; } -_INLINE_ int clear_bit(int nr, void *addr) +_INLINE_ int ext2fs_clear_bit(int nr, void *addr) { int mask, retval; unsigned long *ADDR = (unsigned long *) addr; @@ -196,7 +196,7 @@ _INLINE_ int clear_bit(int nr, void *addr) return retval; } -_INLINE_ int test_bit(int nr, const void *addr) +_INLINE_ int ext2fs_test_bit(int nr, const void *addr) { int mask; const unsigned long *ADDR = (const unsigned long *) addr; @@ -231,7 +231,7 @@ _INLINE_ void ext2fs_mark_block_bitmap(ext2fs_block_bitmap bitmap, bitmap->description); return; } - set_bit(block - bitmap->start, bitmap->bitmap); + ext2fs_set_bit(block - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_unmark_block_bitmap(ext2fs_block_bitmap bitmap, @@ -242,7 +242,7 @@ _INLINE_ void ext2fs_unmark_block_bitmap(ext2fs_block_bitmap bitmap, block, bitmap->description); return; } - clear_bit(block - bitmap->start, bitmap->bitmap); + ext2fs_clear_bit(block - bitmap->start, bitmap->bitmap); } _INLINE_ int ext2fs_test_block_bitmap(ext2fs_block_bitmap bitmap, @@ -253,7 +253,7 @@ _INLINE_ int ext2fs_test_block_bitmap(ext2fs_block_bitmap bitmap, block, bitmap->description); return 0; } - return test_bit(block - bitmap->start, bitmap->bitmap); + return ext2fs_test_bit(block - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_mark_inode_bitmap(ext2fs_inode_bitmap bitmap, @@ -264,7 +264,7 @@ _INLINE_ void ext2fs_mark_inode_bitmap(ext2fs_inode_bitmap bitmap, inode, bitmap->description); return; } - set_bit(inode - bitmap->start, bitmap->bitmap); + ext2fs_set_bit(inode - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_unmark_inode_bitmap(ext2fs_inode_bitmap bitmap, @@ -275,7 +275,7 @@ _INLINE_ void ext2fs_unmark_inode_bitmap(ext2fs_inode_bitmap bitmap, inode, bitmap->description); return; } - clear_bit(inode - bitmap->start, bitmap->bitmap); + ext2fs_clear_bit(inode - bitmap->start, bitmap->bitmap); } _INLINE_ int ext2fs_test_inode_bitmap(ext2fs_inode_bitmap bitmap, @@ -286,7 +286,7 @@ _INLINE_ int ext2fs_test_inode_bitmap(ext2fs_inode_bitmap bitmap, inode, bitmap->description); return 0; } - return test_bit(inode - bitmap->start, bitmap->bitmap); + return ext2fs_test_bit(inode - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_fast_mark_block_bitmap(ext2fs_block_bitmap bitmap, @@ -299,7 +299,7 @@ _INLINE_ void ext2fs_fast_mark_block_bitmap(ext2fs_block_bitmap bitmap, return; } #endif - set_bit(block - bitmap->start, bitmap->bitmap); + ext2fs_set_bit(block - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_fast_unmark_block_bitmap(ext2fs_block_bitmap bitmap, @@ -312,7 +312,7 @@ _INLINE_ void ext2fs_fast_unmark_block_bitmap(ext2fs_block_bitmap bitmap, return; } #endif - clear_bit(block - bitmap->start, bitmap->bitmap); + ext2fs_clear_bit(block - bitmap->start, bitmap->bitmap); } _INLINE_ int ext2fs_fast_test_block_bitmap(ext2fs_block_bitmap bitmap, @@ -325,7 +325,7 @@ _INLINE_ int ext2fs_fast_test_block_bitmap(ext2fs_block_bitmap bitmap, return 0; } #endif - return test_bit(block - bitmap->start, bitmap->bitmap); + return ext2fs_test_bit(block - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_fast_mark_inode_bitmap(ext2fs_inode_bitmap bitmap, @@ -338,7 +338,7 @@ _INLINE_ void ext2fs_fast_mark_inode_bitmap(ext2fs_inode_bitmap bitmap, return; } #endif - set_bit(inode - bitmap->start, bitmap->bitmap); + ext2fs_set_bit(inode - bitmap->start, bitmap->bitmap); } _INLINE_ void ext2fs_fast_unmark_inode_bitmap(ext2fs_inode_bitmap bitmap, @@ -351,7 +351,7 @@ _INLINE_ void ext2fs_fast_unmark_inode_bitmap(ext2fs_inode_bitmap bitmap, return; } #endif - clear_bit(inode - bitmap->start, bitmap->bitmap); + ext2fs_clear_bit(inode - bitmap->start, bitmap->bitmap); } _INLINE_ int ext2fs_fast_test_inode_bitmap(ext2fs_inode_bitmap bitmap, @@ -364,7 +364,7 @@ _INLINE_ int ext2fs_fast_test_inode_bitmap(ext2fs_inode_bitmap bitmap, return 0; } #endif - return test_bit(inode - bitmap->start, bitmap->bitmap); + return ext2fs_test_bit(inode - bitmap->start, bitmap->bitmap); } _INLINE_ blk_t ext2fs_get_block_bitmap_start(ext2fs_block_bitmap bitmap) diff --git a/lib/ext2fs/dll/jump.funcs b/lib/ext2fs/dll/jump.funcs index 730ee315..489bd624 100644 --- a/lib/ext2fs/dll/jump.funcs +++ b/lib/ext2fs/dll/jump.funcs @@ -38,9 +38,9 @@ 00000000 T _ext2fs_new_block libext2fs alloc 00000000 T _ext2fs_get_free_blocks libext2fs alloc 00000000 T _ext2fs_expand_dir libext2fs expanddir -00000000 T _set_bit libext2fs inline -00000000 T _clear_bit libext2fs inline -00000000 T _test_bit libext2fs inline +00000000 T _ext2fs_set_bit libext2fs inline +00000000 T _ext2fs_clear_bit libext2fs inline +00000000 T _ext2fs_test_bit libext2fs inline 00000000 T _ext2fs_mark_block_bitmap libext2fs inline 00000000 T _ext2fs_unmark_block_bitmap libext2fs inline 00000000 T _ext2fs_test_block_bitmap libext2fs inline diff --git a/lib/ext2fs/ext2_err.et b/lib/ext2fs/ext2_err.et.in index 71298b81..09dfd47b 100644 --- a/lib/ext2fs/ext2_err.et +++ b/lib/ext2fs/ext2_err.et.in @@ -1,11 +1,11 @@ # -# Copyright (C) 1993, 1994 Theodore Ts'o. This file may be redistributed -# under the terms of the GNU Public License. +# Copyright (C) 1993, 1994, 1995, 1996 Theodore Ts'o. This file may be +# redistributed under the terms of the GNU Public License. # error_table ext2 ec EXT2_ET_BASE, - "EXT2FS Library version 0.5c" + "EXT2FS Library version @E2FSPROGS_VERSION@" ec EXT2_ET_MAGIC_EXT2FS_FILSYS, "Wrong magic number for ext2_filsys structure" diff --git a/lib/ext2fs/rw_bitmaps.c b/lib/ext2fs/rw_bitmaps.c index 18b0d3e5..1854839f 100644 --- a/lib/ext2fs/rw_bitmaps.c +++ b/lib/ext2fs/rw_bitmaps.c @@ -85,7 +85,7 @@ errcode_t ext2fs_write_block_bitmap (ext2_filsys fs) % EXT2_BLOCKS_PER_GROUP(fs->super); if (nbits) for (j = nbits; j < fs->blocksize * 8; j++) - set_bit(j, bitmap_block); + ext2fs_set_bit(j, bitmap_block); } retval = io_channel_write_blk(fs->io, fs->group_desc[i].bg_block_bitmap, 1, diff --git a/lib/ss/ChangeLog b/lib/ss/ChangeLog index 21c7df1b..f8a312d4 100644 --- a/lib/ss/ChangeLog +++ b/lib/ss/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Wed Oct 25 11:58:20 1995 <tytso@rsts-11.mit.edu> * ss_internal.h: Removed malloc, realloc, free definitions, and diff --git a/lib/ss/Makefile.in b/lib/ss/Makefile.in index 2cedb5b4..4a49726d 100644 --- a/lib/ss/Makefile.in +++ b/lib/ss/Makefile.in @@ -44,13 +44,13 @@ MK_CMDS=./mk_cmds XTRA_CFLAGS=-DPOSIX_SIGNALS -I$(srcdir)/../et .c.o: - $(CC) $(CFLAGS) -c $< -@PROFILE_CMT@ $(CC) $(CFLAGS) -pg -o profiled/$*.o -c $< -@CHECKER_CMT@ $(CC) $(CFLAGS) -checker -g -o checker/$*.o -c $< -@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) $(CFLAGS) \ -@DLL_CMT@ -o jump/$*.o -c $<) -@ELF_CMT@ $(CC) $(CFLAGS) -fPIC -o elfshared/$*.o -c $< -@BSDLIB_CMT@ $(CC) $(CFLAGS) -fpic -o pic/$*.o -c $< + $(CC) $(ALL_CFLAGS) -c $< +@PROFILE_CMT@ $(CC) $(ALL_CFLAGS) -pg -o profiled/$*.o -c $< +@CHECKER_CMT@ $(CC) $(ALL_CFLAGS) -checker -g -o checker/$*.o -c $< +@DLL_CMT@ (export JUMP_DIR=`pwd`/jump; $(CC) -B$(JUMP_PREFIX) \ +@DLL_CMT@ $(ALL_CFLAGS) -o jump/$*.o -c $<) +@ELF_CMT@ $(CC) $(ALL_CFLAGS) -fPIC -o elfshared/$*.o -c $< +@BSDLIB_CMT@ $(CC) $(ALL_CFLAGS) -fpic -o pic/$*.o -c $< # for the library diff --git a/lib/ss/test_ss.c b/lib/ss/test_ss.c index 3878400d..7ee5c65d 100644 --- a/lib/ss/test_ss.c +++ b/lib/ss/test_ss.c @@ -9,8 +9,8 @@ * $Locker$ * * $Log$ - * Revision 1.4 1997/04/26 14:25:12 tytso - * Checked in e2fsprogs 1.01. + * Revision 1.5 1997/04/26 14:35:55 tytso + * Checkin of e2fsprogs 1.02. * * Revision 1.1 1993/06/03 12:31:25 tytso * Initial revision diff --git a/misc/ChangeLog b/misc/ChangeLog index 0b13e1fd..8d020c22 100644 --- a/misc/ChangeLog +++ b/misc/ChangeLog @@ -1,3 +1,26 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + +Tue Oct 30 21:14:12 1995 <tytso@rsts-11.mit.edu> + + * mke2fs.c (check_plausibility): Add check to warn user if they + are trying to mke2fs the whole disk. (/dev/hda + vs. /dev/hda1) + +Fri Dec 15 19:09:56 1995 <tytso@rsts-11.mit.edu> + + * fsck.c (check_all): If we break out of the loop because we are + serializing and have just started at fsck we haven't + finished the pass. We need to go round again in case there + are more filesystems to be done in this pass. (Patch + submitted by Mike Jagdis) + +Sat Dec 9 10:07:16 1995 <tytso@rsts-11.mit.edu> + + * dumpe2fs.c (in_use): test_bit() was renamed to + ext2fs_test_bit(). + Mon Oct 30 20:21:18 1995 <tytso@rsts-11.mit.edu> * fsck.c (fsck_device): Check fstype instead of type; this was a diff --git a/misc/Makefile.in b/misc/Makefile.in index ee031566..016c9925 100644 --- a/misc/Makefile.in +++ b/misc/Makefile.in @@ -34,36 +34,36 @@ LIBS= -L../lib -lext2fs -le2p -lcom_err DEPLIBS= ../lib/libext2fs.a ../lib/libe2p.a ../lib/libcom_err.a .c.o: - $(CC) -c $(CFLAGS) $< -o $@ + $(CC) -c $(ALL_CFLAGS) $< -o $@ all:: $(SPROGS) $(UPROGS) $(USPROGS) tune2fs: $(TUNE2FS_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o tune2fs $(TUNE2FS_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o tune2fs $(TUNE2FS_OBJS) $(LIBS) mklost+found: $(MKLPF_OBJS) - $(CC) $(LDFLAGS) -o mklost+found $(MKLPF_OBJS) + $(CC) $(ALL_LDFLAGS) -o mklost+found $(MKLPF_OBJS) mke2fs: $(MKE2FS_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o mke2fs $(MKE2FS_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o mke2fs $(MKE2FS_OBJS) $(LIBS) mke2fs.static: $(MKE2FS_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -static -o mke2fs.static $(MKE2FS_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -static -o mke2fs.static $(MKE2FS_OBJS) $(LIBS) chattr: $(CHATTR_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o chattr $(CHATTR_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o chattr $(CHATTR_OBJS) $(LIBS) lsattr: $(LSATTR_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o lsattr $(LSATTR_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o lsattr $(LSATTR_OBJS) $(LIBS) dumpe2fs: $(DUMPE2FS_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o dumpe2fs $(DUMPE2FS_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o dumpe2fs $(DUMPE2FS_OBJS) $(LIBS) fsck: $(FSCK_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o fsck $(FSCK_OBJS) $(LIBS) badblocks: $(BADBLOCKS_OBJS) $(DEPLIBS) - $(CC) $(LDFLAGS) -o badblocks $(BADBLOCKS_OBJS) $(LIBS) + $(CC) $(ALL_LDFLAGS) -o badblocks $(BADBLOCKS_OBJS) $(LIBS) installdirs: $(top_srcdir)/mkinstalldirs $(DESTDIR)$(bindir) $(DESTDIR)$(sbindir) \ @@ -85,10 +85,10 @@ install: all $(SMANPAGES) $(UMANPAGES) installdirs $(STRIP) $(DESTDIR)$(ubindir)/$$i; \ done for i in $(SMANPAGES); do \ - $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(man8dir)/$$i; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(man8dir)/$$i; \ done for i in $(UMANPAGES); do \ - $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(man1dir)/$$i; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(man1dir)/$$i; \ done uninstall: diff --git a/misc/badblocks.8 b/misc/badblocks.8.in index 89379614..1c4069c2 100644 --- a/misc/badblocks.8 +++ b/misc/badblocks.8.in @@ -1,5 +1,5 @@ .\" -*- nroff -*- -.TH BADBLOCKS 8 "October 1995" "Version 1.01" +.TH BADBLOCKS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME badblocks \- search a device for bad blocks .SH SYNOPSIS diff --git a/misc/chattr.1 b/misc/chattr.1.in index 89783c73..cfd4ff7d 100644 --- a/misc/chattr.1 +++ b/misc/chattr.1.in @@ -1,5 +1,5 @@ .\" -*- nroff -*- -.TH CHATTR 1 "October 1995" "Version 1.01" +.TH CHATTR 1 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME chattr \- change file attributes on a Linux second extended file system .SH SYNOPSIS diff --git a/misc/dumpe2fs.8 b/misc/dumpe2fs.8.in index f54928d4..0dc1922a 100644 --- a/misc/dumpe2fs.8 +++ b/misc/dumpe2fs.8.in @@ -2,7 +2,7 @@ .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. .\" -.TH DUMPE2FS 8 "October 1995" "Version 0.5c" +.TH DUMPE2FS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME dumpe2fs \- dump filesystem information .SH SYNOPSIS diff --git a/misc/dumpe2fs.c b/misc/dumpe2fs.c index b7a50b3e..1161e3b3 100644 --- a/misc/dumpe2fs.c +++ b/misc/dumpe2fs.c @@ -32,7 +32,7 @@ #include "../version.h" -#define in_use(m, x) (test_bit ((x), (m))) +#define in_use(m, x) (ext2fs_test_bit ((x), (m))) const char * program_name = "dumpe2fs"; char * device_name = NULL; diff --git a/misc/fsck.8 b/misc/fsck.8.in index 7b78a682..4533b846 100644 --- a/misc/fsck.8 +++ b/misc/fsck.8.in @@ -2,7 +2,7 @@ .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. .\" -.TH FSCK 8 "October 1995" "Version 0.5c" +.TH FSCK 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME fsck \- check and repair a Linux file system .SH SYNOPSIS diff --git a/misc/fsck.c b/misc/fsck.c index 05afde90..1d92c54c 100644 --- a/misc/fsck.c +++ b/misc/fsck.c @@ -607,8 +607,11 @@ static int check_all(NOARGS) fsck_device(fs->device); fs->flags |= FLAG_DONE; - if (serialize) + if (serialize) { + pass_done = 0; break; /* Only do one filesystem at a time */ + + } } inst = wait_one(); if (inst) { diff --git a/misc/lsattr.1 b/misc/lsattr.1.in index 7991d312..1a3bdffd 100644 --- a/misc/lsattr.1 +++ b/misc/lsattr.1.in @@ -1,5 +1,5 @@ .\" -*- nroff -*- -.TH LSATTR 1 "October 1995" "Version 1.01" +.TH LSATTR 1 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME lsattr \- list file attributes on a Linux second extended file system .SH SYNOPSIS diff --git a/misc/mke2fs.8 b/misc/mke2fs.8.in index 2633a406..65c8b55f 100644 --- a/misc/mke2fs.8 +++ b/misc/mke2fs.8.in @@ -2,7 +2,7 @@ .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. .\" -.TH MKE2FS 8 "October 1995" "Version 1.01" +.TH MKE2FS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME mke2fs \- create a Linux second extended file system .SH SYNOPSIS @@ -39,6 +39,9 @@ reserved-blocks-percentage .B \-v ] [ +.B \-F +] +[ .B \-S ] device @@ -96,6 +99,9 @@ Quiet execution. Useful if mke2fs is run in a script. .TP .I -v Verbose execution. +.IP +.I -F +Force mke2fs to run, even if the specified device .TP .I -S Write superblock and group descriptors only. This is useful if all of diff --git a/misc/mke2fs.c b/misc/mke2fs.c index 687deba6..b0a1779d 100644 --- a/misc/mke2fs.c +++ b/misc/mke2fs.c @@ -35,12 +35,16 @@ #include <malloc.h> #include <sys/ioctl.h> #include <sys/types.h> +#include <sys/stat.h> #include <stdio.h> #ifdef HAVE_LINUX_FS_H #include <linux/fs.h> #endif #include <linux/ext2_fs.h> +#ifdef HAVE_LINUX_MAJOR_H +#include <linux/major.h> +#endif #include "et/com_err.h" #include "ext2fs/ext2fs.h" @@ -59,6 +63,7 @@ int cflag = 0; int verbose = 0; int quiet = 0; int super_only = 0; +int force = 0; char *bad_blocks_filename = 0; struct ext2_super_block param; @@ -86,6 +91,38 @@ static int log2(int arg) return l; } +static void check_plausibility(NOARGS) +{ +#ifdef HAVE_LINUX_MAJOR_H + int val; + struct stat s; + + val = stat(device_name, &s); + + if(val == -1) { + perror("stat"); + exit(1); + } + if(!S_ISBLK(s.st_mode)) { + printf("%s is not a block special device.\n", device_name); + printf("Proceed anyway? (y,n) "); + if (getchar() != 'y') + exit(1); + return; + } + if ((MAJOR(s.st_rdev) == HD_MAJOR && MINOR(s.st_rdev)%64 == 0) || + (MAJOR(s.st_rdev) == SCSI_DISK_MAJOR && + MINOR(s.st_rdev)%16 == 0)) { + printf("%s is entire device, not just one partition!\n", + device_name); + printf("Proceed anyway? (y,n) "); + if (getchar() != 'y') + exit(1); + return; + } +#endif +} + static void check_mount(NOARGS) { errcode_t retval; @@ -495,7 +532,7 @@ static void PRS(int argc, char *argv[]) EXT2FS_VERSION, EXT2FS_DATE); if (argc && *argv) program_name = *argv; - while ((c = getopt (argc, argv, "b:cf:g:i:l:m:qtvS")) != EOF) + while ((c = getopt (argc, argv, "b:cf:g:i:l:m:qtvSF")) != EOF) switch (c) { case 'b': size = strtoul(optarg, &tmp, 0); @@ -575,6 +612,9 @@ static void PRS(int argc, char *argv[]) case 'q': quiet = 1; break; + case 'F': + force = 1; + break; case 'S': super_only = 1; break; @@ -596,6 +636,8 @@ static void PRS(int argc, char *argv[]) if (optind < argc) usage(); + if (!force) + check_plausibility(); check_mount(); param.s_log_frag_size = param.s_log_block_size; diff --git a/misc/mklost+found.8 b/misc/mklost+found.8.in index c785db96..bb192ec1 100644 --- a/misc/mklost+found.8 +++ b/misc/mklost+found.8.in @@ -2,7 +2,7 @@ .\" Copyright 1993, 1994, 1995 by Theodore Ts'o. All Rights Reserved. .\" This file may be copied under the terms of the GNU Public License. .\" -.TH MKLOST+FOUND 8 "October 1995" "Version 1.01" +.TH MKLOST+FOUND 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME mklost+found \- create a lost+found directory on a mounted Linux second extended file system diff --git a/misc/tune2fs.8 b/misc/tune2fs.8.in index a511f73e..ee123d28 100644 --- a/misc/tune2fs.8 +++ b/misc/tune2fs.8.in @@ -2,8 +2,7 @@ .\" Initial revision .\" .\" -.TH TUNE2FS 8 "October 1995" "Version 1.01" - +.TH TUNE2FS 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" .SH NAME tune2fs \- adjust tunable filesystem parameters on second extended filesystems .SH SYNOPSIS diff --git a/tests/ChangeLog b/tests/ChangeLog index f50ef6c3..bc956ef0 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,7 @@ +Wed Jan 31 11:06:08 1996 <tytso@rsts-11.mit.edu> + + * Release of E2fsprogs version 1.02 + Mon Sep 4 23:06:06 1995 Remy Card <card@bbj> * Makefile.in (clean, distclean): Use the -f option when removing diff --git a/tests/f_badbblocks/expect.1 b/tests/f_badbblocks/expect.1 index d819f652..3fcfb3b1 100644 --- a/tests/f_badbblocks/expect.1 +++ b/tests/f_badbblocks/expect.1 @@ -16,5 +16,5 @@ Free blocks count wrong for group 0 (78, counted=77). FIXED Free blocks count wrong (78, counted=77). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 23/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 23/100 blocks Exit status is 1 diff --git a/tests/f_badbblocks/expect.2 b/tests/f_badbblocks/expect.2 index f18e3083..fda217d2 100644 --- a/tests/f_badbblocks/expect.2 +++ b/tests/f_badbblocks/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 23/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 23/100 blocks Exit status is 0 diff --git a/tests/f_baddir/expect.1 b/tests/f_baddir/expect.1 index 8ac16b88..646ba245 100644 --- a/tests/f_baddir/expect.1 +++ b/tests/f_baddir/expect.1 @@ -35,5 +35,5 @@ Directories count wrong for group #0 (4, counted=3). FIXED Free inodes count wrong (19, counted=20). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 12/32 files, 23/100 blocks +test_filesys: 12/32 files (0.0% non-contiguous), 23/100 blocks Exit status is 1 diff --git a/tests/f_baddir/expect.2 b/tests/f_baddir/expect.2 index c21acaf8..628a376a 100644 --- a/tests/f_baddir/expect.2 +++ b/tests/f_baddir/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 12/32 files, 23/100 blocks +test_filesys: 12/32 files (0.0% non-contiguous), 23/100 blocks Exit status is 0 diff --git a/tests/f_baddotdir/expect.1 b/tests/f_baddotdir/expect.1 index 657ccb46..e9499cbc 100644 --- a/tests/f_baddotdir/expect.1 +++ b/tests/f_baddotdir/expect.1 @@ -44,5 +44,5 @@ Free blocks count wrong for group 0 (72, counted=73). FIXED Free blocks count wrong (72, counted=73). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 16/32 files, 27/100 blocks +test_filesys: 16/32 files (0.0% non-contiguous), 27/100 blocks Exit status is 1 diff --git a/tests/f_baddotdir/expect.2 b/tests/f_baddotdir/expect.2 index 862f94f2..0ed37d7e 100644 --- a/tests/f_baddotdir/expect.2 +++ b/tests/f_baddotdir/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 16/32 files, 27/100 blocks +test_filesys: 16/32 files (0.0% non-contiguous), 27/100 blocks Exit status is 0 diff --git a/tests/f_badinode/expect.1 b/tests/f_badinode/expect.1 index 7ed7b542..45525694 100644 --- a/tests/f_badinode/expect.1 +++ b/tests/f_badinode/expect.1 @@ -21,5 +21,5 @@ Free inodes count wrong for group #0 (19, counted=20). FIXED Free inodes count wrong (19, counted=20). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 12/32 files, 23/100 blocks +test_filesys: 12/32 files (0.0% non-contiguous), 23/100 blocks Exit status is 1 diff --git a/tests/f_badinode/expect.2 b/tests/f_badinode/expect.2 index c21acaf8..628a376a 100644 --- a/tests/f_badinode/expect.2 +++ b/tests/f_badinode/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 12/32 files, 23/100 blocks +test_filesys: 12/32 files (0.0% non-contiguous), 23/100 blocks Exit status is 0 diff --git a/tests/f_badlkcnt/expect.1 b/tests/f_badlkcnt/expect.1 index d3ad6a71..63b9d9f3 100644 --- a/tests/f_badlkcnt/expect.1 +++ b/tests/f_badlkcnt/expect.1 @@ -13,5 +13,5 @@ Pass 4: Checking reference counts Pass 5: Checking group summary information test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 29/32 files, 32/100 blocks +test_filesys: 29/32 files (0.0% non-contiguous), 32/100 blocks Exit status is 1 diff --git a/tests/f_badlkcnt/expect.2 b/tests/f_badlkcnt/expect.2 index 6b2ea70e..a28c8bdd 100644 --- a/tests/f_badlkcnt/expect.2 +++ b/tests/f_badlkcnt/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 29/32 files, 32/100 blocks +test_filesys: 29/32 files (0.0% non-contiguous), 32/100 blocks Exit status is 0 diff --git a/tests/f_badprimary/expect.1 b/tests/f_badprimary/expect.1 index 54106736..f41e319a 100644 --- a/tests/f_badprimary/expect.1 +++ b/tests/f_badprimary/expect.1 @@ -21,5 +21,5 @@ Pass 4: Checking reference counts Pass 5: Checking group summary information test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 1 diff --git a/tests/f_badprimary/expect.2 b/tests/f_badprimary/expect.2 index b8b19f83..a821f878 100644 --- a/tests/f_badprimary/expect.2 +++ b/tests/f_badprimary/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 0 diff --git a/tests/f_badroot/expect.1 b/tests/f_badroot/expect.1 index e04d9ccb..05bc86af 100644 --- a/tests/f_badroot/expect.1 +++ b/tests/f_badroot/expect.1 @@ -33,5 +33,5 @@ Directories count wrong for group #0 (2, counted=3). FIXED Free inodes count wrong (20, counted=19). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 13/32 files, 24/100 blocks +test_filesys: 13/32 files (0.0% non-contiguous), 24/100 blocks Exit status is 1 diff --git a/tests/f_badroot/expect.2 b/tests/f_badroot/expect.2 index 7871e7d2..cab021a7 100644 --- a/tests/f_badroot/expect.2 +++ b/tests/f_badroot/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 13/32 files, 24/100 blocks +test_filesys: 13/32 files (0.0% non-contiguous), 24/100 blocks Exit status is 0 diff --git a/tests/f_badtable/expect.1 b/tests/f_badtable/expect.1 index f1c00e15..0f22af96 100644 --- a/tests/f_badtable/expect.1 +++ b/tests/f_badtable/expect.1 @@ -25,5 +25,5 @@ Free blocks count wrong for group 0 (78, counted=74). FIXED Free blocks count wrong (78, counted=74). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 26/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 26/100 blocks Exit status is 1 diff --git a/tests/f_badtable/expect.2 b/tests/f_badtable/expect.2 index d6a69dd5..7614b9d2 100644 --- a/tests/f_badtable/expect.2 +++ b/tests/f_badtable/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 26/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 26/100 blocks Exit status is 0 diff --git a/tests/f_bbfile/expect.1 b/tests/f_bbfile/expect.1 index 7b6088bc..957ff484 100644 --- a/tests/f_bbfile/expect.1 +++ b/tests/f_bbfile/expect.1 @@ -40,5 +40,5 @@ Free blocks count wrong for group 0 (57, counted=41). FIXED Free blocks count wrong (57, counted=41). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 12/32 files, 59/100 blocks +test_filesys: 12/32 files (0.0% non-contiguous), 59/100 blocks Exit status is 1 diff --git a/tests/f_bbfile/expect.2 b/tests/f_bbfile/expect.2 index 3ddc85d3..92491da8 100644 --- a/tests/f_bbfile/expect.2 +++ b/tests/f_bbfile/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 12/32 files, 59/100 blocks +test_filesys: 12/32 files (8.3% non-contiguous), 59/100 blocks Exit status is 0 diff --git a/tests/f_bitmaps/expect.1 b/tests/f_bitmaps/expect.1 index 0e0b74ba..6d23cec2 100644 --- a/tests/f_bitmaps/expect.1 +++ b/tests/f_bitmaps/expect.1 @@ -9,5 +9,5 @@ Block bitmap differences: +12 -20 +41 -50. FIXED Inode bitmap differences: +11 -15. FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (9.1% non-contiguous), 22/100 blocks Exit status is 1 diff --git a/tests/f_bitmaps/expect.2 b/tests/f_bitmaps/expect.2 index b8b19f83..73d1c27b 100644 --- a/tests/f_bitmaps/expect.2 +++ b/tests/f_bitmaps/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (9.1% non-contiguous), 22/100 blocks Exit status is 0 diff --git a/tests/f_dirlink/expect.1 b/tests/f_dirlink/expect.1 index c89f34bb..73c008a6 100644 --- a/tests/f_dirlink/expect.1 +++ b/tests/f_dirlink/expect.1 @@ -8,5 +8,5 @@ Pass 4: Checking reference counts Pass 5: Checking group summary information test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 13/32 files, 24/100 blocks +test_filesys: 13/32 files (0.0% non-contiguous), 24/100 blocks Exit status is 1 diff --git a/tests/f_dirlink/expect.2 b/tests/f_dirlink/expect.2 index 7871e7d2..cab021a7 100644 --- a/tests/f_dirlink/expect.2 +++ b/tests/f_dirlink/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 13/32 files, 24/100 blocks +test_filesys: 13/32 files (0.0% non-contiguous), 24/100 blocks Exit status is 0 diff --git a/tests/f_dup/expect.1 b/tests/f_dup/expect.1 index 996eb075..df5c077d 100644 --- a/tests/f_dup/expect.1 +++ b/tests/f_dup/expect.1 @@ -30,5 +30,5 @@ Padding at end of block bitmap is not set. Fix? yes test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 13/16 files, 40/100 blocks +test_filesys: 13/16 files (7.7% non-contiguous), 40/100 blocks Exit status is 1 diff --git a/tests/f_dup/expect.2 b/tests/f_dup/expect.2 index e65d6922..d1530c2c 100644 --- a/tests/f_dup/expect.2 +++ b/tests/f_dup/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 13/16 files, 40/100 blocks +test_filesys: 13/16 files (7.7% non-contiguous), 40/100 blocks Exit status is 0 diff --git a/tests/f_dup2/expect.1 b/tests/f_dup2/expect.1 index 6625f2fc..58725469 100644 --- a/tests/f_dup2/expect.1 +++ b/tests/f_dup2/expect.1 @@ -38,5 +38,5 @@ Padding at end of block bitmap is not set. Fix? yes test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 16/16 files, 78/100 blocks +test_filesys: 16/16 files (6.2% non-contiguous), 78/100 blocks Exit status is 1 diff --git a/tests/f_dup2/expect.2 b/tests/f_dup2/expect.2 index 0700500b..0508b095 100644 --- a/tests/f_dup2/expect.2 +++ b/tests/f_dup2/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 16/16 files, 78/100 blocks +test_filesys: 16/16 files (12.5% non-contiguous), 78/100 blocks Exit status is 0 diff --git a/tests/f_dupfsblks/expect.1 b/tests/f_dupfsblks/expect.1 index 1ff77acb..772295d7 100644 --- a/tests/f_dupfsblks/expect.1 +++ b/tests/f_dupfsblks/expect.1 @@ -27,5 +27,5 @@ Free blocks count wrong for group 0 (77, counted=74). FIXED Free blocks count wrong (77, counted=74). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 12/32 files, 26/100 blocks +test_filesys: 12/32 files (8.3% non-contiguous), 26/100 blocks Exit status is 1 diff --git a/tests/f_dupfsblks/expect.2 b/tests/f_dupfsblks/expect.2 index e506f233..6f6d1db7 100644 --- a/tests/f_dupfsblks/expect.2 +++ b/tests/f_dupfsblks/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 12/32 files, 26/100 blocks +test_filesys: 12/32 files (0.0% non-contiguous), 26/100 blocks Exit status is 0 diff --git a/tests/f_dupsuper/expect.1 b/tests/f_dupsuper/expect.1 index 274744a3..37b21d96 100644 --- a/tests/f_dupsuper/expect.1 +++ b/tests/f_dupsuper/expect.1 @@ -17,5 +17,5 @@ Free blocks count wrong for group 0 (61, counted=64). FIXED Free blocks count wrong (61, counted=64). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 12/32 files, 36/100 blocks +test_filesys: 12/32 files (8.3% non-contiguous), 36/100 blocks Exit status is 1 diff --git a/tests/f_dupsuper/expect.2 b/tests/f_dupsuper/expect.2 index 4ab97943..f5cf22b2 100644 --- a/tests/f_dupsuper/expect.2 +++ b/tests/f_dupsuper/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 12/32 files, 36/100 blocks +test_filesys: 12/32 files (8.3% non-contiguous), 36/100 blocks Exit status is 0 diff --git a/tests/f_end-bitmap/expect.1 b/tests/f_end-bitmap/expect.1 index 71eb6b6a..a54605ad 100644 --- a/tests/f_end-bitmap/expect.1 +++ b/tests/f_end-bitmap/expect.1 @@ -10,5 +10,5 @@ Padding at end of block bitmap is not set. Fix? yes test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 12/16 files, 37/100 blocks +test_filesys: 12/16 files (0.0% non-contiguous), 37/100 blocks Exit status is 1 diff --git a/tests/f_end-bitmap/expect.2 b/tests/f_end-bitmap/expect.2 index a4c2f736..8109f995 100644 --- a/tests/f_end-bitmap/expect.2 +++ b/tests/f_end-bitmap/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 12/16 files, 37/100 blocks +test_filesys: 12/16 files (0.0% non-contiguous), 37/100 blocks Exit status is 0 diff --git a/tests/f_expand/expect.1 b/tests/f_expand/expect.1 index 11263585..27191311 100644 --- a/tests/f_expand/expect.1 +++ b/tests/f_expand/expect.1 @@ -583,5 +583,5 @@ Directories count wrong for group #0 (2, counted=3). FIXED Free inodes count wrong (1, counted=0). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 104/104 files, 33/100 blocks +test_filesys: 104/104 files (0.0% non-contiguous), 33/100 blocks Exit status is 1 diff --git a/tests/f_expand/expect.2 b/tests/f_expand/expect.2 index 49395f23..4ded3c43 100644 --- a/tests/f_expand/expect.2 +++ b/tests/f_expand/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 104/104 files, 33/100 blocks +test_filesys: 104/104 files (0.0% non-contiguous), 33/100 blocks Exit status is 0 diff --git a/tests/f_holedir/expect.1 b/tests/f_holedir/expect.1 index b0af9488..898ef6f4 100644 --- a/tests/f_holedir/expect.1 +++ b/tests/f_holedir/expect.1 @@ -27,5 +27,5 @@ Pass 4: Checking reference counts Pass 5: Checking group summary information test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (9.1% non-contiguous), 22/100 blocks Exit status is 1 diff --git a/tests/f_holedir/expect.2 b/tests/f_holedir/expect.2 index b8b19f83..a821f878 100644 --- a/tests/f_holedir/expect.2 +++ b/tests/f_holedir/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 0 diff --git a/tests/f_illbbitmap/expect.1 b/tests/f_illbbitmap/expect.1 index 4b3b6c32..7c9c1f64 100644 --- a/tests/f_illbbitmap/expect.1 +++ b/tests/f_illbbitmap/expect.1 @@ -15,5 +15,5 @@ Padding at end of block bitmap is not set. Fix? yes test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 1 diff --git a/tests/f_illbbitmap/expect.2 b/tests/f_illbbitmap/expect.2 index b8b19f83..a821f878 100644 --- a/tests/f_illbbitmap/expect.2 +++ b/tests/f_illbbitmap/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 0 diff --git a/tests/f_illibitmap/expect.1 b/tests/f_illibitmap/expect.1 index 15fe3931..54719fa8 100644 --- a/tests/f_illibitmap/expect.1 +++ b/tests/f_illibitmap/expect.1 @@ -12,5 +12,5 @@ Fix summary information? yes Inode bitmap differences: +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11. FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 1 diff --git a/tests/f_illibitmap/expect.2 b/tests/f_illibitmap/expect.2 index b8b19f83..a821f878 100644 --- a/tests/f_illibitmap/expect.2 +++ b/tests/f_illibitmap/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 0 diff --git a/tests/f_lotsbad/expect.1 b/tests/f_lotsbad/expect.1 index 33079f1e..8861f9fd 100644 --- a/tests/f_lotsbad/expect.1 +++ b/tests/f_lotsbad/expect.1 @@ -42,5 +42,5 @@ Free inodes count wrong for group #0 (20, counted=21). FIXED Free inodes count wrong (20, counted=21). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 42/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 42/100 blocks Exit status is 1 diff --git a/tests/f_lotsbad/expect.2 b/tests/f_lotsbad/expect.2 index 3257a84e..b83f4e6a 100644 --- a/tests/f_lotsbad/expect.2 +++ b/tests/f_lotsbad/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 42/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 42/100 blocks Exit status is 0 diff --git a/tests/f_lpf/expect.1 b/tests/f_lpf/expect.1 index b2cef783..a5b67e01 100644 --- a/tests/f_lpf/expect.1 +++ b/tests/f_lpf/expect.1 @@ -35,5 +35,5 @@ Padding at end of block bitmap is not set. Fix? yes test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 15/16 files, 62/100 blocks +test_filesys: 15/16 files (6.7% non-contiguous), 62/100 blocks Exit status is 1 diff --git a/tests/f_lpf/expect.2 b/tests/f_lpf/expect.2 index 800fd55a..1a3af492 100644 --- a/tests/f_lpf/expect.2 +++ b/tests/f_lpf/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 15/16 files, 62/100 blocks +test_filesys: 15/16 files (6.7% non-contiguous), 62/100 blocks Exit status is 0 diff --git a/tests/f_messy_inode/expect.1 b/tests/f_messy_inode/expect.1 index 170bac9e..8400b519 100644 --- a/tests/f_messy_inode/expect.1 +++ b/tests/f_messy_inode/expect.1 @@ -29,5 +29,5 @@ Free blocks count wrong for group 0 (68, counted=75). FIXED Free blocks count wrong (68, counted=75). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 29/32 files, 25/100 blocks +test_filesys: 29/32 files (3.4% non-contiguous), 25/100 blocks Exit status is 1 diff --git a/tests/f_messy_inode/expect.2 b/tests/f_messy_inode/expect.2 index e9c78809..1fffb022 100644 --- a/tests/f_messy_inode/expect.2 +++ b/tests/f_messy_inode/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 29/32 files, 25/100 blocks +test_filesys: 29/32 files (0.0% non-contiguous), 25/100 blocks Exit status is 0 diff --git a/tests/f_mke2fs2b/expect.1 b/tests/f_mke2fs2b/expect.1 index e60580c5..e55d5208 100644 --- a/tests/f_mke2fs2b/expect.1 +++ b/tests/f_mke2fs2b/expect.1 @@ -32,5 +32,5 @@ Directories count wrong for group #0 (4, counted=3). FIXED Free inodes count wrong (17, counted=18). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 14/32 files, 13/100 blocks +test_filesys: 14/32 files (0.0% non-contiguous), 13/100 blocks Exit status is 1 diff --git a/tests/f_mke2fs2b/expect.2 b/tests/f_mke2fs2b/expect.2 index 447fcb58..e87d8b9f 100644 --- a/tests/f_mke2fs2b/expect.2 +++ b/tests/f_mke2fs2b/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 14/32 files, 13/100 blocks +test_filesys: 14/32 files (0.0% non-contiguous), 13/100 blocks Exit status is 0 diff --git a/tests/f_noroot/expect.1 b/tests/f_noroot/expect.1 index df77568c..44660ab1 100644 --- a/tests/f_noroot/expect.1 +++ b/tests/f_noroot/expect.1 @@ -40,5 +40,5 @@ Directories count wrong for group #0 (4, counted=5). FIXED Free inodes count wrong (17, counted=16). FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 16/32 files, 26/100 blocks +test_filesys: 16/32 files (0.0% non-contiguous), 26/100 blocks Exit status is 1 diff --git a/tests/f_noroot/expect.2 b/tests/f_noroot/expect.2 index 8cf7758c..5ea5bc71 100644 --- a/tests/f_noroot/expect.2 +++ b/tests/f_noroot/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 16/32 files, 26/100 blocks +test_filesys: 16/32 files (0.0% non-contiguous), 26/100 blocks Exit status is 0 diff --git a/tests/f_okgroup/expect.1 b/tests/f_okgroup/expect.1 index 8ee1a4b8..44856c04 100644 --- a/tests/f_okgroup/expect.1 +++ b/tests/f_okgroup/expect.1 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/2048 files, 274/8193 blocks +test_filesys: 11/2048 files (0.0% non-contiguous), 274/8193 blocks Exit status is 0 diff --git a/tests/f_okgroup/expect.2 b/tests/f_okgroup/expect.2 index 8ee1a4b8..44856c04 100644 --- a/tests/f_okgroup/expect.2 +++ b/tests/f_okgroup/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/2048 files, 274/8193 blocks +test_filesys: 11/2048 files (0.0% non-contiguous), 274/8193 blocks Exit status is 0 diff --git a/tests/f_overfsblks/expect.1 b/tests/f_overfsblks/expect.1 index 91c9ae2c..6d444268 100644 --- a/tests/f_overfsblks/expect.1 +++ b/tests/f_overfsblks/expect.1 @@ -12,5 +12,5 @@ Fix summary information? yes Inode bitmap differences: -12 -13 -14 -15 -16 -17 -18 -19 -20 -21. FIXED test_filesys: ***** FILE SYSTEM WAS MODIFIED ***** -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 1 diff --git a/tests/f_overfsblks/expect.2 b/tests/f_overfsblks/expect.2 index b8b19f83..a821f878 100644 --- a/tests/f_overfsblks/expect.2 +++ b/tests/f_overfsblks/expect.2 @@ -3,5 +3,5 @@ Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information -test_filesys: 11/32 files, 22/100 blocks +test_filesys: 11/32 files (0.0% non-contiguous), 22/100 blocks Exit status is 0 @@ -6,6 +6,6 @@ * under the GNU Public License. */ -#define E2FSPROGS_VERSION "1.01" -#define E2FSPROGS_DATE "30-Oct-95" +#define E2FSPROGS_VERSION "1.02" +#define E2FSPROGS_DATE "16-Jan-96" |