All of lore.kernel.org
 help / color / mirror / Atom feed
* [MINI-OS PATCH 0/2] support individual Xen library use cases
@ 2024-10-07 10:34 Juergen Gross
  2024-10-07 10:34 ` [MINI-OS PATCH 1/2] add config support for each Xen library Juergen Gross
  2024-10-07 10:34 ` [MINI-OS PATCH 2/2] drop CONFIG_XC support Juergen Gross
  0 siblings, 2 replies; 6+ messages in thread
From: Juergen Gross @ 2024-10-07 10:34 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: samuel.thibault, Juergen Gross

Instead of using either none or all Xen libraries, support each
library individually.

This series needs to be applied only after the related Xen side series
"stubdom: prepare more fine grained Xen library usage" has been
applied.

Juergen Gross (2):
  mini-os: add config support for each Xen library
  mini-os: drop CONFIG_XC support

 Config.mk | 11 +++++++++--
 Makefile  | 18 +++++++++++++++++-
 2 files changed, 26 insertions(+), 3 deletions(-)

-- 
2.43.0



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [MINI-OS PATCH 1/2] add config support for each Xen library
  2024-10-07 10:34 [MINI-OS PATCH 0/2] support individual Xen library use cases Juergen Gross
@ 2024-10-07 10:34 ` Juergen Gross
  2024-10-07 10:34 ` [MINI-OS PATCH 2/2] drop CONFIG_XC support Juergen Gross
  1 sibling, 0 replies; 6+ messages in thread
From: Juergen Gross @ 2024-10-07 10:34 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: samuel.thibault, Juergen Gross

Instead of adding all or no Xen library (controlled by CONFIG_XC),
support a dedicated config option for each library instead. In order
to support older Xen stubdom build versions, let CONFIG_XC enable
all CONFIG_LIBXEN options.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 Config.mk | 19 +++++++++++++++++++
 Makefile  | 18 +++++++++++++++++-
 2 files changed, 36 insertions(+), 1 deletion(-)

diff --git a/Config.mk b/Config.mk
index f2d1f0ae..d0fbacac 100644
--- a/Config.mk
+++ b/Config.mk
@@ -212,6 +212,25 @@ $(foreach i,$(CONFIG-n),$(eval $(i) ?= n))
 CONFIG-x += CONFIG_LIBXS
 CONFIG_LIBXS ?= $(CONFIG_XENBUS)
 
+CONFIG-x += CONFIG_LIBXENCALL
+CONFIG-x += CONFIG_LIBXENCTRL
+CONFIG-x += CONFIG_LIBXENDEVICEMODEL
+CONFIG-x += CONFIG_LIBXENEVTCHN
+CONFIG-x += CONFIG_LIBXENFOREIGNMEMORY
+CONFIG-x += CONFIG_LIBXENGNTTAB
+CONFIG-x += CONFIG_LIBXENGUEST
+CONFIG-x += CONFIG_LIBXENTOOLCORE
+CONFIG-x += CONFIG_LIBXENTOOLLOG
+CONFIG_LIBXENCALL ?= $(CONFIG_XC)
+CONFIG_LIBXENCTRL ?= $(CONFIG_XC)
+CONFIG_LIBXENDEVICEMODEL ?= $(CONFIG_XC)
+CONFIG_LIBXENEVTCHN ?= $(CONFIG_XC)
+CONFIG_LIBXENFOREIGNMEMORY ?= $(CONFIG_XC)
+CONFIG_LIBXENGNTTAB ?= $(CONFIG_XC)
+CONFIG_LIBXENGUEST ?= $(CONFIG_XC)
+CONFIG_LIBXENTOOLCORE ?= $(CONFIG_XC)
+CONFIG_LIBXENTOOLLOG ?= $(CONFIG_XC)
+
 CONFIG-all := $(CONFIG-y) $(CONFIG-n) $(CONFIG-x)
 
 # Export config items as compiler directives
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



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [MINI-OS PATCH 2/2] drop CONFIG_XC support
  2024-10-07 10:34 [MINI-OS PATCH 0/2] support individual Xen library use cases Juergen Gross
  2024-10-07 10:34 ` [MINI-OS PATCH 1/2] add config support for each Xen library Juergen Gross
@ 2024-10-07 10:34 ` Juergen Gross
  2024-10-07 22:13   ` Samuel Thibault
  1 sibling, 1 reply; 6+ messages in thread
From: Juergen Gross @ 2024-10-07 10:34 UTC (permalink / raw)
  To: minios-devel, xen-devel; +Cc: samuel.thibault, Juergen Gross

CONFIG_XC is no longer needed with individual CONFIG_LIBXEN support.

Remove it, while disabling the CONFIG_LIBXEN items by default.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 Config.mk | 30 +++++++++---------------------
 1 file changed, 9 insertions(+), 21 deletions(-)

diff --git a/Config.mk b/Config.mk
index d0fbacac..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
 
@@ -212,25 +219,6 @@ $(foreach i,$(CONFIG-n),$(eval $(i) ?= n))
 CONFIG-x += CONFIG_LIBXS
 CONFIG_LIBXS ?= $(CONFIG_XENBUS)
 
-CONFIG-x += CONFIG_LIBXENCALL
-CONFIG-x += CONFIG_LIBXENCTRL
-CONFIG-x += CONFIG_LIBXENDEVICEMODEL
-CONFIG-x += CONFIG_LIBXENEVTCHN
-CONFIG-x += CONFIG_LIBXENFOREIGNMEMORY
-CONFIG-x += CONFIG_LIBXENGNTTAB
-CONFIG-x += CONFIG_LIBXENGUEST
-CONFIG-x += CONFIG_LIBXENTOOLCORE
-CONFIG-x += CONFIG_LIBXENTOOLLOG
-CONFIG_LIBXENCALL ?= $(CONFIG_XC)
-CONFIG_LIBXENCTRL ?= $(CONFIG_XC)
-CONFIG_LIBXENDEVICEMODEL ?= $(CONFIG_XC)
-CONFIG_LIBXENEVTCHN ?= $(CONFIG_XC)
-CONFIG_LIBXENFOREIGNMEMORY ?= $(CONFIG_XC)
-CONFIG_LIBXENGNTTAB ?= $(CONFIG_XC)
-CONFIG_LIBXENGUEST ?= $(CONFIG_XC)
-CONFIG_LIBXENTOOLCORE ?= $(CONFIG_XC)
-CONFIG_LIBXENTOOLLOG ?= $(CONFIG_XC)
-
 CONFIG-all := $(CONFIG-y) $(CONFIG-n) $(CONFIG-x)
 
 # Export config items as compiler directives
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [MINI-OS PATCH 2/2] drop CONFIG_XC support
  2024-10-07 10:34 ` [MINI-OS PATCH 2/2] drop CONFIG_XC support Juergen Gross
@ 2024-10-07 22:13   ` Samuel Thibault
  2024-10-08  9:22     ` Jürgen Groß
  0 siblings, 1 reply; 6+ messages in thread
From: Samuel Thibault @ 2024-10-07 22:13 UTC (permalink / raw)
  To: Juergen Gross; +Cc: minios-devel, xen-devel

Juergen Gross, le lun. 07 oct. 2024 12:34:56 +0200, a ecrit:
> CONFIG_XC is no longer needed with individual CONFIG_LIBXEN support.

I don't really see why in the previous patch you introduced
compatibility and here you remove it?

Samuel

> Remove it, while disabling the CONFIG_LIBXEN items by default.
> 
> Signed-off-by: Juergen Gross <jgross@suse.com>
> ---
>  Config.mk | 30 +++++++++---------------------
>  1 file changed, 9 insertions(+), 21 deletions(-)
> 
> diff --git a/Config.mk b/Config.mk
> index d0fbacac..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
>  
> @@ -212,25 +219,6 @@ $(foreach i,$(CONFIG-n),$(eval $(i) ?= n))
>  CONFIG-x += CONFIG_LIBXS
>  CONFIG_LIBXS ?= $(CONFIG_XENBUS)
>  
> -CONFIG-x += CONFIG_LIBXENCALL
> -CONFIG-x += CONFIG_LIBXENCTRL
> -CONFIG-x += CONFIG_LIBXENDEVICEMODEL
> -CONFIG-x += CONFIG_LIBXENEVTCHN
> -CONFIG-x += CONFIG_LIBXENFOREIGNMEMORY
> -CONFIG-x += CONFIG_LIBXENGNTTAB
> -CONFIG-x += CONFIG_LIBXENGUEST
> -CONFIG-x += CONFIG_LIBXENTOOLCORE
> -CONFIG-x += CONFIG_LIBXENTOOLLOG
> -CONFIG_LIBXENCALL ?= $(CONFIG_XC)
> -CONFIG_LIBXENCTRL ?= $(CONFIG_XC)
> -CONFIG_LIBXENDEVICEMODEL ?= $(CONFIG_XC)
> -CONFIG_LIBXENEVTCHN ?= $(CONFIG_XC)
> -CONFIG_LIBXENFOREIGNMEMORY ?= $(CONFIG_XC)
> -CONFIG_LIBXENGNTTAB ?= $(CONFIG_XC)
> -CONFIG_LIBXENGUEST ?= $(CONFIG_XC)
> -CONFIG_LIBXENTOOLCORE ?= $(CONFIG_XC)
> -CONFIG_LIBXENTOOLLOG ?= $(CONFIG_XC)
> -
>  CONFIG-all := $(CONFIG-y) $(CONFIG-n) $(CONFIG-x)
>  
>  # Export config items as compiler directives
> -- 
> 2.43.0
> 

-- 
Samuel
 Cliquez sur le lien qui suit dans ce mail...vous n'avez plus qu'a vous
 inscrire pour gagner de l'argent en restant connecte....et puis faites
 passer le message et vous gagnerez encore plus d'argent ...
 -+- AC in NPC : Neuneu a rencontré le Pere Noël -+-


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [MINI-OS PATCH 2/2] drop CONFIG_XC support
  2024-10-07 22:13   ` Samuel Thibault
@ 2024-10-08  9:22     ` Jürgen Groß
  2024-10-08 21:10       ` Samuel Thibault
  0 siblings, 1 reply; 6+ messages in thread
From: Jürgen Groß @ 2024-10-08  9:22 UTC (permalink / raw)
  To: Samuel Thibault, minios-devel, xen-devel


[-- Attachment #1.1.1: Type: text/plain, Size: 699 bytes --]

On 08.10.24 00:13, Samuel Thibault wrote:
> Juergen Gross, le lun. 07 oct. 2024 12:34:56 +0200, a ecrit:
>> CONFIG_XC is no longer needed with individual CONFIG_LIBXEN support.
> 
> I don't really see why in the previous patch you introduced
> compatibility and here you remove it?

Originally I meant to split the series by sending the first patch as a
standalone one and then the second after the Xen side patches went in.

When changing my mind in this regard I thought dropping CONFIG_XC might
be controversial, so I decided to keep the introduction of the
CONFIG_LIBXEN items and the dropping of CONFIG_XC separate.

I can merge the patches if you like that better.


Juergen

[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 3743 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 495 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [MINI-OS PATCH 2/2] drop CONFIG_XC support
  2024-10-08  9:22     ` Jürgen Groß
@ 2024-10-08 21:10       ` Samuel Thibault
  0 siblings, 0 replies; 6+ messages in thread
From: Samuel Thibault @ 2024-10-08 21:10 UTC (permalink / raw)
  To: Jürgen Groß; +Cc: minios-devel, xen-devel

Hello,

Jürgen Groß, le mar. 08 oct. 2024 11:22:11 +0200, a ecrit:
> On 08.10.24 00:13, Samuel Thibault wrote:
> > Juergen Gross, le lun. 07 oct. 2024 12:34:56 +0200, a ecrit:
> > > CONFIG_XC is no longer needed with individual CONFIG_LIBXEN support.
> > 
> > I don't really see why in the previous patch you introduced
> > compatibility and here you remove it?
> 
> Originally I meant to split the series by sending the first patch as a
> standalone one and then the second after the Xen side patches went in.
> 
> When changing my mind in this regard I thought dropping CONFIG_XC might
> be controversial, so I decided to keep the introduction of the
> CONFIG_LIBXEN items and the dropping of CONFIG_XC separate.

Ok, I was wondering something about this line :)

> I can merge the patches if you like that better.

It'll be simpler in the git history indeed.

Samuel


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-10-08 21:11 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-07 10:34 [MINI-OS PATCH 0/2] support individual Xen library use cases Juergen Gross
2024-10-07 10:34 ` [MINI-OS PATCH 1/2] add config support for each Xen library Juergen Gross
2024-10-07 10:34 ` [MINI-OS PATCH 2/2] drop CONFIG_XC support Juergen Gross
2024-10-07 22:13   ` Samuel Thibault
2024-10-08  9:22     ` Jürgen Groß
2024-10-08 21:10       ` Samuel Thibault

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.