menu "Kernel features for Docker"
	config DOCKER_KERNEL_OPTIONS
		bool "Enable Basic kernel support for Docker"
		default n
		select KERNEL_CGROUPS
		select KERNEL_CGROUP_CPUACCT
		select KERNEL_CGROUP_SCHED
		select KERNEL_NAMESPACES
		select KERNEL_CPUSETS
		select KERNEL_MEMCG
		select KERNEL_KEYS
		select KERNEL_DEVPTS_MULTIPLE_INSTANCES
		select KERNEL_POSIX_MQUEUE
		help
		  Select needed kernel options for Docker. Options include
		  cgroups, namespaces and other miscellaneous options.
		  see also https://github.com/docker/engine/blob/master/contrib/check-config.sh

	config DOCKER_SECCOMP
		bool "Enable support for seccomp in Docker"
		default n
		select KERNEL_SECCOMP
		select PACKAGE_libseccomp
		help
		  Build Docker with support for seccomp filters.
		  Select libseccomp which also pulls-in the needed kernel features.

	config DOCKER_RES_SHAPE
		bool "Enables support for resource shaping"
		default n
		select KERNEL_MEMCG_SWAP
		select KERNEL_MEMCG_SWAP_ENABLED
		select KERNEL_BLK_DEV_THROTTLING
		select KERNEL_CFQ_GROUP_IOSCHED
		select KERNEL_CGROUP_PERF
		select KERNEL_FAIR_GROUP_SCHED
		select KERNEL_CFS_BANDWIDTH
		select KERNEL_RT_GROUP_SCHED

	menu "Network"
		config DOCKER_NET_OVERLAY
			bool "Enables the Overlay network feature"
			default n
			select PACKAGE_kmod-udptunnel4
			help
			  Selects kernel options for the Overlay network feature.
			  Includes udptunnel4

		config DOCKER_NET_ENCRYPT
			bool "Enable encrypted networking kernel support"
			depends on DOCKER_NET_OVERLAY
			default n
			select PACKAGE_kmod-ipsec
			select PACKAGE_kmod-ipsec4
			select PACKAGE_kmod-crypto-gcm
			select PACKAGE_kmod-crypto-ghash
			help
			  Select needed kernel options for encrypted networking support.

		config DOCKER_NET_MACVLAN
			bool "Enables macvlan kernel support"
			default n
			select PACKAGE_kmod-macvlan
			select PACKAGE_kmod-dummy

		config DOCKER_NET_TFTP
			bool "Enable ftp/tftp client kernel support"
			default n
			select PACKAGE_kmod-nf-nathelper
			select PACKAGE_kmod-nf-nathelper-extra
	endmenu

	menu "Storage"
		config DOCKER_STO_EXT4
			bool "Enables support for ext3 or ext4 as the backing filesystem"
			default n
			select KERNEL_EXT4_FS_POSIX_ACL

		config DOCKER_STO_BTRFS
			bool "Enables support for btrfs as the backing filesystem"
			default n
			select PACKAGE_kmod-fs-btrfs
			select KERNEL_BTRFS_FS_POSIX_ACL
	endmenu
endmenu
