On Wed, 2008-02-13 at 20:54 +0000, Ian Campbell wrote: > This allows other boot loaders such as the Xen domain builder the > opportunity to extract the ELF file. Right, Xen currently can't boot bzImage (it needs the ELF image) so you still can't use the same kernel image on Xen as bare-metal. > +Field name: compressed_payload_offset > +Type: read > +Offset/size: 0x248/4 > +Protocol: 2.08+ > + > + If non-zero then this field contains the offset from the end of the > + real-mode code to the compressed payload. The compression format > + should be determined using the standard magic number, currently only > + gzip is used. Should probably mention that the payload format is expected to be ELF. > diff --git a/arch/x86/boot/Makefile b/arch/x86/boot/Makefile > index f88458e..9695aff 100644 > --- a/arch/x86/boot/Makefile > +++ b/arch/x86/boot/Makefile > @@ -94,6 +94,20 @@ $(obj)/vmlinux.bin: $(obj)/compressed/vmlinux FORCE > > SETUP_OBJS = $(addprefix $(obj)/,$(setup-y)) > > +sed-offsets := -e 's/^00*/0/' \ > + -e 's/^\([0-9a-fA-F]*\) . \(input_data\|input_data_end\)$$/\#define \2 0x\1/p' > + > +quiet_cmd_offsets = OFFSETS $@ > + cmd_offsets = $(NM) $< | sed -n $(sed-offsets) > $@ > + > +$(obj)/offsets.h: $(obj)/compressed/vmlinux FORCE > + $(call if_changed,offsets) > + > +targets += offsets.h > + > +AFLAGS_header.o += -I$(obj) > +$(obj)/header.o: $(obj)/offsets.h How about this? +sed-offsets := -e 's/^00*/0/' \ + -e 's/^\([0-9a-fA-F]*\) . \(input_data\|input_data_end\)$$/-D\2=0x\1 /p' + +$(obj)/header.o: AFLAGS_header.o += $(shell $(NM) $(obj)/compressed/vmlinux | sed -n $(sed-offsets)) +$(obj)/header.o: $(obj)/compressed/vmlinux FORCE Cheers, Mark. _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization