public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* TAKE 969192: Default mount option "noikeep" makes the inode generation number non-persistent
@ 2007-08-24  4:01 Vlad Apostolov
  2007-08-24 11:36 ` Christoph Hellwig
  0 siblings, 1 reply; 4+ messages in thread
From: Vlad Apostolov @ 2007-08-24  4:01 UTC (permalink / raw)
  To: sgi.bugs.xfs; +Cc: linux-xfs

XFS inodes are dynamically allocated on demand, rather than being allocated
at mkfs time. Chunks of 64 inodes are allocated at once, but they are
never freed. Over time, this can lead to filesystem fragmentation, clusters
of inodes and the btrees which point at them can be scattered around the
system.

By freeing clusters as they are emptied, we reduce fragmentation of the
free space after removing files. This in turn allows us to make better
placement decisions when repopulating a filesystem. The XFSMNT_IDELETE
mount option enables freeing clusters when they get empty.

Unfortunately a side effect of freeing inode clusters is that the inode
generation numbers of such inodes would be reset to zero when the cluster
is reclaimed. This is a problem in particular for a DMAPI enabled filesystem
as the the DMAPI handles need to be unique and persistent in time. An unique
DMAPI handle is built with the help of the inode generation number. When the
last one is prematurely reset by an inode cluster reclaim, there is
a high probability of different generation inodes to end up having identical
DMAPI handles.

To avoid the problem with identical DMAPI handles, the XFSMNT_IDELETE mount
option should be set as default, only if the filesystem is not mounted with
XFSMNT_DMAPI.

Date:  Fri Aug 24 13:54:57 AEST 2007
Workarea:  soarer.melbourne.sgi.com:/home/vapo/isms/linux-xfs
Inspected by:  dgc, markgw
Author:  vapo

The following file(s) were checked into:
  longdrop.melbourne.sgi.com:/isms/linux/2.6.x-xfs-melb


Modid:  xfs-linux-melb:xfs-kern:29486a
fs/xfs/xfs_vfsops.c - 1.527 - changed
http://oss.sgi.com/cgi-bin/cvsweb.cgi/xfs-linux/xfs_vfsops.c.diff?r1=text&tr1=1.527&r2=text&tr2=1.526&f=h
        - pv 969192, rv dgc, markgw - Imply "ikeep" default mount option 
for DMAPI enabled filestems.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2007-08-27  6:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-24  4:01 TAKE 969192: Default mount option "noikeep" makes the inode generation number non-persistent Vlad Apostolov
2007-08-24 11:36 ` Christoph Hellwig
2007-08-24 12:49   ` David Chinner
2007-08-27  6:22     ` Mark Goodwin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox