|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v1 1/5] xen/riscv: add stub for share_xen_page_with_guest()
To avoid the following linkage fail the stub for share_xen_page_with_guest()
is introduced:
riscv64-linux-gnu-ld: prelink.o: in function `tasklet_kill':
/build/xen/common/tasklet.c:176: undefined reference to
`share_xen_page_with_guest'
riscv64-linux-gnu-ld: ./.xen-syms.0: hidden symbol
`share_xen_page_with_guest' isn't defined
riscv64-linux-gnu-ld: final link failed: bad value
$ find . -name \*.o | while read F; do nm $F | grep share_xen_page_with_guest
&& echo $F; done
U share_xen_page_with_guest
./xen/common/built_in.o
U share_xen_page_with_guest
./xen/common/trace.o
U share_xen_page_with_guest
./xen/prelink.o
Despite the linker fingering tasklet.c (very likely a toolchain bug),
it's trace.o which has the undefined reference.
Looking at trace.i, there is call of share_xen_page_with_guest() in
share_xen_page_with_privileged_guests() from asm/mm.h.
Signed-off-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
---
xen/arch/riscv/stubs.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/xen/arch/riscv/stubs.c b/xen/arch/riscv/stubs.c
index 5951b0ce91..c9a590b225 100644
--- a/xen/arch/riscv/stubs.c
+++ b/xen/arch/riscv/stubs.c
@@ -2,7 +2,9 @@
#include <xen/cpumask.h>
#include <xen/domain.h>
#include <xen/irq.h>
+#include <xen/mm.h>
#include <xen/nodemask.h>
+#include <xen/sched.h>
#include <xen/sections.h>
#include <xen/time.h>
#include <public/domctl.h>
@@ -409,3 +411,11 @@ unsigned long get_upper_mfn_bound(void)
{
BUG_ON("unimplemented");
}
+
+/* mm.c */
+
+void share_xen_page_with_guest(struct page_info *page, struct domain *d,
+ enum XENSHARE_flags flags)
+{
+ BUG_ON("unimplemented");
+}
--
2.47.0
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |