lkml.org 
[lkml]   [2018]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 04/10] KVM: Introduce a new guest mapping API
    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: x86_64-randconfig-x012-201807 (attached as .config)
    compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
    reproduce:
    # save the attached .config to linux build tree
    make ARCH=x86_64

    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/x86/kvm/../../../virt/kvm/kvm_main.c:21:
    >> arch/x86/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/x86/kvm/../../../virt/kvm/kvm_main.c:1669:1: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
    EXPORT_SYMBOL_GPL(kvm_vcpu_gfn_to_kaddr);
    ^~~~~~~~~~~~~~~~~

    vim +1669 arch/x86/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
    [unhandled content-type:application/gzip]
    \
     
     \ /
      Last update: 2018-02-23 02:29    [W:4.210 / U:0.064 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site