config GFS2_FS
	tristate "GFS2 file system support"
	depends on EXPERIMENTAL && (64BIT || LBD)
	select DLM if GFS2_FS_LOCKING_DLM
	select CONFIGFS_FS if GFS2_FS_LOCKING_DLM
	select SYSFS if GFS2_FS_LOCKING_DLM
	select IP_SCTP if DLM_SCTP
	select FS_POSIX_ACL
	select CRC32
	select SLOW_WORK
	help
	  A cluster filesystem.

	  Allows a cluster of computers to simultaneously use a block device
	  that is shared between them (with FC, iSCSI, NBD, etc...).  GFS reads
	  and writes to the block device like a local filesystem, but also uses
	  a lock module to allow the computers coordinate their I/O so
	  filesystem consistency is maintained.  One of the nifty features of
	  GFS is perfect consistency -- changes made to the filesystem on one
	  machine show up immediately on all other machines in the cluster.

	  To use the GFS2 filesystem in a cluster, you will need to enable
	  the locking module below. Documentation and utilities for GFS2 can
	  be found here: http://sources.redhat.com/cluster

	  The "nolock" lock module is now built in to GFS2 by default. If
	  you want to use the DLM, be sure to enable HOTPLUG and IPv4/6
	  networking.

config GFS2_FS_LOCKING_DLM
	bool "GFS2 DLM locking"
	depends on (GFS2_FS!=n) && NET && INET && (IPV6 || IPV6=n) && HOTPLUG
	help
	  Multiple node locking module for GFS2

	  Most users of GFS2 will require this. It provides the locking
	  interface between GFS2 and the DLM, which is required to use GFS2
	  in a cluster environment.
