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