diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-06 09:04:34 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-06 09:04:34 -0700 | 
| commit | eb97a784f02991cc3736d787511e788f32f0627f (patch) | |
| tree | b81bd078b145b9af6339269c8f77421e98894e03 /Documentation/filesystems | |
| parent | 2e032852245b3dcfe5461d7353e34eb6da095ccf (diff) | |
| parent | a26b7c8a0149ce1e3b6a10f2801aada6e447e4e7 (diff) | |
| download | linux-eb97a784f02991cc3736d787511e788f32f0627f.tar.bz2 | |
Merge tag 'for-f2fs-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs
Pull f2fs updates from Jaegeuk Kim:
 "This patch-set includes the following major enhancement patches:
   - support inline xattrs
   - add sysfs support to control GCs explicitly
   - add proc entry to show the current segment usage information
   - improve the GC/SSR performance
  The other bug fixes are as follows:
   - avoid the overflow on status calculation
   - fix some error handling routines
   - fix inconsistent xattr states after power-off-recovery
   - fix incorrect xattr node offset definition
   - fix deadlock condition in fsync
   - fix the fdatasync routine for power-off-recovery"
* tag 'for-f2fs-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (40 commits)
  f2fs: optimize gc for better performance
  f2fs: merge more bios of node block writes
  f2fs: avoid an overflow during utilization calculation
  f2fs: trigger GC when there are prefree segments
  f2fs: use strncasecmp() simplify the string comparison
  f2fs: fix omitting to update inode page
  f2fs: support the inline xattrs
  f2fs: add the truncate_xattr_node function
  f2fs: introduce __find_xattr for readability
  f2fs: reserve the xattr space dynamically
  f2fs: add flags for inline xattrs
  f2fs: fix error return code in init_f2fs_fs()
  f2fs: fix wrong BUG_ON condition
  f2fs: fix memory leak when init f2fs filesystem fail
  f2fs: fix a compound statement label error
  f2fs: avoid writing inode redundantly when creating a file
  f2fs: alloc_page() doesn't return an ERR_PTR
  f2fs: should cover i_xattr_nid with its xattr node page lock
  f2fs: check the free space first in new_node_page
  f2fs: clean up the needless end 'return' of void function
  ...
Diffstat (limited to 'Documentation/filesystems')
| -rw-r--r-- | Documentation/filesystems/f2fs.txt | 75 | 
1 files changed, 71 insertions, 4 deletions
| diff --git a/Documentation/filesystems/f2fs.txt b/Documentation/filesystems/f2fs.txt index b91e2f26b672..3cd27bed6349 100644 --- a/Documentation/filesystems/f2fs.txt +++ b/Documentation/filesystems/f2fs.txt @@ -18,8 +18,8 @@ according to its internal geometry or flash memory management scheme, namely FTL  F2FS and its tools support various parameters not only for configuring on-disk  layout, but also for selecting allocation and cleaning algorithms. -The file system formatting tool, "mkfs.f2fs", is available from the following -git tree: +The following git tree provides the file system formatting tool (mkfs.f2fs), +a consistency checking tool (fsck.f2fs), and a debugging tool (dump.f2fs).  >> git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git  For reporting bugs and sending patches, please use the following mailing list: @@ -133,6 +133,38 @@ f2fs. Each file shows the whole f2fs information.   - current memory footprint consumed by f2fs.  ================================================================================ +SYSFS ENTRIES +================================================================================ + +Information about mounted f2f2 file systems can be found in +/sys/fs/f2fs.  Each mounted filesystem will have a directory in +/sys/fs/f2fs based on its device name (i.e., /sys/fs/f2fs/sda). +The files in each per-device directory are shown in table below. + +Files in /sys/fs/f2fs/<devname> +(see also Documentation/ABI/testing/sysfs-fs-f2fs) +.............................................................................. + File                         Content + + gc_max_sleep_time            This tuning parameter controls the maximum sleep +                              time for the garbage collection thread. Time is +                              in milliseconds. + + gc_min_sleep_time            This tuning parameter controls the minimum sleep +                              time for the garbage collection thread. Time is +                              in milliseconds. + + gc_no_gc_sleep_time          This tuning parameter controls the default sleep +                              time for the garbage collection thread. Time is +                              in milliseconds. + + gc_idle                      This parameter controls the selection of victim +                              policy for garbage collection. Setting gc_idle = 0 +                              (default) will disable this option. Setting +                              gc_idle = 1 will select the Cost Benefit approach +                              & setting gc_idle = 2 will select the greedy aproach. + +================================================================================  USAGE  ================================================================================ @@ -149,8 +181,12 @@ USAGE   # mkfs.f2fs -l label /dev/block_device   # mount -t f2fs /dev/block_device /mnt/f2fs -Format options --------------- +mkfs.f2fs +--------- +The mkfs.f2fs is for the use of formatting a partition as the f2fs filesystem, +which builds a basic on-disk layout. + +The options consist of:  -l [label]   : Give a volume label, up to 512 unicode name.  -a [0 or 1]  : Split start location of each area for heap-based allocation.                 1 is set by default, which performs this. @@ -164,6 +200,37 @@ Format options  -t [0 or 1]  : Disable discard command or not.                 1 is set by default, which conducts discard. +fsck.f2fs +--------- +The fsck.f2fs is a tool to check the consistency of an f2fs-formatted +partition, which examines whether the filesystem metadata and user-made data +are cross-referenced correctly or not. +Note that, initial version of the tool does not fix any inconsistency. + +The options consist of: +  -d debug level [default:0] + +dump.f2fs +--------- +The dump.f2fs shows the information of specific inode and dumps SSA and SIT to +file. Each file is dump_ssa and dump_sit. + +The dump.f2fs is used to debug on-disk data structures of the f2fs filesystem. +It shows on-disk inode information reconized by a given inode number, and is +able to dump all the SSA and SIT entries into predefined files, ./dump_ssa and +./dump_sit respectively. + +The options consist of: +  -d debug level [default:0] +  -i inode no (hex) +  -s [SIT dump segno from #1~#2 (decimal), for all 0~-1] +  -a [SSA dump segno from #1~#2 (decimal), for all 0~-1] + +Examples: +# dump.f2fs -i [ino] /dev/sdx +# dump.f2fs -s 0~-1 /dev/sdx (SIT dump) +# dump.f2fs -a 0~-1 /dev/sdx (SSA dump) +  ================================================================================  DESIGN  ================================================================================ |