arm64/for-kernelci build: 2 builds: 1 failed, 1 passed, 2 errors, 1 warning (arm64-fixes)

Robin Murphy robin.murphy at arm.com
Tue Jul 20 07:13:38 PDT 2021


On 2021-07-20 13:53, Will Deacon wrote:
> On Mon, Jul 19, 2021 at 08:05:20AM -0700, kernelci.org bot wrote:
>> arm64/for-kernelci build: 2 builds: 1 failed, 1 passed, 2 errors, 1 warning (arm64-fixes)
>>
>> Full Build Summary: https://kernelci.org/build/arm64/branch/for-kernelci/kernel/arm64-fixes/
>>
>> Tree: arm64
>> Branch: for-kernelci
>> Git Describe: arm64-fixes
>> Git Commit: e6f85cbeb23bd74b8966cf1f15bf7d01399ff625
>> Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
>> Built: 1 unique architecture
>>
>> Build Failure Detected:
>>
>> arm64:
>>      allmodconfig: (gcc-8) FAIL
>>
>> Errors and Warnings Detected:
>>
>> arm64:
>>      allmodconfig (gcc-8): 2 errors, 1 warning
>>
>> Errors summary:
>>
>>      1    ./../include/linux/compiler_types.h:328:38: error: call to ‘__compiletime_assert_1864’ declared with attribute error: FIELD_PREP: value too large for the field
>>      1    ./../include/linux/compiler_types.h:328:38: error: call to ‘__compiletime_assert_1857’ declared with attribute error: FIELD_PREP: value too large for the field
> 
> Hmm, is there a way to find out more information about which assertion is
> causing the problem here? I'm not able to reproduce this locally, the branch
> in question has now been merged upstream and I can't see anything in there
> which would trigger this.

If you dig down into the raw logs it eventually appears to be the HNS
inifiniband driver:

In file included from ../include/linux/byteorder/little_endian.h:5,
                  from ../arch/arm64/include/uapi/asm/byteorder.h:23,
                  from ../include/asm-generic/bitops/le.h:7,
                  from ../arch/arm64/include/asm/bitops.h:29,
                  from ../include/linux/bitops.h:32,
                  from ../include/linux/of.h:15,
                  from ../include/linux/irqdomain.h:35,
                  from ../include/linux/acpi.h:13,
                  from ../drivers/infiniband/hw/hns/hns_roce_hw_v2.c:33:
In function ‘modify_qp_init_to_rtr’,
     inlined from ‘hns_roce_v2_set_abs_fields’ at ../drivers/infiniband/hw/hns/hns_roce_hw_v2.c:4798:9,
     inlined from ‘hns_roce_v2_modify_qp’ at ../drivers/infiniband/hw/hns/hns_roce_hw_v2.c:5001:8:
./../include/linux/compiler_types.h:328:38: error: call to ‘__compiletime_assert_1857’ declared with attribute error: FIELD_PREP: value too large for the field
   _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
                                       ^
../include/uapi/linux/byteorder/little_endian.h:33:51: note: in definition of macro ‘__cpu_to_le32’
  #define __cpu_to_le32(x) ((__force __le32)(__u32)(x))
                                                    ^
./../include/linux/compiler_types.h:316:2: note: in expansion of macro ‘__compiletime_assert’
   __compiletime_assert(condition, msg, prefix, suffix)
   ^~~~~~~~~~~~~~~~~~~~
./../include/linux/compiler_types.h:328:2: note: in expansion of macro ‘_compiletime_assert’
   _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
   ^~~~~~~~~~~~~~~~~~~
../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/bitfield.h:49:3: note: in expansion of macro ‘BUILD_BUG_ON_MSG’
    BUILD_BUG_ON_MSG(__builtin_constant_p(_val) ?  \
    ^~~~~~~~~~~~~~~~
../include/linux/bitfield.h:94:3: note: in expansion of macro ‘__BF_FIELD_CHECK’
    __BF_FIELD_CHECK(_mask, 0ULL, _val, "FIELD_PREP: "); \
    ^~~~~~~~~~~~~~~~
../drivers/infiniband/hw/hns/hns_roce_common.h:91:52: note: in expansion of macro ‘FIELD_PREP’
    *((__le32 *)ptr + (field_h) / 32) |= cpu_to_le32(FIELD_PREP(   \
                                                     ^~~~~~~~~~
../drivers/infiniband/hw/hns/hns_roce_common.h:95:39: note: in expansion of macro ‘_hr_reg_write’
  #define hr_reg_write(ptr, field, val) _hr_reg_write(ptr, field, val)
                                        ^~~~~~~~~~~~~
../drivers/infiniband/hw/hns/hns_roce_hw_v2.c:4422:2: note: in expansion of macro ‘hr_reg_write’
   hr_reg_write(context, QPC_LP_PKTN_INI, lp_pktn_ini);
   ^~~~~~~~~~~~


I don't see that it has much to do with the arm64 tree though :/

Robin.



More information about the linux-arm-kernel mailing list