summaryrefslogtreecommitdiff
path: root/ext2fs
AgeCommit message (Collapse)Author
1999-09-05typoRoland McGrath
1999-09-041999-09-04 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell
* pager.c (file_pager_write_page): Don't report errors on writes that extend past NODE->allocsize. This avoids a race between sync and truncate. Reported by Mark Kettenis <kettenis@wins.uva.nl>.
1999-08-23.Roland McGrath
1999-08-231999-08-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* balloc.c (ext2_free_blocks): Handle freeing across group boundary, as Linux 2.3.14 does. * balloc.c (ext2_check_blocks_bitmap): If RO_COMPAT_SPARSE_SUPER feature flag is set, or if group number is not a power of 3, 5, or 7 (I don't know why; this is what Linux 2.3.14 does), skip tests for superblocks and descriptor blocks being free in bitmap. * balloc.c (ext2_new_block): Take new arg PREALLOC_GOAL. Use that instead of hard-coded 8 as maximum of blocks to preallocate. Also test that instead of PREALLOC_COUNT to decide whether to try any preallocation at all. * getblk.c (ext2_alloc_block): Pass new arg to ext2_new_block. Use EXT2_DEFAULT_PREALLOC_BLOCKS as default (replaces hard-coded 8); For a regular file, use SBLOCK->s_prealloc_blocks before default. For a directory, use SBLOCK->s_dir_prealloc_blocks if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is set, otherwise zero. * inode.c (diskfs_set_translator): Pass new arg (zero).
1999-08-231999-08-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* inode.c (read_node): Don't set INFO->i_version. Extract INFO->i_dir_acl value only for a directory; otherwise use zero and instead extract INFO->i_high_size. Fail with EFBIG if INFO->i_high_size is nonzero. * inode.c (write_node): Get i_flags from NP->dn->info instead of from the disk inode, so we can have modified the in-core version. * dir.c (diskfs_direnter_hard, diskfs_dirremove_hard, diskfs_dirrewrite_hard): Clear EXT2_BTREE_FL flag bit from DP->dn->info.i_flags after modifying the directory (this is what Linux 2.3.14 does). * inode.c (read_node): i_version -> i_generation * inode.c (write_node): Likewise. * balloc.c (ext2_new_block): Take new arg PREALLOC_GOAL. Use that instead of hard-coded 8 as maximum of blocks to preallocate. Also test that instead of PREALLOC_COUNT to decide whether to try any preallocation at all. * getblk.c (ext2_alloc_block): Pass new arg to ext2_new_block. Use EXT2_DEFAULT_PREALLOC_BLOCKS as default (replaces hard-coded 8); For a regular file, use SBLOCK->s_prealloc_blocks before default. For a directory, use SBLOCK->s_dir_prealloc_blocks if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is set, otherwise zero. * inode.c (diskfs_set_translator): Pass new arg (zero).
1999-08-231999-08-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ialloc.c (diskfs_alloc_node): Propagate initial value of i_flags from directory, as Linux 2.3.14 does.
1999-08-231999-08-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ext2_fs.h, ext2_fs_i.h: Replaced with Linux 2.3.14 versions. * ext2fs.h (i_mode_high): New macro, missing from ext_fs.h.
1999-08-231999-08-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* balloc.c (ext2_new_block): Take new arg PREALLOC_GOAL. Use that instead of hard-coded 8 as maximum of blocks to preallocate. Also test that instead of PREALLOC_COUNT to decide whether to try any preallocation at all. * getblk.c (ext2_alloc_block): Pass new arg to ext2_new_block. Use EXT2_DEFAULT_PREALLOC_BLOCKS as default (replaces hard-coded 8); For a regular file, use SBLOCK->s_prealloc_blocks before default. For a directory, use SBLOCK->s_dir_prealloc_blocks if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is set, otherwise zero. * inode.c (diskfs_set_translator): Pass new arg (zero).
1999-08-231999-08-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* inode.c (write_node): Get i_flags from NP->dn->info instead of from the disk inode, so we can have modified the in-core version. * dir.c (diskfs_direnter_hard, diskfs_dirremove_hard, diskfs_dirrewrite_hard): Clear EXT2_BTREE_FL flag bit from DP->dn->info.i_flags after modifying the directory (this is what Linux 2.3.14 does). * dir.c: Replace `struct ext2_dir_entry' with `struct ext2_dir_entry_2' in all uses. (ext2_file_type): New static const variable. (diskfs_get_directs): Set d_type member based on file_type field in directory entry.
1999-07-11.Roland McGrath
1999-07-111999-07-11 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* dir.c (diskfs_get_directs): Fix sloppy bugs in last change. * hyper.c (allocate_mod_map): Likewise. * pager.c (get_page_buf): Likewise.
1999-07-111999-07-06 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell
* dir.c (diskfs_get_directs): Use mmap instead of vm_allocate. * hyper.c (allocate_mod_map): Likewise. (get_hypermetadata): Likewise. * pager.c (get_page_buf): Likewise. * hyper.c (diskfs_readonly_changed): Use mprotect instead of vm_protect.
1999-07-11.Roland McGrath
1999-07-111999-07-10 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ext2fs.h: Add #include <sys/mman.h> for munmap decl.
1999-07-031999-07-03 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell
* dir.c (diskfs_lookup_hard): Use munmap instead of vm_deallocate. (diskfs_direnter_hard): Likewise. (diskfs_dirremove_hard): Likewise. (diskfs_dirrewrite_hard): Likewise. (diskfs_dirempty): Likewise. (diskfs_drop_dirstat): Likewise. (diskfs_get_directs): Likewise. * hyper.c (allocate_mod_map): Likewise. (get_hypermetadata): Likewise. * pager.c (free_page_buf): Likewise. * truncate.c (poke_pages): Likewise.
1999-06-291999-06-29 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell
* hyper.c (diskfs_readonly_changed): Adjust whether the store should permit writes too.
1999-06-19.Roland McGrath
1999-06-191999-06-19 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* pager.c (free_page_buf): Fix type cast.
1999-06-16Tue Jun 15 21:51:58 1999 Thomas Bushnell, BSG <tb@mit.edu>Thomas Bushnell
* pager.c: Clamp the number of free pages we keep around to some reasonably small value. Patch from Mark Kettenis <kettenis@wins.uva.nl>. 1999-06-15 Thomas Bushnell, BSG <tb@mit.edu> * inode.c (diskfs_validate_flags_change): Invert sense of test wrt bits that haven't yet been defined. Reported by Kalle Olavi Niemitalo <tosi@ees2.oulu.fi>.
1999-05-23.Roland McGrath
1999-05-231999-05-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ialloc.c (diskfs_alloc_node): Frob printf format to suppress warning. * getblk.c (ext2_getblk): Likewise. * balloc.c (ext2_free_blocks): Likewise. * hyper.c (get_hypermetadata): Likewise.
1999-05-231999-05-19 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ext2fs.c (main): Include store size in panic msg when it's too small.
1999-05-23.Roland McGrath
1999-05-231999-05-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ialloc.c (diskfs_alloc_node): If creator_os is not EXT2_OS_HURD, suppress warnings about stale nonzero st_blocks or st_size.
1999-01-24.Roland McGrath
1999-01-241999-01-23 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ext2fs.c (main): Use diskfs_init_main.
1998-12-27.Roland McGrath
1998-12-271998-12-27 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* inode.c (diskfs_set_statfs): Remove __ from struct members. 1998-12-21 Mark Kettenis <kettenis@phys.uva.nl> * inode.c (diskfs_set_statfs): Fill in statfs members that are used to implement statvfs.
1998-12-27.Roland McGrath
1998-12-271998-12-27 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ext2fs.c (main): Pass ARGP_IN_ORDER flag to argp_parse because diskfs options need it.
1998-12-21.Roland McGrath
1998-12-211998-12-20 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* inode.c (diskfs_write_disknode): Add braces to silence warning. * pager.c (file_pager_read_page): Likewise.
1998-12-211998-12-20 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* storeinfo.c: Don't include <netinet/in.h>.
1998-09-04.Roland McGrath
1998-09-041998-09-04 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* pager.c: strings.h -> string.h; gets strerror decl.
1998-09-041998-09-04 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* dir.c (dirscanblock): Fix defn with `const'. (diskfs_direnter_hard): Likewise. * inode.c (diskfs_create_symlink_hook): Likewise. (write_symlink): Likewise. * dir.c (diskfs_lookup_hard): Fix defn with `const'. * inode.c (diskfs_set_translator): Likewise.
1998-09-041998-09-04 Roland McGrath <roland@baalperazim.frob.com>Roland McGrath
* ext2fs.c (main): Fix return type to int.
1997-08-20Wed Aug 20 14:28:00 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell
* dir.c (diskfs_lookup_hard): Cope with error return from diskfs_get_filemap. (diskfs_dirempty): Cope (poorly) with error return from diskfs_get_filemap. * truncate.c (force_delayed_copies): Likewise. * pager.c (diskfs_get_filemap): If pager_create fails, return error to caller.
1997-06-30Mon Jun 30 17:34:27 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>Thomas Bushnell
* ext2fs.c (diskfs_readonly): Delete variable definition. (main): If the store cannot be made writable, then set diskfs_hard_readonly and diskfs_readonly.
1997-06-20.Miles Bader
1997-06-20(disk_pager_read_page):Miles Bader
Initialize READ to 0 to force store_read to allocate a buffer.
1997-06-19.Miles Bader
1997-06-19(main):Miles Bader
Get rid of device-block-size-is-power-of-2 check.
1997-06-03.Miles Bader
1997-06-03(read_node):Miles Bader
Don't assert that st_blocks is zero for non-dir/file/long-symlink inodes.
1996-11-20.Miles Bader
1996-11-20(read_node):Miles Bader
If SBLOCK->s_creator_os != EXT2_OS_HURD, set NP->author_tracks_uid to true.
1996-11-19.Miles Bader
1996-11-19(diskfs_set_translator):Miles Bader
Frob S_IPTRANS bit rather than istranslated field. (write_node): Don't write S_IPTRANS to disk. (read_node): Set S_IPTRANS bit in ST->st_mode (and clear S_ITRANS) rather than NP->istranslated.
1996-11-19(diskfs_alloc_node):Miles Bader
Clear S_IPTRANS bit in ST->st_mode instead of NP->istranslated.