Messages in this thread | | | Date | Thu, 26 Dec 2019 09:44:28 +0800 | From | kbuild test robot <> | Subject | Re: [PATCH v1 2/2] virtio-mmio: add features for virtio-mmio specification version 3 |
| |
Hi Zha,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on tip/x86/core] [cannot apply to tip/auto-latest linux/master linus/master v5.5-rc3 next-20191219] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Zha-Bin/support-virtio-mmio-specification-Version-3/20191226-041757 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 004e8dce9c5595697951f7cd0e9f66b35c92265e config: i386-randconfig-c001-20191225 (attached as .config) compiler: gcc-7 (Debian 7.5.0-3) 7.5.0 reproduce: # save the attached .config to linux build tree make ARCH=i386
If you fix the issue, kindly add following tag Reported-by: kbuild test robot <lkp@intel.com>
All error/warnings (new ones prefixed by >>):
In file included from include/linux/list.h:9:0, from include/linux/kobject.h:19, from include/linux/of.h:17, from include/linux/irqdomain.h:35, from include/linux/acpi.h:13, from drivers//virtio/virtio_mmio.c:57: drivers//virtio/virtio_mmio.c: In function 'vm_msi_irq_vector': >> include/linux/msi.h:135:38: error: 'struct device' has no member named 'msi_list' #define dev_to_msi_list(dev) (&(dev)->msi_list) ^ include/linux/kernel.h:993:26: note: in definition of macro 'container_of' void *__mptr = (void *)(ptr); \ ^~~ >> include/linux/list.h:490:2: note: in expansion of macro 'list_entry' list_entry((ptr)->next, type, member) ^~~~~~~~~~ >> include/linux/msi.h:137:2: note: in expansion of macro 'list_first_entry' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~~ >> include/linux/msi.h:137:19: note: in expansion of macro 'dev_to_msi_list' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~ >> drivers//virtio/virtio_mmio.c:336:27: note: in expansion of macro 'first_msi_entry' struct msi_desc *entry = first_msi_entry(dev); ^~~~~~~~~~~~~~~ In file included from include/linux/ioport.h:13:0, from include/linux/acpi.h:12, from drivers//virtio/virtio_mmio.c:57: >> include/linux/msi.h:135:38: error: 'struct device' has no member named 'msi_list' #define dev_to_msi_list(dev) (&(dev)->msi_list) ^ include/linux/compiler.h:330:9: note: in definition of macro '__compiletime_assert' if (!(condition)) \ ^~~~~~~~~ include/linux/compiler.h:350:2: note: in expansion of macro '_compiletime_assert' _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__) ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) ^~~~~~~~~~~~~~~~~~ include/linux/kernel.h:994:2: note: in expansion of macro 'BUILD_BUG_ON_MSG' BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ ^~~~~~~~~~~~~~~~ include/linux/kernel.h:994:20: note: in expansion of macro '__same_type' BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ ^~~~~~~~~~~ >> include/linux/list.h:479:2: note: in expansion of macro 'container_of' container_of(ptr, type, member) ^~~~~~~~~~~~ >> include/linux/list.h:490:2: note: in expansion of macro 'list_entry' list_entry((ptr)->next, type, member) ^~~~~~~~~~ >> include/linux/msi.h:137:2: note: in expansion of macro 'list_first_entry' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~~ >> include/linux/msi.h:137:19: note: in expansion of macro 'dev_to_msi_list' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~ >> drivers//virtio/virtio_mmio.c:336:27: note: in expansion of macro 'first_msi_entry' struct msi_desc *entry = first_msi_entry(dev); ^~~~~~~~~~~~~~~ >> include/linux/msi.h:135:38: error: 'struct device' has no member named 'msi_list' #define dev_to_msi_list(dev) (&(dev)->msi_list) ^ include/linux/compiler.h:330:9: note: in definition of macro '__compiletime_assert' if (!(condition)) \ ^~~~~~~~~ include/linux/compiler.h:350:2: note: in expansion of macro '_compiletime_assert' _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__) ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) ^~~~~~~~~~~~~~~~~~ include/linux/kernel.h:994:2: note: in expansion of macro 'BUILD_BUG_ON_MSG' BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ ^~~~~~~~~~~~~~~~ include/linux/kernel.h:995:6: note: in expansion of macro '__same_type' !__same_type(*(ptr), void), \ ^~~~~~~~~~~ >> include/linux/list.h:479:2: note: in expansion of macro 'container_of' container_of(ptr, type, member) ^~~~~~~~~~~~ >> include/linux/list.h:490:2: note: in expansion of macro 'list_entry' list_entry((ptr)->next, type, member) ^~~~~~~~~~ >> include/linux/msi.h:137:2: note: in expansion of macro 'list_first_entry' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~~ >> include/linux/msi.h:137:19: note: in expansion of macro 'dev_to_msi_list' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~ >> drivers//virtio/virtio_mmio.c:336:27: note: in expansion of macro 'first_msi_entry' struct msi_desc *entry = first_msi_entry(dev); ^~~~~~~~~~~~~~~ drivers//virtio/virtio_mmio.c: In function 'vm_request_msi_vectors': >> drivers//virtio/virtio_mmio.c:652:17: error: 'struct device' has no member named 'msi_domain'; did you mean 'pm_domain'? if (!vdev->dev.msi_domain) ^~~~~~~~~~ pm_domain drivers//virtio/virtio_mmio.c:653:13: error: 'struct device' has no member named 'msi_domain'; did you mean 'pm_domain'? vdev->dev.msi_domain = platform_msi_get_def_irq_domain(); ^~~~~~~~~~ pm_domain >> drivers//virtio/virtio_mmio.c:654:8: error: implicit declaration of function 'platform_msi_domain_alloc_irqs'; did you mean 'irq_domain_alloc_irqs'? [-Werror=implicit-function-declaration] err = platform_msi_domain_alloc_irqs(&vdev->dev, nirqs, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ irq_domain_alloc_irqs drivers//virtio/virtio_mmio.c: In function 'vm_free_msi_irqs': >> drivers//virtio/virtio_mmio.c:683:3: error: implicit declaration of function 'platform_msi_domain_free_irqs'; did you mean 'irq_domain_free_irqs'? [-Werror=implicit-function-declaration] platform_msi_domain_free_irqs(&vdev->dev); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ irq_domain_free_irqs cc1: some warnings being treated as errors -- In file included from include/linux/list.h:9:0, from include/linux/kobject.h:19, from include/linux/of.h:17, from include/linux/irqdomain.h:35, from include/linux/acpi.h:13, from drivers/virtio/virtio_mmio.c:57: drivers/virtio/virtio_mmio.c: In function 'vm_msi_irq_vector': >> include/linux/msi.h:135:38: error: 'struct device' has no member named 'msi_list' #define dev_to_msi_list(dev) (&(dev)->msi_list) ^ include/linux/kernel.h:993:26: note: in definition of macro 'container_of' void *__mptr = (void *)(ptr); \ ^~~ >> include/linux/list.h:490:2: note: in expansion of macro 'list_entry' list_entry((ptr)->next, type, member) ^~~~~~~~~~ >> include/linux/msi.h:137:2: note: in expansion of macro 'list_first_entry' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~~ >> include/linux/msi.h:137:19: note: in expansion of macro 'dev_to_msi_list' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~ drivers/virtio/virtio_mmio.c:336:27: note: in expansion of macro 'first_msi_entry' struct msi_desc *entry = first_msi_entry(dev); ^~~~~~~~~~~~~~~ In file included from include/linux/ioport.h:13:0, from include/linux/acpi.h:12, from drivers/virtio/virtio_mmio.c:57: >> include/linux/msi.h:135:38: error: 'struct device' has no member named 'msi_list' #define dev_to_msi_list(dev) (&(dev)->msi_list) ^ include/linux/compiler.h:330:9: note: in definition of macro '__compiletime_assert' if (!(condition)) \ ^~~~~~~~~ include/linux/compiler.h:350:2: note: in expansion of macro '_compiletime_assert' _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__) ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) ^~~~~~~~~~~~~~~~~~ include/linux/kernel.h:994:2: note: in expansion of macro 'BUILD_BUG_ON_MSG' BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ ^~~~~~~~~~~~~~~~ include/linux/kernel.h:994:20: note: in expansion of macro '__same_type' BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ ^~~~~~~~~~~ >> include/linux/list.h:479:2: note: in expansion of macro 'container_of' container_of(ptr, type, member) ^~~~~~~~~~~~ >> include/linux/list.h:490:2: note: in expansion of macro 'list_entry' list_entry((ptr)->next, type, member) ^~~~~~~~~~ >> include/linux/msi.h:137:2: note: in expansion of macro 'list_first_entry' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~~ >> include/linux/msi.h:137:19: note: in expansion of macro 'dev_to_msi_list' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~ drivers/virtio/virtio_mmio.c:336:27: note: in expansion of macro 'first_msi_entry' struct msi_desc *entry = first_msi_entry(dev); ^~~~~~~~~~~~~~~ >> include/linux/msi.h:135:38: error: 'struct device' has no member named 'msi_list' #define dev_to_msi_list(dev) (&(dev)->msi_list) ^ include/linux/compiler.h:330:9: note: in definition of macro '__compiletime_assert' if (!(condition)) \ ^~~~~~~~~ include/linux/compiler.h:350:2: note: in expansion of macro '_compiletime_assert' _compiletime_assert(condition, msg, __compiletime_assert_, __LINE__) ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) ^~~~~~~~~~~~~~~~~~ include/linux/kernel.h:994:2: note: in expansion of macro 'BUILD_BUG_ON_MSG' BUILD_BUG_ON_MSG(!__same_type(*(ptr), ((type *)0)->member) && \ ^~~~~~~~~~~~~~~~ include/linux/kernel.h:995:6: note: in expansion of macro '__same_type' !__same_type(*(ptr), void), \ ^~~~~~~~~~~ >> include/linux/list.h:479:2: note: in expansion of macro 'container_of' container_of(ptr, type, member) ^~~~~~~~~~~~ >> include/linux/list.h:490:2: note: in expansion of macro 'list_entry' list_entry((ptr)->next, type, member) ^~~~~~~~~~ >> include/linux/msi.h:137:2: note: in expansion of macro 'list_first_entry' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~~ >> include/linux/msi.h:137:19: note: in expansion of macro 'dev_to_msi_list' list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) ^~~~~~~~~~~~~~~ drivers/virtio/virtio_mmio.c:336:27: note: in expansion of macro 'first_msi_entry' struct msi_desc *entry = first_msi_entry(dev); ^~~~~~~~~~~~~~~ drivers/virtio/virtio_mmio.c: In function 'vm_request_msi_vectors': drivers/virtio/virtio_mmio.c:652:17: error: 'struct device' has no member named 'msi_domain'; did you mean 'pm_domain'? if (!vdev->dev.msi_domain) ^~~~~~~~~~ pm_domain drivers/virtio/virtio_mmio.c:653:13: error: 'struct device' has no member named 'msi_domain'; did you mean 'pm_domain'? vdev->dev.msi_domain = platform_msi_get_def_irq_domain(); ^~~~~~~~~~ pm_domain drivers/virtio/virtio_mmio.c:654:8: error: implicit declaration of function 'platform_msi_domain_alloc_irqs'; did you mean 'irq_domain_alloc_irqs'? [-Werror=implicit-function-declaration] err = platform_msi_domain_alloc_irqs(&vdev->dev, nirqs, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ irq_domain_alloc_irqs drivers/virtio/virtio_mmio.c: In function 'vm_free_msi_irqs': drivers/virtio/virtio_mmio.c:683:3: error: implicit declaration of function 'platform_msi_domain_free_irqs'; did you mean 'irq_domain_free_irqs'? [-Werror=implicit-function-declaration] platform_msi_domain_free_irqs(&vdev->dev); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ irq_domain_free_irqs cc1: some warnings being treated as errors
vim +135 include/linux/msi.h
3b7d1921f4cdd6 Eric W. Biederman 2006-10-04 132 d31eb342409b24 Jiang Liu 2014-11-15 133 /* Helpers to hide struct msi_desc implementation details */ 25a98bd4ff9355 Jiang Liu 2015-07-09 134 #define msi_desc_to_dev(desc) ((desc)->dev) 4a7cc831670550 Jiang Liu 2015-07-09 @135 #define dev_to_msi_list(dev) (&(dev)->msi_list) d31eb342409b24 Jiang Liu 2014-11-15 136 #define first_msi_entry(dev) \ d31eb342409b24 Jiang Liu 2014-11-15 @137 list_first_entry(dev_to_msi_list((dev)), struct msi_desc, list) d31eb342409b24 Jiang Liu 2014-11-15 138 #define for_each_msi_entry(desc, dev) \ d31eb342409b24 Jiang Liu 2014-11-15 139 list_for_each_entry((desc), dev_to_msi_list((dev)), list) 81b1e6e6a8590a Miquel Raynal 2018-10-11 140 #define for_each_msi_entry_safe(desc, tmp, dev) \ 81b1e6e6a8590a Miquel Raynal 2018-10-11 141 list_for_each_entry_safe((desc), (tmp), dev_to_msi_list((dev)), list) d31eb342409b24 Jiang Liu 2014-11-15 142
:::::: The code at line 135 was first introduced by commit :::::: 4a7cc831670550e6b48ef5760e7213f89935ff0d genirq/MSI: Move msi_list from struct pci_dev to struct device
:::::: TO: Jiang Liu <jiang.liu@linux.intel.com> :::::: CC: Thomas Gleixner <tglx@linutronix.de>
--- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Intel Corporation [unhandled content-type:application/gzip] | |