Re: [PATCH 1/2] pci: Convert to use built-in RCU list checking

From: kbuild test robot
Date: Wed Sep 04 2019 - 00:07:43 EST


Hi "Joel,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[cannot apply to v5.3-rc7 next-20190903]
[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/Joel-Fernandes-Google/pci-Convert-to-use-built-in-RCU-list-checking/20190901-211013
config: x86_64-rhel-7.6 (attached as .config)
compiler: gcc-7 (Debian 7.4.0-11) 7.4.0
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64

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

All error/warnings (new ones prefixed by >>):

drivers/pci/controller/vmd.c: In function 'vmd_irq':
>> drivers/pci/controller/vmd.c:722:37: error: macro "list_for_each_entry_rcu" passed 4 arguments, but takes just 3
srcu_read_lock_held(&irqs->srcu))
^
>> drivers/pci/controller/vmd.c:721:2: error: unknown type name 'list_for_each_entry_rcu'
list_for_each_entry_rcu(vmdirq, &irqs->irq_list, node,
^~~~~~~~~~~~~~~~~~~~~~~
>> drivers/pci/controller/vmd.c:723:28: error: expected ')' before '->' token
generic_handle_irq(vmdirq->virq);
^~
>> drivers/pci/controller/vmd.c:721:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
list_for_each_entry_rcu(vmdirq, &irqs->irq_list, node,
^~~~~~~~~~~~~~~~~~~~~~~
drivers/pci/controller/vmd.c:717:18: warning: unused variable 'vmdirq' [-Wunused-variable]
struct vmd_irq *vmdirq;
^~~~~~

vim +/list_for_each_entry_rcu +722 drivers/pci/controller/vmd.c

713
714 static irqreturn_t vmd_irq(int irq, void *data)
715 {
716 struct vmd_irq_list *irqs = data;
717 struct vmd_irq *vmdirq;
718 int idx;
719
720 idx = srcu_read_lock(&irqs->srcu);
> 721 list_for_each_entry_rcu(vmdirq, &irqs->irq_list, node,
> 722 srcu_read_lock_held(&irqs->srcu))
> 723 generic_handle_irq(vmdirq->virq);
724 srcu_read_unlock(&irqs->srcu, idx);
725
726 return IRQ_HANDLED;
727 }
728

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip