From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: "Andrew Cooper" <andrew.cooper3@citrix.com>,
"Edwin Török" <edwin.torok@citrix.com>,
"Christian Lindig" <christian.lindig@citrix.com>,
"Rob Hoes" <Rob.Hoes@citrix.com>,
"Pau Ruiz Safont" <pau.safont@vates.tech>,
"Andrii Sultanov" <andriy.sultanov@vates.tech>,
"Oleksii Kurochko" <oleksii.kurochko@gmail.com>
Subject: [PATCH] ocaml/xsd_glue: Fix dynamic linking configuration
Date: Tue, 4 Nov 2025 16:56:44 +0000 [thread overview]
Message-ID: <20251104165644.4011663-1-andrew.cooper3@citrix.com> (raw)
The latest oxenstored from Xapi-project fails to start up:
launch-xenstore[1201]: Starting /usr/sbin/oxenstored...
launch-xenstore[1222]: Fatal error: exception
Dynlink.Error (Dynlink.Cannot_open_dll "Dynlink.Error (Dynlink.Cannot_open_dll
\"Failure(\\\"/usr/libexec/xen//ocaml/xsd_glue/xenctrl_plugin/domain_getinfo_v1.cmxs:
undefined symbol: xc_domain_getinfo_single\\\")\")")
This is because domain_getinfo_v1.cmxs isn't dynamically linked correctly.
Fill in the correct variable, and remove the xen prefix from xenctrl.
Reported-by: Edwin Török <edwin.torok@citrix.com>
Suggested-by: Edwin Török <edwin.torok@citrix.com>
Fixes: a6576011a4d2 ("ocaml/libs: Implement a dynamically-loaded plugin for Xenctrl.domain_getinfo")
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Christian Lindig <christian.lindig@citrix.com>
CC: Rob Hoes <Rob.Hoes@citrix.com>
CC: Pau Ruiz Safont <pau.safont@vates.tech>
CC: Andrii Sultanov <andriy.sultanov@vates.tech>
CC: Oleksii Kurochko <oleksii.kurochko@gmail.com>
For 4.21. Without this, we can't proceed with deprecate oxenstored.
This wants backporting to 4.20 too.
Previously this was hidden by oxenstored unexpectedly statically linking
libxenctrl via the ocaml-evtchn bindings, and became exposed when the bindings
were moved to use libxenevtchn.
---
tools/ocaml/libs/xsd_glue/domain_getinfo_plugin_v1/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/ocaml/libs/xsd_glue/domain_getinfo_plugin_v1/Makefile b/tools/ocaml/libs/xsd_glue/domain_getinfo_plugin_v1/Makefile
index 4be1feacfe24..6356159020c1 100644
--- a/tools/ocaml/libs/xsd_glue/domain_getinfo_plugin_v1/Makefile
+++ b/tools/ocaml/libs/xsd_glue/domain_getinfo_plugin_v1/Makefile
@@ -11,7 +11,7 @@ OBJS = domain_getinfo_v1
INTF = $(foreach obj, $(OBJS),$(obj).cmi)
LIBS = domain_getinfo_v1.cmxa domain_getinfo_v1.cmxs
-LIBS_xsd_glue = $(call xenlibs-ldflags-ldlibs,xenctrl)
+LIBS_domain_getinfo_v1 = $(call xenlibs-ldflags-ldlibs,ctrl)
all: $(INTF) $(LIBS) $(PROGRAMS)
base-commit: 9632ce6fe5b288244d2550cd2e619a55c5168bf8
--
2.39.5
next reply other threads:[~2025-11-04 16:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-04 16:56 Andrew Cooper [this message]
2025-11-04 16:58 ` [PATCH for-4.21] ocaml/xsd_glue: Fix dynamic linking configuration Andrew Cooper
2025-11-05 9:21 ` [PATCH] " Christian Lindig
2025-11-05 11:29 ` Oleksii Kurochko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251104165644.4011663-1-andrew.cooper3@citrix.com \
--to=andrew.cooper3@citrix.com \
--cc=Rob.Hoes@citrix.com \
--cc=andriy.sultanov@vates.tech \
--cc=christian.lindig@citrix.com \
--cc=edwin.torok@citrix.com \
--cc=oleksii.kurochko@gmail.com \
--cc=pau.safont@vates.tech \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).