PPC collects constructors, but doesn't run them yet. Do so.
They'll shortly be used to confirm correct behaviour of the bitops primitives.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
CC: Jan Beulich <JBeulich@suse.com>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Wei Liu <wl@xen.org>
CC: Stefano Stabellini <sstabellini@kernel.org>
CC: Julien Grall <julien@xen.org>
CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com>
CC: Bertrand Marquis <bertrand.marquis@arm.com>
CC: Michal Orzel <michal.orzel@amd.com>
CC: Oleksii Kurochko <oleksii.kurochko@gmail.com>
CC: Shawn Anastasio <sanastasio@raptorengineering.com>
CC: consulting@bugseng.com <consulting@bugseng.com>
CC: Simone Ballarin <simone.ballarin@bugseng.com>
CC: Federico Serafini <federico.serafini@bugseng.com>
CC: Nicola Vetrini <nicola.vetrini@bugseng.com>
CI: https://gitlab.com/xen-project/people/andyhhp/xen/-/jobs/6931084695
v2:
* New
RISC-V collects them too, but can't call init_constructors() until lib/ctors.c
is included in the build.
Constructors is the only way to get these tests working on PPC/RISC-V as
neither suvivie boot with initcalls() active. Then again, initcalls() are
just a not-invented-here constructor, and we'd probably do well to move them
over..
---
xen/arch/ppc/setup.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/xen/arch/ppc/setup.c b/xen/arch/ppc/setup.c
index 101bdd8bb648..7fe06aa4bfb0 100644
--- a/xen/arch/ppc/setup.c
+++ b/xen/arch/ppc/setup.c
@@ -39,6 +39,8 @@ void __init noreturn start_xen(unsigned long r3, unsigned long r4,
setup_initial_pagetables();
+ init_constructors();
+
early_printk("Hello, ppc64le!\n");
for ( ; ; )
--
2.30.2