Bypass proc_dointvec_minmax in kernel to allow other values

I am looking for a way to bypass a limit that is implemented the same way as the following

                .procname       = "kexec_load_disabled",
                .data           = &kexec_load_disabled,
                .maxlen         = sizeof(int),
                .mode           = 0644,
                /* only handle a transition from default "0" to "1" */
                .proc_handler   = proc_dointvec_minmax,
                .extra1         = &one,
                .extra2         = &one,

I have root access and I can load kernel modules aswell. I can use /proc/kallsymsto find the address of proc_dointvec_minmax, so I suppose I can somehow manage to write a kernel module that when loaded is able to overwrite the function so it allows going back to 0 again, then set the value to 0 and restore the original instructions? I assume I need to reconfigure the MMU first to allow writes to the kernel instructions? Or can I somehow add a breakpoint in proc_dointvec_minmax so that when it's hit I grab the arguments and modify those? Once I have a starting point I should be able to continue on my own, but right now I am not sure about what approach to choose/what the easiest way to solve it would be.

How many English words
do you know?
Test your English vocabulary size, and measure
how many words do you know
Online Test
Powered by Examplum