<& xfsTemplate,top=>1,side=>1 &>

XFS Beta Release Caveats

You must take the following issues into account when you create and administer XFS filesystems with the current release of XFS for Linux.

Size and Memory Limitations

  • 2 Terabyte filesystem limitation

    Currently XFS is limited to filesystem smaller that 2 terabytes. This is due to limitations in the Linux block device I/O layers.

    The XFS team is working with Linux developers to improve the Linux I/O layers. The improvements will include the support neccesary to exceed 2 Tbyte filesystems.

  • 4 Gbyte memory limitation

    Required Compiler and Library Releases

  • gcc version 2.91.66 required
  • Due to known problems with later versions of gcc, version 2.91.66 must be used when compiling XFS and the associated kernel. This is the default compiler on RedHat 6.2 systems. Other distributions may be using a later version. The easiest way to check what version is in use is by running gcc -v.

  • glibc version 2.1.3 required
  • The version of glibc primarily used for development and testing has been 2.1.3. Other versions should be considered "status unknown".

    XFS Features

  • New system calls
  • A preliminary set of system calls to support extended attributes has been added. This interface will most likely change as it becomes more defined and other Linux developers contribute their thoughts.

  • Migrating to XFS
  • The Linux version of dump and restore can be used to migrate data from a non-XFS volume to an XFS volume. Linux dump, however, cannot be used to dump an XFS volume as it uses ext2 library functions.

  • Backup and Restore
  • xfsdump and xfsrestore should be used for backup and restore of XFS volumes. xfsdump and xfsrestore currently support file extents but not extended attributes. DMAPI and quotas are not yet supported in Linux XFS, nor are they supported in xfsdump and xfsrestore.

    XFS Caveats and Limitations

  • XFS version 2 directory format recommended
  • XFS supports two directory formats, referred to as version 1 and version 2. For Linux XFS, the version 2 directory format is strongly recommended. Due to 32 bit size limitations in the Linux inode, XFS version 1 directories will fail after any given directories reach a certain number of files.

  • 4k filesystem block size limitation
  • For the current release of XFS, the filesystem block size is limited to the size of a memory page. On a x86 architecture that size is 4 Kbytes.

    Note that files systems created on an IRIX/MIPS platform must have been created with a 4 Kbyte block size in order to be mounted on a ia32 Linux system. File systems not created with a 4k block will fail to mount with an error indicating the mis-match.

  • Unwritten extents unsupported
  • The unwritten extent feature is not yet operational and should be turned off when mkfs is executed, using the following argument to the mkfs command:

    -d unwritten=0

    Currently this is the default setting for mkfs.xfs on Linux.

  • Asynchronous and Direct I/O unsupported
  • Specifying the O_SYNC flag does not currently yield asynchronous I/O behavior; this flag is silently ignored. This capability will be added in a future release.

    Direct I/O is not yet operational. It is scheduled for a later beta release.

  • Quotas unsupported
  • Support for filesystem quotas is not yet operational.

  • Changing filesystem permissions
  • It is possible to remount an XFS filesystem to change its permissions from read/write to read-only. This support is needed for XFS to function as a root filesystem.

  • Issues with filesystem remounts
  • Issuing the remount call to a non-busy XFS filesystem does not always work correctly. The usual result will be a hung processes. The occurs primarily when executing the mount -o remount command.

    Mounting files using the loop filesystem on an XFS partition does not work and usually results in a system panic.


    <& xfsTemplate,bottom=>1 &>