* [linux-next:master 697/13343] arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'?
@ 2024-01-16 13:05 kernel test robot
2024-01-16 17:45 ` Paolo Bonzini
0 siblings, 1 reply; 4+ messages in thread
From: kernel test robot @ 2024-01-16 13:05 UTC (permalink / raw)
To: Chao Peng
Cc: oe-kbuild-all, Linux Memory Management List, Paolo Bonzini,
Fuad Tabba, Sean Christopherson, Xu Yilun, Kai Huang
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 8d04a7e2ee3fd6aabb8096b00c64db0d735bc874
commit: 8569992d64b8f750e34b7858eac5d7daaf0f80fd [697/13343] KVM: Use gfn instead of hva for mmu_notifier_retry
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-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/202401162158.2FqwkuiP-lkp@intel.com/
Note: the linux-next/master HEAD 8d04a7e2ee3fd6aabb8096b00c64db0d735bc874 builds fine.
It may have been fixed somewhere.
All errors (new ones prefixed by >>):
arch/loongarch/kvm/mmu.c: In function 'kvm_map_page':
>> arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'? [-Werror=implicit-function-declaration]
810 | if (mmu_invalidate_retry_hva(kvm, mmu_seq, hva)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~
| mmu_invalidate_retry_gfn
cc1: some warnings being treated as errors
vim +810 arch/loongarch/kvm/mmu.c
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 732
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 733 /*
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 734 * kvm_map_page() - Map a guest physical page.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 735 * @vcpu: vCPU pointer.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 736 * @gpa: Guest physical address of fault.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 737 * @write: Whether the fault was due to a write.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 738 *
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 739 * Handle GPA faults by creating a new GPA mapping (or updating an existing
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 740 * one).
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 741 *
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 742 * This takes care of marking pages young or dirty (idle/dirty page tracking),
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 743 * asking KVM for the corresponding PFN, and creating a mapping in the GPA page
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 744 * tables. Derived mappings (GVA page tables and TLBs) must be handled by the
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 745 * caller.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 746 *
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 747 * Returns: 0 on success
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 748 * -EFAULT if there is no memory region at @gpa or a write was
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 749 * attempted to a read-only memory region. This is usually handled
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 750 * as an MMIO access.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 751 */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 752 static int kvm_map_page(struct kvm_vcpu *vcpu, unsigned long gpa, bool write)
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 753 {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 754 bool writeable;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 755 int srcu_idx, err, retry_no = 0, level;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 756 unsigned long hva, mmu_seq, prot_bits;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 757 kvm_pfn_t pfn;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 758 kvm_pte_t *ptep, new_pte;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 759 gfn_t gfn = gpa >> PAGE_SHIFT;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 760 struct kvm *kvm = vcpu->kvm;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 761 struct kvm_memory_slot *memslot;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 762 struct kvm_mmu_memory_cache *memcache = &vcpu->arch.mmu_page_cache;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 763
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 764 /* Try the fast path to handle old / clean pages */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 765 srcu_idx = srcu_read_lock(&kvm->srcu);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 766 err = kvm_map_page_fast(vcpu, gpa, write);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 767 if (!err)
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 768 goto out;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 769
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 770 memslot = gfn_to_memslot(kvm, gfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 771 hva = gfn_to_hva_memslot_prot(memslot, gfn, &writeable);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 772 if (kvm_is_error_hva(hva) || (write && !writeable)) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 773 err = -EFAULT;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 774 goto out;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 775 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 776
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 777 /* We need a minimum of cached pages ready for page table creation */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 778 err = kvm_mmu_topup_memory_cache(memcache, KVM_MMU_CACHE_MIN_PAGES);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 779 if (err)
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 780 goto out;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 781
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 782 retry:
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 783 /*
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 784 * Used to check for invalidations in progress, of the pfn that is
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 785 * returned by pfn_to_pfn_prot below.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 786 */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 787 mmu_seq = kvm->mmu_invalidate_seq;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 788 /*
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 789 * Ensure the read of mmu_invalidate_seq isn't reordered with PTE reads in
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 790 * gfn_to_pfn_prot() (which calls get_user_pages()), so that we don't
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 791 * risk the page we get a reference to getting unmapped before we have a
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 792 * chance to grab the mmu_lock without mmu_invalidate_retry() noticing.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 793 *
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 794 * This smp_rmb() pairs with the effective smp_wmb() of the combination
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 795 * of the pte_unmap_unlock() after the PTE is zapped, and the
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 796 * spin_lock() in kvm_mmu_invalidate_invalidate_<page|range_end>() before
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 797 * mmu_invalidate_seq is incremented.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 798 */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 799 smp_rmb();
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 800
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 801 /* Slow path - ask KVM core whether we can access this GPA */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 802 pfn = gfn_to_pfn_prot(kvm, gfn, write, &writeable);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 803 if (is_error_noslot_pfn(pfn)) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 804 err = -EFAULT;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 805 goto out;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 806 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 807
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 808 /* Check if an invalidation has taken place since we got pfn */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 809 spin_lock(&kvm->mmu_lock);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 @810 if (mmu_invalidate_retry_hva(kvm, mmu_seq, hva)) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 811 /*
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 812 * This can happen when mappings are changed asynchronously, but
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 813 * also synchronously if a COW is triggered by
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 814 * gfn_to_pfn_prot().
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 815 */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 816 spin_unlock(&kvm->mmu_lock);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 817 kvm_release_pfn_clean(pfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 818 if (retry_no > 100) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 819 retry_no = 0;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 820 schedule();
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 821 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 822 retry_no++;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 823 goto retry;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 824 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 825
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 826 /*
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 827 * For emulated devices such virtio device, actual cache attribute is
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 828 * determined by physical machine.
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 829 * For pass through physical device, it should be uncachable
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 830 */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 831 prot_bits = _PAGE_PRESENT | __READABLE;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 832 if (pfn_valid(pfn))
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 833 prot_bits |= _CACHE_CC;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 834 else
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 835 prot_bits |= _CACHE_SUC;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 836
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 837 if (writeable) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 838 prot_bits |= _PAGE_WRITE;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 839 if (write)
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 840 prot_bits |= __WRITEABLE;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 841 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 842
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 843 /* Disable dirty logging on HugePages */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 844 level = 0;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 845 if (!fault_supports_huge_mapping(memslot, hva, PMD_SIZE, write)) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 846 level = 0;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 847 } else {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 848 level = host_pfn_mapping_level(kvm, gfn, memslot);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 849 if (level == 1) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 850 gfn = gfn & ~(PTRS_PER_PTE - 1);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 851 pfn = pfn & ~(PTRS_PER_PTE - 1);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 852 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 853 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 854
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 855 /* Ensure page tables are allocated */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 856 ptep = kvm_populate_gpa(kvm, memcache, gpa, level);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 857 new_pte = kvm_pfn_pte(pfn, __pgprot(prot_bits));
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 858 if (level == 1) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 859 new_pte = kvm_pte_mkhuge(new_pte);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 860 /*
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 861 * previous pmd entry is invalid_pte_table
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 862 * there is invalid tlb with small page
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 863 * need flush these invalid tlbs for current vcpu
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 864 */
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 865 kvm_make_request(KVM_REQ_TLB_FLUSH, vcpu);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 866 ++kvm->stat.hugepages;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 867 } else if (kvm_pte_huge(*ptep) && write)
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 868 ptep = kvm_split_huge(vcpu, ptep, gfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 869 else
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 870 ++kvm->stat.pages;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 871 kvm_set_pte(ptep, new_pte);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 872 spin_unlock(&kvm->mmu_lock);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 873
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 874 if (prot_bits & _PAGE_DIRTY) {
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 875 mark_page_dirty_in_slot(kvm, memslot, gfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 876 kvm_set_pfn_dirty(pfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 877 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 878
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 879 kvm_set_pfn_accessed(pfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 880 kvm_release_pfn_clean(pfn);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 881 out:
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 882 srcu_read_unlock(&kvm->srcu, srcu_idx);
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 883 return err;
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 884 }
752e2cd7b4fb41 Tianrui Zhao 2023-10-02 885
:::::: The code at line 810 was first introduced by commit
:::::: 752e2cd7b4fb412f3e008493e0195e357bab9773 LoongArch: KVM: Implement kvm mmu operations
:::::: TO: Tianrui Zhao <zhaotianrui@loongson.cn>
:::::: CC: Huacai Chen <chenhuacai@loongson.cn>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-next:master 697/13343] arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'?
2024-01-16 13:05 [linux-next:master 697/13343] arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'? kernel test robot
@ 2024-01-16 17:45 ` Paolo Bonzini
2024-01-16 18:43 ` Sean Christopherson
0 siblings, 1 reply; 4+ messages in thread
From: Paolo Bonzini @ 2024-01-16 17:45 UTC (permalink / raw)
To: kernel test robot
Cc: Chao Peng, oe-kbuild-all, Linux Memory Management List,
Fuad Tabba, Sean Christopherson, Xu Yilun, Kai Huang
On Tue, Jan 16, 2024 at 2:06 PM kernel test robot <lkp@intel.com> wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head: 8d04a7e2ee3fd6aabb8096b00c64db0d735bc874
> commit: 8569992d64b8f750e34b7858eac5d7daaf0f80fd [697/13343] KVM: Use gfn instead of hva for mmu_notifier_retry
> config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/config)
> compiler: loongarch64-linux-gcc (GCC) 13.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/reproduce)
This was fixed-up when merging the KVM tree, but I missed it because
it was not mentioned in the loongarch pull request. I'll send a fixup
as soon as Linus gets back online.
Paolo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-next:master 697/13343] arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'?
2024-01-16 17:45 ` Paolo Bonzini
@ 2024-01-16 18:43 ` Sean Christopherson
[not found] ` <CAAhV-H6UOdm1yEXcO3MvdwbFHq19ib-QW-PjRQ-9pWDU5KFuiQ@mail.gmail.com>
0 siblings, 1 reply; 4+ messages in thread
From: Sean Christopherson @ 2024-01-16 18:43 UTC (permalink / raw)
To: Paolo Bonzini
Cc: kernel test robot, Chao Peng, oe-kbuild-all,
Linux Memory Management List, Fuad Tabba, Xu Yilun, Kai Huang,
Tianrui Zhao, Bibo Mao, Huacai Chen
+KVM LoongArch maintainers
On Tue, Jan 16, 2024, Paolo Bonzini wrote:
> On Tue, Jan 16, 2024 at 2:06 PM kernel test robot <lkp@intel.com> wrote:
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> > head: 8d04a7e2ee3fd6aabb8096b00c64db0d735bc874
> > commit: 8569992d64b8f750e34b7858eac5d7daaf0f80fd [697/13343] KVM: Use gfn instead of hva for mmu_notifier_retry
> > config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/config)
> > compiler: loongarch64-linux-gcc (GCC) 13.2.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/reproduce)
>
> This was fixed-up when merging the KVM tree, but I missed it because
> it was not mentioned in the loongarch pull request. I'll send a fixup
> as soon as Linus gets back online.
And I suspect KVM LooongArch isn't being fed into linux-next, e.g. the tree entry
in MAINTAINERS points at your repo.
Side topic, where can I find a toolchain that can actually build KVM LooongArch?
Clang recognizes the arch, but barfs on a variety of things, and I can't find the
right Debian packages for gcc.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [linux-next:master 697/13343] arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'?
[not found] ` <CAAhV-H6UOdm1yEXcO3MvdwbFHq19ib-QW-PjRQ-9pWDU5KFuiQ@mail.gmail.com>
@ 2024-01-18 9:03 ` Huacai Chen
0 siblings, 0 replies; 4+ messages in thread
From: Huacai Chen @ 2024-01-18 9:03 UTC (permalink / raw)
To: Sean Christopherson
Cc: Paolo Bonzini, kernel test robot, Chao Peng, oe-kbuild-all,
Linux Memory Management List, Fuad Tabba, Xu Yilun, Kai Huang,
Tianrui Zhao, Bibo Mao
Hi, Paolo,
If you take this patch,
https://lore.kernel.org/loongarch/20231220144024.7d9fd46b@canb.auug.org.au/T/#t
Please also take this one,
https://lore.kernel.org/loongarch/20231227012240.6545-1-rdunlap@infradead.org/T/#u
Thanks.
Huacai
On Wed, Jan 17, 2024 at 10:08 AM Huacai Chen <chenhuacai@kernel.org> wrote:
>
> Hi, Sean,
>
> On Wed, Jan 17, 2024 at 2:43 AM Sean Christopherson <seanjc@google.com> wrote:
> >
> > +KVM LoongArch maintainers
> >
> > On Tue, Jan 16, 2024, Paolo Bonzini wrote:
> > > On Tue, Jan 16, 2024 at 2:06 PM kernel test robot <lkp@intel.com> wrote:
> > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> > > > head: 8d04a7e2ee3fd6aabb8096b00c64db0d735bc874
> > > > commit: 8569992d64b8f750e34b7858eac5d7daaf0f80fd [697/13343] KVM: Use gfn instead of hva for mmu_notifier_retry
> > > > config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/config)
> > > > compiler: loongarch64-linux-gcc (GCC) 13.2.0
> > > > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240116/202401162158.2FqwkuiP-lkp@intel.com/reproduce)
> > >
> > > This was fixed-up when merging the KVM tree, but I missed it because
> > > it was not mentioned in the loongarch pull request. I'll send a fixup
> > > as soon as Linus gets back online.
> >
> > And I suspect KVM LooongArch isn't being fed into linux-next, e.g. the tree entry
> > in MAINTAINERS points at your repo.
> There is already a fix patch at
> https://lore.kernel.org/loongarch/20231220144024.7d9fd46b@canb.auug.org.au/T/#t
>
> >
> > Side topic, where can I find a toolchain that can actually build KVM LooongArch?
> > Clang recognizes the arch, but barfs on a variety of things, and I can't find the
> > right Debian packages for gcc.
> Normally we use toolchain from here:
> https://mirrors.edge.kernel.org/pub/tools/crosstool/
>
> Huacai
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-01-18 9:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-16 13:05 [linux-next:master 697/13343] arch/loongarch/kvm/mmu.c:810:13: error: implicit declaration of function 'mmu_invalidate_retry_hva'; did you mean 'mmu_invalidate_retry_gfn'? kernel test robot
2024-01-16 17:45 ` Paolo Bonzini
2024-01-16 18:43 ` Sean Christopherson
[not found] ` <CAAhV-H6UOdm1yEXcO3MvdwbFHq19ib-QW-PjRQ-9pWDU5KFuiQ@mail.gmail.com>
2024-01-18 9:03 ` Huacai Chen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).