Message ID | 20241009140554.1084-1-jgross@suse.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | [MINI-OS,v2] add config support for each Xen library | expand |
Juergen Gross, le mer. 09 oct. 2024 16:05:54 +0200, a ecrit: > Instead of adding all or no Xen library (controlled by CONFIG_XC), > support a dedicated config option for each library instead, > defaulting to disabled. > > As it is no longer needed now, drop the CONFIG_XC support. > > Signed-off-by: Juergen Gross <jgross@suse.com> Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org> > --- > V2: > - merge patches of the V1 series (Samuel Thibault) > > Note: do not apply to the tree until the related Xen series > "stubdom: prepare more fine grained Xen library usage" has been > applied. > > Signed-off-by: Juergen Gross <jgross@suse.com> > --- > Config.mk | 11 +++++++++-- > Makefile | 18 +++++++++++++++++- > 2 files changed, 26 insertions(+), 3 deletions(-) > > diff --git a/Config.mk b/Config.mk > index f2d1f0ae..f59a0cf4 100644 > --- a/Config.mk > +++ b/Config.mk > @@ -193,6 +193,15 @@ CONFIG-n += CONFIG_9PFRONT > CONFIG-n += CONFIG_TPM_TIS > CONFIG-n += CONFIG_TPMBACK > CONFIG-n += CONFIG_BALLOON > +CONFIG-n += CONFIG_LIBXENCALL > +CONFIG-n += CONFIG_LIBXENCTRL > +CONFIG-n += CONFIG_LIBXENDEVICEMODEL > +CONFIG-n += CONFIG_LIBXENEVTCHN > +CONFIG-n += CONFIG_LIBXENFOREIGNMEMORY > +CONFIG-n += CONFIG_LIBXENGNTTAB > +CONFIG-n += CONFIG_LIBXENGUEST > +CONFIG-n += CONFIG_LIBXENTOOLCORE > +CONFIG-n += CONFIG_LIBXENTOOLLOG > # Setting CONFIG_USE_XEN_CONSOLE copies all print output to the Xen emergency > # console apart of standard dom0 handled console. > CONFIG-n += CONFIG_USE_XEN_CONSOLE > @@ -201,8 +210,6 @@ CONFIG-y += CONFIG_PARAVIRT > else > CONFIG-n += CONFIG_PARAVIRT > endif > -# Support legacy CONFIG_XC value > -CONFIG_XC ?= $(libc) > > CONFIG-$(lwip) += CONFIG_LWIP > > diff --git a/Makefile b/Makefile > index 6c8df8b5..ffa8d1a8 100644 > --- a/Makefile > +++ b/Makefile > @@ -123,23 +123,39 @@ endif > OBJS := $(filter-out $(OBJ_DIR)/lwip%.o $(LWO), $(OBJS)) > > ifeq ($(libc),y) > -ifeq ($(CONFIG_XC),y) > +ifeq ($(CONFIG_LIBXENTOOLCORE),y) > APP_LDLIBS += -L$(TOOLCORE_PATH) -whole-archive -lxentoolcore -no-whole-archive > LIBS += $(TOOLCORE_PATH)/libxentoolcore.a > +endif > +ifeq ($(CONFIG_LIBXENTOOLLOG),y) > APP_LDLIBS += -L$(TOOLLOG_PATH) -whole-archive -lxentoollog -no-whole-archive > LIBS += $(TOOLLOG_PATH)/libxentoollog.a > +endif > +ifeq ($(CONFIG_LIBXENEVTCHN),y) > APP_LDLIBS += -L$(EVTCHN_PATH) -whole-archive -lxenevtchn -no-whole-archive > LIBS += $(EVTCHN_PATH)/libxenevtchn.a > +endif > +ifeq ($(CONFIG_LIBXENGNTTAB),y) > APP_LDLIBS += -L$(GNTTAB_PATH) -whole-archive -lxengnttab -no-whole-archive > LIBS += $(GNTTAB_PATH)/libxengnttab.a > +endif > +ifeq ($(CONFIG_LIBXENCALL),y) > APP_LDLIBS += -L$(CALL_PATH) -whole-archive -lxencall -no-whole-archive > LIBS += $(CALL_PATH)/libxencall.a > +endif > +ifeq ($(CONFIG_LIBXENFOREIGNMEMORY),y) > APP_LDLIBS += -L$(FOREIGNMEMORY_PATH) -whole-archive -lxenforeignmemory -no-whole-archive > LIBS += $(FOREIGNMEMORY_PATH)/libxenforeignmemory.a > +endif > +ifeq ($(CONFIG_LIBXENDEVICEMODEL),y) > APP_LDLIBS += -L$(DEVICEMODEL_PATH) -whole-archive -lxendevicemodel -no-whole-archive > LIBS += $(DEVICEMODEL_PATH)/libxendevicemodel.a > +endif > +ifeq ($(CONFIG_LIBXENGUEST),y) > APP_LDLIBS += -L$(GUEST_PATH) -whole-archive -lxenguest -no-whole-archive > LIBS += $(GUEST_PATH)/libxenguest.a > +endif > +ifeq ($(CONFIG_LIBXENCTRL),y) > APP_LDLIBS += -L$(CTRL_PATH) -whole-archive -lxenctrl -no-whole-archive > LIBS += $(CTRL_PATH)/libxenctrl.a > endif > -- > 2.43.0 >
On 09/10/2024 3:05 pm, Juergen Gross wrote:
> Instead of adding all or no Xen library (controlled by CONFIG_XC),
"libraries".
But better grammar would be "Instead of Xen libraries being all or none
(..."
Can fix on commit.
~Andrew
On 09.10.2024 16:05, Juergen Gross wrote: > Instead of adding all or no Xen library (controlled by CONFIG_XC), > support a dedicated config option for each library instead, > defaulting to disabled. > > As it is no longer needed now, drop the CONFIG_XC support. > > Signed-off-by: Juergen Gross <jgross@suse.com> > --- > V2: > - merge patches of the V1 series (Samuel Thibault) > > Note: do not apply to the tree until the related Xen series > "stubdom: prepare more fine grained Xen library usage" has been > applied. And at this point it's solely "stubdom: add fine grained library config items to Mini-OS configs" which is left as a dependency, isn't it? Jan
On 10.10.24 13:45, Jan Beulich wrote: > On 09.10.2024 16:05, Juergen Gross wrote: >> Instead of adding all or no Xen library (controlled by CONFIG_XC), >> support a dedicated config option for each library instead, >> defaulting to disabled. >> >> As it is no longer needed now, drop the CONFIG_XC support. >> >> Signed-off-by: Juergen Gross <jgross@suse.com> >> --- >> V2: >> - merge patches of the V1 series (Samuel Thibault) >> >> Note: do not apply to the tree until the related Xen series >> "stubdom: prepare more fine grained Xen library usage" has been >> applied. > > And at this point it's solely "stubdom: add fine grained library config > items to Mini-OS configs" which is left as a dependency, isn't it? Yes. In theory the Mini-OS patch could be applied already, as long as Config.mk on the Xen side isn't updated with the new Mini-OS commit id, but I think we should wait nevertheless. Juergen
diff --git a/Config.mk b/Config.mk index f2d1f0ae..f59a0cf4 100644 --- a/Config.mk +++ b/Config.mk @@ -193,6 +193,15 @@ CONFIG-n += CONFIG_9PFRONT CONFIG-n += CONFIG_TPM_TIS CONFIG-n += CONFIG_TPMBACK CONFIG-n += CONFIG_BALLOON +CONFIG-n += CONFIG_LIBXENCALL +CONFIG-n += CONFIG_LIBXENCTRL +CONFIG-n += CONFIG_LIBXENDEVICEMODEL +CONFIG-n += CONFIG_LIBXENEVTCHN +CONFIG-n += CONFIG_LIBXENFOREIGNMEMORY +CONFIG-n += CONFIG_LIBXENGNTTAB +CONFIG-n += CONFIG_LIBXENGUEST +CONFIG-n += CONFIG_LIBXENTOOLCORE +CONFIG-n += CONFIG_LIBXENTOOLLOG # Setting CONFIG_USE_XEN_CONSOLE copies all print output to the Xen emergency # console apart of standard dom0 handled console. CONFIG-n += CONFIG_USE_XEN_CONSOLE @@ -201,8 +210,6 @@ CONFIG-y += CONFIG_PARAVIRT else CONFIG-n += CONFIG_PARAVIRT endif -# Support legacy CONFIG_XC value -CONFIG_XC ?= $(libc) CONFIG-$(lwip) += CONFIG_LWIP diff --git a/Makefile b/Makefile index 6c8df8b5..ffa8d1a8 100644 --- a/Makefile +++ b/Makefile @@ -123,23 +123,39 @@ endif OBJS := $(filter-out $(OBJ_DIR)/lwip%.o $(LWO), $(OBJS)) ifeq ($(libc),y) -ifeq ($(CONFIG_XC),y) +ifeq ($(CONFIG_LIBXENTOOLCORE),y) APP_LDLIBS += -L$(TOOLCORE_PATH) -whole-archive -lxentoolcore -no-whole-archive LIBS += $(TOOLCORE_PATH)/libxentoolcore.a +endif +ifeq ($(CONFIG_LIBXENTOOLLOG),y) APP_LDLIBS += -L$(TOOLLOG_PATH) -whole-archive -lxentoollog -no-whole-archive LIBS += $(TOOLLOG_PATH)/libxentoollog.a +endif +ifeq ($(CONFIG_LIBXENEVTCHN),y) APP_LDLIBS += -L$(EVTCHN_PATH) -whole-archive -lxenevtchn -no-whole-archive LIBS += $(EVTCHN_PATH)/libxenevtchn.a +endif +ifeq ($(CONFIG_LIBXENGNTTAB),y) APP_LDLIBS += -L$(GNTTAB_PATH) -whole-archive -lxengnttab -no-whole-archive LIBS += $(GNTTAB_PATH)/libxengnttab.a +endif +ifeq ($(CONFIG_LIBXENCALL),y) APP_LDLIBS += -L$(CALL_PATH) -whole-archive -lxencall -no-whole-archive LIBS += $(CALL_PATH)/libxencall.a +endif +ifeq ($(CONFIG_LIBXENFOREIGNMEMORY),y) APP_LDLIBS += -L$(FOREIGNMEMORY_PATH) -whole-archive -lxenforeignmemory -no-whole-archive LIBS += $(FOREIGNMEMORY_PATH)/libxenforeignmemory.a +endif +ifeq ($(CONFIG_LIBXENDEVICEMODEL),y) APP_LDLIBS += -L$(DEVICEMODEL_PATH) -whole-archive -lxendevicemodel -no-whole-archive LIBS += $(DEVICEMODEL_PATH)/libxendevicemodel.a +endif +ifeq ($(CONFIG_LIBXENGUEST),y) APP_LDLIBS += -L$(GUEST_PATH) -whole-archive -lxenguest -no-whole-archive LIBS += $(GUEST_PATH)/libxenguest.a +endif +ifeq ($(CONFIG_LIBXENCTRL),y) APP_LDLIBS += -L$(CTRL_PATH) -whole-archive -lxenctrl -no-whole-archive LIBS += $(CTRL_PATH)/libxenctrl.a endif