| From ltsi-dev-bounces@lists.linuxfoundation.org Sat May 12 10:19:31 2012 |
| From: Marco Stornelli <marco.stornelli@gmail.com> |
| Date: Sat, 12 May 2012 19:12:54 +0200 |
| Subject: pramfs: Makefile and Kconfig |
| To: LTSI <ltsi-dev@lists.linuxfoundation.org> |
| Message-ID: <4FAE9A16.4000501@gmail.com> |
| |
| |
| From: Marco Stornelli <marco.stornelli@gmail.com> |
| |
| Makefile and Kconfig. |
| |
| Signed-off-by: Marco Stornelli <marco.stornelli@gmail.com> |
| |
| --- |
| MAINTAINERS | 9 ++++++ |
| arch/Kconfig | 3 ++ |
| arch/x86/Kconfig | 1 |
| fs/Kconfig | 6 ++-- |
| fs/Makefile | 1 |
| fs/pramfs/Kconfig | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
| fs/pramfs/Makefile | 14 ++++++++++ |
| 7 files changed, 104 insertions(+), 2 deletions(-) |
| |
| --- a/MAINTAINERS |
| +++ b/MAINTAINERS |
| @@ -5049,6 +5049,15 @@ S: Maintained |
| F: drivers/net/pptp.c |
| W: http://sourceforge.net/projects/accel-pptp |
| |
| +PRAM FILE SYSTEM |
| +M: Marco Stornelli <marco.stornelli@gmail.com> |
| +W: http://pramfs.sourceforge.net |
| +L: pramfs-devel@lists.sourceforge.net (subscribers-only) |
| +S: Maintained |
| +F: Documentation/filesystems/pramfs.txt |
| +F: fs/pramfs/ |
| +F: include/linux/pram* |
| + |
| PREEMPTIBLE KERNEL |
| M: Robert Love <rml@tech9.net> |
| L: kpreempt-tech@lists.sourceforge.net |
| --- a/arch/Kconfig |
| +++ b/arch/Kconfig |
| @@ -97,6 +97,9 @@ config USER_RETURN_NOTIFIER |
| config HAVE_IOREMAP_PROT |
| bool |
| |
| +config HAVE_SET_MEMORY_RO |
| + bool |
| + |
| config HAVE_KPROBES |
| bool |
| |
| --- a/arch/x86/Kconfig |
| +++ b/arch/x86/Kconfig |
| @@ -22,6 +22,7 @@ config X86 |
| select HAVE_OPROFILE |
| select HAVE_PERF_EVENTS |
| select HAVE_IRQ_WORK |
| + select HAVE_SET_MEMORY_RO |
| select HAVE_IOREMAP_PROT |
| select HAVE_KPROBES |
| select HAVE_MEMBLOCK |
| --- a/fs/Kconfig |
| +++ b/fs/Kconfig |
| @@ -13,7 +13,7 @@ source "fs/ext4/Kconfig" |
| config FS_XIP |
| # execute in place |
| bool |
| - depends on EXT2_FS_XIP |
| + depends on EXT2_FS_XIP || PRAMFS_XIP |
| default y |
| |
| source "fs/jbd/Kconfig" |
| @@ -25,7 +25,8 @@ config FS_MBCACHE |
| default y if EXT2_FS=y && EXT2_FS_XATTR |
| default y if EXT3_FS=y && EXT3_FS_XATTR |
| default y if EXT4_FS=y && EXT4_FS_XATTR |
| - default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR |
| + default y if PRAMFS=y && PRAMFS_XATTR |
| + default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR || PRAMFS_XATTR |
| |
| source "fs/reiserfs/Kconfig" |
| source "fs/jfs/Kconfig" |
| @@ -207,6 +208,7 @@ source "fs/romfs/Kconfig" |
| source "fs/pstore/Kconfig" |
| source "fs/sysv/Kconfig" |
| source "fs/ufs/Kconfig" |
| +source "fs/pramfs/Kconfig" |
| source "fs/exofs/Kconfig" |
| |
| endif # MISC_FILESYSTEMS |
| --- a/fs/Makefile |
| +++ b/fs/Makefile |
| @@ -124,3 +124,4 @@ obj-$(CONFIG_GFS2_FS) += gfs2/ |
| obj-$(CONFIG_EXOFS_FS) += exofs/ |
| obj-$(CONFIG_CEPH_FS) += ceph/ |
| obj-$(CONFIG_PSTORE) += pstore/ |
| +obj-$(CONFIG_PRAMFS) += pramfs/ |
| --- /dev/null |
| +++ b/fs/pramfs/Kconfig |
| @@ -0,0 +1,72 @@ |
| +config PRAMFS |
| + tristate "Persistent and Protected RAM file system support" |
| + depends on HAS_IOMEM && EXPERIMENTAL |
| + select CRC16 |
| + help |
| + If your system has a block of fast (comparable in access speed to |
| + system memory) and non-volatile RAM and you wish to mount a |
| + light-weight, full-featured, and space-efficient filesystem over it, |
| + say Y here, and read <file:Documentation/filesystems/pramfs.txt>. |
| + |
| + To compile this as a module, choose M here: the module will be |
| + called pramfs. |
| + |
| +config PRAMFS_XIP |
| + bool "Execute-in-place in PRAMFS" |
| + depends on PRAMFS && BLOCK |
| + help |
| + Say Y here to enable XIP feature of PRAMFS. |
| + |
| +config PRAMFS_WRITE_PROTECT |
| + bool "PRAMFS write protection" |
| + depends on PRAMFS && MMU && HAVE_SET_MEMORY_RO |
| + default y |
| + help |
| + Say Y here to enable the write protect feature of PRAMFS. |
| + |
| +config PRAMFS_XATTR |
| + bool "PRAMFS extended attributes" |
| + depends on PRAMFS && BLOCK |
| + 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 PRAMFS_POSIX_ACL |
| + bool "PRAMFS POSIX Access Control Lists" |
| + depends on PRAMFS_XATTR |
| + select FS_POSIX_ACL |
| + 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 PRAMFS_SECURITY |
| + bool "PRAMFS Security Labels" |
| + depends on PRAMFS_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 pram filesystem. |
| + |
| + If you are not using a security module that requires using |
| + extended attributes for file security labels, say N. |
| + |
| +config PRAMFS_TEST |
| + boolean |
| + depends on PRAMFS |
| + |
| +config PRAMFS_TEST_MODULE |
| + tristate "PRAMFS Test" |
| + depends on PRAMFS && PRAMFS_WRITE_PROTECT && m |
| + select PRAMFS_TEST |
| + help |
| + Say Y here to build a simple module to test the protection of |
| + PRAMFS. The module will be called pramfs_test. |
| --- /dev/null |
| +++ b/fs/pramfs/Makefile |
| @@ -0,0 +1,14 @@ |
| +# |
| +# Makefile for the linux pram-filesystem routines. |
| +# |
| + |
| +obj-$(CONFIG_PRAMFS) += pramfs.o |
| +obj-$(CONFIG_PRAMFS_TEST_MODULE) += pramfs_test.o |
| + |
| +pramfs-y := balloc.o dir.o file.o inode.o namei.o super.o symlink.o ioctl.o |
| + |
| +pramfs-$(CONFIG_PRAMFS_WRITE_PROTECT) += wprotect.o |
| +pramfs-$(CONFIG_PRAMFS_XIP) += xip.o |
| +pramfs-$(CONFIG_PRAMFS_XATTR) += xattr.o xattr_user.o xattr_trusted.o desctree.o |
| +pramfs-$(CONFIG_PRAMFS_POSIX_ACL) += acl.o |
| +pramfs-$(CONFIG_PRAMFS_SECURITY) += xattr_security.o |