* [hyperv:hyperv-fixes 4/8] drivers/hv/mshv_synic.c:591:undefined reference to `hv_vmbus_exists'
@ 2026-05-14 19:50 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-05-14 19:50 UTC (permalink / raw)
To: Jork Loeser
Cc: oe-kbuild-all, Wei Liu, Anirudh Rayabharam (Microsoft),
Stanislav Kinsburskii
tree: https://git.kernel.org/pub/scm/linux/kernel/git/hyperv/linux.git hyperv-fixes
head: 8b35874f56ded0cc1a90a25b87411249a86246cd
commit: f1a9e67c11388965802a61922c313bfc43272afe [4/8] mshv: limit SynIC management to MSHV-owned resources
config: x86_64-randconfig-072-20260514 (https://download.01.org/0day-ci/archive/20260515/202605150351.zra956jl-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260515/202605150351.zra956jl-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202605150351.zra956jl-lkp@intel.com/
All errors (new ones prefixed by >>):
ld: vmlinux.o: in function `mshv_synic_cpu_exit':
>> drivers/hv/mshv_synic.c:591:(.text+0x1f57f97): undefined reference to `hv_vmbus_exists'
ld: vmlinux.o: in function `mshv_synic_cpu_init':
drivers/hv/mshv_synic.c:470:(.text+0x1f58229): undefined reference to `hv_vmbus_exists'
vim +591 drivers/hv/mshv_synic.c
579
580 static int mshv_synic_cpu_exit(unsigned int cpu)
581 {
582 union hv_synic_sint sint;
583 union hv_synic_sirbp sirbp;
584 struct hv_synic_pages *spages = this_cpu_ptr(synic_pages);
585 struct hv_message_page **msg_page = &spages->hyp_synic_message_page;
586 struct hv_synic_event_flags_page **event_flags_page =
587 &spages->synic_event_flags_page;
588 struct hv_synic_event_ring_page **event_ring_page =
589 &spages->synic_event_ring_page;
590 /* VMBus owns SIMP/SIEFP/SCONTROL when it is active */
> 591 bool vmbus_active = hv_vmbus_exists();
592
593 /* Disable the interrupt */
594 sint.as_uint64 = hv_get_non_nested_msr(HV_MSR_SINT0 + HV_SYNIC_INTERCEPTION_SINT_INDEX);
595 sint.masked = true;
596 hv_set_non_nested_msr(HV_MSR_SINT0 + HV_SYNIC_INTERCEPTION_SINT_INDEX,
597 sint.as_uint64);
598
599 /* Disable Doorbell SINT */
600 sint.as_uint64 = hv_get_non_nested_msr(HV_MSR_SINT0 + HV_SYNIC_DOORBELL_SINT_INDEX);
601 sint.masked = true;
602 hv_set_non_nested_msr(HV_MSR_SINT0 + HV_SYNIC_DOORBELL_SINT_INDEX,
603 sint.as_uint64);
604
605 if (mshv_sint_irq != -1)
606 disable_percpu_irq(mshv_sint_irq);
607
608 /* Disable SYNIC event ring page owned by MSHV */
609 sirbp.as_uint64 = hv_get_non_nested_msr(HV_MSR_SIRBP);
610 sirbp.sirbp_enabled = false;
611
612 if (hv_root_partition()) {
613 hv_set_non_nested_msr(HV_MSR_SIRBP, sirbp.as_uint64);
614 memunmap(*event_ring_page);
615 } else {
616 sirbp.base_sirbp_gpa = 0;
617 hv_set_non_nested_msr(HV_MSR_SIRBP, sirbp.as_uint64);
618 free_page((unsigned long)*event_ring_page);
619 }
620
621 /*
622 * Release our mappings of the message and event flags pages.
623 * When VMBus is not active, we enabled SIMP/SIEFP — disable
624 * them. Otherwise VMBus owns the MSRs — leave them.
625 */
626 memunmap(*event_flags_page);
627 if (!vmbus_active) {
628 union hv_synic_simp simp;
629 union hv_synic_siefp siefp;
630
631 siefp.as_uint64 = hv_get_non_nested_msr(HV_MSR_SIEFP);
632 siefp.siefp_enabled = false;
633 hv_set_non_nested_msr(HV_MSR_SIEFP, siefp.as_uint64);
634
635 simp.as_uint64 = hv_get_non_nested_msr(HV_MSR_SIMP);
636 simp.simp_enabled = false;
637 hv_set_non_nested_msr(HV_MSR_SIMP, simp.as_uint64);
638 }
639 memunmap(*msg_page);
640
641 /* When VMBus is active it owns SCONTROL — leave it. */
642 if (!vmbus_active) {
643 union hv_synic_scontrol sctrl;
644
645 sctrl.as_uint64 = hv_get_non_nested_msr(HV_MSR_SCONTROL);
646 sctrl.enable = 0;
647 hv_set_non_nested_msr(HV_MSR_SCONTROL, sctrl.as_uint64);
648 }
649
650 return 0;
651 }
652
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-05-14 19:51 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-14 19:50 [hyperv:hyperv-fixes 4/8] drivers/hv/mshv_synic.c:591:undefined reference to `hv_vmbus_exists' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.