On Wed, 28 Jan 2015, Vivek Goyal wrote: > On Wed, Jan 28, 2015 at 09:14:03PM +0000, Scot Doyle wrote: > > On Wed, 28 Jan 2015, Vivek Goyal wrote: > > > On Wed, Jan 28, 2015 at 04:49:34PM +0100, Michael Kerrisk (man-pages) wrote: > > > > Hello Vivek, > > > > > > > > >> I've made various adjustments to the page in the light of your comments > > > > >> above. Thanks! > > > > > > > > > > Thank you for following it up and improving kexec man page. > > > > > > > > You're welcome. So, by now, I've made quite a lot of changes > > > > (including adding a number of cases under ERRORS). I think the revised > > > > kexec_load/kexec_file_load page is pretty much ready to go, but would > > > > you be willing to give the text below a check over first? > > > > > > > > > > Hi Michael, > > > > > > I had a quick look and it looks good to me. > > > > > > Thanks > > > Vivek > > > > When I tested, kexec_file_load required CONFIG_RELOCATABLE. Is the same > > true for kexec_load? Would it make sense to note this in the man pages > > along with the need for CONFIG_KEXEC_FILE, etc? Or as an error message? > > Hmm.., I can't see an explicity dependency between RELOCATABLE and > KEXEC. Both KEXEC and KEXEC_FILE should be able to load a kernel > even if it had RELOCATABLE=n. > > Just that kernel will run from the address it has been built for. > > Thanks > Vivek Confusing, right? kexec_file_load returns -ENOEXEC and dmesg says "kexec-bzImage64: XLF_CAN_BE_LOADED_ABOVE_4G is not set." which leads to arch/x86/boot/header.S line 396: #if defined(CONFIG_RELOCATABLE) && defined(CONFIG_X86_64) /* kernel/boot_param/ramdisk could be loaded above 4g */ # define XLF1 XLF_CAN_BE_LOADED_ABOVE_4G #else # define XLF1 0 #endif