[rcu:rcu/test 64/65] arch/x86/kvm/mmu/page_track.c:232:2: error: expected expression

From: kernel test robot
Date: Mon Jul 13 2020 - 10:05:22 EST


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 <lkp@xxxxxxxxx>

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/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip