All of lore.kernel.org
 help / color / mirror / Atom feed
From: Seth Forshee <seth.forshee@canonical.com>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Jens Axboe <axboe@kernel.dk>, Arnd Bergmann <arnd@arndb.de>,
	Eric Biederman <ebiederm@xmission.com>,
	Serge Hallyn <serge.hallyn@canonical.com>,
	lxc-devel@lists.linuxcontainers.org,
	Seth Forshee <seth.forshee@canonical.com>
Subject: [RFC PATCH 06/11] drivers/char/mem.c: Make null/zero/full/random/urandom available to user namespaces
Date: Wed, 14 May 2014 16:34:54 -0500	[thread overview]
Message-ID: <1400103299-144589-7-git-send-email-seth.forshee@canonical.com> (raw)
In-Reply-To: <1400103299-144589-1-git-send-email-seth.forshee@canonical.com>

Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
---
 drivers/char/mem.c | 28 +++++++++++++++++-----------
 1 file changed, 17 insertions(+), 11 deletions(-)

diff --git a/drivers/char/mem.c b/drivers/char/mem.c
index 917403fe10da..edd71ebf5025 100644
--- a/drivers/char/mem.c
+++ b/drivers/char/mem.c
@@ -811,21 +811,22 @@ static const struct memdev {
 	umode_t mode;
 	const struct file_operations *fops;
 	struct backing_dev_info *dev_info;
+	bool global;
 } devlist[] = {
-	 [1] = { "mem", 0, &mem_fops, &directly_mappable_cdev_bdi },
+	 [1] = { "mem", 0, &mem_fops, &directly_mappable_cdev_bdi, false },
 #ifdef CONFIG_DEVKMEM
-	 [2] = { "kmem", 0, &kmem_fops, &directly_mappable_cdev_bdi },
+	 [2] = { "kmem", 0, &kmem_fops, &directly_mappable_cdev_bdi, false },
 #endif
-	 [3] = { "null", 0666, &null_fops, NULL },
+	 [3] = { "null", 0666, &null_fops, NULL, true },
 #ifdef CONFIG_DEVPORT
-	 [4] = { "port", 0, &port_fops, NULL },
+	 [4] = { "port", 0, &port_fops, NULL, false },
 #endif
-	 [5] = { "zero", 0666, &zero_fops, &zero_bdi },
-	 [7] = { "full", 0666, &full_fops, NULL },
-	 [8] = { "random", 0666, &random_fops, NULL },
-	 [9] = { "urandom", 0666, &urandom_fops, NULL },
+	 [5] = { "zero", 0666, &zero_fops, &zero_bdi, true },
+	 [7] = { "full", 0666, &full_fops, NULL, true },
+	 [8] = { "random", 0666, &random_fops, NULL, true },
+	 [9] = { "urandom", 0666, &urandom_fops, NULL, true },
 #ifdef CONFIG_PRINTK
-	[11] = { "kmsg", 0644, &kmsg_fops, NULL },
+	[11] = { "kmsg", 0644, &kmsg_fops, NULL, false },
 #endif
 };
 
@@ -897,8 +898,13 @@ static int __init chr_dev_init(void)
 		if ((minor == DEVPORT_MINOR) && !arch_has_dev_port())
 			continue;
 
-		device_create(mem_class, NULL, MKDEV(MEM_MAJOR, minor),
-			      NULL, devlist[minor].name);
+		if (devlist[minor].global)
+			device_create_global(mem_class, NULL,
+					     MKDEV(MEM_MAJOR, minor), NULL,
+					     devlist[minor].name);
+		else
+			device_create(mem_class, NULL, MKDEV(MEM_MAJOR, minor),
+				      NULL, devlist[minor].name);
 	}
 
 	return tty_init();
-- 
1.9.1


  parent reply	other threads:[~2014-05-14 21:35 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-14 21:34 [RFC PATCH 00/11] Add support for devtmpfs in user namespaces Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 01/11] driver core: Assign owning user namespace to devices Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 02/11] driver core: Add device_create_global() Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 03/11] tmpfs: Add sub-filesystem data pointer to shmem_sb_info Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 04/11] ramfs: Add sub-filesystem data pointer to ram_fs_info Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 05/11] devtmpfs: Add support for mounting in user namespaces Seth Forshee
2014-05-14 21:34 ` Seth Forshee [this message]
2014-05-14 21:34 ` [RFC PATCH 07/11] block: Make partitions inherit namespace from whole disk device Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 08/11] block: Allow blkdev ioctls within user namespaces Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 09/11] misc: Make loop-control available to all " Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 10/11] loop: Assign devices to current_user_ns() Seth Forshee
2014-05-14 21:34 ` [RFC PATCH 11/11] loop: Allow priveleged operations for root in the namespace which owns a device Seth Forshee
2014-05-23  5:48   ` Marian Marinov
2014-05-26  9:16     ` Seth Forshee
2014-05-26 15:32       ` [lxc-devel] " Michael H. Warfield
2014-05-26 15:45         ` Seth Forshee
2014-05-27  1:36         ` Serge E. Hallyn
2014-05-27  2:39           ` Michael H. Warfield
2014-05-27  7:16             ` Seth Forshee
2014-05-27 13:16             ` Serge Hallyn
2014-05-15  1:32 ` [RFC PATCH 00/11] Add support for devtmpfs in user namespaces Greg Kroah-Hartman
2014-05-15  2:17   ` [lxc-devel] " Michael H. Warfield
2014-05-15  3:15     ` Seth Forshee
2014-05-15  4:00       ` Greg Kroah-Hartman
2014-05-15 13:42         ` Michael H. Warfield
2014-05-15 14:08           ` Greg Kroah-Hartman
2014-05-15 17:42             ` Serge Hallyn
2014-05-15 18:12               ` Seth Forshee
2014-05-15 22:15               ` Greg Kroah-Hartman
2014-05-16  1:42                 ` Michael H. Warfield
2014-05-16  7:56                   ` Richard Weinberger
2014-05-16 19:20                   ` James Bottomley
2014-05-16 19:42                     ` Michael H. Warfield
2014-05-16 19:52                       ` [lxc-devel] Mount and other notifiers, was: " James Bottomley
2014-05-16 20:04                         ` Michael H. Warfield
2014-05-16  1:49                 ` [lxc-devel] " Serge Hallyn
2014-05-16  4:35                   ` Greg Kroah-Hartman
2014-05-16 14:06                     ` Seth Forshee
2014-05-16 15:28                       ` Michael H. Warfield
2014-05-16 15:43                         ` Seth Forshee
2014-05-16 18:57                       ` Greg Kroah-Hartman
2014-05-16 19:28                         ` James Bottomley
2014-05-16 20:18                           ` Seth Forshee
2014-05-20  0:04                             ` Eric W. Biederman
2014-05-20  1:14                               ` Michael H. Warfield
2014-05-20 14:18                                 ` Serge Hallyn
2014-05-20 14:21                               ` Seth Forshee
2014-05-21 22:00                                 ` Eric W. Biederman
2014-05-21 22:33                                   ` Serge Hallyn
2014-05-23 22:23                                     ` Eric W. Biederman
2014-05-28  9:26                                       ` Seth Forshee
2014-05-28 13:12                                         ` Serge E. Hallyn
2014-05-28 20:33                                           ` Eric W. Biederman
2014-05-18  2:42                           ` Serge E. Hallyn
2014-05-17  4:31                     ` Eric W. Biederman
2014-05-17 16:01                       ` Seth Forshee
2014-05-18  2:44                         ` Serge E. Hallyn
2014-05-19 13:27                           ` Seth Forshee
2014-05-20 14:15                             ` Serge Hallyn
2014-05-20 14:26                               ` Serge Hallyn
2014-05-17 12:57                     ` Michael H. Warfield
2014-05-15 18:25             ` Richard Weinberger
2014-05-15 19:50               ` Serge Hallyn
2014-05-15 20:13                 ` Richard Weinberger
2014-05-15 20:26                   ` Serge E. Hallyn
2014-05-15 20:33                     ` Richard Weinberger
2014-05-19 20:22                     ` Andy Lutomirski
2014-05-20 14:19                       ` Serge Hallyn
2014-05-23  8:20                         ` Marian Marinov
2014-05-23 13:16                           ` James Bottomley
2014-05-23 16:39                             ` Andy Lutomirski
2014-05-24 22:25                             ` Serge Hallyn
2014-05-25  8:12                               ` James Bottomley
2014-05-25 22:24                                 ` Serge E. Hallyn
2014-05-28  7:02                                   ` James Bottomley
2014-05-28 13:49                                     ` Serge Hallyn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1400103299-144589-7-git-send-email-seth.forshee@canonical.com \
    --to=seth.forshee@canonical.com \
    --cc=arnd@arndb.de \
    --cc=axboe@kernel.dk \
    --cc=ebiederm@xmission.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lxc-devel@lists.linuxcontainers.org \
    --cc=serge.hallyn@canonical.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.