* [PATCH] userfaultfd: move unprivileged_userfaultfd sysctl to its own file
@ 2023-03-01 10:06 Peng Zhang
2023-03-02 21:58 ` Luis Chamberlain
0 siblings, 1 reply; 2+ messages in thread
From: Peng Zhang @ 2023-03-01 10:06 UTC (permalink / raw)
To: mcgrof, akpm, peterx, jthoughton, Liam.Howlett, viro, keescook,
yzaikin, wangkefeng.wang, sunnanyong
Cc: linux-fsdevel, linux-kernel, ZhangPeng
From: ZhangPeng <zhangpeng362@huawei.com>
The sysctl_unprivileged_userfaultfd is part of userfaultfd, move it to
its own file.
Signed-off-by: ZhangPeng <zhangpeng362@huawei.com>
---
fs/userfaultfd.c | 20 +++++++++++++++++++-
include/linux/userfaultfd_k.h | 2 --
kernel/sysctl.c | 11 -----------
3 files changed, 19 insertions(+), 14 deletions(-)
diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c
index 44d1ee429eb0..d01f803a6b11 100644
--- a/fs/userfaultfd.c
+++ b/fs/userfaultfd.c
@@ -32,7 +32,22 @@
#include <linux/swapops.h>
#include <linux/miscdevice.h>
-int sysctl_unprivileged_userfaultfd __read_mostly;
+static int sysctl_unprivileged_userfaultfd __read_mostly;
+
+#ifdef CONFIG_SYSCTL
+static struct ctl_table vm_userfaultfd_table[] = {
+ {
+ .procname = "unprivileged_userfaultfd",
+ .data = &sysctl_unprivileged_userfaultfd,
+ .maxlen = sizeof(sysctl_unprivileged_userfaultfd),
+ .mode = 0644,
+ .proc_handler = proc_dointvec_minmax,
+ .extra1 = SYSCTL_ZERO,
+ .extra2 = SYSCTL_ONE,
+ },
+ { }
+};
+#endif
static struct kmem_cache *userfaultfd_ctx_cachep __read_mostly;
@@ -2178,6 +2193,9 @@ static int __init userfaultfd_init(void)
0,
SLAB_HWCACHE_ALIGN|SLAB_PANIC,
init_once_userfaultfd_ctx);
+#ifdef CONFIG_SYSCTL
+ register_sysctl_init("vm", vm_userfaultfd_table);
+#endif
return 0;
}
__initcall(userfaultfd_init);
diff --git a/include/linux/userfaultfd_k.h b/include/linux/userfaultfd_k.h
index 3767f18114ef..fff49fec0258 100644
--- a/include/linux/userfaultfd_k.h
+++ b/include/linux/userfaultfd_k.h
@@ -36,8 +36,6 @@
#define UFFD_SHARED_FCNTL_FLAGS (O_CLOEXEC | O_NONBLOCK)
#define UFFD_FLAGS_SET (EFD_SHARED_FCNTL_FLAGS)
-extern int sysctl_unprivileged_userfaultfd;
-
extern vm_fault_t handle_userfault(struct vm_fault *vmf, unsigned long reason);
/*
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
index 1c240d2c99bc..c14552a662ae 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -2438,17 +2438,6 @@ static struct ctl_table vm_table[] = {
.extra1 = (void *)&mmap_rnd_compat_bits_min,
.extra2 = (void *)&mmap_rnd_compat_bits_max,
},
-#endif
-#ifdef CONFIG_USERFAULTFD
- {
- .procname = "unprivileged_userfaultfd",
- .data = &sysctl_unprivileged_userfaultfd,
- .maxlen = sizeof(sysctl_unprivileged_userfaultfd),
- .mode = 0644,
- .proc_handler = proc_dointvec_minmax,
- .extra1 = SYSCTL_ZERO,
- .extra2 = SYSCTL_ONE,
- },
#endif
{ }
};
--
2.25.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] userfaultfd: move unprivileged_userfaultfd sysctl to its own file
2023-03-01 10:06 [PATCH] userfaultfd: move unprivileged_userfaultfd sysctl to its own file Peng Zhang
@ 2023-03-02 21:58 ` Luis Chamberlain
0 siblings, 0 replies; 2+ messages in thread
From: Luis Chamberlain @ 2023-03-02 21:58 UTC (permalink / raw)
To: Peng Zhang
Cc: akpm, peterx, jthoughton, Liam.Howlett, viro, keescook, yzaikin,
wangkefeng.wang, sunnanyong, linux-fsdevel, linux-kernel
On Wed, Mar 01, 2023 at 10:06:27AM +0000, Peng Zhang wrote:
> From: ZhangPeng <zhangpeng362@huawei.com>
>
> The sysctl_unprivileged_userfaultfd is part of userfaultfd, move it to
> its own file.
>
> Signed-off-by: ZhangPeng <zhangpeng362@huawei.com>
Looks good, I've queued this up for sysctl-testing, before all the
patches I just posted. Keep it up, hopefully soon the vm array
on kernel/sysctl.c will be gone.
Luis
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-03-02 22:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-01 10:06 [PATCH] userfaultfd: move unprivileged_userfaultfd sysctl to its own file Peng Zhang
2023-03-02 21:58 ` Luis Chamberlain
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).