I tried to soften it a little with my "*close* to 100%" modifier, and I think that patch basically matched that requirement, and where it had manual changes it was detailed in the commit log. I only
Judging by Kees' comment on "100% mechanical", it might be better just having the diff and have Linus apply than rather than two step process? Have not these types of PRs, so am interested in what fo
Thx for stepping in to move this forward. This would be more for 6.11, as I expect the other subsystems to freeze for the merge window. The coccinelle script is not enough. But that patch 11 should s
Hi Kees, That sounds good. Unfortunately coccinelle alone is not sufficient, as some helpers with different prototypes are called by handlers and themselves are calling handler and therefore need to
Right. I didn't read the code closely enough before responding. Chalk my response up to being annoyed by the constant stream of cross-tree changes in procfs without proper cover letter explaining how
I've done a few painful API transitions before, and I don't think the complexity of these changes needs a per-subsystem constification pass. I think this series is the right approach, but that patch
Kees Could you comment on the feasibility of this alternative from the Control Flow Integrity perspective. My proposal is to change the proc_handler to void* and back in the same release. So there wo
Hey Joel, Thanks! Ack. "_new" was an intentionally unacceptable placeholder. Will do. Both for each single series and a combination of all of them. I don't know about anything that would make it fast
Hey Thomas Here is my feedback for your outstanding constification patches [1] and [2]. The answer that you got from Jakub in the network subsystem is very clear and baring a change of heart from the
This aproach could be optimized by only migrating the usages of the custom handler implementations to "proc_handler_new". After this we could move over the core handlers and "proc_handler" in one sma
Hi Joel, Thanks for that alternative, I'm not a big fan though. Besides the wonky syntax, Control Flow Integrity should trap on this construct. Functions are called through different pointers than th
It is tricky to do that because it changes the first argument (ctl*) to const in the proc_handler function type defined in sysclt.h: " -typedef int proc_handler(struct ctl_table *ctl, int write, void
Unfortunately this would introduce an enormous amount of code churn. The function prototypes for each callback have to stay consistent. So a another callback member ("proc_handler_new") is needed and
* Patch 1 is a bugfix for the stack_erasing sysctl handler * Patches 2-10 change various helper functions throughout the kernel to be able to handle 'const ctl_table'. * Patch 11 changes the signatur