upgrade busybox to v1.11.1 and add current upstream fixes
[openwrt.git] / package / busybox / config / util-linux / Config.in
index af47358..5c5af20 100644 (file)
@@ -5,7 +5,6 @@
 
 menu "Linux System Utilities"
 
-
 config BUSYBOX_CONFIG_DMESG
        bool "dmesg"
        default y
@@ -18,6 +17,26 @@ config BUSYBOX_CONFIG_DMESG
          are also logged to the system console.  Enable this option if you
          wish to enable the 'dmesg' utility.
 
+config BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY
+       bool "Pretty dmesg output"
+       default y
+       depends on BUSYBOX_CONFIG_DMESG
+       help
+         If you wish to scrub the syslog level from the output, say 'Y' here.
+         The syslog level is a string prefixed to every line with the form "<#>".
+
+         With this option you will see:
+           # dmesg
+           Linux version 2.6.17.4 .....
+           BIOS-provided physical RAM map:
+            BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
+
+         Without this option you will see:
+           # dmesg
+           <5>Linux version 2.6.17.4 .....
+           <6>BIOS-provided physical RAM map:
+           <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
+
 config BUSYBOX_CONFIG_FBSET
        bool "fbset"
        default n
@@ -27,9 +46,8 @@ config BUSYBOX_CONFIG_FBSET
          interface to access a graphics display.  Enable this option
          if you wish to enable the 'fbset' utility.
 
-
 config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
-       bool "  Turn on extra fbset options"
+       bool "Turn on extra fbset options"
        default n
        depends on BUSYBOX_CONFIG_FBSET
        help
@@ -39,7 +57,7 @@ config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
          options.
 
 config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
-       bool "  Turn on fbset readmode support"
+       bool "Turn on fbset readmode support"
        default n
        depends on BUSYBOX_CONFIG_FBSET
        help
@@ -74,15 +92,15 @@ config BUSYBOX_CONFIG_FDISK
          can be used to list and edit the set of partitions or BSD style
          'disk slices' that are defined on a hard drive.
 
-config BUSYBOX_FDISK_SUPPORT_LARGE_DISKS
-       bool
+config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS
+       bool "Support over 4GB disks"
        default y
        depends on BUSYBOX_CONFIG_FDISK
        help
          Enable this option to support large disks > 4GB.
 
 config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
-       bool "  Write support"
+       bool "Write support"
        default n
        depends on BUSYBOX_CONFIG_FDISK
        help
@@ -91,7 +109,7 @@ config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
          disabled, you will only be able to view the partition table.
 
 config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
-       bool "  Support AIX disklabels"
+       bool "Support AIX disklabels"
        default n
        depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
        help
@@ -99,7 +117,7 @@ config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
          Most people can safely leave this option disabled.
 
 config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
-       bool "  Support SGI disklabels"
+       bool "Support SGI disklabels"
        default n
        depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
        help
@@ -107,15 +125,15 @@ config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
          Most people can safely leave this option disabled.
 
 config BUSYBOX_CONFIG_FEATURE_SUN_LABEL
-       bool "  Support SUN disklabels"
+       bool "Support SUN disklabels"
        default n
-       depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
+       depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
        help
          Enabling this option allows you to create or change SUN disklabels.
          Most people can safely leave this option disabled.
 
 config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
-       bool "  Support BSD disklabels"
+       bool "Support BSD disklabels"
        default n
        depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
        help
@@ -123,7 +141,7 @@ config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
          and define and edit BSD disk slices.
 
 config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
-       bool "  Support expert mode"
+       bool "Support expert mode"
        default n
        depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
        help
@@ -132,6 +150,17 @@ config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
          partition, and similarly evil things.  Unless you have a very good
          reason you would be wise to leave this disabled.
 
+config BUSYBOX_CONFIG_FINDFS
+       bool "findfs"
+       default n
+       select BUSYBOX_CONFIG_VOLUMEID
+       help
+         This is similar to the findfs program that is part of the e2fsprogs
+         package.  However, the e2fsprogs version only support ext2/3.  This
+         version supports those in addition to FAT, swap, and ReiserFS.
+         WARNING:
+         With all submodules selected, it will add ~8k to busybox.
+
 config BUSYBOX_CONFIG_FREERAMDISK
        bool "freeramdisk"
        default n
@@ -163,10 +192,10 @@ config BUSYBOX_CONFIG_MKFS_MINIX
          this utility will do the job for you.
 
 comment "Minix filesystem support"
-    depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
+       depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
 
 config BUSYBOX_CONFIG_FEATURE_MINIX2
-       bool "  Support Minix fs v2 (fsck_minix/mkfs_minix)"
+       bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
        default n
        depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
        help
@@ -192,24 +221,70 @@ config BUSYBOX_CONFIG_HEXDUMP
          The hexdump utility is used to display binary data in a readable
          way that is comparable to the output from most hex editors.
 
+config BUSYBOX_CONFIG_FEATURE_HEXDUMP_REVERSE
+       bool "Support -R, reverse of 'hexdump -Cv'"
+       default n
+       depends on BUSYBOX_CONFIG_HEXDUMP
+       help
+         The hexdump utility is used to display binary data in an ascii
+         readable way. This option creates binary data from an ascii input.
+         NB: this option is non-standard. It's unwise to use it in scripts
+         aimed to be portable.
+
+config BUSYBOX_CONFIG_HD
+       bool "hd"
+       default n
+       select BUSYBOX_CONFIG_HEXDUMP
+       help
+         hd is an alias to hexdump -C.
+
 config BUSYBOX_CONFIG_HWCLOCK
        bool "hwclock"
-       default n
+       default y
        help
          The hwclock utility is used to read and set the hardware clock
          on a system.  This is primarily used to set the current time on
          shutdown in the hardware clock, so the hardware will keep the
          correct time when Linux is _not_ running.
 
-config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONGOPTIONS
-       bool "  Support long options (--hctosys,...)"
+config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS
+       bool "Support long options (--hctosys,...)"
        default n
-       depends on BUSYBOX_CONFIG_HWCLOCK
+       depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_GETOPT_LONG
        help
          By default, the hwclock utility only uses short options.  If you
          are overly fond of its long options, such as --hctosys, --utc, etc)
          then enable this option.
 
+config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
+       bool "Use FHS /var/lib/hwclock/adjtime"
+       default n
+       depends on BUSYBOX_CONFIG_HWCLOCK
+       help
+         Starting with FHS 2.3, the adjtime state file is supposed to exist
+         at /var/lib/hwclock/adjtime instead of /etc/adjtime.  If you wish
+         to use the FHS behavior, answer Y here, otherwise answer N for the
+         classic /etc/adjtime path.
+
+         http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
+
+config BUSYBOX_CONFIG_IPCRM
+       bool "ipcrm"
+       default n
+       select BUSYBOX_CONFIG_FEATURE_SUID
+       help
+         The ipcrm utility allows the removal of System V interprocess
+         communication (IPC) objects and the associated data structures
+         from the system.
+
+config BUSYBOX_CONFIG_IPCS
+       bool "ipcs"
+       default n
+       select BUSYBOX_CONFIG_FEATURE_SUID
+       help
+         The ipcs utility is used to provide information on the currently
+         allocated System V interprocess (IPC) objects in the system.
+
 config BUSYBOX_CONFIG_LOSETUP
        bool "losetup"
        default n
@@ -218,6 +293,62 @@ config BUSYBOX_CONFIG_LOSETUP
          file or block device, and to query the status of a loop device.  This
          version does not currently support enabling data encryption.
 
+config BUSYBOX_CONFIG_MDEV
+       bool "mdev"
+       default n
+       help
+         mdev is a mini-udev implementation for dynamically creating device
+         nodes in the /dev directory.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+       bool "Support /etc/mdev.conf"
+       default n
+       depends on BUSYBOX_CONFIG_MDEV
+       help
+         Add support for the mdev config file to control ownership and
+         permissions of the device nodes.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_RENAME
+       bool "Support subdirs/symlinks"
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+       help
+         Add support for renaming devices and creating symlinks.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_RENAME_REGEXP
+       bool "Support regular expressions substitutions when renaming device"
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_MDEV_RENAME
+       help
+         Add support for regular expressions substitutions when renaming device.
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
+       bool "Support command execution at device addition/removal"
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
+       help
+         This adds support for an optional field to /etc/mdev.conf for
+         executing commands when devices are created/removed.
+
+         For more information, please see docs/mdev.txt
+
+config BUSYBOX_CONFIG_FEATURE_MDEV_LOAD_FIRMWARE
+       bool "Support loading of firmwares"
+       default n
+       depends on BUSYBOX_CONFIG_MDEV
+       help
+         Some devices need to load firmware before they can be usable.
+
+         These devices will request userspace look up the files in
+         /lib/firmware/ and if it exists, send it to the kernel for
+         loading into the hardware.
+
 config BUSYBOX_CONFIG_MKSWAP
        bool "mkswap"
        default n
@@ -231,9 +362,19 @@ config BUSYBOX_CONFIG_MKSWAP
          Once you have created swap space using 'mkswap' you need to enable
          the swap space using the 'swapon' utility.
 
+config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0
+       bool "Version 0 support"
+       default n
+       depends on BUSYBOX_CONFIG_MKSWAP
+#      depends on MKSWAP && BUSYBOX_CONFIG_DEPRECATED
+       help
+         Enable support for the old v0 style.
+         If your kernel is older than 2.1.117, then v0 support is the
+         only option.
+
 config BUSYBOX_CONFIG_MORE
        bool "more"
-       default y
+       default n
        help
          more is a simple utility which allows you to read text one screen
          sized page at a time.  If you want to read text that is larger than
@@ -242,9 +383,9 @@ config BUSYBOX_CONFIG_MORE
          any need to reading text files, you can leave this disabled.
 
 config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
-       bool "  Use termios to manipulate the screen"
-       default y
-       depends on BUSYBOX_CONFIG_MORE
+       bool "Use termios to manipulate the screen"
+       default n
+       depends on BUSYBOX_CONFIG_MORE || BUSYBOX_CONFIG_TOP
        help
          This option allows utilities such as 'more' and 'top' to determine
          the size of the screen.  If you leave this disabled, your utilities
@@ -252,6 +393,297 @@ config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
          will be unable to determine the current screen size, and will be
          unable to move the cursor.
 
+config BUSYBOX_CONFIG_VOLUMEID
+       bool "Routines for detecting label and uuid on common filesystems"
+       default n
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_EXT
+       bool "Ext filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_REISERFS
+       bool "Reiser filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_FAT
+       bool "fat filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_HFS
+       bool "hfs filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_JFS
+       bool "jfs filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_UFS
+###    bool "ufs filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_XFS
+       bool "xfs filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_NTFS
+       bool "ntfs filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_ISO9660
+       bool "iso9660 filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_UDF
+       bool "udf filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_LUKS
+       bool "luks filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_LINUXSWAP
+       bool "linux swap filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_LVM
+###    bool "lvm"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_CRAMFS
+       bool "cramfs filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_HPFS
+###    bool "hpfs filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_ROMFS
+       bool "romfs filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_SYSV
+       bool "sysv filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_MINIX
+###    bool "minix filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### These only detect partition tables - not used (yet?)
+### config FEATURE_VOLUMEID_MAC
+###    bool "mac filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+###
+### config FEATURE_VOLUMEID_MSDOS
+###    bool "msdos filesystem"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_OCFS2
+       bool "ocfs2 filesystem"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+### config FEATURE_VOLUMEID_HIGHPOINTRAID
+###    bool "highpoint raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_ISWRAID
+###    bool "intel raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_LSIRAID
+###    bool "lsi raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_VIARAID
+###    bool "via raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_SILICONRAID
+###    bool "silicon raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_NVIDIARAID
+###    bool "nvidia raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+### config FEATURE_VOLUMEID_PROMISERAID
+###    bool "promise raid"
+###    default n
+###    depends on VOLUMEID
+###    help
+###      TODO
+
+config BUSYBOX_CONFIG_FEATURE_VOLUMEID_LINUXRAID
+       bool "linuxraid"
+       default n
+       depends on BUSYBOX_CONFIG_VOLUMEID
+       help
+         TODO
+
+config BUSYBOX_CONFIG_MOUNT
+       bool "mount"
+       default y
+       help
+         All files and filesystems in Unix are arranged into one big directory
+         tree.  The 'mount' utility is used to graft a filesystem onto a
+         particular part of the tree.  A filesystem can either live on a block
+         device, or it can be accessible over the network, as is the case with
+         NFS filesystems.  Most people using BusyBox will also want to enable
+         the 'mount' utility.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_FAKE
+       bool "Support option -f"
+       default n
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable support for faking a file system mount.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_VERBOSE
+       bool "Support option -v"
+       default n
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable multi-level -v[vv...] verbose messages. Useful if you
+         debug mount problems and want to see what is exactly passed
+         to the kernel.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_HELPERS
+       bool "Support mount helpers"
+       default n
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable mounting of virtual file systems via external helpers.
+         E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call
+         "obexfs -b00.11.22.33.44.55 /mnt"
+         Also "mount -t sometype [-o opts] fs /mnt" will try
+         "sometype [-o opts] fs /mnt" if simple mount syscall fails.
+         The idea is to use such virtual filesystems in /etc/fstab.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_LABEL
+       bool "Support specifiying devices by label or UUID"
+       default n
+       depends on BUSYBOX_CONFIG_MOUNT
+       select BUSYBOX_CONFIG_VOLUMEID
+       help
+         This allows for specifying a device by label or uuid, rather than by
+         name.  This feature utilizes the same functionality as findfs.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
+       bool "Support mounting NFS file systems"
+       default y
+       depends on BUSYBOX_CONFIG_MOUNT
+       select BUSYBOX_CONFIG_FEATURE_HAVE_RPC
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
+       help
+         Enable mounting of NFS file systems.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS
+       bool "Support mounting CIFS/SMB file systems"
+       default y
+       depends on BUSYBOX_CONFIG_MOUNT
+       help
+         Enable support for samba mounts.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS
+       depends on BUSYBOX_CONFIG_MOUNT
+       bool "Support lots of -o flags in mount"
+       default y
+       help
+         Without this, mount only supports ro/rw/remount.  With this, it
+         supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime,
+         noatime, diratime, nodiratime, loud, bind, move, shared, slave,
+         private, unbindable, rshared, rslave, rprivate, and runbindable.
+
+config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
+       depends on BUSYBOX_CONFIG_MOUNT
+       bool "Support /etc/fstab and -a"
+       default y
+       help
+         Support mount all and looking for files in /etc/fstab.
+
 config BUSYBOX_CONFIG_PIVOT_ROOT
        bool "pivot_root"
        default y
@@ -261,6 +693,9 @@ config BUSYBOX_CONFIG_PIVOT_ROOT
          of wild and crazy things with your Linux system and is far more
          powerful than 'chroot'.
 
+         Note: This is for initrd in linux 2.4.  Under initramfs (introduced
+         in linux 2.6) use switch_root instead.
+
 config BUSYBOX_CONFIG_RDATE
        bool "rdate"
        default y
@@ -270,6 +705,33 @@ config BUSYBOX_CONFIG_RDATE
          the RFC868 protocol, which is built into the inetd daemon on most
          systems.
 
+config BUSYBOX_CONFIG_READPROFILE
+       bool "readprofile"
+       default n
+       help
+         This allows you to parse /proc/profile for basic profiling.
+
+config BUSYBOX_CONFIG_RTCWAKE
+       bool "rtcwake"
+       default n
+       help
+         Enter a system sleep state until specified wakeup time.
+
+config BUSYBOX_CONFIG_SCRIPT
+       bool "script"
+       default n
+       help
+         The script makes typescript of terminal session.
+
+config BUSYBOX_CONFIG_SETARCH
+       bool "setarch"
+       default n
+       help
+         The linux32 utility is used to create a 32bit environment for the
+         specified program (usually a shell).  It only makes sense to have
+         this util on a system that supports both 64bit and 32bit userland
+         (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
+
 config BUSYBOX_CONFIG_SWAPONOFF
        bool "swaponoff"
        default n
@@ -281,23 +743,31 @@ config BUSYBOX_CONFIG_SWAPONOFF
          space.  If you are not using any swap space, you can leave this
          option disabled.
 
-config BUSYBOX_CONFIG_MOUNT
-       bool "mount"
-       default y
+config BUSYBOX_CONFIG_FEATURE_SWAPON_PRI
+       bool "Support priority option -p"
+       default n
+       depends on BUSYBOX_CONFIG_SWAPONOFF
        help
-         All files and filesystems in Unix are arranged into one big directory
-         tree.  The 'mount' utility is used to graft a filesystem onto a
-         particular part of the tree.  A filesystem can either live on a block
-         device, or it can be accessible over the network, as is the case with
-         NFS filesystems.  Most people using BusyBox will also want to enable
-         the 'mount' utility.
+         Enable support for setting swap device priority in swapon.
 
-config BUSYBOX_FEATURE_MOUNT_NFS
-       bool "  Support mounting NFS file systems"
+config BUSYBOX_CONFIG_SWITCH_ROOT
+       bool "switch_root"
        default y
-       depends on BUSYBOX_CONFIG_MOUNT
        help
-        Enable mounting of NFS file systems.
+         The switch_root utility is used from initramfs to select a new
+         root device.  Under initramfs, you have to use this instead of
+         pivot_root.  (Stop reading here if you don't care why.)
+
+         Booting with initramfs extracts a gzipped cpio archive into rootfs
+         (which is a variant of ramfs/tmpfs).  Because rootfs can't be moved
+         or unmounted*, pivot_root will not work from initramfs.  Instead,
+         switch_root deletes everything out of rootfs (including itself),
+         does a mount --move that overmounts rootfs with the new root, and
+         then execs the specified init program.
+
+         * Because the Linux kernel uses rootfs internally as the starting
+         and ending point for searching through the kernel's doubly linked
+         list of active mount points.  That's why.
 
 config BUSYBOX_CONFIG_UMOUNT
        bool "umount"
@@ -308,50 +778,54 @@ config BUSYBOX_CONFIG_UMOUNT
          the tool to use.  If you enabled the 'mount' utility, you almost certainly
          also want to enable 'umount'.
 
-config BUSYBOX_CONFIG_FEATURE_MOUNT_FORCE
-       bool "  Support forced filesystem unmounting"
+config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL
+       bool "Support option -a"
        default y
        depends on BUSYBOX_CONFIG_UMOUNT
        help
-         This allows you to _force_ a filesystem to be umounted.  This is generally
-         only useful when you want to get rid of an unreachable NFS system.
+         Support -a option to unmount all currently mounted filesystems.
 
 comment "Common options for mount/umount"
        depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
 
 config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP
-       bool "  Support for loop devices"
+       bool "Support loopback mounts"
        default y
        depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
        help
-         Enabling this feature allows mount to use the '-o' loop options,
-         which lets you loop mount files.  Mount will automagically setup and
-         free the necessary loop devices so you do not need to mess with the
-         'losetup' utility unless you really want to.  This is really
-         only useful if you plan to loop mount files.
+         Enabling this feature allows automatic mounting of files (containing
+         filesystem images) via the linux kernel's loopback devices.  The mount
+         command will detect you are trying to mount a file instead of a block
+         device, and transparently associate the file with a loopback device.
+         The umount command will also free that loopback device.
+
+         You can still use the 'losetup' utility (to manually associate files
+         with loop devices) if you need to do something advanced, such as
+         specify an offset or cryptographic options to the loopback device.
+         (If you don't want umount to free the loop device, use "umount -D".)
 
 config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
-       bool "  Support for a real /etc/mtab (instead of /proc/mounts)"
+       bool "Support for the old /etc/mtab file"
        default n
        depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
-       help
-         If your root filesystem is writable and you wish to have the 'mount'
-         utility create an mtab file listing the filesystems which have been
-         mounted then you should enable this option.  Most people that use
-         BusyBox have a read-only root filesystem, so they will leave this
-         option disabled and BusyBox will use the /proc/mounts file.
-
-config BUSYBOX_CONFIG_FEATURE_MTAB_FILENAME
-       string "  mtab file location"
-       default n
-       depends on BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
-       help
-         Some people have a read only root filesystem, but they also wish to
-         have the 'mount' utility create an mtab file listing the filesystems
-         which have been mounted.  This option allows you to specify an alternative
-         location for the mtab file, such as /var/mtab, or /tmp/mtab.  The default
-         value is /etc/mtab, which is where this file is located on most desktop
-         Linux systems.
+       select BUSYBOX_CONFIG_FEATURE_MOUNT_FAKE
+       help
+         Historically, Unix systems kept track of the currently mounted
+         partitions in the file "/etc/mtab".  These days, the kernel exports
+         the list of currently mounted partitions in "/proc/mounts", rendering
+         the old mtab file obsolete.  (In modern systems, /etc/mtab should be
+         a symlink to /proc/mounts.)
+
+         The only reason to have mount maintain an /etc/mtab file itself is if
+         your stripped-down embedded system does not have a /proc directory.
+         If you must use this, keep in mind it's inherently brittle (for
+         example a mount under chroot won't update it), can't handle modern
+         features like separate per-process filesystem namespaces, requires
+         that your /etc directory be writeable, tends to get easily confused
+         by --bind or --move mounts, won't update if you rename a directory
+         that contains a mount point, and so on.  (In brief: avoid.)
+
+         About the only reason to use this is if you've removed /proc from
+         your kernel.
 
 endmenu
-