Messages in this thread | ![/](/images/icornerl.gif) | | From | wenyang.linux@foxmail ... | Subject | [PATCH v2 0/9] encode the values directly in the table entry | Date | Sat, 9 Mar 2024 18:31:17 +0800 |
| |
From: Wen Yang <wenyang.linux@foxmail.com>
The boundary check of multiple modules uses these static variables (such as two_five_five, n_65535, ue_int_max, etc), and they are also not changed.
Eric points out: "by turning .extra1 and .extra2 into longs instead of keeping them as pointers and needing constants to be pointed at somewhere .. The only people I can see who find a significant benefit by consolidating all of the constants into one place are people who know how to stomp kernel memory."
This patch series achieves direct encoding values in table entries and still maintains compatibility with existing extra1/extra2 pointers. Afterwards, we can remove these unnecessary static variables progressively and also gradually kill the shared const array.
Wen Yang (9): sysctl: support encoding values directly in the table entry kernel/sysctl-test: add some kunit test cases for min/max detection rxrpc: delete these unnecessary static variables n_65535, four, max_500, etc net: ipv6: delete these unnecessary static variables two_five_five and minus_one svcrdma: delete these unnecessary static variables min_ord, max_ord, etc sysctl: delete these unnecessary static variables i_zero and i_one_hundred epoll: delete these unnecessary static variables long_zero and long_max fs: inotify: delete these unnecessary static variables it_zero and it_int_max ucounts: delete these unnecessary static variables ue_zero and ue_int_max
fs/eventpoll.c | 19 +- fs/notify/inotify/inotify_user.c | 49 +++-- include/linux/sysctl.h | 108 ++++++++++- kernel/sysctl-test.c | 300 +++++++++++++++++++++++++++++++ kernel/sysctl.c | 61 +++++-- kernel/ucount.c | 8 +- lib/test_sysctl.c | 12 +- net/ipv6/addrconf.c | 15 +- net/rxrpc/sysctl.c | 169 ++++++++--------- net/sunrpc/xprtrdma/svc_rdma.c | 21 +-- 10 files changed, 571 insertions(+), 191 deletions(-)
Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Luis Chamberlain <mcgrof@kernel.org> Cc: Kees Cook <keescook@chromium.org> Cc: Joel Granados <j.granados@samsung.com> Cc: Christian Brauner <brauner@kernel.org> Cc: linux-kernel@vger.kernel.org
-- 2.25.1
| ![\](/images/icornerr.gif) |