Re: [PATCH 1/2] iommu/vt-d: Fix crash when accessing VT-d sysfs entries

From: kbuild test robot
Date: Tue Feb 28 2017 - 19:39:23 EST


Hi Joerg,

[auto build test ERROR on iommu/next]
[also build test ERROR on v4.10 next-20170228]
[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/Joerg-Roedel/iommu-vt-d-Fix-crash-when-accessing-VT-d-sysfs-entries/20170301-074355
base: https://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git next
config: i386-defconfig (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=i386

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

In file included from include/linux/list.h:8:0,
from include/linux/resource_ext.h:17,
from include/linux/acpi.h:26,
from drivers/gpu/drm/i915/i915_drv.c:30:
include/linux/intel-iommu.h: In function 'dev_to_intel_iommu':
>> include/linux/intel-iommu.h:457:52: error: 'struct iommu_device' has no member named 'dev'
return container_of(dev, struct intel_iommu, iommu.dev);
^
include/linux/kernel.h:850:29: note: in definition of macro 'container_of'
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^~~~~~
include/linux/kernel.h:850:48: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
>> include/linux/intel-iommu.h:457:9: note: in expansion of macro 'container_of'
return container_of(dev, struct intel_iommu, iommu.dev);
^~~~~~~~~~~~
In file included from include/linux/compiler.h:58:0,
from include/linux/ioport.h:12,
from include/linux/acpi.h:25,
from drivers/gpu/drm/i915/i915_drv.c:30:
>> include/linux/compiler-gcc.h:159:2: error: 'struct iommu_device' has no member named 'dev'
__builtin_offsetof(a, b)
^
include/linux/stddef.h:16:32: note: in expansion of macro '__compiler_offsetof'
#define offsetof(TYPE, MEMBER) __compiler_offsetof(TYPE, MEMBER)
^~~~~~~~~~~~~~~~~~~
include/linux/kernel.h:851:29: note: in expansion of macro 'offsetof'
(type *)( (char *)__mptr - offsetof(type,member) );})
^~~~~~~~
>> include/linux/intel-iommu.h:457:9: note: in expansion of macro 'container_of'
return container_of(dev, struct intel_iommu, iommu.dev);
^~~~~~~~~~~~
cc1: some warnings being treated as errors

vim +457 include/linux/intel-iommu.h

451 if (!ecap_coherent(iommu->ecap))
452 clflush_cache_range(addr, size);
453 }
454
455 static inline struct intel_iommu *dev_to_intel_iommu(struct device *dev)
456 {
> 457 return container_of(dev, struct intel_iommu, iommu.dev);
458 }
459
460 extern struct dmar_drhd_unit * dmar_find_matched_drhd_unit(struct pci_dev *dev);

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

Attachment: .config.gz
Description: application/gzip