* Re: [PATCH 2/3] kexec: Introduce --load-live-update for xen
2020-04-01 12:47 ` [PATCH 2/3] kexec: Introduce --load-live-update for xen Simon Horman
@ 2020-04-01 14:05 ` vrd
0 siblings, 0 replies; 2+ messages in thread
From: vrd @ 2020-04-01 14:05 UTC (permalink / raw)
To: Simon Horman, Varad Gautam; +Cc: kexec, David Woodhouse
On 4/1/20 2:47 PM, Simon Horman wrote:
> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.
>
>
>
> On Fri, Feb 07, 2020 at 10:00:32AM +0100, Varad Gautam wrote:
>> Xen is intended to expose a KEXEC_TYPE_LIVE_UPDATE operation which
>> implies a stateful-kexec into a new xen image - or a "live update".
>> Make kexec-tools capable of triggering a live update.
>>
>> For a multiboot2 xen image, this will:
>> - load a xen Elf into into KEXEC_RANGE_MA_XEN
>> - load purgatory and modules into KEXEC_RANGE_MA_LIVEUPDATE
>> - append Elf cmdline with " liveupdate=<size>@<addr>
>>
>> Signed-off-by: Varad Gautam <vrd@amazon.de>
>> CC: David Woodhouse <dwmw@amazon.co.uk>
> Sorry for the long delay.
>
> This patch does not appear to compile.
>
> gcc -Wall -Wextra -Wpointer-arith -Wwrite-strings -Wformat -O2 -fomit-frame-pointer -pipe -fno-strict-aliasing -Wall -Wstrict-prototypes -I./include -I./util_lib/include -Iinclude/ -I./kexec/arch/x86_64/include -c -MD -o kexec/kexec.o kexec/kexec.c
> kexec/kexec.c: In function ‘my_shutdown’:
> kexec/kexec.c:889:3: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
> "shutdown",
> ^~~~~~~~~~
> kexec/kexec.c:890:3: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
> "-r",
> ^~~~
> kexec/kexec.c:891:3: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
> "now",
> ^~~~~
> kexec/kexec.c: In function ‘cmdline_add_liveupdate’:
> kexec/kexec.c:1187:2: warning: implicit declaration of function ‘xen_get_kexec_range’; did you mean ‘xen_kexec_status’? [-Wimplicit-function-declaration]
> xen_get_kexec_range(KEXEC_RANGE_MA_LIVEUPDATE, &lu_start, &lu_end);
> ^~~~~~~~~~~~~~~~~~~
> xen_kexec_status
> kexec/kexec.c:1187:22: error: ‘KEXEC_RANGE_MA_LIVEUPDATE’ undeclared (first use in this function)
> xen_get_kexec_range(KEXEC_RANGE_MA_LIVEUPDATE, &lu_start, &lu_end);
> ^~~~~~~~~~~~~~~~~~~~~~~~~
> kexec/kexec.c:1187:22: note: each undeclared identifier is reported only once for each function it appears in
> kexec/kexec.c: In function ‘main’:
> kexec/kexec.c:1433:37: error: ‘KEXEC_LIVE_UPDATE’ undeclared (first use in this function); did you mean ‘KEXEC_LOADED_PATH’?
> KEXEC_PRESERVE_CONTEXT : KEXEC_LIVE_UPDATE;
> ^~~~~~~~~~~~~~~~~
> KEXEC_LOADED_PATH
I see, the symbols I added are hidden behind HAVE_LIBXENCTRL, and I'm
able to compile with --with-xen=yes without this happening:
https://paste.opensuse.org/67739589 .
I'll rework this to work on both xen and non-xen setups and send again.
Varad
> kexec/kexec.c:1374:16: warning: this statement may fall through [-Wimplicit-fallthrough=]
> kexec_debug = 1;
> ~~~~~~~~~~~~^~~
> kexec/kexec.c:1375:3: note: here
> case OPT_NOIFDOWN:
> ^~~~
> make: *** [Makefile:114: kexec/kexec.o] Error 1
>
Amazon Development Center Germany GmbH
Krausenstr. 38
10117 Berlin
Geschaeftsfuehrung: Christian Schlaeger, Jonathan Weiss
Eingetragen am Amtsgericht Charlottenburg unter HRB 149173 B
Sitz: Berlin
Ust-ID: DE 289 237 879
_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec
^ permalink raw reply [flat|nested] 2+ messages in thread