Whamcloud - gitweb
Fix gcc -Wall nits.
[tools/e2fsprogs.git] / lib / ext2fs / ChangeLog
index 7338ee0..2a1bce2 100644 (file)
-2001-12-24  Theodore Tso  <tytso@valinux.com>
+2003-01-25  Theodore Ts'o  <tytso@mit.edu>
+
+       * dirhash.c: Fix gcc -Wall nits.
+
+2003-01-22  Theodore Ts'o  <tytso@mit.edu>
+
+       * unix_io.c (unix_write_blk): Fix up GCC -Wall nits.
+
+2003-01-21  Theodore Ts'o  <tytso@mit.edu>
+
+       * fileio.c (ext2fs_file_read, ext2_file_lseek,
+               ext2_file_get_size): Add 64-bit support.
+
+       * ext2fs.h (EXT2_I_SIZE): Add macro which caluates a 64bit size
+               from i_size and i_size_high.
+
+2003-01-19  Theodore Ts'o  <tytso@mit.edu>
+
+       * initialize.c (ext2fs_initialize): If the user specifies a really
+               large number of inodes, then reduce the number of blocks
+               per group until we find a workable set of filesystem
+               parameters.
+
+       * ext2_err.et.in (EXT2_ET_TOO_MANY_INODES): Add new error code.
+
+2002-11-09  Theodore Ts'o  <tytso@mit.edu>
+
+       * Release of E2fsprogs 1.32
+
+2002-11-09  Theodore Ts'o  <tytso@mit.edu>
+
+       * unix_io.c (find_cached_block, reuse_cache, unix_read_blk, 
+               unix_write_blk): Optimize routines so that we don't end up
+               searching the cache twice when a block isn't in the
+               cache.  If reads are larger than READ_DIRECT_SIZE, don't
+               let them go through the cache.
+
+       * unix_io.c (find_cached_block): Fixed bug which caused some clean
+               blocks to be erroneously marked as dirty, so they would
+               get written back to the disk before they are evicted from
+               the cache.  Harmless, but it slows down e2fsck
+               significantly.
+
+2002-11-08  Theodore Ts'o  <tytso@mit.edu>
+
+       * Release of E2fsprogs 1.31
+
+2002-11-08    <tytso@snap.thunk.org>
+
+       * Makefile.in (check): Skip trying to compile test_byteswap
+               if --disable-byteswaap had been given to configure.
+
+2002-11-07    <tytso@snap.thunk.org>
+
+       * closefs.c (write_bgdesc, ext2fs_flush): Fix bug in meta_bg
+               support when the MASTER_SB_ONLY flag is set.  Some of
+               the descriptor blocks that should have been written out
+               were getting skipped.
+
+2002-10-31  Theodore Ts'o  <tytso@mit.edu>
+
+       * Release of E2fsprogs 1.30
+
+2002-10-31  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2_fs.h: Add support for a new inode flag, which is to be used
+               for indicating the top of directory hierarchies for the
+               Orlov block allocator.
+       
+       * ismounted.c (check_mntent, check_mntent_file): Add better
+               support for loopback-mounted filesystems.  Check /etc/mtab
+               if /proc/mounts doesn't turn up any mount flags, since
+               /etc/mtab has the loopback image filename, instead of
+               /dev/loop0.  Also, check based on st_dev and st_ino, so
+               that if a relative pathname or a pathnames using symbolic
+               links are used, we can detect the the filesystem correctly
+               in those cases.  (Addresses Sourceforge bug #619119)
+
+       * flushb.c (ext2fs_sync_device): If the BLKFLSBUF ioctl succeeds,
+               don't try the FDFLUSH ioctl that was required for floppies
+               with older kernels.  This avoids needless whining from the
+               MD device driver.  (Addresses Sourceforge bug #545832).
+
+       * openfs.c (ext2fs_open): Fix bug which caused us to pass the
+               wrong group_block to ext2fs_descriptor_block_loc if we're
+               using the backup superblock/block group descriptors.
+               (ext2fs_descriptor_block_loc): If we're using the backup
+               superblock descriptors, use the backup descriptor block in
+               the next block group.
+
+2002-10-30  Theodore Ts'o  <tytso@mit.edu>
+
+       * alloc_tables.c (ext2fs_allocate_group_table): Allocate the inode
+               table so that it buts up against the bitmap blocks, to
+               avoid block fragmentation.
+
+       * closefs.c (write_bgdesc), initalize.c (ext2fs_initialize): Fix
+               bug; only allocate group descriptor blocks up to
+               s_first_meta_bg.
+
+2002-10-25  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2_fs.h: Add a new superblock field, s_mkfs_time, so that we
+               know when a filesystem was created.  (Sometimes this can
+               be useful...)
+
+       * initialize.c (ext2fs_initialize): Set the s_mkfs_time field.
+
+2002-10-20  Theodore Ts'o  <tytso@valinux.com>
+
+       * ext2_fs.h (EXT3_DEFM_JMODE): Add new default mount options for
+               the journal data mode.
+
+       * closefs.c (ext2fs_flush, write_bgdesc), ext2_fs.h, ext2fs.h,
+       openfs.c (ext2fs_descriptor_block_loc, ext2fs_open), initialize.c
+       (ext2fs_initialize), swapfs.c (ext2fs_swap_super): Add support for
+       the meta_blockgroup filesystem format.
+
+2002-10-15    <tytso@snap.thunk.org>
+
+       * ext2_fs.h: Add new field in superblock for default mount options.
+
+2002-10-13  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2fs.h: Add #include of header files necessary for ext2fs.h to
+               compile cleanly.
+
+2002-10-02  Theodore Y. Ts'o  <tytso@mit.edu>
+
+       * rw_bitmaps.c (ext2fs_write_block_bitmap,
+               ext2fs_read_block_bitmap): Don't set the CHANGED bit just
+               because the bitmap is getting written to disk.  Make
+               ext2fs_swap_bitmap be a static function, since it's not
+               intended to be exported.
+
+       * swapfs.c (ext2fs_swap_super): Byte-swap the hash seed
+
+2001-09-24  Theodore Tso  <tytso@mit.edu>
+
+       * Release of E2fsprogs 1.29
+
+2001-08-31  Theodore Tso  <tytso@thunk.org>
+
+       * Release of E2fsprogs 1.28
+
+2002-08-31  Theodore Ts'o  <tytso@valinux.com>
+
+       * dblist.c (ext2fs_dblist_sort): New function which allows the
+               caller to pass in a special sort comparison function.
+
+2002-08-20  Theodore Ts'o  <tytso@mit.edu>
+
+       * valid_blk.c (ext2fs_inode_has_valid_blocks): Fix bug which
+               failed to accurately characterize non-standard slow
+               symlinks.  (Which don't appear in practice on real-life
+               systems, fortunately.)
+
+2002-08-17  Theodore Ts'o  <tytso@mit.edu>
+
+       * Makefile.in: Remove inode_io.o from the standard object files,
+               and only build it if debugfs is enabled (it requires
+               fileio.o, which is only built if --disable-debugfs isn't
+               specified to configure).
+
+       * dirhash.c (ext2fs_dirhash): Change the MD4 hash in a backwards
+               incompatible way so that it is no longer
+               endian-dependent.  Add the TEA hash.  Allow the seed
+               parameter to be optional.
+
+       * ext2_fs.h: Remove the HALF_MD4_SEED and HALF_MD4_64 hashes.
+               These features are all now in the HALF_MD4 hash.  Add
+               definition for EXT2_HASH_TEA.
+
+       * ext2fs.h (ext2fs_dirhash): Change function prototype so it takes
+               a pointer instead of an array.
+
+2002-08-16  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2_err.et.in (EXT2_ET_BAD_EA_BLOCK_NUM): New error code
+
+       * ext2fs.h (ext2fs_inode_data_blocks): New function which returns
+               the number of data blocks used by an inode exclusive of
+               the EA block.
+
+       * ext_attr.c (ext2fs_adjust_ea_refcount): New function which
+               adjusts the reference count in an extended attribute block.
+
+       * valid_blk.c (ext2fs_inode_has_valid_blocks): Add code to
+               correctly deal with extended attribute blocks in symbolic
+               links. 
+
+2002-08-13    <tytso@snap.thunk.org>
+
+       * Makefile.in: Move dupfs.o and test_io.o from the
+               needed-by-debugfs object list to the needed-by-resizer
+               object list.  Fixes compile problem if the system is built
+               with only --disable-debugfs.
+
+2002-07-29  Theodore Ts'o  <tytso@mit.edu>
+
+       * link.c (ext2fs_link): When adding a new link to a directory,
+               clear the HTREE bit.
+
+2002-07-23  Theodore Ts'o  <tytso@mit.edu>
+
+       * dirhash.c (ext2fs_dirhash): Fix bug which caused MD4
+               calculations for names > 32 characters to be completely
+               bogus.  Changed MD4 calculation to match what is currently
+               being used in the CVS gkernel tree.
+
+2002-07-19  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2_fs.h: Add s_hash_seed and s_def_hash_version to the
+               superblock definition.
+
+       * badblocks.c, freefs.c, ext2fs.h: Use the badblocks functions to
+               create a set of u32_list functions.
+
+       * dirhash.c (halfMD4Transform): Shift the hash by one bit,
+               since that's required by the directory indexing code.
+
+2002-07-14  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2fs.h, read_bb_file.c: Change private to priv_data, to avoid
+               using a C++ reserved word.
+
+       * unix_io.c (unix_open): Only attempt the setrlimit workaround if
+               the kernel version is 2.4.10 -- 2.4.17, since otherwise an
+               old version of glibc (built against 2.2 headers) will
+               interact badly with the workaround to actually cause more
+               problems.  I hate it when the glibc folks think they're
+               being smarter than the kernel....
+
+2002-06-28  Andreas Dilger <adilger@clusterfs.com>
+
+       * ext2_fs.h: Add superblock field for reserved group descriptors.
+
+2002-06-28  Theodore Ts'o  <tytso@mit.edu>
+
+       * bitops.h: Add #define's for ext2fs_{l,b}e{32,16}_to_cpu and
+               ext2fs_cpu_to_{l,b}e{32,16}
+
+2002-06-27  Theodore Ts'o  <tytso@mit.edu>
+
+       * ismounted.c (check_mntent): In AIX 4.3, MOUNTED isn't defined.
+               Add appropriate fallbacks in this case.
+
+2002-06-26  Theodore Ts'o  <tytso@mit.edu>
+
+       * dirhash.c (ext2fs_dirhash): Change function signature to support
+               a hash seed, and to return the minor hash (for 64-bit hash
+               support).   Add support for the half MD4, half MD4 with
+               seed, and half MD4 with seed and 64 bits.
+
+2002-06-15  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2_fs.h (EXT2_DIRSYNC_FL): Add new file.
+
+2002-06-09  Andreas Dilger <adilger@clusterfs.com>
+
+       * ext2_fs.h: Add macros for maximum block/inode counts:
+               EXT2_INODES_PER_BLOCK, EXT2_MAX_BLOCKS_PER_GROUP,
+               and EXT2_MAX_INODES_PER_GROUP.
+
+       * openfs.c (ext2fs_open): Check that the number of blocks in a group
+               is less than 2^16, otherwise we need an INCOMPAT flag (not
+               in existence yet, if ever) to open such a filesystem.
+
+       * initialize.c (ext2fs_initialize): Limit the number of blocks and
+               inodes in a group to less than 2^16.
+
+2002-06-09  Andreas Dilger <adilger@clusterfs.com>
+
+       * ext2_fs.h: Further minor cleanups of the header.  Consolidate
+               some checks for __KERNEL__ into one place.
+
+2002-05-22  Andreas Dilger <adilger@clusterfs.com>
+
+       * ext2_fs.h: Remove macros accessing u.ext2_sb field and use
+               the EXT2_SB() macro instead.  Remove kernel function
+               prototypes also.  This matches the 2.5 kernel, and
+               is also cleaner for other reasons.  Whitespace cleanup.
+
+2002-05-21  Theodore Ts'o  <tytso@mit.edu>
+
+       * ext2_ext_attr.h: Update to V2 version of the Bestbits format.
+
+2002-05-16  Andreas Dilger <adilger@clusterfs.com>
+
+       * ext2_fs.h: Change limits to support filesystems with 8k blocks.
+
+       * initialize.c (ext2fs_initialize): Remove assumption that
+               blocksizes are always <= 4k.
+
+2002-05-11  Theodore Ts'o  <tytso@mit.edu>
+
+       * bmap.c (ext2fs_bmap): Fix bug which caused ext2fs_bmap to fail
+               silently if inode pointer is NULL (and ext2fs_bmap is
+               expected to read the inode itself).
+
+2002-04-27  Theodore Ts'o  <tytso@mit.edu>
+
+       * ismounted.c (check_mntent_file, is_swap_device): Verify that the
+               file we are checking is a block device file before looking
+               at st_rdev, since it's not valid for normal files.
+               (is_swap_device): Move so that it is outside the
+               HAVE_MNTENT_H, so that it is always built.
+
+2002-03-11  Theodore Tso  <tytso@mit.edu>
+
+       * dirblock.c (ext2fs_read_dir_block2, ext2fs_write_dir_block): New
+               functions which take an extra flags argument.  The flag
+               EXT2_DIRBLOCK_V2_STRUCT will reverse when the name_len
+               field is byte swampped on big-endian machines, since in
+               the V2 structure, name_len is a char field which is
+               doesn't need to be byte swapped --- except if an
+               old-style kernel had byte-swapped the name_len field
+               as part of the V1 structure.
+
+       * ext2_err.et.in (EXT2_ET_DIRHASH_UNSUPP): New error code
+
+       * dirhash.c (ext2fs_dirhash): New function which calculates the
+               hash for a filename in an indexed directory.
+
+2002-03-08  Theodore Tso  <tytso@mit.edu>
+
+       * Release of E2fsprogs 1.27
+
+2002-03-07  Theodore Tso  <tytso@mit.edu>
+
+       * ext2fs.h (ext2fs_inode_io_intern): Add missing function prototype.
+
+       * bmap.c, fileio.c, inode_io.c, tst_badblocks.c, 
+               tst_byteswap.c: Fix gcc -Wall complaints
+
+       * Makefile.in (check): Use LD_LIBRARY_PATH to run test programs.
+               (From Philipp Thomas <pthomas@suse.de>)
+
+2002-02-25  Theodore Tso  <tytso@mit.edu>
+
+       * ext2_fs.h: Add structure definitions for the directory indexing
+               extension.
+
+2002-02-23  Theodore Tso  <tytso@mit.edu>
+
+       * unix_io.c (unix_open): Fix 2.4 resource limit workaround so that
+               it doesn't break things on mis32, sparc32, and alpha
+               platforms.
+
+2002-02-21  Theodore Tso  <tytso@mit.edu>
+
+       * ismounted.c (is_swap_device): Fix file descriptor/memory leak;
+               we were missing an fclose().
+
+2002-02-20  Theodore Tso  <tytso@mit.edu>
+
+       * Makefile.in, inode_io.c, ext2fs.h, ext2_err.et.in: Add new io
+               abstraction interface which exports an ext2 inode.
+
+       * ext2fs.h, fileio.c (ext2fs_file_flush): Export ext2fs_file_flush
+               as a public interface.  Change void * to const void * in
+               ext2fs_file_write's interface.
+
+       * test_io.c (test_close), unix_io.c (unix_close): Remove unneeded
+               conditional; save a few bytes.
+       
+2002-02-12  Theodore Tso  <tytso@mit.edu>
+
+       * Makefile.in (tst_badblocks): Add some extra .o files when
+               linking the debugging program tst_badblocks which are
+               needed if we aren't compiling with inline functions enable.
+
+       * kernel-list.h (__inline__): On non-gcc and non-Watcom compilers,
+               define away __inline__ since it may not be supported.
+
+       * kernel-jbd.h (jbd_debug): For systems that don't do STDC, use a
+               stripped down jbd_debug that doesn't use variadic
+               arguments.  This will cause warnings under AIX, but things
+               should still build.
+
+2002-02-03  Theodore Tso  <tytso@thunk.org>
+
+       * Release of E2fsprogs 1.26
+
+2002-02-03  Theodore Tso  <tytso@mit.edu>
+
+       * mkdir.c (ext2fs_mkdir): Change to use ext2fs_inode_alloc_stats2
+               so that the number of directories in use is adjusted
+               appropriately.
+
+       * alloc_stats.c (ext2fs_inode_alloc_stats2): Add new function
+               which optionally will modify the number of directories
+               count.
+
+2002-01-03  Theodore Tso  <tytso@mit.edu>
+
+       * dir_iterate.c (ext2fs_dir_iterate2, ext2fs_process_dir_block):
+               Add support for a new flag, DIRENT_FLAG_INCLUDE_REMOVED,
+               which will return deleted directory entries.
+               ext2fs_dir_iterate2 takes a new callback function which
+               is identical with the one used by
+               ext2fs_dblist_dir_iterate().  If the directory entry is
+               deleted, the callback function will be called with the
+               entry paraemter set to DIRENT_DELETED_FILE.
+
+       * Makefile.in, alloc_stats.c (ext2fs_inode_alloc_stats,
+               ext2fs_block_alloc_stats): New functions which update
+               block/inode allocation statistics in the bitmaps, block
+               group descriptors, and superblock.
+
+       * mkjournal.c (mkjournal_proc), mkdir.c (ext2fs_mkdir),
+               expanddir.c (expand_dir_proc), bb_inode.c
+               (clear_bad_block_proc, set_bad_block_proc,
+               ext2fs_update_bb_inode), alloc.c (ext2fs_alloc_block):
+               Update to use new block/inode allocation statistics.
+
+2001-12-24  Theodore Tso  <tytso@mit.edu>
+
+       * ismounted.c (is_swap_device): New function used by
+               ext2fs_check_if_mounted and ext2fs_check_mount_point which
+               determines whether or not the specified device is a swap
+               device by using /proc/swaps.  More bulletproofing for
+               idiotic/careless system administrators!
+
+       * ext2fs.h, openfs.c (ext2fs_open), initialize.c
+               (ext2fs_initialize), mkdir.c (ext2fs_mkdir): Add a new
+               field to struct_ext2_filsys, umask.  This field is
+               initialize to 022, and affects ext2fs_mkdir in the obvious
+               way.  (In the future umask should also affect new file
+               creation routines, but the fileio functions don't
+               currently support this yes.)
 
        * ismounted.c (check_mntent_file): Stat all of the entries in
                /etc/mtab and/or /proc/mounts in order to catch dim-witted
                system administrators who might have created alias
                devices.
  
-2001-12-23  Theodore Tso  <tytso@valinux.com>
+2001-12-23  Theodore Tso  <tytso@mit.edu>
 
        * Makefile.in, jfs_user.h: Move linux/jbd.h to
                ext2fs/kernel-jbd.h, to avoid using the system header
        * kernel-jbd.h, kernel-list.h, jfs_compat.h: Move files from
                include/linux directory.
 
-2001-12-16  Theodore Tso  <tytso@valinux.com>
+2001-12-16  Theodore Tso  <tytso@mit.edu>
 
        * bitops.h (ext2fs_mark_generic_bitmap, ext2fs_unmark_generic_bitmap),
                ext_attr.c (ext2fs_read_ext_attr, ext2fs_write_ext_attr),
        * Makefile.in, jfs_user.h: linux/jfs.h has been renamed to
                linux/jbd.h
 
-2001-12-03  Theodore Tso  <tytso@valinux.com>
+2001-12-03  Theodore Tso  <tytso@mit.edu>
 
        * unix_io.c (unix_open): Make sure the ulimit workaround works
                regardless of the version of glibc which is used to
                compild e2fsprogs.
 
-2001-11-26  Theodore Tso  <tytso@valinux.com>
+2001-11-26  Theodore Tso  <tytso@mit.edu>
 
        * unix_io.c (unix_open): Work around a bug in 2.4.10+ kernels by
                trying to unset the filesize limit if at all possible,
                shouldn't be applied against writes to a block device, but
                starting in 2.4.10, the kernel is doing this.)
        
-2001-11-05  Theodore Tso  <tytso@valinux.com>
+2001-11-05  Theodore Tso  <tytso@mit.edu>
 
        * mkjournal.c (ext2fs_add_journal_inode): When creating a .journal
                file on adding a journal to an already-mounted filesystem,
 
        * Release of E2fsprogs 1.25
 
-2001-09-16  Theodore Tso  <tytso@valinux.com>
+2001-09-16  Theodore Tso  <tytso@mit.edu>
 
        * ext2_ext_attr.h: Remove unneeded #include of <linux/config.h>
                which was breaking the build on the Hurd.  (Addresses
                Debian bug #112414).
 
-2001-09-13  Theodore Ts'o  <tytso@valinux.com>
+2001-09-13  Theodore Ts'o  <tytso@mit.edu>
 
        * ismounted.c (check_mntent_file): We now validate the entry in
                /etc/mtab to make sure the filesystem is really mounted,