Skip to content

Drivers: hv: give hyperv_remove_xen_vmbus_irq() its asm-generic declaration and stub - #107

Open
kaniini wants to merge 1 commit into
edera/mainlinefrom
ariadne/eng-223-hv-arm64-xen-vmbus-irq-stub
Open

kaniini wants to merge 1 commit into
edera/mainlinefrom
ariadne/eng-223-hv-arm64-xen-vmbus-irq-stub

Conversation

@kaniini

@kaniini kaniini commented Nov 13, 2026

Copy link
Copy Markdown

The VMBus interrupt bridge teardown added in 2e155d6 declared hyperv_remove_xen_vmbus_irq() in the x86 copy of the nested-on-Xen block only. The asm-generic copy, which arm64 uses, has neither the declaration nor the stub, and vmbus_drv.c calls the function unconditionally, so an arm64 kernel with CONFIG_HYPERV does not compile. The nightly arm64 build does not enable HYPERV, which is why CI did not catch it.

This adds the declaration and the empty stub to the asm-generic block next to hyperv_setup_xen_vmbus_irq(), so the two copies match again.

Verified with make LLVM=1 ARCH=arm64 defconfig plus HYPERV and HYPERV_VMBUS enabled: drivers/hv/vmbus_drv.o fails on edera/mainline with the two "call to undeclared function" errors from the issue and builds cleanly with this change.

ENG-223

…ration and stub

Commit 2e155d6 ("drivers: hv: tear down the Xen VMBus interrupt
bridge on unwind") added hyperv_remove_xen_vmbus_irq() to the x86 copy
of the nested-on-Xen block in asm/mshyperv.h only.  The asm-generic copy
that other architectures use, arm64 among them, neither declares it nor
stubs it, and vmbus_drv.c calls it unconditionally, so an arm64 kernel
with CONFIG_HYPERV fails to compile.  The nightly arm64 build does not
enable HYPERV, which is why it did not catch this.

Add the declaration and the empty stub to the asm-generic block, next to
hyperv_setup_xen_vmbus_irq(), so the two copies match again.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant