[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 15/15] xen/riscv: init tasklet subsystem




On 1/12/26 5:20 PM, Jan Beulich wrote:
On 24.12.2025 18:03, Oleksii Kurochko wrote:
As the tasklet subsystem is now initialized, it is necessary to implement
sync_local_execstate(), since it is invoked when something calls
tasklet_softirq_action(), which is registered in tasklet_subsys_init().

After introducing sync_local_execstate(), the following linker issue occurs:
   riscv64-linux-gnu-ld: prelink.o: in function `bitmap_and':
     /build/xen/./include/xen/bitmap.h:147: undefined reference to
                                            `sync_vcpu_execstate'
   riscv64-linux-gnu-ld: ./.xen-syms.0: hidden symbol
                         `sync_vcpu_execstate' isn't defined
   riscv64-linux-gnu-ld: final link failed: bad value
How that when ...

--- a/xen/arch/riscv/stubs.c
+++ b/xen/arch/riscv/stubs.c
@@ -91,16 +91,6 @@ void continue_running(struct vcpu *same)
      BUG_ON("unimplemented");
  }
-void sync_local_execstate(void)
-{
-    BUG_ON("unimplemented");
-}
-
-void sync_vcpu_execstate(struct vcpu *v)
-{
-    BUG_ON("unimplemented");
-}
... there was a (stub) implementation? (The code changes look okay, it's just
that I can't make sense of that part of the description.)

I haven’t investigated this further. I wanted to look into it now, but I can’t
reproduce the issue anymore. I reverted|sync_vcpu_execstate()| to a stub and no
longer see the problem.

I will move the introduction of|sync_vcpu_execstate()|. It doesn’t seem to be
really needed at the moment, but since it is already introduced and there are no
specific comments against it, I think it can be added as a separate patch in 
this
series.

Thanks.

~ Olesii




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.