[Top] [All Lists]

RE: [Announce] XFS 1.1 Prerelease 2 available for testing

To: Sean Elble <S_Elble@xxxxxxxxx>
Subject: RE: [Announce] XFS 1.1 Prerelease 2 available for testing
From: Eric Sandeen <sandeen@xxxxxxx>
Date: Thu, 21 Mar 2002 20:33:50 -0600 (CST)
Cc: <linux-xfs@xxxxxxxxxxx>
Sender: owner-linux-xfs@xxxxxxxxxxx
On Thu, 21 Mar 2002, Sean Elble wrote:

> Eric,
> Any information on specific changes since the 1.0x releases? I know about
> the ACL/EA interface changes, and obviously there has been lots of bug
> fixes, but what about other changes, like performance enhancements, etc? I
> know the changes will be in the Changelog in the tarball, but I'm on a
> Windows machine; can't easily grab those. :-(

Just got this together - probably _too_ detailed at this point.  I'll try
to do one that's a bit more of an overview.  I also plan to do some
benchmarking between the 1.0.2 release and this one.


CHANGES since 1.0.2:


* Remove most synchronous transactions - faster deletes, fewer chances for null 
files after a crash!
* Various error code return fixes
* Restrict inodes to 32 bits on large filesystems (override w/ mount option)
* Fix concurrent file and mmapped I/O
* Fix dbench hangs on low memory systems
* Fix recovery of device special inodes
* Fix mount argument parsing
* Various pagebuf reorganization, simplification, and cleanup
* Fix parallel direct and buffered I/O
* Code merges from irix
* Pagebuf merged into xfs
* Fix out-of-line extended attribute data
* Fix forced shutdown bug that overwrote superblock :(
* Improve memory allocation when not in a transaction
* Limit max file size to something Linux can handle
* Some realtime device fixes (still not complete)
* Clean up xfs_freeze path
* Report filesystem name on duplicate UUID mount failure.
* Shrink xfs inode size
* Fix some direct I/O corner cases
* Fix mount with bad log or realtime device options
* Make "osyncisdsync" the default on xfs filesystems
* Restrict chown to file's owner, or someone w/ the right capability
* Upgrade quota to Jan Kara's 32-bit VFS quota
* fix memory leak in O_DIRECT read path
* Use new reserved ea/acl syscall numbers
* Fix some sparc64 compile problems
* Make xfs superblock coherent with block layer
* Pagebuf use after free fix
* Don't allow quota flag changes on read-only device
* Make xfs metadata accesses refresh pages, keep them in the cache
* Fix sgid inheritence for root
* Correct utime permissions checking
* Reduce xfs log memory usage
* Fix a bug in memory freeing


* Man page updates from Andreas
* Test script updates from Andreas
* Clean up the --default option handling in setfacl. The old
  workarounds caused a bug for unusual input.
* Changes to the --test output format setfacl generates: ACLs that
  are not changed are now displayed as `*'.
* Fix a bug in setfacl/sequence.c:seq_delete_cmd().
* Minor changes to test scripts
* Apply several patches from Andreas, namely:
* man page fixes
* libacl code reformatting
* acl_from_text errno handling
* Apply Andreas Gruenbacher's diffs.
* Fix up chacl for deletion of access ACL to be in line with Andreas.
* Incorporate the Debian packaging again.
* Reworked to use the new official system call API.
* Sync up with the XFS project, the SGI folk now use this source.
* Jumped to version 2 to allow XFS users to upgrade
  (Rationale: the XFS ACL user tools were at version 1.1.X, and
  packaging tools like rpm, dpkg, etc. must be presented with a
  greater version number to allow an upgrade to proceed).
* Added the chacl command to ease migration for existing XFS users,
  and for compatibility with IRIX.
* Added a flag to allow acl_print to produce a single-line ACL, in
  addition to the multi-line format.
* Extended attribute documentation has moved into the extended
  attribute package from SGI ("attr"), this ACL package now deals
  exclusively with ACLs.
* acl_from_text sometimes did not set errno when failing.
* Moved files and simplified #includes in libacl

* Add MIPS/MIPS64 system call numbers
* Fix build for architectures which don't have syscalls yet
* Fix the syscall number used on Sparc for fremovexattr(2)
* Test script updates
* Man page updates
* A minor change to the test/run script
* add in ARM architecture system call numbers
* updates to the test output from Andreas
* add in S/390 system call numbers from Martin Schwidefsky
* revert IA64 syscall numbering after further mail with
  David Mosberger (apparently sys_tkill will be moved)
  See:  https://external-lists.valinux.com/archives/\
* incorporate several documentation changes from Andreas,
  including a script to convert from the aget format of
  attribute backup file, to the new getfattr format
* fix IA64 syscall numbering
* initial introduction of the new system call interface
* synced up with the ext2 project, incorporated get/set tools
* new man pages for system calls, getfattr(1) and setfattr(1)
* made the attributes.h interface align properly with IRIX

* The kernel-side of dmapi is now a module, and the device has
  moved.  Change dmapi to use the dmapi device in its new
  location of /proc/fs/xfs_dmapi.

* Fall back to BLKGETSIZE if BLKGETSIZE64 fails
* Sync user/kernel headers and shared code
* Major release to coincide with switch to new extended
  attributes system call interfaces
* bumped version of libhandle, added new symbols to use
  the reworked extended attributes handle ioctl interface
* xfs_repair in no-modify mode opens the filesystem device
  read-only now (fix from Chris Pascoe)
* sync up with recent (minor) changes to shared kernel code
* switch to using the BLKGETSIZE64 ioctl in libxfs, instead
  of the (previously busted) BLKGETSIZE ioctl
* fix xfs_repair option parsing for external logs
* add xfs_repair option parsing for realtime device
* fix xfs_repair version (-V) option - should not
  require an argument
* add -V option to usage string
* document verbose (-v) and -r options in manpage
* fix mkfs.xfs buglet in overwriting signatures when run
  on a regular file
* mkfs.xfs overwrites pre-existing filesystem, swap, or md
  driver signatures.
* xfs_repair fix to prevent double insertion into the
  uncertain_inode AVL trees ("avl_insert: duplicate range")
* xfs_repair fix if the log is corrupted and we can't find
  the head, don't exit - just proceed on with zeroing it
* use snprintf instead of sprintf throughout
* added text dump type to xfs_db (mkp)
* removed use of a temporary file in xfs_db when processing
  commands on the command line - allows xfs_check to be run
  on read-only root filesystems
* reenable the use of the BLKBSZSET ioctl, its baaack
* sync recent XFS kernel source changes back into libxfs
* fix minor debian package version numbering issue
* add documentation for xfs_db(8) label/uuid commands
* automatic inode sizing code in mkfs.xfs has been removed
  (restricting inodes to 32 bits) - Steve's recent kernel
  changes mean this is no longer an issue
* fix bug in mkfs.xfs size cross-check for realtime device

* rework all code dealing with extended attributes to use
  the new system calls (requires attr-2.0.0 or greater)
* also, the attrctl-by-handle ioctl is history, replaced
  by libhandle routines - more like what we have in IRIX
  (requires xfsprogs-2.0.0 or greater)
* effectively no-op change (cleanup) - switch over to using
  we can deprecate that "special" UUID ioctl in the kernel.
* add -q description to xfsdump/xfsrestore man pages and
  usage text.
* change failed bulkstat WARNING to a TRACE message to that
  it doesn't bother people.
* avoid a possible assertion failure for cumulative restores
  with -B option.
* fix xfsrestore so that cumulative restores (with -r)
  will successfully delete removed directories whose
  files have also been removed.
  Previously, the files weren't removed until later,
  which meant that early directory removal failed.
  SGI bug#844219.
* fix xfsdump so that if an inode# is reused in the time
  between building the inode map and pruning the inode map
  (in phase 3 when some dirs are marked as not changed),
  that it no longer aborts with an assertion failure.
  SGI bug#846374.
* add new -B option to xfsrestore to correctly assign
  ownership and permissions of the dump root directory
  to the destination directory
* port back IRIX changes primarily to xfsrestore for
  improving performance when one has over a million files
* some extra mlogs (messages) for dump estimates,
  dir tree diagnostics, type of dump format being used
* various fixes for restore with multiple threads
  and extended attributes (note: multiple threads not
  implemented on Linux yet)
* fix xfsdump to endian convert all of the record header
  fields properly just prior to writing the header out
  (in particular first_mark_offset).
  This caused do_next_mark() assertion failures at some
* fix xfsrestore so that it doesn't delete hardlinks
  on alternate cumulative restores
* allow xfsdump to exclude files based on whether they have
  a certain extended attribute set
* don't include /var/lib/xfsdump in the dump

* Updated documentation.

<Prev in Thread] Current Thread [Next in Thread>