On Tue, Oct 04, 2011 at 04:07:06PM +0200, Michael Holzheu wrote: [..] > > Not sure why it is not working. > > Hmmm, actually it is working. I somehow must have overlooked that > before. > > When I call kexec with --load-preserve-context - while not really > knowing what I am doing here - I get the following: > > # kexec -p /boot/vmlinuz --load-preserve-context --mem-min=0x10000 > --mem-max=0x100000000 > > kexec_load failed: Invalid argument > entry = 0x10000 flags = 160002 > nr_segments = 2 > segment[0].buf = 0x3fffc989010 > segment[0].bufsz = 330600 > segment[0].mem = 0x10000 > segment[0].memsz = 331000 > segment[1].buf = (nil) > segment[1].bufsz = 0 > segment[1].mem = 0x341000 > segment[1].memsz = 334be000 > > Perhaps a better error message could help here. But there are several > possible reasons for getting EINVAL from kexec_load(). So probably we > can't say "--load-preserve-context not supported by current kernel" > every time we get EINVAL from kexec_load(). > > Not sure what to do here. Perhaps we just leave it as it is. I am also not sure what can we do here. There are many cases where -EINVAL can happen. > > BTW: Is there any good documentation on KEXEC_PRESERVE_CONTEXT? I am not aware of any and really wished there was one Huang, is there any? Also is anybody using KEXEC_PRESERVE_CONTEXT? I have not encountered any users yet. Thanks Vivek