[PATCH 06/13] kexec: New syscall kexec_file_load() declaration
WANG Chao
chaowang at redhat.com
Thu Jun 5 02:56:03 PDT 2014
On 06/03/14 at 09:06am, Vivek Goyal wrote:
> This is the new syscall kexec_file_load() declaration/interface. I have
> reserved the syscall number only for x86_64 so far. Other architectures
> (including i386) can reserve syscall number when they enable the support
> for this new syscall.
Hi, Vivek
I have a comment below about the kexec_file_load args.
[..]
> diff --git a/kernel/kexec.c b/kernel/kexec.c
> index c435c5f..a3044e6 100644
> --- a/kernel/kexec.c
> +++ b/kernel/kexec.c
> @@ -1098,6 +1098,13 @@ COMPAT_SYSCALL_DEFINE4(kexec_load, compat_ulong_t, entry,
> }
> #endif
>
> +SYSCALL_DEFINE5(kexec_file_load, int, kernel_fd, int, initrd_fd,
> + const char __user *, cmdline_ptr, unsigned long,
> + cmdline_len, unsigned long, flags)
initrd is optional for system boot.
How about using int *kernel_fd and int *initrd_fd as the argument? Then
if I don't need initrd, in userspace I can do this:
kexec_file_load(&kernel_fd, NULL, ...)
And even you can remove KEXEC_FILE_UNLOAD flag, because you could tell
that one wants to unload if the following is invoked:
kexec_file_load(NULL, NULL, ...)
Thanks
WANG Chao
More information about the kexec
mailing list