[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 4/4] x86: check for multiboot{1, 2} header presence
>>> On 19.06.19 at 16:40, <roger.pau@xxxxxxxxxx> wrote: > On Wed, Jun 19, 2019 at 07:08:52AM -0600, Jan Beulich wrote: >> >>> On 19.06.19 at 13:02, <roger.pau@xxxxxxxxxx> wrote: >> > After building the hypervisor binary. Note that the check is performed >> > by searching for the magic header value at the start of the binary. >> > >> > Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> >> > --- >> > Cc: Jan Beulich <jbeulich@xxxxxxxx> >> > Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> >> > Cc: Wei Liu <wl@xxxxxxx> >> > --- >> > xen/arch/x86/Makefile | 3 +++ >> > 1 file changed, 3 insertions(+) >> > >> > diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile >> > index 8a8d8f060f..9bb3bf6e6c 100644 >> > --- a/xen/arch/x86/Makefile >> > +++ b/xen/arch/x86/Makefile >> > @@ -102,6 +102,9 @@ >> > syms-warn-dup-$(CONFIG_SUPPRESS_DUPLICATE_SYMBOL_WARNINGS) := >> > $(TARGET): $(TARGET)-syms $(efi-y) boot/mkelf32 >> > ./boot/mkelf32 $(notes_phdrs) $(TARGET)-syms $(TARGET) >> > $(XEN_IMG_OFFSET) \ >> > `$(NM) $(TARGET)-syms | sed -ne 's/^\([^ ]*\) . > __2M_rwdata_end$$/0x\1/p'` >> > + # Check for multiboot{1,2} headers >> > + od -t x4 -N 8192 $(TARGET) | grep 1badb002 > /dev/null >> > + od -t x4 -N 32768 $(TARGET) | grep e85250d6 > /dev/null >> >> What's the behavior when a signature is _not _ found? Will >> $(TARGET) get deleted (by make)? I don't think it would (as we >> don't specific .DELETE_ON_ERROR anywhere), so a subsequent >> rebuild may not even execute this rule, and hence may look to be >> successful despite it not actually having been. > > Oh, right. It should be: > > od -t x4 -N 8192 $(TARGET) | grep 1badb002 > /dev/null || (rm -rf $(TARGET); > exit 1) > od -t x4 -N 32768 $(TARGET) | grep e85250d6 > /dev/null || (rm -rf $(TARGET); > exit 1) > > Would you be OK with the above runes? Not really, I'm afraid. This still wouldn't cope with an interrupted build. I think it needs to be made work via an intermediate target, or some other make trickery. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |