[PATCH v5 4/5] kexec: Add option to fall back to KEXEC_LOAD when KEXEC_FILE_LOAD is not supported
Michal Suchánek
msuchanek at suse.de
Tue Mar 27 04:01:29 PDT 2018
On Tue, 27 Mar 2018 18:06:19 +0800
Dave Young <dyoung at redhat.com> wrote:
> On 03/26/18 at 07:38pm, Michal Suchánek wrote:
> > On Mon, 26 Mar 2018 17:12:10 +0800
> > Dave Young <dyoung at redhat.com> wrote:
> >
> > > On 03/26/18 at 05:08pm, Dave Young wrote:
> > > > On 03/20/18 at 04:56pm, Michal Suchanek wrote:
> > > > Hmm, this is still used in latest version. kernel does not
> > > > return such error number, I might not say clearly previously.
> > > > Please check the kernel code, the only one place I know is
> > > > because no kdump support in power kexec_file:
> > > > arch/powerpc/kernel/machine_kexec_file_64.c
> > > >
> > > > /* We don't support crash kernels yet. */
> > > > if (image->type == KEXEC_TYPE_CRASH)
> > > > return -ENOTSUPP;
> > > >
> > > > So I suggest not checking this as well since -ENOTSUPP is not
> > > > populated in userspace headers, and -ENOTSUP is not used at all.
> > > >
> > > > Also as I mentioned in another reply -EINVAL and -ENOEXEC is
> > > > also not ncessary.
> > > >
> > > > For -ENOTSUP, maybe someone can submit a patch to switch to
> > > > -ENOTSUPP so that userspace can check it.
> > > > Ccing Thiago and Hari for the -ENOTSUPP errno issue.
> > >
> > > Oops for the hurry reply, I means -ENOTSUPP might be able to
> > > replaced with -EOPNOTSUPP, a similar change like this:
> > > https://patchwork.kernel.org/patch/8490791/
> >
> > Thanks for catching this. In Linux ENOTSUPP with extra P is
> > different from EOPNOTSUPP and ENOTSUP (single P). Since we are
> > talking to the kernel and it returns the double P ENOTSUPP we need
> > to define it in kexec as well. And we should check ENOTSUP with
> > single P in case somebody some day thinks that returning undefined
> > error codes to userspace is not nice like in the patch above.
>
> I'm not sure if we can define it in kexec-tools since they are used
> in kernel only..
We define the KEXEC_FILE_LOAD syscall numbers so why not ENOTSUPP?
Thanks
Michal
More information about the kexec
mailing list