Re: [PATCH 04/10] KVM: Introduce a new guest mapping API

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2018-02-23 at 09:37 +0800, kbuild test robot wrote:
> Hi KarimAllah,
> 
> Thank you for the patch! Yet something to improve:
> 
> [auto build test ERROR on tip/auto-latest]
> [also build test ERROR on v4.16-rc2 next-20180222]
> [cannot apply to kvm/linux-next]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
> 
> url:    https://github.com/0day-ci/linux/commits/KarimAllah-Ahmed/KVM-X86-Handle-guest-memory-that-does-not-have-a-struct-page/20180223-064826
> config: mips-malta_kvm_defconfig (attached as .config)
> compiler: mipsel-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
> reproduce:
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         # save the attached .config to linux build tree
>         make.cross ARCH=mips 
> 
> All error/warnings (new ones prefixed by >>):
> 
>    In file included from include/linux/linkage.h:7:0,
>                     from include/linux/preempt.h:10,
>                     from include/linux/hardirq.h:5,
>                     from include/linux/kvm_host.h:10,
>                     from arch/mips/kvm/../../../virt/kvm/kvm_main.c:21:
> > 
> > > 
> > > arch/mips/kvm/../../../virt/kvm/kvm_main.c:1669:19: error: 'kvm_vcpu_gfn_to_kaddr' undeclared here (not in a function); did you mean 'kvm_vcpu_gfn_to_page'?
>     EXPORT_SYMBOL_GPL(kvm_vcpu_gfn_to_kaddr);
>                       ^
>    include/linux/export.h:65:16: note: in definition of macro '___EXPORT_SYMBOL'
>      extern typeof(sym) sym;      \
>                    ^~~
> > 
> > > 
> > > arch/mips/kvm/../../../virt/kvm/kvm_main.c:1669:1: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
>     EXPORT_SYMBOL_GPL(kvm_vcpu_gfn_to_kaddr);
>     ^~~~~~~~~~~~~~~~~

Ooops! I will make sure I build KVM as a module as well before posting 
v2.

I will also drop "kvm_vcpu_map_valid" since it is no longer used.

> 
> vim +1669 arch/mips/kvm/../../../virt/kvm/kvm_main.c
> 
>   1634	
>   1635	bool kvm_vcpu_map(struct kvm_vcpu *vcpu, gfn_t gfn, struct kvm_host_map *map)
>   1636	{
>   1637		kvm_pfn_t pfn;
>   1638		void *kaddr = NULL;
>   1639		struct page *page = NULL;
>   1640	
>   1641		if (map->kaddr && map->gfn == gfn)
>   1642			/* If the mapping is valid and guest memory is already mapped */
>   1643			return true;
>   1644		else if (map->kaddr)
>   1645			/* If the mapping is valid but trying to map a different guest pfn */
>   1646			kvm_vcpu_unmap(map);
>   1647	
>   1648		pfn = kvm_vcpu_gfn_to_pfn(vcpu, gfn);
>   1649		if (is_error_pfn(pfn))
>   1650			return false;
>   1651	
>   1652		if (pfn_valid(pfn)) {
>   1653			page = pfn_to_page(pfn);
>   1654			kaddr = vmap(&page, 1, VM_MAP, PAGE_KERNEL);
>   1655		} else {
>   1656			kaddr = memremap(pfn_to_hpa(pfn), PAGE_SIZE, MEMREMAP_WB);
>   1657		}
>   1658	
>   1659		if (!kaddr)
>   1660			return false;
>   1661	
>   1662		map->page = page;
>   1663		map->kaddr = kaddr;
>   1664		map->pfn = pfn;
>   1665		map->gfn = gfn;
>   1666	
>   1667		return true;
>   1668	}
> > 
> > 1669	EXPORT_SYMBOL_GPL(kvm_vcpu_gfn_to_kaddr);
>   1670	
> 
> ---
> 0-DAY kernel test infrastructure                Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
Amazon Development Center Germany GmbH
Berlin - Dresden - Aachen
main office: Krausenstr. 38, 10117 Berlin
Geschaeftsfuehrer: Dr. Ralf Herbrich, Christian Schlaeger
Ust-ID: DE289237879
Eingetragen am Amtsgericht Charlottenburg HRB 149173 B




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux