Editing XFS FAQ

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 20: Line 20:
 
An [http://oss.sgi.com/projects/xfs/training/ SGI XFS Training course] aimed at developers, triage and support staff, and serious users has been in development. Parts of the course are clearly still incomplete, but there is enough content to be useful to a broad range of users.
 
An [http://oss.sgi.com/projects/xfs/training/ SGI XFS Training course] aimed at developers, triage and support staff, and serious users has been in development. Parts of the course are clearly still incomplete, but there is enough content to be useful to a broad range of users.
  
Darrick has updated Barry Naujok's documentation of the [https://www.kernel.org/pub/linux/utils/fs/xfs/docs/xfs_filesystem_structure.pdf XFS ondisk format] which is a very useful reference.
+
Barry Naujok has documented the [http://oss.sgi.com/projects/xfs/papers/xfs_filesystem_structure.pdf XFS ondisk format] which is a very useful reference.
  
 
== Q: What partition type should I use for XFS on Linux? ==
 
== Q: What partition type should I use for XFS on Linux? ==
Line 653: Line 653:
  
 
(http://oss.sgi.com/pipermail/xfs/2015-October/044457.html)
 
(http://oss.sgi.com/pipermail/xfs/2015-October/044457.html)
 
== Q: Which I/O scheduler for XFS? ==
 
 
=== On rotational disks without hardware raid ===
 
 
''CFQ'': not great for XFS parallelism:
 
 
  < dchinner> it doesn't allow other threads to get IO issued immediately after the first one
 
  < dchinner> it waits, instead, for a timeslice to expire before moving to the IO of a different process.
 
  < dchinner> so instead of interleaving the IO of multiple jobs in a single sweep across the disk,
 
              it enforces single threaded access to the disk
 
 
''deadline'': good option, doesn't have such problem
 
 
Note that some kernels have block multiqueue enabled which (currently - 08/2016) doesn't support I/O schedulers at all thus there is no optimisation and reordering IO for best seek order, so disable blk-mq for rotational disks (see CONFIG_SCSI_MQ_DEFAULT, CONFIG_DM_MQ_DEFAULT options and use_blk_mq parameter for scsi-mod/dm-mod kernel modules).
 
 
Also hardware raid can be smart enough to cache and reorder I/O requests thus additional layer of reordering
 
(like Linux I/O scheduler) can potentially conflict and make performance worse. If you have such raid card
 
then try method described below.
 
 
=== SSD disks or rotational disks but with hardware raid card that has cache enabled ===
 
 
''Block multiqueue'' enabled (and thus no I/O scheduler at all) or block multiqueue disabled and ''noop'' or ''deadline'' I/O scheduler activated is good solution. SSD disks don't really need I/O schedulers while smart raid cards do I/O ordering on their own.
 
 
Note that if your raid is very dumb and/or has no cache enabled then it likely cannot reorder I/O requests and thus it could benefit from I/O scheduler.
 
 
== Q: Why does userspace say "filesystem uses v1 dirs, limited functionality provided?" ==
 
 
Either you have a very old or a rather new filesystem coupled with too-old userspace.
 
 
Very old filesystems used a format called "directory version 1" and in this case the error is correct and hopefully self explanatory.
 
 
However, if you have a newer filesystem with version 5 superblocks and the metadata CRC feature enabled, older releases of xfsprogs may incorrectly issue the "v1 dir" message.  In this case, get newer xfsprogs; at least v3.2.0, but preferably the latest release.
 

Please note that all contributions to xfs.org may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Xfs.org:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please solve the following task below and enter the answer in the box (more info):

Cancel Editing help (opens in new window)