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.)
Jan