Re: [PATCH v6 4/7] KVM: arm64: Implement vGICv3 distributor and redistributor access from userspace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Pavel,

[auto build test ERROR on kvm/linux-next]
[also build test ERROR on v4.4-rc2 next-20151124]

url:    https://github.com/0day-ci/linux/commits/Pavel-Fedin/KVM-arm64-Implement-API-for-vGICv3-live-migration/20151124-171812
base:   https://git.kernel.org/pub/scm/virt/kvm/kvm.git linux-next
config: arm64-allyesconfig (attached as .config)
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=arm64 

Note: the linux-review/Pavel-Fedin/KVM-arm64-Implement-API-for-vGICv3-live-migration/20151124-171812 HEAD 03ad7de97d6a551c4a70e7723383007f54bf56a3 builds fine.
      It only hurts bisectibility.

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

   arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c: In function 'vgic_v3_has_attr':
>> arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1114:24: error: storage size of 'params' isn't known
     struct sys_reg_params params;
                           ^
>> arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1134:7: error: 'KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS' undeclared (first use in this function)
     case KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS:
          ^
   arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1134:7: note: each undeclared identifier is reported only once for each function it appears in
>> arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1135:25: error: 'KVM_DEV_ARM_VGIC_SYSREG_MASK' undeclared (first use in this function)
      regid = (attr->attr & KVM_DEV_ARM_VGIC_SYSREG_MASK) |
                            ^
>> arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1137:3: error: implicit declaration of function 'find_reg_by_id' [-Werror=implicit-function-declaration]
      return find_reg_by_id(regid, &params, gic_v3_icc_reg_descs,
      ^
>> arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1137:41: error: 'gic_v3_icc_reg_descs' undeclared (first use in this function)
      return find_reg_by_id(regid, &params, gic_v3_icc_reg_descs,
                                            ^
   In file included from include/linux/thread_info.h:11:0,
                    from include/asm-generic/current.h:4,
                    from arch/arm64/include/generated/asm/current.h:1,
                    from include/linux/mutex.h:13,
                    from include/linux/kernfs.h:13,
                    from include/linux/sysfs.h:15,
                    from include/linux/kobject.h:21,
                    from include/linux/device.h:17,
                    from include/linux/node.h:17,
                    from include/linux/cpu.h:16,
                    from arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:38:
>> include/linux/bug.h:33:45: error: bit-field '<anonymous>' width not an integer constant
    #define BUILD_BUG_ON_ZERO(e) (sizeof(struct { int:-!!(e); }))
                                                ^
   include/linux/compiler-gcc.h:64:28: note: in expansion of macro 'BUILD_BUG_ON_ZERO'
    #define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0]))
                               ^
   include/linux/kernel.h:54:59: note: in expansion of macro '__must_be_array'
    #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                                              ^
>> arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1138:11: note: in expansion of macro 'ARRAY_SIZE'
              ARRAY_SIZE(gic_v3_icc_reg_descs)) ?
              ^
   arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c:1114:24: warning: unused variable 'params' [-Wunused-variable]
     struct sys_reg_params params;
                           ^
   cc1: some warnings being treated as errors

vim +/KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS +1134 arch/arm64/kvm/../../../virt/kvm/arm/vgic-v3-emul.c

  1108	}
  1109	
  1110	static int vgic_v3_has_attr(struct kvm_device *dev,
  1111				    struct kvm_device_attr *attr)
  1112	{
  1113		phys_addr_t offset;
> 1114		struct sys_reg_params params;
  1115		u64 regid;
  1116	
  1117		switch (attr->group) {
  1118		case KVM_DEV_ARM_VGIC_GRP_ADDR:
  1119			switch (attr->attr) {
  1120			case KVM_VGIC_V2_ADDR_TYPE_DIST:
  1121			case KVM_VGIC_V2_ADDR_TYPE_CPU:
  1122				return -ENXIO;
  1123			case KVM_VGIC_V3_ADDR_TYPE_DIST:
  1124			case KVM_VGIC_V3_ADDR_TYPE_REDIST:
  1125				return 0;
  1126			}
  1127			break;
  1128		case KVM_DEV_ARM_VGIC_GRP_DIST_REGS:
  1129			offset = attr->attr & KVM_DEV_ARM_VGIC_OFFSET_MASK;
  1130			return vgic_has_attr_regs(vgic_v3_dist_ranges, offset);
  1131		case KVM_DEV_ARM_VGIC_GRP_REDIST_REGS:
  1132			offset = attr->attr & KVM_DEV_ARM_VGIC_OFFSET_MASK;
  1133			return vgic_has_attr_regs(vgic_redist_ranges, offset);
> 1134		case KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS:
> 1135			regid = (attr->attr & KVM_DEV_ARM_VGIC_SYSREG_MASK) |
  1136				KVM_REG_SIZE_U64;
> 1137			return find_reg_by_id(regid, &params, gic_v3_icc_reg_descs,
> 1138					      ARRAY_SIZE(gic_v3_icc_reg_descs)) ?
  1139				0 : -ENXIO;
  1140		case KVM_DEV_ARM_VGIC_GRP_NR_IRQS:
  1141			return 0;

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

Attachment: .config.gz
Description: Binary data


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux