Re: [PATCH 5/6] KVM: x86/xen: Maintain valid mapping of Xen shared_inf=

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

 



Hi David,

I love your patch! Yet something to improve:

[auto build test ERROR on kvm/queue]
[also build test ERROR on mst-vhost/linux-next v5.15 next-20211101]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/David-Woodhouse/KVM-x86-xen-Maintain-valid-mapping-of-Xen-shared_inf/20211101-161824
base:   https://git.kernel.org/pub/scm/virt/kvm/kvm.git queue
config: i386-randconfig-a002-20211101 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 264d3b6d4e08401c5b50a85bd76e80b3461d77e6)
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/0day-ci/linux/commit/5faac25097318b72a65ed637b6a46ec92353cadb
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review David-Woodhouse/KVM-x86-xen-Maintain-valid-mapping-of-Xen-shared_inf/20211101-161824
        git checkout 5faac25097318b72a65ed637b6a46ec92353cadb
        # save the attached .config to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

>> arch/x86/kvm/mmu/mmu.c:1582:30: error: use of undeclared identifier 'kvm_xen_enabled'
           if (static_branch_unlikely(&kvm_xen_enabled.key)) {
                                       ^
>> arch/x86/kvm/mmu/mmu.c:1582:30: error: use of undeclared identifier 'kvm_xen_enabled'
>> arch/x86/kvm/mmu/mmu.c:1582:30: error: use of undeclared identifier 'kvm_xen_enabled'
>> arch/x86/kvm/mmu/mmu.c:1582:30: error: use of undeclared identifier 'kvm_xen_enabled'
>> arch/x86/kvm/mmu/mmu.c:1582:6: error: invalid argument type 'void' to unary expression
           if (static_branch_unlikely(&kvm_xen_enabled.key)) {
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/jump_label.h:508:35: note: expanded from macro 'static_branch_unlikely'
   #define static_branch_unlikely(x)       unlikely_notrace(static_key_enabled(&(x)->key))
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler.h:80:30: note: expanded from macro 'unlikely_notrace'
   # define unlikely_notrace(x)    unlikely(x)
                                   ^~~~~~~~~~~
   include/linux/compiler.h:78:40: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                             ^~~~
   5 errors generated.


vim +/kvm_xen_enabled +1582 arch/x86/kvm/mmu/mmu.c

  1577	
  1578	bool kvm_unmap_gfn_range(struct kvm *kvm, struct kvm_gfn_range *range)
  1579	{
  1580		bool flush = false;
  1581	
> 1582		if (static_branch_unlikely(&kvm_xen_enabled.key)) {
  1583			write_lock(&kvm->arch.xen.shinfo_lock);
  1584	
  1585			if (kvm->arch.xen.shared_info &&
  1586			    kvm->arch.xen.shinfo_gfn >= range->start &&
  1587			    kvm->arch.xen.shinfo_cache.gfn < range->end) {
  1588				/*
  1589				 * If kvm_xen_shared_info_init() had *finished* mapping the
  1590				 * page and assigned the pointer for real, then mark the page
  1591				 * dirty now instead of via the eventual cache teardown.
  1592				 */
  1593				if (kvm->arch.xen.shared_info != KVM_UNMAPPED_PAGE) {
  1594					kvm_set_pfn_dirty(kvm->arch.xen.shinfo_cache.pfn);
  1595					kvm->arch.xen.shinfo_cache.dirty = false;
  1596				}
  1597	
  1598				kvm->arch.xen.shared_info = NULL;
  1599			}
  1600	
  1601			write_unlock(&kvm->arch.xen.shinfo_lock);
  1602		}
  1603	
  1604		if (kvm_memslots_have_rmaps(kvm))
  1605			flush = kvm_handle_gfn_range(kvm, range, kvm_unmap_rmapp);
  1606	
  1607		if (is_tdp_mmu_enabled(kvm))
  1608			flush |= kvm_tdp_mmu_unmap_gfn_range(kvm, range, flush);
  1609	
  1610		return flush;
  1611	}
  1612	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[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