#
# File system configuration
#

menu "File systems"

config RAMFS
        bool
        default y
        ---help---
          Ramfs is a file system which keeps all files in RAM. It allows
          read and write access.

          It is more of an programming example than a useable file system.  If
          you need a file system which lives in RAM with limit checking use
          tmpfs.

          To compile this as a module, choose M here: the module will be called
          ramfs.

config EXT2_FS
	tristate "Second extended fs support"
	help
	  Ext2 is a standard Linux file system for hard disks.

	  To compile this file system support as a module, choose M here: the
	  module will be called ext2.  Be aware however that the file system
	  of your root partition (the one containing the directory /) cannot
	  be compiled as a module, and so this could be dangerous.

	  If unsure, say Y.

config EXT2_FS_XATTR
	bool "Ext2 extended attributes"
	depends on EXT2_FS
	help
	  Extended attributes are name:value pairs associated with inodes by
	  the kernel or by users (see the attr(5) manual page, or visit
	  <http://acl.bestbits.at/> for details).

	  If unsure, say N.

config EXT2_FS_POSIX_ACL
	bool "Ext2 POSIX Access Control Lists"
	depends on EXT2_FS_XATTR
	help
	  Posix Access Control Lists (ACLs) support permissions for users and
	  groups beyond the owner/group/world scheme.

	  To learn more about Access Control Lists, visit the Posix ACLs for
	  Linux website <http://acl.bestbits.at/>.

	  If you don't know what Access Control Lists are, say N

config EXT2_FS_SECURITY
	bool "Ext2 Security Labels"
	depends on EXT2_FS_XATTR
	help
	  Security labels support alternative access control models
	  implemented by security modules like SELinux.  This option
	  enables an extended attribute handler for file security
	  labels in the ext2 filesystem.

	  If you are not using a security module that requires using
	  extended attributes for file security labels, say N.

config FS_MBCACHE
# Meta block cache for Extended Attributes (ext2/ext3)
	tristate
	depends on EXT2_FS_XATTR
	default y if EXT2_FS=y
	default m if EXT2_FS=m

config FS_POSIX_ACL
# Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs)
#
# NOTE: you can implement Posix ACLs without these helpers (XFS does).
# 	Never use this symbol for ifdefs.
#
	bool
	depends on EXT2_FS_POSIX_ACL || EXT3_FS_POSIX_ACL || JFS_POSIX_ACL || REISERFS_FS_POSIX_ACL
	default y

menu "Pseudo filesystems"

config PROC_FS
	bool "/proc file system support"
	help
	  This is a virtual file system providing information about the status
	  of the system. "Virtual" means that it doesn't take up any space on
	  your hard disk: the files are created on the fly by the kernel when
	  you try to access them. Also, you cannot read the files with older
	  version of the program less: you need to use more or cat.

	  It's totally cool; for example, "cat /proc/interrupts" gives
	  information about what the different IRQs are used for at the moment
	  (there is a small number of Interrupt ReQuest lines in your computer
	  that are used by the attached devices to gain the CPU's attention --
	  often a source of trouble if two devices are mistakenly configured
	  to use the same IRQ). The program procinfo to display some
	  information about your system gathered from the /proc file system.

	  Before you can use the /proc file system, it has to be mounted,
	  meaning it has to be given a location in the directory hierarchy.
	  That location should be /proc. A command such as "mount -t proc proc
	  /proc" or the equivalent line in /etc/fstab does the job.

	  The /proc file system is explained in the file
	  <file:Documentation/filesystems/proc.txt> and on the proc(5) manpage
	  ("man 5 proc").

	  This option will enlarge your kernel by about 67 KB. Several
	  programs depend on this, so everyone should say Y here.

config PROC_KCORE
	bool
	default y if !ARM

config SYSFS
	bool "sysfs file system support" if EMBEDDED
	default y
	help
	The sysfs filesystem is a virtual filesystem that the kernel uses to
	export internal kernel objects, their attributes, and their
	relationships to one another.

	Users can use sysfs to ascertain useful information about the running
	kernel, such as the devices the kernel has discovered on each bus and
	which driver each is bound to. sysfs can also be used to tune devices
	and other kernel subsystems.

	Some system agents rely on the information in sysfs to operate.
	/sbin/hotplug uses device and object attributes in sysfs to assist in
	delegating policy decisions, like persistantly naming devices.

	sysfs is currently used by the block subsystem to mount the root
	partition.  If sysfs is disabled you must specify the boot device on
	the kernel boot command line via its major and minor numbers.  For
	example, "root=03:01" for /dev/hda1.

	Designers of embedded systems may wish to say N here to conserve space.

config DEVPTS_FS_XATTR
	bool "/dev/pts Extended Attributes"
	depends on UNIX98_PTYS
	help
	  Extended attributes are name:value pairs associated with inodes by
	  the kernel or by users (see the attr(5) manual page, or visit
	  <http://acl.bestbits.at/> for details).

	  If unsure, say N.

config DEVPTS_FS_SECURITY
	bool "/dev/pts Security Labels"
	depends on DEVPTS_FS_XATTR
	help
	  Security labels support alternative access control models
	  implemented by security modules like SELinux.  This option
	  enables an extended attribute handler for file security
	  labels in the /dev/pts filesystem.

	  If you are not using a security module that requires using
	  extended attributes for file security labels, say N.

endmenu


menu "Partition Types"

source "fs/partitions/Kconfig"

endmenu

endmenu

