summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorRob Ward <robert.ward114@googlemail.com>2014-12-07 16:40:33 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-01-12 14:04:11 +0100
commit73f0718e74e25ac7381450a7a21257b8f26f43f0 (patch)
tree573cc25a7fa4ca6f31473f58a44cf1eebead3646 /drivers
parentmisc: ioc4: simplify wave period measurement in clock_calibrate (diff)
downloadlinux-73f0718e74e25ac7381450a7a21257b8f26f43f0.tar.xz
linux-73f0718e74e25ac7381450a7a21257b8f26f43f0.zip
drivers: char: mem: Make /dev/mem an optional device
Adds Kconfig option CONFIG_DEVMEM that allows the /dev/mem device to be disabled. Option defaults to /dev/mem enabled. Signed-off-by: Rob Ward <robert.ward114@googlemail.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/Kconfig9
-rw-r--r--drivers/char/mem.c4
2 files changed, 12 insertions, 1 deletions
diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig
index efefd12a0f7b..a4af8221751e 100644
--- a/drivers/char/Kconfig
+++ b/drivers/char/Kconfig
@@ -6,6 +6,15 @@ menu "Character devices"
source "drivers/tty/Kconfig"
+config DEVMEM
+ bool "/dev/mem virtual device support"
+ default y
+ help
+ Say Y here if you want to support the /dev/mem device.
+ The /dev/mem device is used to access areas of physical
+ memory.
+ When in doubt, say "Y".
+
config DEVKMEM
bool "/dev/kmem virtual device support"
default y
diff --git a/drivers/char/mem.c b/drivers/char/mem.c
index 4c58333b4257..7d6778437be0 100644
--- a/drivers/char/mem.c
+++ b/drivers/char/mem.c
@@ -715,7 +715,7 @@ static int open_port(struct inode *inode, struct file *filp)
#define open_mem open_port
#define open_kmem open_mem
-static const struct file_operations mem_fops = {
+static const struct file_operations __maybe_unused mem_fops = {
.llseek = memory_lseek,
.read = read_mem,
.write = write_mem,
@@ -785,7 +785,9 @@ static const struct memdev {
const struct file_operations *fops;
struct backing_dev_info *dev_info;
} devlist[] = {
+#ifdef CONFIG_DEVMEM
[1] = { "mem", 0, &mem_fops, &directly_mappable_cdev_bdi },
+#endif
#ifdef CONFIG_DEVKMEM
[2] = { "kmem", 0, &kmem_fops, &directly_mappable_cdev_bdi },
#endif