[Skiboot] [PATCH 1/2] fast-reboot: don't back up old vectors upon fast reboot

Oliver O'Halloran oohall at gmail.com
Tue Dec 10 11:01:28 AEDT 2019


On Mon, Dec 9, 2019 at 9:50 PM Nicholas Piggin <npiggin at gmail.com> wrote:
>
> Initial boot already saved original exception vectors to old_vectors,
> copying again upon fast reboot will overwrite old_vectors with some
> arbitrary vectors set up by the current OS.

What's this even needed for? Re-entering the previously booted kernel
image seems fundamentally sketch and we re-load the kernel anyway. The
only thing I can think of is fast-rebooting in mambo and I'm not sure
it'll work there either.

> Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
> ---
>  core/init.c | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/core/init.c b/core/init.c
> index 339462e5d..1725639f8 100644
> --- a/core/init.c
> +++ b/core/init.c
> @@ -858,11 +858,6 @@ void copy_sreset_vector_fast_reboot(void)
>
>  void copy_exception_vectors(void)
>  {
> -       /* Backup previous vectors as this could contain a kernel
> -        * image.
> -        */
> -       memcpy_null(old_vectors, NULL, EXCEPTION_VECTORS_END);
> -
>         /* Copy from 0x100 to EXCEPTION_VECTORS_END, avoid below 0x100 as
>          * this is the boot flag used by CPUs still potentially entering
>          * skiboot.
> @@ -1020,6 +1015,11 @@ void __noreturn __nomcount main_cpu_entry(const void *fdt)
>          */
>         clear_console();
>
> +       /* Backup previous vectors as this could contain a kernel
> +        * image.
> +        */
> +       memcpy_null(old_vectors, NULL, EXCEPTION_VECTORS_END);
> +
>         /*
>          * Some boot firmwares enter OPAL with MSR[ME]=1, as they presumably
>          * handle machine checks until we take over. As we overwrite the
> --
> 2.23.0
>
> _______________________________________________
> Skiboot mailing list
> Skiboot at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/skiboot


More information about the Skiboot mailing list