From: kernel test robot <lkp@intel.com>
To: Nicholas Piggin <npiggin@gmail.com>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org,
Michael Ellerman <mpe@ellerman.id.au>,
Fabiano Rosas <farosas@linux.ibm.com>
Subject: [linuxppc:topic/ppc-kvm 25/25] arch/powerpc/kvm/powerpc.c:716:29: error: implicit declaration of function 'kvmhv_on_pseries'
Date: Wed, 16 Mar 2022 17:30:16 +0800 [thread overview]
Message-ID: <202203161748.qlx3DIuD-lkp@intel.com> (raw)
tree: https://github.com/linuxppc/linux topic/ppc-kvm
head: f771b55731fc82b1e8e9ef123f6f1b8d8c92bc63
commit: f771b55731fc82b1e8e9ef123f6f1b8d8c92bc63 [25/25] KVM: PPC: Use KVM_CAP_PPC_AIL_MODE_3
config: powerpc-randconfig-c004-20220314 (https://download.01.org/0day-ci/archive/20220316/202203161748.qlx3DIuD-lkp@intel.com/config)
compiler: powerpc-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/linuxppc/linux/commit/f771b55731fc82b1e8e9ef123f6f1b8d8c92bc63
git remote add linuxppc https://github.com/linuxppc/linux
git fetch --no-tags linuxppc topic/ppc-kvm
git checkout f771b55731fc82b1e8e9ef123f6f1b8d8c92bc63
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=powerpc SHELL=/bin/bash arch/powerpc/kvm/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
arch/powerpc/kvm/powerpc.c: In function 'kvm_vm_ioctl_check_extension':
>> arch/powerpc/kvm/powerpc.c:716:29: error: implicit declaration of function 'kvmhv_on_pseries' [-Werror=implicit-function-declaration]
716 | if (kvmhv_on_pseries()) {
| ^~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +/kvmhv_on_pseries +716 arch/powerpc/kvm/powerpc.c
593
594 case KVM_CAP_PPC_ALLOC_HTAB:
595 r = hv_enabled;
596 break;
597 #endif /* CONFIG_PPC_BOOK3S_64 */
598 #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
599 case KVM_CAP_PPC_SMT:
600 r = 0;
601 if (kvm) {
602 if (kvm->arch.emul_smt_mode > 1)
603 r = kvm->arch.emul_smt_mode;
604 else
605 r = kvm->arch.smt_mode;
606 } else if (hv_enabled) {
607 if (cpu_has_feature(CPU_FTR_ARCH_300))
608 r = 1;
609 else
610 r = threads_per_subcore;
611 }
612 break;
613 case KVM_CAP_PPC_SMT_POSSIBLE:
614 r = 1;
615 if (hv_enabled) {
616 if (!cpu_has_feature(CPU_FTR_ARCH_300))
617 r = ((threads_per_subcore << 1) - 1);
618 else
619 /* P9 can emulate dbells, so allow any mode */
620 r = 8 | 4 | 2 | 1;
621 }
622 break;
623 case KVM_CAP_PPC_RMA:
624 r = 0;
625 break;
626 case KVM_CAP_PPC_HWRNG:
627 r = kvmppc_hwrng_present();
628 break;
629 case KVM_CAP_PPC_MMU_RADIX:
630 r = !!(hv_enabled && radix_enabled());
631 break;
632 case KVM_CAP_PPC_MMU_HASH_V3:
633 r = !!(hv_enabled && kvmppc_hv_ops->hash_v3_possible &&
634 kvmppc_hv_ops->hash_v3_possible());
635 break;
636 case KVM_CAP_PPC_NESTED_HV:
637 r = !!(hv_enabled && kvmppc_hv_ops->enable_nested &&
638 !kvmppc_hv_ops->enable_nested(NULL));
639 break;
640 #endif
641 case KVM_CAP_SYNC_MMU:
642 #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
643 r = hv_enabled;
644 #elif defined(KVM_ARCH_WANT_MMU_NOTIFIER)
645 r = 1;
646 #else
647 r = 0;
648 #endif
649 break;
650 #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
651 case KVM_CAP_PPC_HTAB_FD:
652 r = hv_enabled;
653 break;
654 #endif
655 case KVM_CAP_NR_VCPUS:
656 /*
657 * Recommending a number of CPUs is somewhat arbitrary; we
658 * return the number of present CPUs for -HV (since a host
659 * will have secondary threads "offline"), and for other KVM
660 * implementations just count online CPUs.
661 */
662 if (hv_enabled)
663 r = min_t(unsigned int, num_present_cpus(), KVM_MAX_VCPUS);
664 else
665 r = min_t(unsigned int, num_online_cpus(), KVM_MAX_VCPUS);
666 break;
667 case KVM_CAP_MAX_VCPUS:
668 r = KVM_MAX_VCPUS;
669 break;
670 case KVM_CAP_MAX_VCPU_ID:
671 r = KVM_MAX_VCPU_IDS;
672 break;
673 #ifdef CONFIG_PPC_BOOK3S_64
674 case KVM_CAP_PPC_GET_SMMU_INFO:
675 r = 1;
676 break;
677 case KVM_CAP_SPAPR_MULTITCE:
678 r = 1;
679 break;
680 case KVM_CAP_SPAPR_RESIZE_HPT:
681 r = !!hv_enabled;
682 break;
683 #endif
684 #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE
685 case KVM_CAP_PPC_FWNMI:
686 r = hv_enabled;
687 break;
688 #endif
689 #ifdef CONFIG_PPC_TRANSACTIONAL_MEM
690 case KVM_CAP_PPC_HTM:
691 r = !!(cur_cpu_spec->cpu_user_features2 & PPC_FEATURE2_HTM) ||
692 (hv_enabled && cpu_has_feature(CPU_FTR_P9_TM_HV_ASSIST));
693 break;
694 #endif
695 #if defined(CONFIG_KVM_BOOK3S_HV_POSSIBLE)
696 case KVM_CAP_PPC_SECURE_GUEST:
697 r = hv_enabled && kvmppc_hv_ops->enable_svm &&
698 !kvmppc_hv_ops->enable_svm(NULL);
699 break;
700 case KVM_CAP_PPC_DAWR1:
701 r = !!(hv_enabled && kvmppc_hv_ops->enable_dawr1 &&
702 !kvmppc_hv_ops->enable_dawr1(NULL));
703 break;
704 case KVM_CAP_PPC_RPT_INVALIDATE:
705 r = 1;
706 break;
707 #endif
708 case KVM_CAP_PPC_AIL_MODE_3:
709 r = 0;
710 /*
711 * KVM PR, POWER7, and some POWER9s don't support AIL=3 mode.
712 * The POWER9s can support it if the guest runs in hash mode,
713 * but QEMU doesn't necessarily query the capability in time.
714 */
715 if (hv_enabled) {
> 716 if (kvmhv_on_pseries()) {
717 if (pseries_reloc_on_exception())
718 r = 1;
719 } else if (cpu_has_feature(CPU_FTR_ARCH_207S) &&
720 !cpu_has_feature(CPU_FTR_P9_RADIX_PREFETCH_BUG)) {
721 r = 1;
722 }
723 }
724 break;
725 default:
726 r = 0;
727 break;
728 }
729 return r;
730
---
0-DAY CI Kernel Test Service
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
reply other threads:[~2022-03-16 9:30 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202203161748.qlx3DIuD-lkp@intel.com \
--to=lkp@intel.com \
--cc=farosas@linux.ibm.com \
--cc=kbuild-all@lists.01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mpe@ellerman.id.au \
--cc=npiggin@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.