[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 1/4] Use an include/boot directory to override headers for boot code
On Tue, Dec 10, 2024 at 10:14 AM Jan Beulich <jbeulich@xxxxxxxx> wrote: > > On 22.11.2024 10:33, Frediano Ziglio wrote: > > Not all headers can be used by 32 bit boot code. > > Allows to override some headers, we don't want to mess up with > > main headers as most of the code is only 64 bit so the easy stuff should > > be done for 64 bit declarations. > > Boot headers should be 64 bit compatibles to avoid having multiple > > declarations. > > I'm afraid that in isolation it's not clear what is intended. Boot code is > all located in a single directory. Can't we use local headers there, using > #include "...", instead of ... > That approach was refused. Some definitions are in the headers (like CPU features for instance) but duplicating the definitions was rejected as a solution. So the idea is to reuse such definitions. But, as stated in the comment, the "x86" includes are not for x86, but most of them are just for x64.This for historic reasons. But most of the code is x64 only so changing headers to be x86 compatible would complicate them for a minimal gain. > > --- a/xen/arch/x86/boot/Makefile > > +++ b/xen/arch/x86/boot/Makefile > > @@ -18,7 +18,7 @@ CFLAGS_x86_32 := $(subst -m64,-m32 > > -march=i686,$(XEN_TREEWIDE_CFLAGS)) > > $(call cc-options-add,CFLAGS_x86_32,CC,$(EMBEDDED_EXTRA_CFLAGS)) > > CFLAGS_x86_32 += -Werror -fno-builtin -g0 -msoft-float -mregparm=3 > > CFLAGS_x86_32 += -nostdinc -include $(filter > > %/include/xen/config.h,$(XEN_CFLAGS)) > > -CFLAGS_x86_32 += $(filter -I% -O%,$(XEN_CFLAGS)) -D__XEN__ > > +CFLAGS_x86_32 += -I$(srctree)/arch/x86/include/boot $(filter -I% > > -O%,$(XEN_CFLAGS)) -D__XEN__ > > ... introducing a arch-wide subdir, which non-boot code could easily (ab)use? > You would have to explicitly add the "boot" into the path, it does not seem "easy" to me, but if you really want to do it you can do with these or any other headers, like simply "#include "../arch/arm/..." in x64 code. Same easiness. > Jan Frediano
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |