mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
xen/x86: move domctl.o out of PV_SHIM_EXCLUSIVE
In order to fix CI error of a randconfig picking both PV_SHIM_EXCLUSIVE=y and
HVM=y results in hvm.c being built, but domctl.c not being built, which leaves
a few functions, like domctl_lock_acquire/release() undefined, causing linking
to fail.
To fix that, we intend to move domctl.o out of the PV_SHIM_EXCLUSIVE Makefile
/hypercall-defs section, with this adjustment, we also need to remove
redundant vnuma_destroy() stub definition to not break compilation.
Above change will leave dead code in the shim binary temporarily and will be
fixed with the introduction of CONFIG_DOMCTL.
Fixes: 568f806cba ("xen/x86: remove "depends on !PV_SHIM_EXCLUSIVE"")
Reported-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Penny Zheng <Penny.Zheng@amd.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
1 parent
a845b50c12
commit
c4c80207a1
4 files changed
+3
-12
No files matched your search
@@ -28,6 +28,7 @@ obj-y += delay.o
|
||||
obj-y += desc.o
|
||||
obj-bin-y += dmi_scan.init.o
|
||||
obj-y += domain.o
|
||||
obj-y += domctl.o
|
||||
obj-bin-y += dom0_build.init.o
|
||||
obj-y += domain_page.o
|
||||
obj-y += e820.o
|
||||
@@ -79,7 +80,6 @@ obj-y += vm_event.o
|
||||
obj-y += xstate.o
|
||||
|
||||
ifneq ($(CONFIG_PV_SHIM_EXCLUSIVE),y)
|
||||
obj-y += domctl.o
|
||||
obj-y += platform_hypercall.o
|
||||
obj-$(CONFIG_COMPAT) += x86_64/platform_hypercall.o
|
||||
endif
|
||||
|
||||
+1
-4
@@ -11,6 +11,7 @@ obj-$(filter-out $(CONFIG_X86),$(CONFIG_ACPI)) += device.o
|
||||
obj-$(CONFIG_DEVICE_TREE_PARSE) += device-tree/
|
||||
obj-$(CONFIG_IOREQ_SERVER) += dm.o
|
||||
obj-y += domain.o
|
||||
obj-y += domctl.o
|
||||
obj-y += event_2l.o
|
||||
obj-y += event_channel.o
|
||||
obj-$(CONFIG_EVTCHN_FIFO) += event_fifo.o
|
||||
@@ -69,10 +70,6 @@ obj-bin-$(CONFIG_X86) += $(foreach n,decompress bunzip2 unxz unlzma lzo unlzo un
|
||||
|
||||
obj-$(CONFIG_COMPAT) += $(addprefix compat/,domain.o memory.o multicall.o xlat.o)
|
||||
|
||||
ifneq ($(CONFIG_PV_SHIM_EXCLUSIVE),y)
|
||||
obj-y += domctl.o
|
||||
endif
|
||||
|
||||
extra-y := symbols-dummy.o
|
||||
|
||||
obj-$(CONFIG_COVERAGE) += coverage/
|
||||
|
||||
@@ -197,8 +197,8 @@ dm_op(domid_t domid, unsigned int nr_bufs, xen_dm_op_buf_t *bufs)
|
||||
#ifdef CONFIG_SYSCTL
|
||||
sysctl(xen_sysctl_t *u_sysctl)
|
||||
#endif
|
||||
#ifndef CONFIG_PV_SHIM_EXCLUSIVE
|
||||
domctl(xen_domctl_t *u_domctl)
|
||||
#ifndef CONFIG_PV_SHIM_EXCLUSIVE
|
||||
paging_domctl_cont(xen_domctl_t *u_domctl)
|
||||
platform_op(xen_platform_op_t *u_xenpf_op)
|
||||
#endif
|
||||
@@ -278,9 +278,7 @@ hvm_op do do do do do
|
||||
#ifdef CONFIG_SYSCTL
|
||||
sysctl do do do do do
|
||||
#endif
|
||||
#ifndef CONFIG_PV_SHIM_EXCLUSIVE
|
||||
domctl do do do do do
|
||||
#endif
|
||||
#ifdef CONFIG_KEXEC
|
||||
kexec_op compat do - - -
|
||||
#endif
|
||||
|
||||
@@ -182,11 +182,7 @@ struct vnuma_info {
|
||||
struct xen_vmemrange *vmemrange;
|
||||
};
|
||||
|
||||
#ifndef CONFIG_PV_SHIM_EXCLUSIVE
|
||||
void vnuma_destroy(struct vnuma_info *vnuma);
|
||||
#else
|
||||
static inline void vnuma_destroy(struct vnuma_info *vnuma) { ASSERT(!vnuma); }
|
||||
#endif
|
||||
|
||||
extern bool vmtrace_available;
|
||||
|
||||
|
||||