config LUSTRE_FS
	tristate "Lustre file system client support"
	depends on INET && m && !MIPS && !XTENSA && !SUPERH
	select LNET
	select CRYPTO
	select CRYPTO_CRC32
	select CRYPTO_CRC32_PCLMUL if X86
	select CRYPTO_CRC32C
	select CRYPTO_MD5
	select CRYPTO_SHA1
	select CRYPTO_SHA256
	select CRYPTO_SHA512
	depends on MULTIUSER
	help
	  This option enables Lustre file system client support. Choose Y
	  here if you want to access a Lustre file system cluster. To compile
	  this file system support as a module, choose M here: the module will
	  be called lustre.

	  To mount Lustre file systems, you also need to install the user space
	  mount.lustre and other user space commands which can be found in the
	  lustre-client package, available from
	  http://downloads.whamcloud.com/public/lustre/

	  Lustre file system is the most popular cluster file system in high
	  performance computing. Source code of both kernel space and user space
	  Lustre components can also be found at
	  http://git.whamcloud.com/?p=fs/lustre-release.git;a=summary

	  If unsure, say N.

	  See also http://wiki.lustre.org/

config LUSTRE_OBD_MAX_IOCTL_BUFFER
	int "Lustre obd max ioctl buffer bytes (default 8KB)"
	depends on LUSTRE_FS
	default 8192
	help
	  This option defines the maximum size of buffer in bytes that user space
	  applications can pass to Lustre kernel module through ioctl interface.

	  If unsure, use default.

config LUSTRE_DEBUG_EXPENSIVE_CHECK
	bool "Enable Lustre DEBUG checks"
	depends on LUSTRE_FS
	help
	  This option is mainly for debug purpose. It enables Lustre code to do
	  expensive checks that may have a performance impact.

	  Use with caution. If unsure, say N.

config LUSTRE_TRANSLATE_ERRNOS
	bool
	depends on LUSTRE_FS && !X86
	default y

config LUSTRE_LLITE_LLOOP
	tristate "Lustre virtual block device"
	depends on LUSTRE_FS && BLOCK
	depends on !PPC_64K_PAGES && !ARM64_64K_PAGES && !MICROBLAZE_64K_PAGES && !PAGE_SIZE_64KB && !IA64_PAGE_SIZE_64KB && !PARISC_PAGE_SIZE_64KB
	default m
