On Fri, Jan 4, 2013 at 12:15 PM, Borislav Petkov <b...@alien8.de> wrote:
>  /*
> - * set_real_mode_permissions() gets called very early, to guarantee the
> - * availability of low memory.  This is before the proper kernel page
> - * tables are set up, so we cannot set page permissions in that
> - * function.  Thus, we use an arch_initcall instead.
> + * This function gets called very early to guarantee the availability
> + * of low memory. This is even before the proper kernel page tables are
> + * set up, so we cannot set page permissions in that function. However,
> + * trampoline code will be executed by APs so we need it to be marked
> + * executable at pre-SMP time, thus run it as a early_initcall().
>   */

more than that, that set_real_mode_permissions reference is wrong,
actually it is set_real_mode.

 /*
- * set_real_mode_permissions() gets called very early, to guarantee the
- * availability of low memory.  This is before the proper kernel page
+ * set_real_mode() gets called very early, to guarantee the
+ * availability of low memory. This is before the proper kernel page
  * tables are set up, so we cannot set page permissions in that
- * function.  Thus, we use an arch_initcall instead.
+ * function. Also trampoline code will be executed by APs so we
+ * need to mark it executable at do_pre_smp_initcalls() at least,
+ * thus run it as a early_initcall().
  */
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to