tree:   https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git 
rcu/test
head:   e4d26431bafa60b212117ec5750833d39ce1b2aa
commit: f89bf7a94ffa9446a341fefc18153e8f9bebffbb [64/65] kvm: mmu: page_track: 
Fix RCU list API usage
config: x86_64-randconfig-a011-20200713 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 
02946de3802d3bc65bc9f2eb9b8d4969b5a7add8)
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
        # install x86_64 cross compiling tool for clang build
        # apt-get install binutils-x86-64-linux-gnu
        git checkout f89bf7a94ffa9446a341fefc18153e8f9bebffbb
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>

All errors (new ones prefixed by >>):

>> arch/x86/kvm/mmu/page_track.c:232:2: error: expected expression
           hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
           ^
   include/linux/rculist.h:727:30: note: expanded from macro 
'hlist_for_each_entry_srcu'
           for (__list_check_srcu(cond),                                   \
                                       ^
   arch/x86/kvm/mmu/page_track.c:258:2: error: expected expression
           hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
           ^
   include/linux/rculist.h:727:30: note: expanded from macro 
'hlist_for_each_entry_srcu'
           for (__list_check_srcu(cond),                                   \
                                       ^
   2 errors generated.

vim +232 arch/x86/kvm/mmu/page_track.c

   211  
   212  /*
   213   * Notify the node that write access is intercepted and write emulation 
is
   214   * finished at this time.
   215   *
   216   * The node should figure out if the written page is the one that node 
is
   217   * interested in by itself.
   218   */
   219  void kvm_page_track_write(struct kvm_vcpu *vcpu, gpa_t gpa, const u8 
*new,
   220                            int bytes)
   221  {
   222          struct kvm_page_track_notifier_head *head;
   223          struct kvm_page_track_notifier_node *n;
   224          int idx;
   225  
   226          head = &vcpu->kvm->arch.track_notifier_head;
   227  
   228          if (hlist_empty(&head->track_notifier_list))
   229                  return;
   230  
   231          idx = srcu_read_lock(&head->track_srcu);
 > 232          hlist_for_each_entry_srcu(n, &head->track_notifier_list, node,
   233                                  srcu_read_lock_held(&head->track_srcu))
   234                  if (n->track_write)
   235                          n->track_write(vcpu, gpa, new, bytes, n);
   236          srcu_read_unlock(&head->track_srcu, idx);
   237  }
   238  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

Reply via email to