Re: [PATCH 4/6] ftrace, x86: make kernel text writable only forconversions

From: Andrew Morton
Date: Thu Feb 19 2009 - 20:33:35 EST


On Thu, 19 Feb 2009 20:13:20 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> +int ftrace_arch_modify_prepare(void)
> +{
> + /* at boot up, we are still writable */
> + if (system_state != SYSTEM_RUNNING)
> + return 0;
> +
> + set_kernel_text_rw();
> + return 0;
> +}
> +
> +int ftrace_arch_modify_post_process(void)
> +{
> + /* at boot up, we are still writable */
> + if (system_state != SYSTEM_RUNNING)
> + return 0;
> +
> + set_kernel_text_ro();
> + return 0;
> +}

It would be prudent to avoid using system_state. People can change the
point at which it transitions and can unexpectedly insert (or move)
code to sites where system_state has new values, etc. It was a bad
idea.

It would be clearer and more robust to create your own little flag for
this purpose and set to it true and false at the places where that is
appropriate for this application. It's just one more byte...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/