* next/master build: 235 builds: 42 failed, 193 passed, 237 errors, 62 warnings (next-20220105)
From: kernelci.org bot @ 2022-01-05 10:43 UTC (permalink / raw)
To: linux-next
next/master build: 235 builds: 42 failed, 193 passed, 237 errors, 62 warnings (next-20220105)
Full Build Summary: https://kernelci.org/build/next/branch/master/kernel/next-20220105/
Tree: next
Branch: master
Git Describe: next-20220105
Git Commit: 7a769a3922d81cfc74ab4d90a9cc69485f260976
Git URL: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Built: 7 unique architectures
Build Failures Detected:
arc:
tinyconfig: (gcc-10) FAIL
arm64:
allmodconfig: (clang-14) FAIL
allmodconfig: (gcc-10) FAIL
tinyconfig: (gcc-10) FAIL
arm:
allmodconfig: (clang-14) FAIL
allnoconfig: (clang-14) FAIL
allmodconfig: (gcc-10) FAIL
allnoconfig: (gcc-10) FAIL
am200epdkit_defconfig: (gcc-10) FAIL
lpc18xx_defconfig: (gcc-10) FAIL
mps2_defconfig: (gcc-10) FAIL
multi_v7_defconfig+CONFIG_SMP=n: (gcc-10) FAIL
omap1_defconfig: (gcc-10) FAIL
pleb_defconfig: (gcc-10) FAIL
qcom_defconfig: (gcc-10) FAIL
rpc_defconfig: (gcc-10) FAIL
stm32_defconfig: (gcc-10) FAIL
tct_hammer_defconfig: (gcc-10) FAIL
tinyconfig: (gcc-10) FAIL
vf610m4_defconfig: (gcc-10) FAIL
viper_defconfig: (gcc-10) FAIL
xcep_defconfig: (gcc-10) FAIL
i386:
allmodconfig: (clang-14) FAIL
tinyconfig: (gcc-10) FAIL
mips:
bcm63xx_defconfig: (gcc-10) FAIL
bigsur_defconfig: (gcc-10) FAIL
decstation_64_defconfig: (gcc-10) FAIL
decstation_defconfig: (gcc-10) FAIL
decstation_r4k_defconfig: (gcc-10) FAIL
ip27_defconfig: (gcc-10) FAIL
ip28_defconfig: (gcc-10) FAIL
sb1250_swarm_defconfig: (gcc-10) FAIL
tinyconfig: (gcc-10) FAIL
riscv:
allnoconfig: (clang-14) FAIL
allnoconfig: (gcc-10) FAIL
nommu_k210_defconfig: (gcc-10) FAIL
nommu_k210_sdcard_defconfig: (gcc-10) FAIL
nommu_virt_defconfig: (gcc-10) FAIL
tinyconfig: (gcc-10) FAIL
x86_64:
allmodconfig: (clang-14) FAIL
allmodconfig: (gcc-10) FAIL
tinyconfig: (gcc-10) FAIL
Errors and Warnings Detected:
arc:
haps_hs_smp_defconfig+debug (gcc-10): 1 warning
haps_hs_smp_defconfig+kselftest (gcc-10): 1 warning
tinyconfig (gcc-10): 1 error, 1 warning
arm64:
allmodconfig (clang-14): 1 error
allmodconfig (gcc-10): 1 error, 1 warning
defconfig (clang-14): 3 warnings
defconfig+CONFIG_ARM64_64K_PAGES=y (clang-14): 3 warnings
tinyconfig (gcc-10): 1 error
arm:
allmodconfig (clang-14): 5 errors, 16 warnings
allmodconfig (gcc-10): 179 errors, 2 warnings
allnoconfig (clang-14): 1 error, 1 warning
allnoconfig (gcc-10): 1 error
am200epdkit_defconfig (gcc-10): 1 error
aspeed_g5_defconfig (clang-14): 10 warnings
at91_dt_defconfig (gcc-10): 1 warning
lpc18xx_defconfig (gcc-10): 1 error
mps2_defconfig (gcc-10): 1 error
multi_v5_defconfig (gcc-10): 1 warning
multi_v7_defconfig (clang-14): 10 warnings
multi_v7_defconfig+CONFIG_EFI=y+CONFIG_ARM_LPAE=y (gcc-10): 2 warnings
multi_v7_defconfig+CONFIG_SMP=n (gcc-10): 2 errors
omap1_defconfig (gcc-10): 1 error
pleb_defconfig (gcc-10): 1 error
qcom_defconfig (gcc-10): 1 error
rpc_defconfig (gcc-10): 2 errors
stm32_defconfig (gcc-10): 1 error
tct_hammer_defconfig (gcc-10): 1 error
tinyconfig (gcc-10): 1 error
vf610m4_defconfig (gcc-10): 1 error
viper_defconfig (gcc-10): 1 error
xcep_defconfig (gcc-10): 1 error
i386:
allmodconfig (clang-14): 9 errors, 1 warning
tinyconfig (gcc-10): 1 error
mips:
32r2el_defconfig (gcc-10): 1 warning
32r2el_defconfig+debug (gcc-10): 1 warning
32r2el_defconfig+kselftest (gcc-10): 1 warning
bcm63xx_defconfig (gcc-10): 1 error
bigsur_defconfig (gcc-10): 1 error
ci20_defconfig (gcc-10): 1 warning
decstation_64_defconfig (gcc-10): 1 error
decstation_defconfig (gcc-10): 1 error
decstation_r4k_defconfig (gcc-10): 1 error
fuloong2e_defconfig (gcc-10): 1 error
lemote2f_defconfig (gcc-10): 1 error
sb1250_swarm_defconfig (gcc-10): 1 error
tinyconfig (gcc-10): 1 error
riscv:
allnoconfig (gcc-10): 1 error
allnoconfig (clang-14): 1 error
nommu_k210_defconfig (gcc-10): 1 error
nommu_k210_sdcard_defconfig (gcc-10): 1 error
nommu_virt_defconfig (gcc-10): 1 error
tinyconfig (gcc-10): 1 error
x86_64:
allmodconfig (clang-14): 3 errors, 1 warning
allmodconfig (gcc-10): 2 errors
tinyconfig (gcc-10): 1 error
x86_64_defconfig (clang-14): 1 warning
x86_64_defconfig+debug (gcc-10): 2 warnings
Errors summary:
22 mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
3 mm/shmem.c:3993:5: error: conflicting types for 'shmem_unuse'
3 drivers/net/ethernet/amd/declance.c:1231:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
2 drivers/scsi/hisi_sas/hisi_sas_main.c:1536:21: error: variable 'sas_phy' is uninitialized when used here [-Werror,-Wuninitialized]
2 drivers/net/ethernet/broadcom/sb1250-mac.c:2187:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
2 cc1: error: ‘-mloongson-mmi’ must be used with ‘-mhard-float’
2 /usr/lib/gcc/x86_64-linux-gnu/10/plugin/include/config/i386/i386.h:2500:10: fatal error: common/config/i386/i386-cpuinfo.h: No such file or directory
1 irq-gic-v3-its.c:(.text+0x14b8): undefined reference to `cpus_booted_once_mask'
1 include/asm-generic/div64.h:222:28: error: comparison of distinct pointer types lacks a cast [-Werror]
1 drivers/usb/gadget/udc/at91_udc.h:174:33: error: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘struct gpio_desc *’ [-Werror=format=]
1 drivers/power/reset/ltc2952-poweroff.c:163:41: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux-gnu' does not support it
1 drivers/power/reset/ltc2952-poweroff.c:162:28: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux-gnu' does not support it
1 drivers/power/reset/ltc2952-poweroff.c:162:21: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux-gnu' does not support it
1 drivers/pinctrl/pinctrl-thunderbay.c:815:8: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
1 drivers/pinctrl/pinctrl-thunderbay.c:815:8: error: assigning to 'const char **' from 'const char *const *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
1 drivers/net/wireless/intel/iwlwifi/mvm/ftm-initiator.c:1070:2: error: comparison of distinct pointer types ('typeof ((rtt_avg)) *' (aka 'long long *') and 'uint64_t *' (aka 'unsigned long long *')) [-Werror,-Wcompare-distinct-pointer-types]
1 drivers/gpu/drm/selftests/test-drm_mm.c:372:12: error: stack frame size (1040) exceeds limit (1024) in '__igt_reserve' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_rq_dlg_calc_21.c:829:13: error: stack frame size (1084) exceeds limit (1024) in 'dml_rq_dlg_get_dlg_params' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.c:3518:6: error: stack frame size (1260) exceeds limit (1024) in 'dml21_ModeSupportAndSystemConfigurationFull' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.c:1466:13: error: stack frame size (1212) exceeds limit (1024) in 'DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.c:3393:6: error: stack frame size (1580) exceeds limit (1024) in 'dml20v2_ModeSupportAndSystemConfigurationFull' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.c:1145:13: error: stack frame size (1356) exceeds limit (1024) in 'dml20v2_DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.c:3286:6: error: stack frame size (1564) exceeds limit (1024) in 'dml20_ModeSupportAndSystemConfigurationFull' [-Werror,-Wframe-larger-than]
1 drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.c:1085:13: error: stack frame size (1388) exceeds limit (1024) in 'dml20_DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation' [-Werror,-Wframe-larger-than]
1 crypto/wp512.c:782:13: error: stack frame size (1168) exceeds limit (1024) in 'wp512_process_buffer' [-Werror,-Wframe-larger-than]
1 arm-linux-gnueabihf-ld: irq-gic-v3-its.c:(.text+0x14bc): undefined reference to `cpus_booted_once_mask'
1 arch/x86/include/asm/checksum_32.h:149:6: error: inline assembly requires more registers than available
1 arch/arm/lib/xor-neon.c:30:2: error: This code requires at least version 4.6 of GCC [-Werror,-W#warnings]
1 arch/arm/kernel/head.S:319: Error: missing expression -- `ldr r7,=0x'
1 arch/arm/kernel/head.S:319: Error: missing expression -- `ldr r3,=0x'
1 /tmp/kci/linux/build/../drivers/gpu/drm/panel/panel-edp.c:843: undefined reference to `drm_panel_dp_aux_backlight'
1 /tmp/ccDvL5iy.s:7958: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:516: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:45416: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:45357: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:45295: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:45200: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:44681: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:44622: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:44560: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:44463: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:44099: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:44040: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:43980: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:43890: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:43664: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:43605: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:43538: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:43438: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42992: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42947: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42699: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42640: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42573: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42473: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:42028: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:41983: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:41324: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:41265: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:41205: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:41115: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40852: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40793: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40731: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40637: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40413: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40354: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40287: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:40189: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39984: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39925: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39863: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39769: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39585: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39526: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39459: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39359: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39115: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:39056: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38996: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38892: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38654: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38595: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38528: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38430: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38170: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38111: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:38044: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37948: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37732: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37673: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37611: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37516: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37318: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37259: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37192: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:37096: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:36918: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:36859: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:36797: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:36701: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:36069: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:36010: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35948: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35853: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35674: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35615: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35548: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35452: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35298: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35239: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35173: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:35076: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34931: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34872: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34806: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34709: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34545: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34486: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34419: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34323: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34122: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34063: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:34001: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33905: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33739: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33680: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33613: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33514: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33362: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33303: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33237: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:33140: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32986: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32927: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32865: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32768: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32639: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32580: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32518: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32423: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32267: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32208: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32145: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:32050: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31912: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31853: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31791: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31696: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31555: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31496: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31436: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31347: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31197: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31138: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:31076: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30987: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30892: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30833: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30773: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30684: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30547: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30488: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30426: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30331: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30192: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30133: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:30071: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29982: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29894: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29835: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29775: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29686: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29534: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29475: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29413: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29318: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29211: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29152: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29092: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:29002: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28703: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28643: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28583: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28491: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28418: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28358: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28298: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28208: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28135: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28075: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:28015: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27930: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27858: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27798: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27738: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27654: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27585: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27526: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27466: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:27382: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:25872: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:17774: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:17713: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:13634: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:13534: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:12244: Error: invalid literal constant: pool needs to be closer
1 /tmp/ccDvL5iy.s:12204: Error: invalid literal constant: pool needs to be closer
Warnings summary:
24 clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
10 clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
4 drivers/scsi/hisi_sas/hisi_sas_main.c:1528:29: note: initialize the variable 'sas_phy' to silence this warning
3 cc1: all warnings being treated as errors
3 arch/mips/boot/dts/img/boston.dts:128.19-178.5: Warning (pci_device_reg): /pci@14000000/pci2_root@0,0,0: PCI unit address format error, expected "0,0"
3 arch/arc/Makefile:26: ** WARNING ** CONFIG_ARC_TUNE_MCPU flag '' is unknown, fallback to ''
2 include/linux/kern_levels.h:5:18: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘struct gpio_desc *’ [-Wformat=]
2 drivers/scsi/hisi_sas/hisi_sas_main.c:1536:21: warning: variable 'sas_phy' is uninitialized when used here [-Wuninitialized]
2 1 warning generated.
1 net/core/skbuff.o: warning: objtool: skb_copy()+0x12d: unreachable instruction
1 lib/strnlen_user.o: warning: objtool: strnlen_user()+0x5d: call to do_strnlen_user() with UACCESS enabled
1 lib/strncpy_from_user.o: warning: objtool: strncpy_from_user()+0x8a: call to do_strncpy_from_user() with UACCESS enabled
1 drivers/net/ethernet/allwinner/sun4i-emac.c:922:64: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ {aka ‘long long unsigned int’} [-Wformat=]
1 drivers/net/ethernet/allwinner/sun4i-emac.c:922:53: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘resource_size_t’ {aka ‘long long unsigned int’} [-Wformat=]
1 clang: warning: argument unused during compilation: '-march=armv7-m' [-Wunused-command-line-argument]
1 arch/x86/kernel/head64.o: warning: objtool: __startup_64() falls through to next function startup_64_setup_env()
1 arch/mips/boot/dts/ingenic/jz4780.dtsi:513.33-515.6: Warning (unit_address_format): /nemc@13410000/efuse@d0/eth-mac-addr@0x22: unit name should not have leading "0x"
1 #warning This code requires at least version 4.6 of GCC
================================================================================
Detailed per-defconfig build reports:
--------------------------------------------------------------------------------
32r2el_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
arch/mips/boot/dts/img/boston.dts:128.19-178.5: Warning (pci_device_reg): /pci@14000000/pci2_root@0,0,0: PCI unit address format error, expected "0,0"
--------------------------------------------------------------------------------
32r2el_defconfig+debug (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
arch/mips/boot/dts/img/boston.dts:128.19-178.5: Warning (pci_device_reg): /pci@14000000/pci2_root@0,0,0: PCI unit address format error, expected "0,0"
--------------------------------------------------------------------------------
32r2el_defconfig+kselftest (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
arch/mips/boot/dts/img/boston.dts:128.19-178.5: Warning (pci_device_reg): /pci@14000000/pci2_root@0,0,0: PCI unit address format error, expected "0,0"
--------------------------------------------------------------------------------
allmodconfig (i386, clang-14) — FAIL, 9 errors, 1 warning, 0 section mismatches
Errors:
arch/x86/include/asm/checksum_32.h:149:6: error: inline assembly requires more registers than available
drivers/scsi/hisi_sas/hisi_sas_main.c:1536:21: error: variable 'sas_phy' is uninitialized when used here [-Werror,-Wuninitialized]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.c:1085:13: error: stack frame size (1388) exceeds limit (1024) in 'dml20_DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_rq_dlg_calc_21.c:829:13: error: stack frame size (1084) exceeds limit (1024) in 'dml_rq_dlg_get_dlg_params' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.c:3286:6: error: stack frame size (1564) exceeds limit (1024) in 'dml20_ModeSupportAndSystemConfigurationFull' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.c:1145:13: error: stack frame size (1356) exceeds limit (1024) in 'dml20v2_DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.c:1466:13: error: stack frame size (1212) exceeds limit (1024) in 'DISPCLKDPPCLKDCFCLKDeepSleepPrefetchParametersWatermarksAndPerformanceCalculation' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.c:3518:6: error: stack frame size (1260) exceeds limit (1024) in 'dml21_ModeSupportAndSystemConfigurationFull' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.c:3393:6: error: stack frame size (1580) exceeds limit (1024) in 'dml20v2_ModeSupportAndSystemConfigurationFull' [-Werror,-Wframe-larger-than]
Warnings:
drivers/scsi/hisi_sas/hisi_sas_main.c:1528:29: note: initialize the variable 'sas_phy' to silence this warning
--------------------------------------------------------------------------------
allmodconfig (x86_64, clang-14) — FAIL, 3 errors, 1 warning, 0 section mismatches
Errors:
drivers/power/reset/ltc2952-poweroff.c:162:28: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux-gnu' does not support it
drivers/power/reset/ltc2952-poweroff.c:162:21: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux-gnu' does not support it
drivers/power/reset/ltc2952-poweroff.c:163:41: error: expression requires 'long double' type support, but target 'x86_64-unknown-linux-gnu' does not support it
Warnings:
arch/x86/kernel/head64.o: warning: objtool: __startup_64() falls through to next function startup_64_setup_env()
--------------------------------------------------------------------------------
allmodconfig (arm64, clang-14) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-thunderbay.c:815:8: error: assigning to 'const char **' from 'const char *const *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
--------------------------------------------------------------------------------
allmodconfig (arm64, gcc-10) — FAIL, 1 error, 1 warning, 0 section mismatches
Errors:
drivers/pinctrl/pinctrl-thunderbay.c:815:8: error: assignment discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
Warnings:
cc1: all warnings being treated as errors
--------------------------------------------------------------------------------
allmodconfig (x86_64, gcc-10) — FAIL, 2 errors, 0 warnings, 0 section mismatches
Errors:
/usr/lib/gcc/x86_64-linux-gnu/10/plugin/include/config/i386/i386.h:2500:10: fatal error: common/config/i386/i386-cpuinfo.h: No such file or directory
/usr/lib/gcc/x86_64-linux-gnu/10/plugin/include/config/i386/i386.h:2500:10: fatal error: common/config/i386/i386-cpuinfo.h: No such file or directory
--------------------------------------------------------------------------------
allmodconfig (arm, clang-14) — FAIL, 5 errors, 16 warnings, 0 section mismatches
Errors:
arch/arm/lib/xor-neon.c:30:2: error: This code requires at least version 4.6 of GCC [-Werror,-W#warnings]
crypto/wp512.c:782:13: error: stack frame size (1168) exceeds limit (1024) in 'wp512_process_buffer' [-Werror,-Wframe-larger-than]
drivers/gpu/drm/selftests/test-drm_mm.c:372:12: error: stack frame size (1040) exceeds limit (1024) in '__igt_reserve' [-Werror,-Wframe-larger-than]
drivers/net/wireless/intel/iwlwifi/mvm/ftm-initiator.c:1070:2: error: comparison of distinct pointer types ('typeof ((rtt_avg)) *' (aka 'long long *') and 'uint64_t *' (aka 'unsigned long long *')) [-Werror,-Wcompare-distinct-pointer-types]
drivers/scsi/hisi_sas/hisi_sas_main.c:1536:21: error: variable 'sas_phy' is uninitialized when used here [-Werror,-Wuninitialized]
Warnings:
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
#warning This code requires at least version 4.6 of GCC
drivers/scsi/hisi_sas/hisi_sas_main.c:1528:29: note: initialize the variable 'sas_phy' to silence this warning
--------------------------------------------------------------------------------
allmodconfig (arm, gcc-10) — FAIL, 179 errors, 2 warnings, 0 section mismatches
Errors:
/tmp/ccDvL5iy.s:516: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:7958: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:12204: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:12244: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:13534: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:13634: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:17713: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:17774: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:25872: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27382: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27466: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27526: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27585: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27654: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27738: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27798: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27858: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:27930: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28015: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28075: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28135: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28208: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28298: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28358: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28418: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28491: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28583: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28643: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:28703: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29002: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29092: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29152: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29211: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29318: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29413: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29475: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29534: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29686: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29775: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29835: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29894: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:29982: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30071: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30133: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30192: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30331: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30426: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30488: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30547: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30684: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30773: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30833: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30892: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:30987: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31076: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31138: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31197: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31347: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31436: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31496: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31555: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31696: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31791: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31853: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:31912: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32050: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32145: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32208: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32267: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32423: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32518: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32580: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32639: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32768: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32865: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32927: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:32986: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33140: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33237: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33303: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33362: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33514: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33613: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33680: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33739: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:33905: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34001: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34063: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34122: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34323: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34419: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34486: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34545: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34709: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34806: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34872: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:34931: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35076: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35173: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35239: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35298: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35452: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35548: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35615: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35674: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35853: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:35948: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:36010: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:36069: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:36701: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:36797: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:36859: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:36918: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37096: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37192: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37259: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37318: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37516: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37611: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37673: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37732: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:37948: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38044: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38111: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38170: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38430: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38528: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38595: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38654: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38892: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:38996: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39056: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39115: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39359: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39459: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39526: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39585: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39769: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39863: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39925: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:39984: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40189: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40287: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40354: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40413: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40637: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40731: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40793: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:40852: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:41115: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:41205: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:41265: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:41324: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:41983: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42028: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42473: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42573: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42640: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42699: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42947: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:42992: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:43438: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:43538: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:43605: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:43664: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:43890: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:43980: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:44040: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:44099: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:44463: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:44560: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:44622: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:44681: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:45200: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:45295: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:45357: Error: invalid literal constant: pool needs to be closer
/tmp/ccDvL5iy.s:45416: Error: invalid literal constant: pool needs to be closer
drivers/usb/gadget/udc/at91_udc.h:174:33: error: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘struct gpio_desc *’ [-Werror=format=]
include/asm-generic/div64.h:222:28: error: comparison of distinct pointer types lacks a cast [-Werror]
Warnings:
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
--------------------------------------------------------------------------------
allnoconfig (riscv, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
allnoconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (riscv, clang-14) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for 'shmem_unuse'
--------------------------------------------------------------------------------
allnoconfig (arm, clang-14) — FAIL, 1 error, 1 warning, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for 'shmem_unuse'
Warnings:
clang: warning: argument unused during compilation: '-march=armv7-m' [-Wunused-command-line-argument]
--------------------------------------------------------------------------------
allnoconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
allnoconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (i386, clang-14) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
allnoconfig (x86_64, clang-14) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
am200epdkit_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
ar7_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, clang-14) — PASS, 0 errors, 10 warnings, 0 section mismatches
Warnings:
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv6k' [-Wunused-command-line-argument]
--------------------------------------------------------------------------------
aspeed_g5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
assabet_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
at91_dt_defconfig (arm, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
include/linux/kern_levels.h:5:18: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘struct gpio_desc *’ [-Wformat=]
--------------------------------------------------------------------------------
ath25_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ath79_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axm55xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
axs103_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
badge4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm2835_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm47xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bcm63xx_defconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
bigsur_defconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
drivers/net/ethernet/broadcom/sb1250-mac.c:2187:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
--------------------------------------------------------------------------------
bmips_be_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
bmips_stb_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
capcella_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cavium_octeon_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cerfcube_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ci20_defconfig (mips, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
arch/mips/boot/dts/ingenic/jz4780.dtsi:513.33-515.6: Warning (unit_address_format): /nemc@13410000/efuse@d0/eth-mac-addr@0x22: unit name should not have leading "0x"
--------------------------------------------------------------------------------
cm_x300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cobalt_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
colibri_pxa300_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
collie_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
corgi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1000-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
cu1830-neo_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
davinci_all_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
db1xxx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
decstation_64_defconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
drivers/net/ethernet/amd/declance.c:1231:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
--------------------------------------------------------------------------------
decstation_defconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
drivers/net/ethernet/amd/declance.c:1231:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
--------------------------------------------------------------------------------
decstation_r4k_defconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
drivers/net/ethernet/amd/declance.c:1231:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
--------------------------------------------------------------------------------
defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig (arm64, clang-14) — PASS, 0 errors, 3 warnings, 0 section mismatches
Warnings:
drivers/scsi/hisi_sas/hisi_sas_main.c:1536:21: warning: variable 'sas_phy' is uninitialized when used here [-Wuninitialized]
drivers/scsi/hisi_sas/hisi_sas_main.c:1528:29: note: initialize the variable 'sas_phy' to silence this warning
1 warning generated.
--------------------------------------------------------------------------------
defconfig+CONFIG_ARM64_16K_PAGES=y (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+CONFIG_ARM64_64K_PAGES=y (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+CONFIG_ARM64_64K_PAGES=y (arm64, clang-14) — PASS, 0 errors, 3 warnings, 0 section mismatches
Warnings:
drivers/scsi/hisi_sas/hisi_sas_main.c:1536:21: warning: variable 'sas_phy' is uninitialized when used here [-Wuninitialized]
drivers/scsi/hisi_sas/hisi_sas_main.c:1528:29: note: initialize the variable 'sas_phy' to silence this warning
1 warning generated.
--------------------------------------------------------------------------------
defconfig+CONFIG_CPU_BIG_ENDIAN=y (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+CONFIG_EFI=n (riscv, clang-14) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+CONFIG_RANDOMIZE_BASE=y (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+arm64-chromebook (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+arm64-chromebook+kselftest (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+crypto (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+debug (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+debug (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+ima (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+kselftest (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
defconfig+kselftest (arm64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
dove_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
e55_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ep93xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
eseries_pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
exynos_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ezx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
footbridge_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
fuloong2e_defconfig (mips, gcc-10) — PASS, 1 error, 0 warnings, 0 section mismatches
Errors:
cc1: error: ‘-mloongson-mmi’ must be used with ‘-mhard-float’
--------------------------------------------------------------------------------
gcw0_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gemini_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
gpr_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h3600_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
h5000_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hackkit_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
haps_hs_smp_defconfig+debug (arc, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
arch/arc/Makefile:26: ** WARNING ** CONFIG_ARC_TUNE_MCPU flag '' is unknown, fallback to ''
--------------------------------------------------------------------------------
haps_hs_smp_defconfig+kselftest (arc, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
arch/arc/Makefile:26: ** WARNING ** CONFIG_ARC_TUNE_MCPU flag '' is unknown, fallback to ''
--------------------------------------------------------------------------------
hisi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
hsdk_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig (i386, clang-14) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig+debug (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
i386_defconfig+kselftest (i386, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imote2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v4_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
imx_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
integrator_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
iop32x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip22_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip27_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip28_defconfig (mips, gcc-10) — FAIL, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ip32_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
ixp4xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jazz_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jmr3927_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
jornada720_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
keystone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lemote2f_defconfig (mips, gcc-10) — PASS, 1 error, 0 warnings, 0 section mismatches
Errors:
cc1: error: ‘-mloongson-mmi’ must be used with ‘-mhard-float’
--------------------------------------------------------------------------------
loongson1b_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson1c_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson2k_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
loongson3_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpc18xx_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
lpc32xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lpd270_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
lubbock_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
magician_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mainstone_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_kvm_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
malta_qemu_32r6_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaaprp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltasmvp_eva_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
maltaup_xpa_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
milbeaut_m10v_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mini2440_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mmp2_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
moxart_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mpc30x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mps2_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
mtx1_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v4t_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
include/linux/kern_levels.h:5:18: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘struct gpio_desc *’ [-Wformat=]
--------------------------------------------------------------------------------
multi_v5_defconfig (arm, clang-14) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig (arm, clang-14) — PASS, 0 errors, 10 warnings, 0 section mismatches
Warnings:
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
clang: warning: argument unused during compilation: '-march=armv7-a' [-Wunused-command-line-argument]
--------------------------------------------------------------------------------
multi_v7_defconfig+CONFIG_CPU_BIG_ENDIAN=y (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig+CONFIG_EFI=y+CONFIG_ARM_LPAE=y (arm, gcc-10) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
drivers/net/ethernet/allwinner/sun4i-emac.c:922:53: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘resource_size_t’ {aka ‘long long unsigned int’} [-Wformat=]
drivers/net/ethernet/allwinner/sun4i-emac.c:922:64: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 4 has type ‘resource_size_t’ {aka ‘long long unsigned int’} [-Wformat=]
--------------------------------------------------------------------------------
multi_v7_defconfig+CONFIG_SMP=n (arm, gcc-10) — FAIL, 2 errors, 0 warnings, 0 section mismatches
Errors:
irq-gic-v3-its.c:(.text+0x14b8): undefined reference to `cpus_booted_once_mask'
arm-linux-gnueabihf-ld: irq-gic-v3-its.c:(.text+0x14bc): undefined reference to `cpus_booted_once_mask'
--------------------------------------------------------------------------------
multi_v7_defconfig+CONFIG_THUMB2_KERNEL=y (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig+debug (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
multi_v7_defconfig+kselftest (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mvebu_v5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mvebu_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
mxs_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
neponset_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
netwinder_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nhk8815_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nommu_k210_defconfig (riscv, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
nommu_k210_sdcard_defconfig (riscv, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
nommu_virt_defconfig (riscv, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
nsimosci_hs_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
nsimosci_hs_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omap1_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
omap2plus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
omega2p_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
orion5x_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
oxnas_v6_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
palmz72_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pcm027_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pic32mzda_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pleb_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
pxa168_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa255-idp_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa910_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
pxa_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
qcom_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
/tmp/kci/linux/build/../drivers/gpu/drm/panel/panel-edp.c:843: undefined reference to `drm_panel_dp_aux_backlight'
--------------------------------------------------------------------------------
qi_lb60_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rb532_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rbtx49xx_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
realview_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rm200_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rpc_defconfig (arm, gcc-10) — FAIL, 2 errors, 0 warnings, 0 section mismatches
Errors:
arch/arm/kernel/head.S:319: Error: missing expression -- `ldr r7,=0x'
arch/arm/kernel/head.S:319: Error: missing expression -- `ldr r3,=0x'
--------------------------------------------------------------------------------
rs90_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rt305x_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
rv32_defconfig (riscv, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c2410_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s3c6400_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
s5pv210_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama5_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sama7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
sb1250_swarm_defconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
drivers/net/ethernet/broadcom/sb1250-mac.c:2187:20: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
--------------------------------------------------------------------------------
shannon_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
shmobile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
simpad_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
socfpga_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear13xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear3xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spear6xx_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
spitz_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
stm32_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
sunxi_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0219_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0226_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tb0287_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tct_hammer_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tegra_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
tinyconfig (riscv, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tinyconfig (arm64, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tinyconfig (i386, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tinyconfig (x86_64, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tinyconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tinyconfig (mips, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
tinyconfig (arc, gcc-10) — FAIL, 1 error, 1 warning, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for 'shmem_unuse'
Warnings:
arch/arc/Makefile:26: ** WARNING ** CONFIG_ARC_TUNE_MCPU flag '' is unknown, fallback to ''
--------------------------------------------------------------------------------
trizeps4_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
u8500_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vdk_hs38_smp_defconfig (arc, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
versatile_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vexpress_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vf610m4_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
viper_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
vocore2_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
vt8500_v6_v7_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
workpad_defconfig (mips, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig (x86_64, clang-14) — PASS, 0 errors, 1 warning, 0 section mismatches
Warnings:
net/core/skbuff.o: warning: objtool: skb_copy()+0x12d: unreachable instruction
--------------------------------------------------------------------------------
x86_64_defconfig+amdgpu (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+crypto (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+debug (x86_64, gcc-10) — PASS, 0 errors, 2 warnings, 0 section mismatches
Warnings:
lib/strncpy_from_user.o: warning: objtool: strncpy_from_user()+0x8a: call to do_strncpy_from_user() with UACCESS enabled
lib/strnlen_user.o: warning: objtool: strnlen_user()+0x5d: call to do_strnlen_user() with UACCESS enabled
--------------------------------------------------------------------------------
x86_64_defconfig+ima (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+kselftest (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86-chromebook (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86-chromebook+amdgpu (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86-chromebook+kselftest (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
x86_64_defconfig+x86_kvm_guest (x86_64, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
--------------------------------------------------------------------------------
xcep_defconfig (arm, gcc-10) — FAIL, 1 error, 0 warnings, 0 section mismatches
Errors:
mm/shmem.c:3993:5: error: conflicting types for ‘shmem_unuse’
--------------------------------------------------------------------------------
zeus_defconfig (arm, gcc-10) — PASS, 0 errors, 0 warnings, 0 section mismatches
---
For more info write to <info@kernelci.org>
^ permalink raw reply
* RE: [PATCH v4 07/14] vfio-user: run vfio-user context
From: Thanos Makatos @ 2022-01-05 10:38 UTC (permalink / raw)
To: Jag Raman, Stefan Hajnoczi, John Levon
Cc: Elena Ufimtseva, John Johnson, thuth@redhat.com, bleal@redhat.com,
Swapnil Ingle, John Levon, Philippe Mathieu-Daudé,
qemu-devel, wainersm@redhat.com, Alex Williamson,
Marc-André Lureau, crosa@redhat.com, pbonzini@redhat.com,
alex.bennee@linaro.org
In-Reply-To: <6EB1EAC5-14BF-46CB-A7CD-C45DE7116B44@oracle.com>
> -----Original Message-----
> From: Jag Raman <jag.raman@oracle.com>
> Sent: 17 December 2021 18:00
> To: Stefan Hajnoczi <stefanha@redhat.com>; John Levon
> <john.levon@nutanix.com>; Thanos Makatos <thanos.makatos@nutanix.com>
> Cc: qemu-devel <qemu-devel@nongnu.org>; Alex Williamson
> <alex.williamson@redhat.com>; Marc-André Lureau
> <marcandre.lureau@gmail.com>; Philippe Mathieu-Daudé
> <philmd@redhat.com>; pbonzini@redhat.com; alex.bennee@linaro.org;
> thuth@redhat.com; crosa@redhat.com; wainersm@redhat.com;
> bleal@redhat.com; Elena Ufimtseva <elena.ufimtseva@oracle.com>; John
> Levon <john.levon@nutanix.com>; John Johnson
> <john.g.johnson@oracle.com>; Thanos Makatos
> <thanos.makatos@nutanix.com>; Swapnil Ingle <swapnil.ingle@nutanix.com>
> Subject: Re: [PATCH v4 07/14] vfio-user: run vfio-user context
>
>
>
> > On Dec 16, 2021, at 6:17 AM, Stefan Hajnoczi <stefanha@redhat.com> wrote:
> >
> > On Wed, Dec 15, 2021 at 10:35:31AM -0500, Jagannathan Raman wrote:
> >> @@ -114,6 +118,62 @@ static void vfu_object_set_device(Object *obj,
> const char *str, Error **errp)
> >> vfu_object_init_ctx(o, errp);
> >> }
> >>
> >> +static void vfu_object_ctx_run(void *opaque)
> >> +{
> >> + VfuObject *o = opaque;
> >> + int ret = -1;
> >> +
> >> + while (ret != 0) {
> >> + ret = vfu_run_ctx(o->vfu_ctx);
> >> + if (ret < 0) {
> >> + if (errno == EINTR) {
> >> + continue;
> >> + } else if (errno == ENOTCONN) {
> >> + qemu_set_fd_handler(o->vfu_poll_fd, NULL, NULL, NULL);
> >> + o->vfu_poll_fd = -1;
> >> + object_unparent(OBJECT(o));
> >> + break;
> >
> > If nothing else logs a message then I think that should be done here so
> > users know why their vfio-user server object disappeared.
>
> Sure will do.
>
> Do you prefer a trace, or a message to the console? Trace makes sense to me.
> Presently, the client could unplug the vfio-user device which would trigger the
> deletion of this object. This process could happen quietly.
>
> >
> >> + } else {
> >> + error_setg(&error_abort, "vfu: Failed to run device %s - %s",
> >> + o->device, strerror(errno));
> >
> > error_abort is equivalent to assuming !o->daemon. In the case where the
> > user doesn't want to automatically shut down the process we need to log
> > a message without aborting.
>
> OK, makes sense.
>
> >
> >> + break;
> >
> > Indentation is off.
> >
> >> + }
> >> + }
> >> + }
> >> +}
> >> +
> >> +static void vfu_object_attach_ctx(void *opaque)
> >> +{
> >> + VfuObject *o = opaque;
> >> + GPollFD pfds[1];
> >> + int ret;
> >> +
> >> + qemu_set_fd_handler(o->vfu_poll_fd, NULL, NULL, NULL);
> >> +
> >> + pfds[0].fd = o->vfu_poll_fd;
> >> + pfds[0].events = G_IO_IN | G_IO_HUP | G_IO_ERR;
> >> +
> >> +retry_attach:
> >> + ret = vfu_attach_ctx(o->vfu_ctx);
> >> + if (ret < 0 && (errno == EAGAIN || errno == EWOULDBLOCK)) {
> >> + qemu_poll_ns(pfds, 1, 500 * (int64_t)SCALE_MS);
> >> + goto retry_attach;
> >
> > This can block the thread indefinitely. Other events like monitor
> > commands are not handled in this loop. Please make this asynchronous
> > (set an fd handler and return from this function so we can try again
> > later).
> >
> > The vfu_attach_ctx() implementation synchronously negotiates the
> > vfio-user connection :(. That's a shame because even if accept(2) is
> > handled asynchronously, the negotiation can still block. It would be
> > cleanest to have a fully async libvfio-user's vfu_attach_ctx() API to
> > avoid blocking. Is that possible?
>
> Thanos / John,
>
> Any thoughts on this?
I'm discussing this with John and FYI there are other places where libvfio-user can block, e.g. sending a response or receiving a command. Is it just the negotiation you want it to be asynchronous or _all_ libvfio-user operations? Making libvfio-user fully asynchronous might require a substantial API rewrite.
>
> >
> > If libvfio-user can't make vfu_attach_ctx() fully async then it may be
> > possible to spawn a thread just for the blocking vfu_attach_ctx() call
> > and report the result back to the event loop (e.g. using EventNotifier).
> > That adds a bunch of code to work around a blocking API though, so I
> > guess we can leave the blocking part if necessary.
> >
> > At the very minimum, please make EAGAIN/EWOULDBLOCK async as
> mentioned
> > above and add a comment explaining the situation with the
> > partially-async vfu_attach_ctx() API so it's clear that this can block
> > (that way it's clear that you're aware of the issue and this isn't by
> > accident).
>
> Sure, we could make the attach async at QEMU depending on how the
> library prefers to do this.
>
> >
> >> + } else if (ret < 0) {
> >> + error_setg(&error_abort,
> >> + "vfu: Failed to attach device %s to context - %s",
> >> + o->device, strerror(errno));
> >
> > error_abort assumes !o->daemon. Please handle the o->daemon == true
> > case by logging an error without aborting.
> >
> >> + return;
> >> + }
> >> +
> >> + o->vfu_poll_fd = vfu_get_poll_fd(o->vfu_ctx);
> >> + if (o->vfu_poll_fd < 0) {
> >> + error_setg(&error_abort, "vfu: Failed to get poll fd %s", o->device);
> >
> > Same here.
> >
> >> @@ -208,6 +284,8 @@ static void vfu_object_init(Object *obj)
> >> TYPE_VFU_OBJECT, TYPE_REMOTE_MACHINE);
> >> return;
> >> }
> >> +
> >> + o->vfu_poll_fd = -1;
> >> }
> >
> > This must call qemu_set_fd_handler(o->vfu_poll_fd, NULL, NULL, NULL)
> > when o->vfu_poll_fd != -1 to avoid leaving a dangling fd handler
> > callback registered.
>
> This is during the init phase, and the FD handlers are not set. Do you mean
> to add this at finalize?
>
> I agree it’s good to explicitly add this at finalize. But vfu_destroy_ctx() should
> trigger a ENOTCONN, which would do it anyway.
>
> Thank you!
> --
> Jag
^ permalink raw reply
* Re: [PATCH v7 3/4] phy: rockchip: add naneng combo phy for RK3568
From: Philipp Zabel @ 2022-01-05 10:43 UTC (permalink / raw)
To: Yifeng Zhao, heiko
Cc: robh+dt, jbx6244, devicetree, vkoul, michael.riesch,
linux-rockchip, linux-arm-kernel, linux-kernel, linux-phy, kishon,
cl, kever.yang, lee.jones, wulf
In-Reply-To: <20211230084815.28110-4-yifeng.zhao@rock-chips.com>
On Thu, 2021-12-30 at 16:48 +0800, Yifeng Zhao wrote:
[...]
> +static int rockchip_combphy_parse_dt(struct device *dev, struct rockchip_combphy_priv *priv)
> +{
[...]
> + priv->phy_rst = devm_reset_control_array_get(dev, false, false);
Please use devm_reset_control_array_get_exclusive() instead.
regards
Philipp
^ permalink raw reply
* Re: [PATCH v7 3/4] phy: rockchip: add naneng combo phy for RK3568
From: Philipp Zabel @ 2022-01-05 10:43 UTC (permalink / raw)
To: Yifeng Zhao, heiko
Cc: robh+dt, jbx6244, devicetree, vkoul, michael.riesch,
linux-rockchip, linux-arm-kernel, linux-kernel, linux-phy, kishon,
cl, kever.yang, lee.jones, wulf
In-Reply-To: <20211230084815.28110-4-yifeng.zhao@rock-chips.com>
On Thu, 2021-12-30 at 16:48 +0800, Yifeng Zhao wrote:
[...]
> +static int rockchip_combphy_parse_dt(struct device *dev, struct rockchip_combphy_priv *priv)
> +{
[...]
> + priv->phy_rst = devm_reset_control_array_get(dev, false, false);
Please use devm_reset_control_array_get_exclusive() instead.
regards
Philipp
_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip
^ permalink raw reply
* Re: [PATCH v7 3/4] phy: rockchip: add naneng combo phy for RK3568
From: Philipp Zabel @ 2022-01-05 10:43 UTC (permalink / raw)
To: Yifeng Zhao, heiko
Cc: robh+dt, jbx6244, devicetree, vkoul, michael.riesch,
linux-rockchip, linux-arm-kernel, linux-kernel, linux-phy, kishon,
cl, kever.yang, lee.jones, wulf
In-Reply-To: <20211230084815.28110-4-yifeng.zhao@rock-chips.com>
On Thu, 2021-12-30 at 16:48 +0800, Yifeng Zhao wrote:
[...]
> +static int rockchip_combphy_parse_dt(struct device *dev, struct rockchip_combphy_priv *priv)
> +{
[...]
> + priv->phy_rst = devm_reset_control_array_get(dev, false, false);
Please use devm_reset_control_array_get_exclusive() instead.
regards
Philipp
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply
* Re: [PATCH v1 0/4] PCI: brcmstb: Augment driver for MIPs SOCs
From: Thomas Bogendoerfer @ 2022-01-05 10:42 UTC (permalink / raw)
To: Jim Quinlan
Cc: linux-pci, linux-mips, Nicolas Saenz Julienne, Bjorn Helgaas,
Kevin Cernekee, bcm-kernel-feedback-list, james.quinlan,
open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
Krzysztof Wilczyński,
moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE,
open list,
moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE,
Rob Herring, Saenz Julienne
In-Reply-To: <20211209204726.6676-1-jim2101024@gmail.com>
On Thu, Dec 09, 2021 at 03:47:21PM -0500, Jim Quinlan wrote:
> With this patchset, the Broadcom STB PCIe controller driver
> supports Arm, Arm64, and now MIPs.
>
> Jim Quinlan (4):
> dt-bindings: PCI: Add compatible string for Brcmstb 74[23]5 MIPs SOCs
> MIPS: bmips: Add support PCIe controller device nodes
> MIPS: bmips: Remove obsolete DMA mapping support
> PCI: brcmstb: Augment driver for MIPs SOCs
>
> .../bindings/pci/brcm,stb-pcie.yaml | 2 +
> arch/mips/Kconfig | 1 -
> arch/mips/bmips/dma.c | 106 +-----------------
> arch/mips/boot/dts/brcm/bcm7425.dtsi | 30 +++++
> arch/mips/boot/dts/brcm/bcm7435.dtsi | 30 +++++
> arch/mips/boot/dts/brcm/bcm97425svmb.dts | 9 ++
> arch/mips/boot/dts/brcm/bcm97435svmb.dts | 9 ++
> drivers/pci/controller/Kconfig | 2 +-
> drivers/pci/controller/pcie-brcmstb.c | 82 +++++++++++++-
> 9 files changed, 161 insertions(+), 110 deletions(-)
if nobody objects I'd like to add this series to mips-next.
Thomas.
--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
* Re: [PATCH v2 5/7] linux-user/nios2: Fix EA vs PC confusion
From: Laurent Vivier @ 2022-01-05 10:24 UTC (permalink / raw)
To: Richard Henderson, qemu-devel
In-Reply-To: <20211221025012.1057923-6-richard.henderson@linaro.org>
Le 21/12/2021 à 03:50, Richard Henderson a écrit :
> The real kernel will talk about the user PC as EA,
> because that's where the hardware will have copied it,
> and where it expects to put it to then use ERET.
> But qemu does not emulate all of the exception stuff
> while emulating user-only. Manipulate PC directly.
>
> This fixes signal entry and return, and eliminates
> some slight confusion from target_cpu_copy_regs.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
> linux-user/nios2/cpu_loop.c | 5 +----
> linux-user/nios2/signal.c | 6 +++---
> 2 files changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/linux-user/nios2/cpu_loop.c b/linux-user/nios2/cpu_loop.c
> index de0fc63e21..1e93ef34e6 100644
> --- a/linux-user/nios2/cpu_loop.c
> +++ b/linux-user/nios2/cpu_loop.c
> @@ -155,9 +155,6 @@ void target_cpu_copy_regs(CPUArchState *env, struct target_pt_regs *regs)
> env->regs[R_SP] = regs->sp;
> env->regs[R_GP] = regs->gp;
> env->regs[CR_ESTATUS] = regs->estatus;
> - env->regs[R_EA] = regs->ea;
> - /* TODO: unsigned long orig_r7; */
> -
> - /* Emulate eret when starting thread. */
> env->regs[R_PC] = regs->ea;
> + /* TODO: unsigned long orig_r7; */
> }
> diff --git a/linux-user/nios2/signal.c b/linux-user/nios2/signal.c
> index adbffe32e3..20b65aa06e 100644
> --- a/linux-user/nios2/signal.c
> +++ b/linux-user/nios2/signal.c
> @@ -73,7 +73,7 @@ static void rt_setup_ucontext(struct target_ucontext *uc, CPUNios2State *env)
> __put_user(env->regs[R_RA], &gregs[23]);
> __put_user(env->regs[R_FP], &gregs[24]);
> __put_user(env->regs[R_GP], &gregs[25]);
> - __put_user(env->regs[R_EA], &gregs[27]);
> + __put_user(env->regs[R_PC], &gregs[27]);
> __put_user(env->regs[R_SP], &gregs[28]);
> }
>
> @@ -122,7 +122,7 @@ static int rt_restore_ucontext(CPUNios2State *env, struct target_ucontext *uc,
> __get_user(env->regs[R_GP], &gregs[25]);
> /* Not really necessary no user settable bits */
> __get_user(temp, &gregs[26]);
> - __get_user(env->regs[R_EA], &gregs[27]);
> + __get_user(env->regs[R_PC], &gregs[27]);
>
> __get_user(env->regs[R_RA], &gregs[23]);
> __get_user(env->regs[R_SP], &gregs[28]);
> @@ -181,7 +181,7 @@ void setup_rt_frame(int sig, struct target_sigaction *ka,
> env->regs[4] = sig;
> env->regs[5] = frame_addr + offsetof(struct target_rt_sigframe, info);
> env->regs[6] = frame_addr + offsetof(struct target_rt_sigframe, uc);
> - env->regs[R_EA] = ka->_sa_handler;
> + env->regs[R_PC] = ka->_sa_handler;
>
> unlock_user_struct(frame, frame_addr, 1);
> }
Applied to my linux-user-for-7.0 branch.
Thanks,
Laurent
^ permalink raw reply
* Re: [PATCH v7 3/4] phy: rockchip: add naneng combo phy for RK3568
From: Philipp Zabel @ 2022-01-05 10:43 UTC (permalink / raw)
To: Yifeng Zhao, heiko
Cc: robh+dt, jbx6244, devicetree, vkoul, michael.riesch,
linux-rockchip, linux-arm-kernel, linux-kernel, linux-phy, kishon,
cl, kever.yang, lee.jones, wulf
In-Reply-To: <20211230084815.28110-4-yifeng.zhao@rock-chips.com>
On Thu, 2021-12-30 at 16:48 +0800, Yifeng Zhao wrote:
[...]
> +static int rockchip_combphy_parse_dt(struct device *dev, struct rockchip_combphy_priv *priv)
> +{
[...]
> + priv->phy_rst = devm_reset_control_array_get(dev, false, false);
Please use devm_reset_control_array_get_exclusive() instead.
regards
Philipp
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
* Re: [PATCH v10] drm/bridge: add it6505 driver
From: AngeloGioacchino Del Regno @ 2022-01-05 10:45 UTC (permalink / raw)
To: allen
Cc: Hsin-Yi Wang, Jau-Chih Tseng, Kenneth Hung, Hermes Wu,
Hsin-yi Wang, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec, David Airlie,
Daniel Vetter, Matthias Brugger, open list, open list:DRM DRIVERS,
moderated list:ARM/Mediatek SoC support,
moderated list:ARM/Mediatek SoC support
In-Reply-To: <20211014033031.38459-1-allen.chen@ite.com.tw>
Il 14/10/21 05:30, allen ha scritto:
> This adds support for the iTE IT6505.
> This device can convert DPI signal to DP output.
>
> From: Allen Chen <allen.chen@ite.com.tw>
> Tested-by: Hsin-yi Wang <hsinyi@chromium.org>
> Signed-off-by: Hermes Wu <hermes.wu@ite.com.tw>
> Signed-off-by: Allen Chen <allen.chen@ite.com.tw>
> ---
> This patch depends on https://patchwork.kernel.org/project/linux-mediatek/patch/20210722062246.2512666-4-sam@ravnborg.org/
> ---
> drivers/gpu/drm/bridge/Kconfig | 8 +
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/ite-it6505.c | 3335 +++++++++++++++++++++++++++
> 3 files changed, 3344 insertions(+)
> create mode 100644 drivers/gpu/drm/bridge/ite-it6505.c
Hello Allen,
since the dependency that you mentioned seems to be requiring some time to get
merged in, can you please open-code the call to drm_bridge_new_crtc_state() as
to stop requiring the commit you pointed to?
We can perhaps update this driver later, whenever the series you mentioned will
get applied.
The reason for this request is due to a breakage on MT8183 Kukui: since DPI is
supported in the drm-mediatek driver for this SoC, on platforms that are using
a DSI<->DP/eDP bridge, a probe failure occurs for the DPI0 component.
Leaving apart that drm-mediatek should be fixed to account for this as a non
critical error (and keep going with DSI only, simply ignoring DPI0), the Kukui
family of devices do have this functionality and it should be brought up as
soon as possible at this point - especially since the driver that you've sent
is ok to have.
Looking forward to see a v11 without unsatisfiable dependencies!
Thank you.
Regards,
- Angelo
^ permalink raw reply
* Re: [PATCH v10] drm/bridge: add it6505 driver
From: AngeloGioacchino Del Regno @ 2022-01-05 10:45 UTC (permalink / raw)
To: allen
Cc: Kenneth Hung, Jernej Skrabec, Jau-Chih Tseng, David Airlie,
open list:DRM DRIVERS, Neil Armstrong, open list, Robert Foss,
Andrzej Hajda, Hermes Wu, moderated list:ARM/Mediatek SoC support,
Laurent Pinchart, Hsin-yi Wang, Matthias Brugger, Hsin-Yi Wang,
moderated list:ARM/Mediatek SoC support, Jonas Karlman
In-Reply-To: <20211014033031.38459-1-allen.chen@ite.com.tw>
Il 14/10/21 05:30, allen ha scritto:
> This adds support for the iTE IT6505.
> This device can convert DPI signal to DP output.
>
> From: Allen Chen <allen.chen@ite.com.tw>
> Tested-by: Hsin-yi Wang <hsinyi@chromium.org>
> Signed-off-by: Hermes Wu <hermes.wu@ite.com.tw>
> Signed-off-by: Allen Chen <allen.chen@ite.com.tw>
> ---
> This patch depends on https://patchwork.kernel.org/project/linux-mediatek/patch/20210722062246.2512666-4-sam@ravnborg.org/
> ---
> drivers/gpu/drm/bridge/Kconfig | 8 +
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/ite-it6505.c | 3335 +++++++++++++++++++++++++++
> 3 files changed, 3344 insertions(+)
> create mode 100644 drivers/gpu/drm/bridge/ite-it6505.c
Hello Allen,
since the dependency that you mentioned seems to be requiring some time to get
merged in, can you please open-code the call to drm_bridge_new_crtc_state() as
to stop requiring the commit you pointed to?
We can perhaps update this driver later, whenever the series you mentioned will
get applied.
The reason for this request is due to a breakage on MT8183 Kukui: since DPI is
supported in the drm-mediatek driver for this SoC, on platforms that are using
a DSI<->DP/eDP bridge, a probe failure occurs for the DPI0 component.
Leaving apart that drm-mediatek should be fixed to account for this as a non
critical error (and keep going with DSI only, simply ignoring DPI0), the Kukui
family of devices do have this functionality and it should be brought up as
soon as possible at this point - especially since the driver that you've sent
is ok to have.
Looking forward to see a v11 without unsatisfiable dependencies!
Thank you.
Regards,
- Angelo
^ permalink raw reply
* Re: [PATCH v10] drm/bridge: add it6505 driver
From: AngeloGioacchino Del Regno @ 2022-01-05 10:45 UTC (permalink / raw)
To: allen
Cc: Hsin-Yi Wang, Jau-Chih Tseng, Kenneth Hung, Hermes Wu,
Hsin-yi Wang, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec, David Airlie,
Daniel Vetter, Matthias Brugger, open list, open list:DRM DRIVERS,
moderated list:ARM/Mediatek SoC support,
moderated list:ARM/Mediatek SoC support
In-Reply-To: <20211014033031.38459-1-allen.chen@ite.com.tw>
Il 14/10/21 05:30, allen ha scritto:
> This adds support for the iTE IT6505.
> This device can convert DPI signal to DP output.
>
> From: Allen Chen <allen.chen@ite.com.tw>
> Tested-by: Hsin-yi Wang <hsinyi@chromium.org>
> Signed-off-by: Hermes Wu <hermes.wu@ite.com.tw>
> Signed-off-by: Allen Chen <allen.chen@ite.com.tw>
> ---
> This patch depends on https://patchwork.kernel.org/project/linux-mediatek/patch/20210722062246.2512666-4-sam@ravnborg.org/
> ---
> drivers/gpu/drm/bridge/Kconfig | 8 +
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/ite-it6505.c | 3335 +++++++++++++++++++++++++++
> 3 files changed, 3344 insertions(+)
> create mode 100644 drivers/gpu/drm/bridge/ite-it6505.c
Hello Allen,
since the dependency that you mentioned seems to be requiring some time to get
merged in, can you please open-code the call to drm_bridge_new_crtc_state() as
to stop requiring the commit you pointed to?
We can perhaps update this driver later, whenever the series you mentioned will
get applied.
The reason for this request is due to a breakage on MT8183 Kukui: since DPI is
supported in the drm-mediatek driver for this SoC, on platforms that are using
a DSI<->DP/eDP bridge, a probe failure occurs for the DPI0 component.
Leaving apart that drm-mediatek should be fixed to account for this as a non
critical error (and keep going with DSI only, simply ignoring DPI0), the Kukui
family of devices do have this functionality and it should be brought up as
soon as possible at this point - especially since the driver that you've sent
is ok to have.
Looking forward to see a v11 without unsatisfiable dependencies!
Thank you.
Regards,
- Angelo
_______________________________________________
Linux-mediatek mailing list
Linux-mediatek@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-mediatek
^ permalink raw reply
* Re: [PATCH v6 1/9] mm: x86, arm64: add arch_has_hw_pte_young()
From: Will Deacon @ 2022-01-05 10:45 UTC (permalink / raw)
To: Yu Zhao
Cc: Andrew Morton, Linus Torvalds, Andi Kleen, Catalin Marinas,
Dave Hansen, Hillf Danton, Jens Axboe, Jesse Barnes,
Johannes Weiner, Jonathan Corbet, Matthew Wilcox, Mel Gorman,
Michael Larabel, Michal Hocko, Rik van Riel, Vlastimil Babka,
Ying Huang, linux-arm-kernel, linux-doc, linux-kernel, linux-mm,
page-reclaim, x86, Konstantin Kharlamov
In-Reply-To: <20220104202227.2903605-2-yuzhao@google.com>
On Tue, Jan 04, 2022 at 01:22:20PM -0700, Yu Zhao wrote:
> Some architectures automatically set the accessed bit in PTEs, e.g.,
> x86 and arm64 v8.2. On architectures that don't have this capability,
> clearing the accessed bit in a PTE usually triggers a page fault
> following the TLB miss of this PTE.
>
> Being aware of this capability can help make better decisions, e.g.,
> whether to spread the work out over a period of time to avoid bursty
> page faults when trying to clear the accessed bit in a large number of
> PTEs.
>
> Signed-off-by: Yu Zhao <yuzhao@google.com>
> Tested-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
> ---
> arch/arm64/include/asm/cpufeature.h | 5 +++++
> arch/arm64/include/asm/pgtable.h | 13 ++++++++-----
> arch/arm64/kernel/cpufeature.c | 19 +++++++++++++++++++
> arch/arm64/tools/cpucaps | 1 +
> arch/x86/include/asm/pgtable.h | 6 +++---
> include/linux/pgtable.h | 13 +++++++++++++
> mm/memory.c | 14 +-------------
> 7 files changed, 50 insertions(+), 21 deletions(-)
>
> diff --git a/arch/arm64/include/asm/cpufeature.h b/arch/arm64/include/asm/cpufeature.h
> index ef6be92b1921..99518b4b2a9e 100644
> --- a/arch/arm64/include/asm/cpufeature.h
> +++ b/arch/arm64/include/asm/cpufeature.h
> @@ -779,6 +779,11 @@ static inline bool system_supports_tlb_range(void)
> cpus_have_const_cap(ARM64_HAS_TLB_RANGE);
> }
>
> +static inline bool system_has_hw_af(void)
> +{
> + return IS_ENABLED(CONFIG_ARM64_HW_AFDBM) && cpus_have_const_cap(ARM64_HW_AF);
> +}
> +
> extern int do_emulate_mrs(struct pt_regs *regs, u32 sys_reg, u32 rt);
>
> static inline u32 id_aa64mmfr0_parange_to_phys_shift(int parange)
> diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h
> index c4ba047a82d2..e736f47436c7 100644
> --- a/arch/arm64/include/asm/pgtable.h
> +++ b/arch/arm64/include/asm/pgtable.h
> @@ -999,13 +999,16 @@ static inline void update_mmu_cache(struct vm_area_struct *vma,
> * page after fork() + CoW for pfn mappings. We don't always have a
> * hardware-managed access flag on arm64.
> */
> -static inline bool arch_faults_on_old_pte(void)
> +static inline bool arch_has_hw_pte_young(bool local)
> {
> - WARN_ON(preemptible());
> + if (local) {
> + WARN_ON(preemptible());
> + return cpu_has_hw_af();
> + }
>
> - return !cpu_has_hw_af();
> + return system_has_hw_af();
> }
> -#define arch_faults_on_old_pte arch_faults_on_old_pte
> +#define arch_has_hw_pte_young arch_has_hw_pte_young
>
> /*
> * Experimentally, it's cheap to set the access flag in hardware and we
> @@ -1013,7 +1016,7 @@ static inline bool arch_faults_on_old_pte(void)
> */
> static inline bool arch_wants_old_prefaulted_pte(void)
> {
> - return !arch_faults_on_old_pte();
> + return arch_has_hw_pte_young(true);
> }
> #define arch_wants_old_prefaulted_pte arch_wants_old_prefaulted_pte
>
> diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
> index 6f3e677d88f1..5bb553ee2c0e 100644
> --- a/arch/arm64/kernel/cpufeature.c
> +++ b/arch/arm64/kernel/cpufeature.c
> @@ -2171,6 +2171,25 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
> .matches = has_hw_dbm,
> .cpu_enable = cpu_enable_hw_dbm,
> },
> + {
> + /*
> + * __cpu_setup always enables this capability. But if the boot
> + * CPU has it and a late CPU doesn't, the absent
> + * ARM64_CPUCAP_OPTIONAL_FOR_LATE_CPU will prevent this late CPU
> + * from going online. There is neither known hardware does that
> + * nor obvious reasons to design hardware works that way, hence
> + * no point leaving the door open here. If the need arises, a
> + * new weak system feature flag should do the trick.
> + */
> + .desc = "Hardware update of the Access flag",
> + .type = ARM64_CPUCAP_SYSTEM_FEATURE,
> + .capability = ARM64_HW_AF,
> + .sys_reg = SYS_ID_AA64MMFR1_EL1,
> + .sign = FTR_UNSIGNED,
> + .field_pos = ID_AA64MMFR1_HADBS_SHIFT,
> + .min_field_value = 1,
> + .matches = has_cpuid_feature,
> + },
> #endif
> {
> .desc = "CRC32 instructions",
> diff --git a/arch/arm64/tools/cpucaps b/arch/arm64/tools/cpucaps
> index 870c39537dd0..56e4ef5d95fa 100644
> --- a/arch/arm64/tools/cpucaps
> +++ b/arch/arm64/tools/cpucaps
> @@ -36,6 +36,7 @@ HAS_STAGE2_FWB
> HAS_SYSREG_GIC_CPUIF
> HAS_TLB_RANGE
> HAS_VIRT_HOST_EXTN
> +HW_AF
> HW_DBM
> KVM_PROTECTED_MODE
> MISMATCHED_CACHE_TYPE
As discussed in the previous threads, we really don't need the complexity
of the additional cap for the arm64 part. Please can you just use the
existing code instead? It's both simpler and, as you say, it's equivalent
for existing hardware.
That way, this patch just ends up being a renaming exercise and we're all
good.
Thanks,
Will
^ permalink raw reply
* Re: [PATCH v3 2/2] ACPI: AGDI: Add driver for Arm Generic Diagnostic Dump and Reset device
From: Lorenzo Pieralisi @ 2022-01-05 10:46 UTC (permalink / raw)
To: Ilkka Koskinen
Cc: guohanjun, sudeep.holla, rafael, linux, lenb, robert.moore,
linux-acpi, linux-arm-kernel, linux-kernel, patches, scott,
darren, james.morse
In-Reply-To: <20211231033725.21109-3-ilkka@os.amperecomputing.com>
[+James, for SDEI bits]
On Thu, Dec 30, 2021 at 07:37:25PM -0800, Ilkka Koskinen wrote:
> ACPI for Arm Components 1.1 Platform Design Document v1.1 [0] specifices
> Arm Generic Diagnostic Device Interface (AGDI). It allows an admin to
> issue diagnostic dump and reset via an SDEI event or an interrupt.
> This patch implements SDEI path.
>
> [0] https://developer.arm.com/documentation/den0093/latest/
>
> Signed-off-by: Ilkka Koskinen <ilkka@os.amperecomputing.com>
> ---
> drivers/acpi/arm64/Kconfig | 8 +++
> drivers/acpi/arm64/Makefile | 1 +
> drivers/acpi/arm64/agdi.c | 125 ++++++++++++++++++++++++++++++++++++
> 3 files changed, 134 insertions(+)
> create mode 100644 drivers/acpi/arm64/agdi.c
>
> diff --git a/drivers/acpi/arm64/Kconfig b/drivers/acpi/arm64/Kconfig
> index 6dba187f4f2e..24869ba5b365 100644
> --- a/drivers/acpi/arm64/Kconfig
> +++ b/drivers/acpi/arm64/Kconfig
> @@ -8,3 +8,11 @@ config ACPI_IORT
>
> config ACPI_GTDT
> bool
> +
> +config ACPI_AGDI
> + bool "Arm Generic Diagnostic Dump and Reset Device Interface"
> + depends on ARM_SDE_INTERFACE
> + help
> + Arm Generic Diagnostic Dump and Reset Device Interface (AGDI) is
> + a standard that enables issuing a non-maskable diagnostic dump and
> + reset command.
> diff --git a/drivers/acpi/arm64/Makefile b/drivers/acpi/arm64/Makefile
> index 66acbe77f46e..7b9e4045659d 100644
> --- a/drivers/acpi/arm64/Makefile
> +++ b/drivers/acpi/arm64/Makefile
> @@ -1,4 +1,5 @@
> # SPDX-License-Identifier: GPL-2.0-only
> +obj-$(CONFIG_ACPI_AGDI) += agdi.o
> obj-$(CONFIG_ACPI_IORT) += iort.o
> obj-$(CONFIG_ACPI_GTDT) += gtdt.o
> obj-y += dma.o
> diff --git a/drivers/acpi/arm64/agdi.c b/drivers/acpi/arm64/agdi.c
> new file mode 100644
> index 000000000000..6525ccbae5c1
> --- /dev/null
> +++ b/drivers/acpi/arm64/agdi.c
> @@ -0,0 +1,125 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * This file implements handling of
> + * Arm Generic Diagnostic Dump and Reset Interface table (AGDI)
> + *
> + * Copyright (c) 2021, Ampere Computing LLC
> + */
> +
> +#define pr_fmt(fmt) "ACPI: AGDI: " fmt
> +
> +#include <linux/kernel.h>
> +#include <linux/platform_device.h>
> +#include <linux/slab.h>
> +#include <linux/module.h>
> +#include <linux/kernel.h>
> +#include <linux/acpi.h>
> +#include <linux/arm_sdei.h>
> +#include <linux/io.h>
Nit: alphabetical order.
> +
> +struct agdi_data {
> + int sdei_event;
> +};
> +
> +static int agdi_sdei_handler(u32 sdei_event, struct pt_regs *regs, void *arg)
> +{
> + nmi_panic(regs, "Arm Generic Diagnostic Dump and Reset SDEI event issued");
> + return 0;
> +}
> +
> +static int agdi_sdei_probe(struct platform_device *pdev,
> + struct agdi_data *adata)
> +{
> + int err;
> +
> + err = sdei_event_register(adata->sdei_event, agdi_sdei_handler, pdev);
> + if (err) {
> + dev_err(&pdev->dev, "Failed to register for SDEI event %d",
> + adata->sdei_event);
> + return err;
> + }
> +
> + err = sdei_event_enable(adata->sdei_event);
> + if (err) {
> + sdei_event_unregister(adata->sdei_event);
> + dev_err(&pdev->dev, "Failed to enable event %d\n",
> + adata->sdei_event);
> + return err;
> + }
> +
> + return 0;
> +}
> +
> +static int agdi_probe(struct platform_device *pdev)
> +{
> + struct agdi_data *adata;
> +
> + adata = dev_get_platdata(&pdev->dev);
> + if (!adata)
> + return -EINVAL;
> +
> + return agdi_sdei_probe(pdev, adata);
> +}
> +
> +static int agdi_remove(struct platform_device *pdev)
> +{
> + struct agdi_data *adata = platform_get_drvdata(pdev);
> +
> + sdei_event_disable(adata->sdei_event);
> + sdei_event_unregister(adata->sdei_event);
> +
> + return 0;
> +}
> +
> +static struct platform_driver agdi_driver = {
> + .driver = {
> + .name = "agdi",
> + },
> + .probe = agdi_probe,
> + .remove = agdi_remove,
> +};
May I ask why we need a platform device (and driver) to register
an SDEI event ?
> +static int __init agdi_init(void)
> +{
> + int ret;
> + acpi_status status;
> + struct acpi_table_agdi *agdi_table;
> + struct agdi_data pdata;
> + struct platform_device *pdev;
> +
> + if (acpi_disabled)
> + return 0;
Why don't we call agdi_init() from acpi_init() as we do for IORT/VIOT ?
I don't think it is necessary to add a device_initcall(), with related
ordering dependencies.
> +
> + status = acpi_get_table(ACPI_SIG_AGDI, 0,
> + (struct acpi_table_header **) &agdi_table);
> + if (ACPI_FAILURE(status))
> + return -ENODEV;
> +
> + if (agdi_table->flags & ACPI_AGDI_SIGNALING_MODE) {
Is this because specs need updating ?
> + pr_warn("Interrupt signaling is not supported");
> + ret = -ENODEV;
> + goto err_put_table;
> + }
> +
> + pdata.sdei_event = agdi_table->sdei_event;
> +
> + pdev = platform_device_register_data(NULL, "agdi", 0, &pdata, sizeof(pdata));
> + if (IS_ERR(pdev)) {
> + ret = PTR_ERR(pdev);
> + goto err_put_table;
> + }
> +
> + ret = platform_driver_register(&agdi_driver);
> + if (ret)
> + goto err_device_unregister;
> +
> + acpi_put_table((struct acpi_table_header *)agdi_table);
> + return 0;
> +
> +err_device_unregister:
> + platform_device_unregister(pdev);
> +err_put_table:
> + acpi_put_table((struct acpi_table_header *)agdi_table);
> + return ret;
> +}
> +device_initcall(agdi_init);
See above.
Thanks,
Lorenzo
^ permalink raw reply
* Re: [PATCH v10] drm/bridge: add it6505 driver
From: AngeloGioacchino Del Regno @ 2022-01-05 10:45 UTC (permalink / raw)
To: allen
Cc: Hsin-Yi Wang, Jau-Chih Tseng, Kenneth Hung, Hermes Wu,
Hsin-yi Wang, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec, David Airlie,
Daniel Vetter, Matthias Brugger, open list, open list:DRM DRIVERS,
moderated list:ARM/Mediatek SoC support,
moderated list:ARM/Mediatek SoC support
In-Reply-To: <20211014033031.38459-1-allen.chen@ite.com.tw>
Il 14/10/21 05:30, allen ha scritto:
> This adds support for the iTE IT6505.
> This device can convert DPI signal to DP output.
>
> From: Allen Chen <allen.chen@ite.com.tw>
> Tested-by: Hsin-yi Wang <hsinyi@chromium.org>
> Signed-off-by: Hermes Wu <hermes.wu@ite.com.tw>
> Signed-off-by: Allen Chen <allen.chen@ite.com.tw>
> ---
> This patch depends on https://patchwork.kernel.org/project/linux-mediatek/patch/20210722062246.2512666-4-sam@ravnborg.org/
> ---
> drivers/gpu/drm/bridge/Kconfig | 8 +
> drivers/gpu/drm/bridge/Makefile | 1 +
> drivers/gpu/drm/bridge/ite-it6505.c | 3335 +++++++++++++++++++++++++++
> 3 files changed, 3344 insertions(+)
> create mode 100644 drivers/gpu/drm/bridge/ite-it6505.c
Hello Allen,
since the dependency that you mentioned seems to be requiring some time to get
merged in, can you please open-code the call to drm_bridge_new_crtc_state() as
to stop requiring the commit you pointed to?
We can perhaps update this driver later, whenever the series you mentioned will
get applied.
The reason for this request is due to a breakage on MT8183 Kukui: since DPI is
supported in the drm-mediatek driver for this SoC, on platforms that are using
a DSI<->DP/eDP bridge, a probe failure occurs for the DPI0 component.
Leaving apart that drm-mediatek should be fixed to account for this as a non
critical error (and keep going with DSI only, simply ignoring DPI0), the Kukui
family of devices do have this functionality and it should be brought up as
soon as possible at this point - especially since the driver that you've sent
is ok to have.
Looking forward to see a v11 without unsatisfiable dependencies!
Thank you.
Regards,
- Angelo
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
* [PATCH v2] usb: gadget: u_audio: Subdevice 0 for capture ctls
From: Pavel Hofman @ 2022-01-05 10:46 UTC (permalink / raw)
To: linux-usb
Cc: Pavel Hofman, Ruslan Bilovol, Felipe Balbi, John Keeping,
Greg Kroah-Hartman
Both capture and playback alsa devices use subdevice 0. Yet capture-side
ctls are defined for subdevice 1. The patch sets subdevice 0 for them.
Fixes: 02de698ca812 ("usb: gadget: u_audio: add bi-directional volume and mute support")
Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com>
---
Notes:
v2: added Fixes tag to the message
drivers/usb/gadget/function/u_audio.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/gadget/function/u_audio.c b/drivers/usb/gadget/function/u_audio.c
index 4fb05f9576a6..4561d7a183ff 100644
--- a/drivers/usb/gadget/function/u_audio.c
+++ b/drivers/usb/gadget/function/u_audio.c
@@ -1147,7 +1147,7 @@ int g_audio_setup(struct g_audio *g_audio, const char *pcm_name,
}
kctl->id.device = pcm->device;
- kctl->id.subdevice = i;
+ kctl->id.subdevice = 0;
err = snd_ctl_add(card, kctl);
if (err < 0)
@@ -1170,7 +1170,7 @@ int g_audio_setup(struct g_audio *g_audio, const char *pcm_name,
}
kctl->id.device = pcm->device;
- kctl->id.subdevice = i;
+ kctl->id.subdevice = 0;
kctl->tlv.c = u_audio_volume_tlv;
--
2.25.1
^ permalink raw reply related
* Re: [PATCH v6 1/9] mm: x86, arm64: add arch_has_hw_pte_young()
From: Will Deacon @ 2022-01-05 10:45 UTC (permalink / raw)
To: Yu Zhao
Cc: Andrew Morton, Linus Torvalds, Andi Kleen, Catalin Marinas,
Dave Hansen, Hillf Danton, Jens Axboe, Jesse Barnes,
Johannes Weiner, Jonathan Corbet, Matthew Wilcox, Mel Gorman,
Michael Larabel, Michal Hocko, Rik van Riel, Vlastimil Babka,
Ying Huang, linux-arm-kernel, linux-doc, linux-kernel, linux-mm,
page-reclaim, x86, Konstantin Kharlamov
In-Reply-To: <20220104202227.2903605-2-yuzhao@google.com>
On Tue, Jan 04, 2022 at 01:22:20PM -0700, Yu Zhao wrote:
> Some architectures automatically set the accessed bit in PTEs, e.g.,
> x86 and arm64 v8.2. On architectures that don't have this capability,
> clearing the accessed bit in a PTE usually triggers a page fault
> following the TLB miss of this PTE.
>
> Being aware of this capability can help make better decisions, e.g.,
> whether to spread the work out over a period of time to avoid bursty
> page faults when trying to clear the accessed bit in a large number of
> PTEs.
>
> Signed-off-by: Yu Zhao <yuzhao@google.com>
> Tested-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>
> ---
> arch/arm64/include/asm/cpufeature.h | 5 +++++
> arch/arm64/include/asm/pgtable.h | 13 ++++++++-----
> arch/arm64/kernel/cpufeature.c | 19 +++++++++++++++++++
> arch/arm64/tools/cpucaps | 1 +
> arch/x86/include/asm/pgtable.h | 6 +++---
> include/linux/pgtable.h | 13 +++++++++++++
> mm/memory.c | 14 +-------------
> 7 files changed, 50 insertions(+), 21 deletions(-)
>
> diff --git a/arch/arm64/include/asm/cpufeature.h b/arch/arm64/include/asm/cpufeature.h
> index ef6be92b1921..99518b4b2a9e 100644
> --- a/arch/arm64/include/asm/cpufeature.h
> +++ b/arch/arm64/include/asm/cpufeature.h
> @@ -779,6 +779,11 @@ static inline bool system_supports_tlb_range(void)
> cpus_have_const_cap(ARM64_HAS_TLB_RANGE);
> }
>
> +static inline bool system_has_hw_af(void)
> +{
> + return IS_ENABLED(CONFIG_ARM64_HW_AFDBM) && cpus_have_const_cap(ARM64_HW_AF);
> +}
> +
> extern int do_emulate_mrs(struct pt_regs *regs, u32 sys_reg, u32 rt);
>
> static inline u32 id_aa64mmfr0_parange_to_phys_shift(int parange)
> diff --git a/arch/arm64/include/asm/pgtable.h b/arch/arm64/include/asm/pgtable.h
> index c4ba047a82d2..e736f47436c7 100644
> --- a/arch/arm64/include/asm/pgtable.h
> +++ b/arch/arm64/include/asm/pgtable.h
> @@ -999,13 +999,16 @@ static inline void update_mmu_cache(struct vm_area_struct *vma,
> * page after fork() + CoW for pfn mappings. We don't always have a
> * hardware-managed access flag on arm64.
> */
> -static inline bool arch_faults_on_old_pte(void)
> +static inline bool arch_has_hw_pte_young(bool local)
> {
> - WARN_ON(preemptible());
> + if (local) {
> + WARN_ON(preemptible());
> + return cpu_has_hw_af();
> + }
>
> - return !cpu_has_hw_af();
> + return system_has_hw_af();
> }
> -#define arch_faults_on_old_pte arch_faults_on_old_pte
> +#define arch_has_hw_pte_young arch_has_hw_pte_young
>
> /*
> * Experimentally, it's cheap to set the access flag in hardware and we
> @@ -1013,7 +1016,7 @@ static inline bool arch_faults_on_old_pte(void)
> */
> static inline bool arch_wants_old_prefaulted_pte(void)
> {
> - return !arch_faults_on_old_pte();
> + return arch_has_hw_pte_young(true);
> }
> #define arch_wants_old_prefaulted_pte arch_wants_old_prefaulted_pte
>
> diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
> index 6f3e677d88f1..5bb553ee2c0e 100644
> --- a/arch/arm64/kernel/cpufeature.c
> +++ b/arch/arm64/kernel/cpufeature.c
> @@ -2171,6 +2171,25 @@ static const struct arm64_cpu_capabilities arm64_features[] = {
> .matches = has_hw_dbm,
> .cpu_enable = cpu_enable_hw_dbm,
> },
> + {
> + /*
> + * __cpu_setup always enables this capability. But if the boot
> + * CPU has it and a late CPU doesn't, the absent
> + * ARM64_CPUCAP_OPTIONAL_FOR_LATE_CPU will prevent this late CPU
> + * from going online. There is neither known hardware does that
> + * nor obvious reasons to design hardware works that way, hence
> + * no point leaving the door open here. If the need arises, a
> + * new weak system feature flag should do the trick.
> + */
> + .desc = "Hardware update of the Access flag",
> + .type = ARM64_CPUCAP_SYSTEM_FEATURE,
> + .capability = ARM64_HW_AF,
> + .sys_reg = SYS_ID_AA64MMFR1_EL1,
> + .sign = FTR_UNSIGNED,
> + .field_pos = ID_AA64MMFR1_HADBS_SHIFT,
> + .min_field_value = 1,
> + .matches = has_cpuid_feature,
> + },
> #endif
> {
> .desc = "CRC32 instructions",
> diff --git a/arch/arm64/tools/cpucaps b/arch/arm64/tools/cpucaps
> index 870c39537dd0..56e4ef5d95fa 100644
> --- a/arch/arm64/tools/cpucaps
> +++ b/arch/arm64/tools/cpucaps
> @@ -36,6 +36,7 @@ HAS_STAGE2_FWB
> HAS_SYSREG_GIC_CPUIF
> HAS_TLB_RANGE
> HAS_VIRT_HOST_EXTN
> +HW_AF
> HW_DBM
> KVM_PROTECTED_MODE
> MISMATCHED_CACHE_TYPE
As discussed in the previous threads, we really don't need the complexity
of the additional cap for the arm64 part. Please can you just use the
existing code instead? It's both simpler and, as you say, it's equivalent
for existing hardware.
That way, this patch just ends up being a renaming exercise and we're all
good.
Thanks,
Will
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
* Re: [PATCH v3 2/2] ACPI: AGDI: Add driver for Arm Generic Diagnostic Dump and Reset device
From: Lorenzo Pieralisi @ 2022-01-05 10:46 UTC (permalink / raw)
To: Ilkka Koskinen
Cc: guohanjun, sudeep.holla, rafael, linux, lenb, robert.moore,
linux-acpi, linux-arm-kernel, linux-kernel, patches, scott,
darren, james.morse
In-Reply-To: <20211231033725.21109-3-ilkka@os.amperecomputing.com>
[+James, for SDEI bits]
On Thu, Dec 30, 2021 at 07:37:25PM -0800, Ilkka Koskinen wrote:
> ACPI for Arm Components 1.1 Platform Design Document v1.1 [0] specifices
> Arm Generic Diagnostic Device Interface (AGDI). It allows an admin to
> issue diagnostic dump and reset via an SDEI event or an interrupt.
> This patch implements SDEI path.
>
> [0] https://developer.arm.com/documentation/den0093/latest/
>
> Signed-off-by: Ilkka Koskinen <ilkka@os.amperecomputing.com>
> ---
> drivers/acpi/arm64/Kconfig | 8 +++
> drivers/acpi/arm64/Makefile | 1 +
> drivers/acpi/arm64/agdi.c | 125 ++++++++++++++++++++++++++++++++++++
> 3 files changed, 134 insertions(+)
> create mode 100644 drivers/acpi/arm64/agdi.c
>
> diff --git a/drivers/acpi/arm64/Kconfig b/drivers/acpi/arm64/Kconfig
> index 6dba187f4f2e..24869ba5b365 100644
> --- a/drivers/acpi/arm64/Kconfig
> +++ b/drivers/acpi/arm64/Kconfig
> @@ -8,3 +8,11 @@ config ACPI_IORT
>
> config ACPI_GTDT
> bool
> +
> +config ACPI_AGDI
> + bool "Arm Generic Diagnostic Dump and Reset Device Interface"
> + depends on ARM_SDE_INTERFACE
> + help
> + Arm Generic Diagnostic Dump and Reset Device Interface (AGDI) is
> + a standard that enables issuing a non-maskable diagnostic dump and
> + reset command.
> diff --git a/drivers/acpi/arm64/Makefile b/drivers/acpi/arm64/Makefile
> index 66acbe77f46e..7b9e4045659d 100644
> --- a/drivers/acpi/arm64/Makefile
> +++ b/drivers/acpi/arm64/Makefile
> @@ -1,4 +1,5 @@
> # SPDX-License-Identifier: GPL-2.0-only
> +obj-$(CONFIG_ACPI_AGDI) += agdi.o
> obj-$(CONFIG_ACPI_IORT) += iort.o
> obj-$(CONFIG_ACPI_GTDT) += gtdt.o
> obj-y += dma.o
> diff --git a/drivers/acpi/arm64/agdi.c b/drivers/acpi/arm64/agdi.c
> new file mode 100644
> index 000000000000..6525ccbae5c1
> --- /dev/null
> +++ b/drivers/acpi/arm64/agdi.c
> @@ -0,0 +1,125 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * This file implements handling of
> + * Arm Generic Diagnostic Dump and Reset Interface table (AGDI)
> + *
> + * Copyright (c) 2021, Ampere Computing LLC
> + */
> +
> +#define pr_fmt(fmt) "ACPI: AGDI: " fmt
> +
> +#include <linux/kernel.h>
> +#include <linux/platform_device.h>
> +#include <linux/slab.h>
> +#include <linux/module.h>
> +#include <linux/kernel.h>
> +#include <linux/acpi.h>
> +#include <linux/arm_sdei.h>
> +#include <linux/io.h>
Nit: alphabetical order.
> +
> +struct agdi_data {
> + int sdei_event;
> +};
> +
> +static int agdi_sdei_handler(u32 sdei_event, struct pt_regs *regs, void *arg)
> +{
> + nmi_panic(regs, "Arm Generic Diagnostic Dump and Reset SDEI event issued");
> + return 0;
> +}
> +
> +static int agdi_sdei_probe(struct platform_device *pdev,
> + struct agdi_data *adata)
> +{
> + int err;
> +
> + err = sdei_event_register(adata->sdei_event, agdi_sdei_handler, pdev);
> + if (err) {
> + dev_err(&pdev->dev, "Failed to register for SDEI event %d",
> + adata->sdei_event);
> + return err;
> + }
> +
> + err = sdei_event_enable(adata->sdei_event);
> + if (err) {
> + sdei_event_unregister(adata->sdei_event);
> + dev_err(&pdev->dev, "Failed to enable event %d\n",
> + adata->sdei_event);
> + return err;
> + }
> +
> + return 0;
> +}
> +
> +static int agdi_probe(struct platform_device *pdev)
> +{
> + struct agdi_data *adata;
> +
> + adata = dev_get_platdata(&pdev->dev);
> + if (!adata)
> + return -EINVAL;
> +
> + return agdi_sdei_probe(pdev, adata);
> +}
> +
> +static int agdi_remove(struct platform_device *pdev)
> +{
> + struct agdi_data *adata = platform_get_drvdata(pdev);
> +
> + sdei_event_disable(adata->sdei_event);
> + sdei_event_unregister(adata->sdei_event);
> +
> + return 0;
> +}
> +
> +static struct platform_driver agdi_driver = {
> + .driver = {
> + .name = "agdi",
> + },
> + .probe = agdi_probe,
> + .remove = agdi_remove,
> +};
May I ask why we need a platform device (and driver) to register
an SDEI event ?
> +static int __init agdi_init(void)
> +{
> + int ret;
> + acpi_status status;
> + struct acpi_table_agdi *agdi_table;
> + struct agdi_data pdata;
> + struct platform_device *pdev;
> +
> + if (acpi_disabled)
> + return 0;
Why don't we call agdi_init() from acpi_init() as we do for IORT/VIOT ?
I don't think it is necessary to add a device_initcall(), with related
ordering dependencies.
> +
> + status = acpi_get_table(ACPI_SIG_AGDI, 0,
> + (struct acpi_table_header **) &agdi_table);
> + if (ACPI_FAILURE(status))
> + return -ENODEV;
> +
> + if (agdi_table->flags & ACPI_AGDI_SIGNALING_MODE) {
Is this because specs need updating ?
> + pr_warn("Interrupt signaling is not supported");
> + ret = -ENODEV;
> + goto err_put_table;
> + }
> +
> + pdata.sdei_event = agdi_table->sdei_event;
> +
> + pdev = platform_device_register_data(NULL, "agdi", 0, &pdata, sizeof(pdata));
> + if (IS_ERR(pdev)) {
> + ret = PTR_ERR(pdev);
> + goto err_put_table;
> + }
> +
> + ret = platform_driver_register(&agdi_driver);
> + if (ret)
> + goto err_device_unregister;
> +
> + acpi_put_table((struct acpi_table_header *)agdi_table);
> + return 0;
> +
> +err_device_unregister:
> + platform_device_unregister(pdev);
> +err_put_table:
> + acpi_put_table((struct acpi_table_header *)agdi_table);
> + return ret;
> +}
> +device_initcall(agdi_init);
See above.
Thanks,
Lorenzo
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
* Re: [PATCH 1/3] linux-user: netlink: update IFLA entries
From: Laurent Vivier @ 2022-01-05 10:29 UTC (permalink / raw)
To: qemu-devel
In-Reply-To: <20211219154514.2165728-1-laurent@vivier.eu>
Le 19/12/2021 à 16:45, Laurent Vivier a écrit :
> Add IFLA_PHYS_PORT_ID, IFLA_PARENT_DEV_NAME, IFLA_PARENT_DEV_BUS_NAME
>
> # QEMU_LOG=unimp ip a
> Unknown host QEMU_IFLA type: 56
> Unknown host QEMU_IFLA type: 57
> Unknown host QEMU_IFLA type: 34
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
> linux-user/fd-trans.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/linux-user/fd-trans.c b/linux-user/fd-trans.c
> index 69410899590c..14c19a90b2b0 100644
> --- a/linux-user/fd-trans.c
> +++ b/linux-user/fd-trans.c
> @@ -138,6 +138,9 @@ enum {
> QEMU_IFLA_PROP_LIST,
> QEMU_IFLA_ALT_IFNAME,
> QEMU_IFLA_PERM_ADDRESS,
> + QEMU_IFLA_PROTO_DOWN_REASON,
> + QEMU_IFLA_PARENT_DEV_NAME,
> + QEMU_IFLA_PARENT_DEV_BUS_NAME,
> QEMU___IFLA_MAX
> };
>
> @@ -818,9 +821,12 @@ static abi_long host_to_target_data_link_rtattr(struct rtattr *rtattr)
> case QEMU_IFLA_ADDRESS:
> case QEMU_IFLA_BROADCAST:
> case QEMU_IFLA_PERM_ADDRESS:
> + case QEMU_IFLA_PHYS_PORT_ID:
> /* string */
> case QEMU_IFLA_IFNAME:
> case QEMU_IFLA_QDISC:
> + case QEMU_IFLA_PARENT_DEV_NAME:
> + case QEMU_IFLA_PARENT_DEV_BUS_NAME:
> break;
> /* uin8_t */
> case QEMU_IFLA_OPERSTATE:
Applied to my linux-user-for-7.0 branch.
Thanks,
Laurent
^ permalink raw reply
* Re: [PATCH] arm64: fix build error when use rodata_enabled
From: Mark Rutland @ 2022-01-05 10:47 UTC (permalink / raw)
To: AliOS system security
Cc: Anshuman Khandual, catalin.marinas, will, linux-arm-kernel,
linux-kernel
In-Reply-To: <0432f592-789b-7c92-8d7a-99191d7bc669@arm.com>
On Wed, Jan 05, 2022 at 02:51:05PM +0530, Anshuman Khandual wrote:
> Hello,
>
> On 1/5/22 8:37 AM, AliOS system security wrote:
> > rodata_enabled should be used when CONFIG_STRICT_KERNEL_RWX
> > or CONFIG_STRICT_MODULE_RWX is selected
Further to Anshuman's comments here, for a build issue, please include the
specific build error in the commit log, and describe the configuration where
this manifests.
For the reasons Anshuman gives below I do not see how this can be a problem in
mainline.
Thanks,
Mark.
> Both these configs get selected invariably with CONFIG_ARM64 in the
> platform config file (arch/arm64/Kconfig). I guess there can not be
> any such situation, where both configs will be missing/not selected
> given ARCH_OPTIONAL_KERNEL_RWX[or _DEFAULT] is not enabled on arm64.
>
> config ARM64
> def_bool y
> select ACPI_CCA_REQUIRED if ACPI
> .....
> select ARCH_HAS_STRICT_KERNEL_RWX
> select ARCH_HAS_STRICT_MODULE_RWX
> .....
>
> Hence for all practical purpose, rodata_enabled could be considered
> always available. I am sure there other similar situations as well,
> where code elements are not wrapped around if the config option is
> always present.
>
> >
> > Signed-off-by: AliOS system security <alios_sys_security@linux.alibaba.com>
>
> Also please refer Documentation/process/submitting-patches.rst for
> the rules regarding names, that can be used for a commit sign off.
>
> ------------------------------------------------------------------------
> then you just add a line saying::
>
> Signed-off-by: Random J Developer <random@developer.example.org>
>
> using your real name (sorry, no pseudonyms or anonymous contributions.)
> ------------------------------------------------------------------------
>
> - Anshuman
>
> > ---
> > arch/arm64/mm/mmu.c | 14 ++++++++++++--
> > 1 file changed, 12 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c
> > index acfae9b..47f8754 100644
> > --- a/arch/arm64/mm/mmu.c
> > +++ b/arch/arm64/mm/mmu.c
> > @@ -596,6 +596,7 @@ static void __init map_kernel_segment(pgd_t *pgdp, void *va_start, void *va_end,
> > vm_area_add_early(vma);
> > }
> >
> > +#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
> > static int __init parse_rodata(char *arg)
> > {
> > int ret = strtobool(arg, &rodata_enabled);
> > @@ -613,11 +614,16 @@ static int __init parse_rodata(char *arg)
> > return 0;
> > }
> > early_param("rodata", parse_rodata);
> > +#endif
> >
> > #ifdef CONFIG_UNMAP_KERNEL_AT_EL0
> > static int __init map_entry_trampoline(void)
> > {
> > - pgprot_t prot = rodata_enabled ? PAGE_KERNEL_ROX : PAGE_KERNEL_EXEC;
> > + pgprot_t prot = PAGE_KERNEL_EXEC;
> > +#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
> > + if (rodata_enabled)
> > + prot = PAGE_KERNEL_ROX;
> > +#endif
> > phys_addr_t pa_start = __pa_symbol(__entry_tramp_text_start);
> >
> > /* The trampoline is always mapped and can therefore be global */
> > @@ -672,7 +678,11 @@ static void __init map_kernel(pgd_t *pgdp)
> > * mapping to install SW breakpoints. Allow this (only) when
> > * explicitly requested with rodata=off.
> > */
> > - pgprot_t text_prot = rodata_enabled ? PAGE_KERNEL_ROX : PAGE_KERNEL_EXEC;
> > + pgprot_t text_prot = PAGE_KERNEL_EXEC;
> > +#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
> > + if (rodata_enabled)
> > + text_prot = PAGE_KERNEL_ROX;
> > +#endif
> >
> > /*
> > * If we have a CPU that supports BTI and a kernel built for
> >
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
* Re: [RFC 01/10] virtio: get class_id and pci device id by the virtio id
From: Cornelia Huck @ 2022-01-05 10:46 UTC (permalink / raw)
To: Longpeng(Mike), stefanha, mst, jasowang, sgarzare
Cc: qemu-devel, yechuan, arei.gonglei, huangzhichao, pbonzini,
Longpeng
In-Reply-To: <20220105005900.860-2-longpeng2@huawei.com>
On Wed, Jan 05 2022, "Longpeng(Mike)" <longpeng2@huawei.com> wrote:
> From: Longpeng <longpeng2@huawei.com>
>
> Add helpers to get the "Transitional PCI Device ID" and "class_id" of the
> deivce which is specificed by the "Virtio Device ID".
>
> These helpers will be used to build the generic vDPA device later.
>
> Signed-off-by: Longpeng <longpeng2@huawei.com>
> ---
> hw/virtio/virtio-pci.c | 93 ++++++++++++++++++++++++++++++++++++++++++
> hw/virtio/virtio-pci.h | 4 ++
> 2 files changed, 97 insertions(+)
>
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index 750aa47ec1..843085c4ea 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -19,6 +19,7 @@
>
> #include "exec/memop.h"
> #include "standard-headers/linux/virtio_pci.h"
> +#include "standard-headers/linux/virtio_ids.h"
> #include "hw/boards.h"
> #include "hw/virtio/virtio.h"
> #include "migration/qemu-file-types.h"
> @@ -213,6 +214,95 @@ static int virtio_pci_load_queue(DeviceState *d, int n, QEMUFile *f)
> return 0;
> }
>
> +typedef struct VirtIOPCIIDInfo {
> + uint16_t vdev_id; /* virtio id */
> + uint16_t pdev_id; /* pci device id */
> + uint16_t class_id;
> +} VirtIOPCIIDInfo;
> +
> +static const VirtIOPCIIDInfo virtio_pci_id_info[] = {
> + {
> + .vdev_id = VIRTIO_ID_NET,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_NET,
> + .class_id = PCI_CLASS_NETWORK_ETHERNET,
> + },
> + {
> + .vdev_id = VIRTIO_ID_BLOCK,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_BLOCK,
> + .class_id = PCI_CLASS_STORAGE_SCSI,
> + },
> + {
> + .vdev_id = VIRTIO_ID_CONSOLE,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_CONSOLE,
> + .class_id = PCI_CLASS_COMMUNICATION_OTHER,
> + },
> + {
> + .vdev_id = VIRTIO_ID_SCSI,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_SCSI,
> + .class_id = PCI_CLASS_STORAGE_SCSI,
> + },
> + {
> + .vdev_id = VIRTIO_ID_9P,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_9P,
> + .class_id = PCI_BASE_CLASS_NETWORK,
> + },
> + {
> + .vdev_id = VIRTIO_ID_VSOCK,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_VSOCK,
> + .class_id = PCI_CLASS_COMMUNICATION_OTHER,
> + },
> + {
> + .vdev_id = VIRTIO_ID_IOMMU,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_IOMMU,
> + .class_id = PCI_CLASS_OTHERS,
> + },
> + {
> + .vdev_id = VIRTIO_ID_MEM,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_MEM,
> + .class_id = PCI_CLASS_OTHERS,
> + },
> + {
> + .vdev_id = VIRTIO_ID_PMEM,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_PMEM,
> + .class_id = PCI_CLASS_OTHERS,
> + },
> + {
> + .vdev_id = VIRTIO_ID_RNG,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_RNG,
> + .class_id = PCI_CLASS_OTHERS,
> + },
> + {
> + .vdev_id = VIRTIO_ID_BALLOON,
> + .pdev_id = PCI_DEVICE_ID_VIRTIO_BALLOON,
> + .class_id = PCI_CLASS_OTHERS,
> + },
> +};
> +
> +static VirtIOPCIIDInfo virtio_pci_get_id_info(uint16_t vdev_id)
> +{
> + VirtIOPCIIDInfo info = {};
> + int i;
> +
> + for (i = 0; i < ARRAY_SIZE(virtio_pci_id_info); i++) {
> + if (virtio_pci_id_info[i].vdev_id == vdev_id) {
> + info = virtio_pci_id_info[i];
> + break;
> + }
> + }
> +
> + return info;
> +}
> +
> +uint16_t virtio_pci_get_pci_devid(uint16_t device_id)
> +{
> + return virtio_pci_get_id_info(device_id).pdev_id;
> +}
> +
> +uint16_t virtio_pci_get_class_id(uint16_t device_id)
> +{
> + return virtio_pci_get_id_info(device_id).class_id;
> +}
What happens if these functions are called for a device_id that is not
in the array, e.g. if we forgot to add a new id to the array?
Can the array be generated in some way?
^ permalink raw reply
* [PATCH] drm/bridge: nwl-dsi: Fix PM disable depth imbalance in nwl_dsi_probe
From: Miaoqian Lin @ 2022-01-05 10:48 UTC (permalink / raw)
Cc: linmq006, Jernej Skrabec, dri-devel, Jonas Karlman, David Airlie,
Sam Ravnborg, Guido Günther, Neil Armstrong, linux-kernel,
Robert Foss, Andrzej Hajda, Laurent Pinchart, Robert Chiras
The pm_runtime_enable will increase power disable depth.
Thus a pairing decrement is needed on the error handling
path to keep it balanced according to context.
Fixes: 44cfc62 ("drm/bridge: Add NWL MIPI DSI host controller support")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
---
drivers/gpu/drm/bridge/nwl-dsi.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/bridge/nwl-dsi.c b/drivers/gpu/drm/bridge/nwl-dsi.c
index a7389a0facfb..fc3ad9fab867 100644
--- a/drivers/gpu/drm/bridge/nwl-dsi.c
+++ b/drivers/gpu/drm/bridge/nwl-dsi.c
@@ -1206,6 +1206,7 @@ static int nwl_dsi_probe(struct platform_device *pdev)
ret = nwl_dsi_select_input(dsi);
if (ret < 0) {
+ pm_runtime_disable(dev);
mipi_dsi_host_unregister(&dsi->dsi_host);
return ret;
}
--
2.17.1
^ permalink raw reply related
* [PATCH] drm/bridge: nwl-dsi: Fix PM disable depth imbalance in nwl_dsi_probe
From: Miaoqian Lin @ 2022-01-05 10:48 UTC (permalink / raw)
Cc: linmq006, Andrzej Hajda, Neil Armstrong, Robert Foss,
Laurent Pinchart, Jonas Karlman, Jernej Skrabec, David Airlie,
Daniel Vetter, Fabio Estevam, Guido Günther, Robert Chiras,
Sam Ravnborg, dri-devel, linux-kernel
The pm_runtime_enable will increase power disable depth.
Thus a pairing decrement is needed on the error handling
path to keep it balanced according to context.
Fixes: 44cfc62 ("drm/bridge: Add NWL MIPI DSI host controller support")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
---
drivers/gpu/drm/bridge/nwl-dsi.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/bridge/nwl-dsi.c b/drivers/gpu/drm/bridge/nwl-dsi.c
index a7389a0facfb..fc3ad9fab867 100644
--- a/drivers/gpu/drm/bridge/nwl-dsi.c
+++ b/drivers/gpu/drm/bridge/nwl-dsi.c
@@ -1206,6 +1206,7 @@ static int nwl_dsi_probe(struct platform_device *pdev)
ret = nwl_dsi_select_input(dsi);
if (ret < 0) {
+ pm_runtime_disable(dev);
mipi_dsi_host_unregister(&dsi->dsi_host);
return ret;
}
--
2.17.1
^ permalink raw reply related
* [PATCH net-next] gro: add ability to control gro max packet size
From: Eric Dumazet @ 2022-01-05 10:48 UTC (permalink / raw)
To: David S . Miller, Jakub Kicinski
Cc: netdev, Eric Dumazet, Eric Dumazet, Coco Li
From: Coco Li <lixiaoyan@google.com>
Eric Dumazet suggested to allow users to modify max GRO packet size.
We have seen GRO being disabled by users of appliances (such as
wifi access points) because of claimed bufferbloat issues,
or some work arounds in sch_cake, to split GRO/GSO packets.
Instead of disabling GRO completely, one can chose to limit
the maximum packet size of GRO packets, depending on their
latency constraints.
This patch adds a per device gro_max_size attribute
that can be changed with ip link command.
ip link set dev eth0 gro_max_size 16000
Suggested-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Coco Li <lixiaoyan@google.com>
Signed-off-by: Eric Dumazet <edumazet@google.com>
---
include/linux/netdevice.h | 11 +++++++++++
include/uapi/linux/if_link.h | 1 +
net/core/dev.c | 1 +
net/core/gro.c | 6 +++++-
net/core/rtnetlink.c | 22 ++++++++++++++++++++++
tools/include/uapi/linux/if_link.h | 1 +
6 files changed, 41 insertions(+), 1 deletion(-)
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 6f99c8f51b60a9c76f5bea8cc0b62ad24c97cd78..3213c7227b59bd4f18a57d90c848e415fcd3b253 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -1942,6 +1942,8 @@ enum netdev_ml_priv_type {
* dev->addr_list_lock.
* @unlink_list: As netif_addr_lock() can be called recursively,
* keep a list of interfaces to be deleted.
+ * @gro_max_size: Maximum size of aggregated packet in generic
+ * receive offload (GRO)
*
* @dev_addr_shadow: Copy of @dev_addr to catch direct writes.
* @linkwatch_dev_tracker: refcount tracker used by linkwatch.
@@ -2131,6 +2133,8 @@ struct net_device {
struct bpf_prog __rcu *xdp_prog;
unsigned long gro_flush_timeout;
int napi_defer_hard_irqs;
+#define GRO_MAX_SIZE 65536
+ unsigned int gro_max_size;
rx_handler_func_t __rcu *rx_handler;
void __rcu *rx_handler_data;
@@ -4806,6 +4810,13 @@ static inline void netif_set_gso_max_segs(struct net_device *dev,
WRITE_ONCE(dev->gso_max_segs, segs);
}
+static inline void netif_set_gro_max_size(struct net_device *dev,
+ unsigned int size)
+{
+ /* This pairs with the READ_ONCE() in skb_gro_receive() */
+ WRITE_ONCE(dev->gro_max_size, size);
+}
+
static inline void skb_gso_error_unwind(struct sk_buff *skb, __be16 protocol,
int pulled_hlen, u16 mac_offset,
int mac_len)
diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h
index 4ac53b30b6dc93c31a6a738b3d5a537bc8eb13c3..6218f93f5c1a92b5765bc19dfb9d7583c3b9369b 100644
--- a/include/uapi/linux/if_link.h
+++ b/include/uapi/linux/if_link.h
@@ -347,6 +347,7 @@ enum {
*/
IFLA_PARENT_DEV_NAME,
IFLA_PARENT_DEV_BUS_NAME,
+ IFLA_GRO_MAX_SIZE,
__IFLA_MAX
};
diff --git a/net/core/dev.c b/net/core/dev.c
index 6c8b226b5f2f09e66c665f5dd8fa2fda6c0e6808..83a4089990a0af65364d4e244f60a83c7767cf8b 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -10180,6 +10180,7 @@ struct net_device *alloc_netdev_mqs(int sizeof_priv, const char *name,
dev->gso_max_size = GSO_MAX_SIZE;
dev->gso_max_segs = GSO_MAX_SEGS;
+ dev->gro_max_size = GRO_MAX_SIZE;
dev->upper_level = 1;
dev->lower_level = 1;
#ifdef CONFIG_LOCKDEP
diff --git a/net/core/gro.c b/net/core/gro.c
index 8ec8b44596da9c12adf7b4875e3e1a119ff8e72f..a11b286d149593827f1990fb8d06b0295fa72189 100644
--- a/net/core/gro.c
+++ b/net/core/gro.c
@@ -132,10 +132,14 @@ int skb_gro_receive(struct sk_buff *p, struct sk_buff *skb)
unsigned int headlen = skb_headlen(skb);
unsigned int len = skb_gro_len(skb);
unsigned int delta_truesize;
+ unsigned int gro_max_size;
unsigned int new_truesize;
struct sk_buff *lp;
- if (unlikely(p->len + len >= 65536 || NAPI_GRO_CB(skb)->flush))
+ /* pairs with WRITE_ONCE() in netif_set_gro_max_size() */
+ gro_max_size = READ_ONCE(p->dev->gro_max_size);
+
+ if (unlikely(p->len + len >= gro_max_size || NAPI_GRO_CB(skb)->flush))
return -E2BIG;
lp = NAPI_GRO_CB(p)->last;
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index d6eba554b13781ce25769539b91c0ef6282a42f2..e476403231f00053e1a261f31a8760325c75c941 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -1026,6 +1026,7 @@ static noinline size_t if_nlmsg_size(const struct net_device *dev,
+ nla_total_size(4) /* IFLA_NUM_RX_QUEUES */
+ nla_total_size(4) /* IFLA_GSO_MAX_SEGS */
+ nla_total_size(4) /* IFLA_GSO_MAX_SIZE */
+ + nla_total_size(4) /* IFLA_GRO_MAX_SIZE */
+ nla_total_size(1) /* IFLA_OPERSTATE */
+ nla_total_size(1) /* IFLA_LINKMODE */
+ nla_total_size(4) /* IFLA_CARRIER_CHANGES */
@@ -1728,6 +1729,7 @@ static int rtnl_fill_ifinfo(struct sk_buff *skb,
nla_put_u32(skb, IFLA_NUM_TX_QUEUES, dev->num_tx_queues) ||
nla_put_u32(skb, IFLA_GSO_MAX_SEGS, dev->gso_max_segs) ||
nla_put_u32(skb, IFLA_GSO_MAX_SIZE, dev->gso_max_size) ||
+ nla_put_u32(skb, IFLA_GRO_MAX_SIZE, dev->gro_max_size) ||
#ifdef CONFIG_RPS
nla_put_u32(skb, IFLA_NUM_RX_QUEUES, dev->num_rx_queues) ||
#endif
@@ -1880,6 +1882,7 @@ static const struct nla_policy ifla_policy[IFLA_MAX+1] = {
[IFLA_PROTO_DOWN_REASON] = { .type = NLA_NESTED },
[IFLA_NEW_IFINDEX] = NLA_POLICY_MIN(NLA_S32, 1),
[IFLA_PARENT_DEV_NAME] = { .type = NLA_NUL_STRING },
+ [IFLA_GRO_MAX_SIZE] = { .type = NLA_U32 },
};
static const struct nla_policy ifla_info_policy[IFLA_INFO_MAX+1] = {
@@ -2299,6 +2302,14 @@ static int validate_linkmsg(struct net_device *dev, struct nlattr *tb[],
}
}
+ if (tb[IFLA_GRO_MAX_SIZE]) {
+ u32 gro_max_size = nla_get_u32(tb[IFLA_GRO_MAX_SIZE]);
+
+ if (gro_max_size > GRO_MAX_SIZE) {
+ NL_SET_ERR_MSG(extack, "too big gro_max_size");
+ return -EINVAL;
+ }
+ }
return 0;
}
@@ -2772,6 +2783,15 @@ static int do_setlink(const struct sk_buff *skb,
}
}
+ if (tb[IFLA_GRO_MAX_SIZE]) {
+ u32 gro_max_size = nla_get_u32(tb[IFLA_GRO_MAX_SIZE]);
+
+ if (dev->gro_max_size ^ gro_max_size) {
+ netif_set_gro_max_size(dev, gro_max_size);
+ status |= DO_SETLINK_MODIFIED;
+ }
+ }
+
if (tb[IFLA_OPERSTATE])
set_operstate(dev, nla_get_u8(tb[IFLA_OPERSTATE]));
@@ -3222,6 +3242,8 @@ struct net_device *rtnl_create_link(struct net *net, const char *ifname,
netif_set_gso_max_size(dev, nla_get_u32(tb[IFLA_GSO_MAX_SIZE]));
if (tb[IFLA_GSO_MAX_SEGS])
netif_set_gso_max_segs(dev, nla_get_u32(tb[IFLA_GSO_MAX_SEGS]));
+ if (tb[IFLA_GRO_MAX_SIZE])
+ netif_set_gro_max_size(dev, nla_get_u32(tb[IFLA_GRO_MAX_SIZE]));
return dev;
}
diff --git a/tools/include/uapi/linux/if_link.h b/tools/include/uapi/linux/if_link.h
index 4ac53b30b6dc93c31a6a738b3d5a537bc8eb13c3..6218f93f5c1a92b5765bc19dfb9d7583c3b9369b 100644
--- a/tools/include/uapi/linux/if_link.h
+++ b/tools/include/uapi/linux/if_link.h
@@ -347,6 +347,7 @@ enum {
*/
IFLA_PARENT_DEV_NAME,
IFLA_PARENT_DEV_BUS_NAME,
+ IFLA_GRO_MAX_SIZE,
__IFLA_MAX
};
--
2.34.1.448.ga2b2bfdf31-goog
^ permalink raw reply related
* Re: [PATCH 3/8] PM: core: Add EXPORT[_GPL]_SIMPLE_DEV_PM_OPS macros
From: Jonathan Cameron @ 2022-01-05 10:48 UTC (permalink / raw)
To: Paul Cercueil
Cc: Rafael J . Wysocki, Ulf Hansson, Jonathan Cameron,
Lars-Peter Clausen, Linus Walleij, Arnd Bergmann, Len Brown,
Pavel Machek, list, linux-iio, linux-kernel, linux-mips,
linux-mmc, linux-pm
In-Reply-To: <06F85R.46PNU7YFWD631@crapouillou.net>
On Wed, 5 Jan 2022 10:15:36 +0000
Paul Cercueil <paul@crapouillou.net> wrote:
> Hi Jonathan,
>
> Le mer., janv. 5 2022 at 10:03:32 +0000, Jonathan Cameron
> <Jonathan.Cameron@Huawei.com> a écrit :
> > On Tue, 4 Jan 2022 21:42:09 +0000
> > Paul Cercueil <paul@crapouillou.net> wrote:
> >
> >> These macros are defined conditionally, according to CONFIG_PM:
> >> - if CONFIG_PM is enabled, these macros resolve to
> >> DEFINE_SIMPLE_DEV_PM_OPS(), and the dev_pm_ops symbol will be
> >> exported.
> >>
> >> - if CONFIG_PM is disabled, these macros will result in a dummy
> >> static
> >> dev_pm_ops to be created with the __maybe_unused flag. The
> >> dev_pm_ops
> >> will then be discarded by the compiler, along with the provided
> >> callback functions if they are not used anywhere else.
> >>
> >> In the second case, the symbol is not exported, which should be
> >> perfectly fine - users of the symbol should all use the pm_ptr() or
> >> pm_sleep_ptr() macro, so the dev_pm_ops marked as "extern" in the
> >> client's code will never be accessed.
> >>
> >> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> >> ---
> >> include/linux/pm.h | 33 ++++++++++++++++++++++++++++++---
> >> 1 file changed, 30 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/include/linux/pm.h b/include/linux/pm.h
> >> index 389e600df233..a1ce29566aea 100644
> >> --- a/include/linux/pm.h
> >> +++ b/include/linux/pm.h
> >> @@ -8,6 +8,7 @@
> >> #ifndef _LINUX_PM_H
> >> #define _LINUX_PM_H
> >>
> >> +#include <linux/export.h>
> >> #include <linux/list.h>
> >> #include <linux/workqueue.h>
> >> #include <linux/spinlock.h>
> >> @@ -357,14 +358,40 @@ struct dev_pm_ops {
> >> #define SET_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn)
> >> #endif
> >>
> >> +#define _DEFINE_DEV_PM_OPS(name, \
> >> + suspend_fn, resume_fn, \
> >> + runtime_suspend_fn, runtime_resume_fn, idle_fn) \
> >> +const struct dev_pm_ops name = { \
> >> + SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn) \
> >> + RUNTIME_PM_OPS(runtime_suspend_fn, runtime_resume_fn, idle_fn) \
> >> +}
> >> +
> >
> > one blank line probably enough.
> >
> >> +
> >> /*
> >> * Use this if you want to use the same suspend and resume
> >> callbacks for suspend
> >> * to RAM and hibernation.
> >> */
> >> #define DEFINE_SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
> >> -const struct dev_pm_ops name = { \
> >> - SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn) \
> >> -}
> >> + _DEFINE_DEV_PM_OPS(name, suspend_fn, resume_fn, NULL, NULL, NULL)
> >> +
> >> +#ifdef CONFIG_PM
> >> +#define _EXPORT_DEV_PM_OPS(name, suspend_fn, resume_fn,
> >> runtime_suspend_fn, \
> >> + runtime_resume_fn, idle_fn, sec) \
> >> + _DEFINE_DEV_PM_OPS(name, suspend_fn, resume_fn,
> >> runtime_suspend_fn, \
> >> + runtime_resume_fn, idle_fn); \
> >> + _EXPORT_SYMBOL(name, sec)
> >> +#else
> >> +#define _EXPORT_DEV_PM_OPS(name, suspend_fn, resume_fn,
> >> runtime_suspend_fn, \
> >> + runtime_resume_fn, idle_fn, sec) \
> >> +static __maybe_unused _DEFINE_DEV_PM_OPS(__static_##name,
> >> suspend_fn, \
> >> + resume_fn, runtime_suspend_fn, \
> >> + runtime_resume_fn, idle_fn)
> >> +#endif
> >> +
> >> +#define EXPORT_SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
> >> + _EXPORT_DEV_PM_OPS(name, suspend_fn, resume_fn, NULL, NULL, NULL,
> >> "")
> >> +#define EXPORT_GPL_SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
> >> + _EXPORT_DEV_PM_OPS(name, suspend_fn, resume_fn, NULL, NULL, NULL,
> >> "_gpl")
> >
> > So you can get away with these two cases because the
> > SYSTEM_SLEEP_PM_OPS() all have
> > pm_sleep_ptr() wrappers. However, _EXPORT_DEV_PM_OPS() could be used
> > directly and
> > would require __maybe_unused for the RUNTIME_PM_OPS() parameters
> > which isn't ideal.
>
> I don't see why. On both cases (CONFIG_PM enabled/disabled) the
> runtime-PM callbacks are referenced directly, so at no point do they
> appear as unused; therefore __maybe_unused is not needed.
Ah. I'd miss followed things through. Indeed the 'magic' __static_xxx_pm_ops
structure maintains a reference that the compiler can then remove.
On the plus side, turned out I'd not done a full set of tests with my
own patch set and found one bug in that :)
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
>
> Cheers,
> -Paul
>
> > Maybe I'm missing some reason that isn't a problem though as easy to
> > get lost in
> > these macros. :)
> >
> > You could argue that the _ is meant to indicate that macro shouldn't
> > be used directly
> > but I'm not that optimistic.
> >
> > Jonathan
> >
> >
> >
> >>
> >> /* Deprecated. Use DEFINE_SIMPLE_DEV_PM_OPS() instead. */
> >> #define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
> >
>
>
^ permalink raw reply
* Re: [PATCH] arm64: fix build error when use rodata_enabled
From: Mark Rutland @ 2022-01-05 10:47 UTC (permalink / raw)
To: AliOS system security
Cc: Anshuman Khandual, catalin.marinas, will, linux-arm-kernel,
linux-kernel
In-Reply-To: <0432f592-789b-7c92-8d7a-99191d7bc669@arm.com>
On Wed, Jan 05, 2022 at 02:51:05PM +0530, Anshuman Khandual wrote:
> Hello,
>
> On 1/5/22 8:37 AM, AliOS system security wrote:
> > rodata_enabled should be used when CONFIG_STRICT_KERNEL_RWX
> > or CONFIG_STRICT_MODULE_RWX is selected
Further to Anshuman's comments here, for a build issue, please include the
specific build error in the commit log, and describe the configuration where
this manifests.
For the reasons Anshuman gives below I do not see how this can be a problem in
mainline.
Thanks,
Mark.
> Both these configs get selected invariably with CONFIG_ARM64 in the
> platform config file (arch/arm64/Kconfig). I guess there can not be
> any such situation, where both configs will be missing/not selected
> given ARCH_OPTIONAL_KERNEL_RWX[or _DEFAULT] is not enabled on arm64.
>
> config ARM64
> def_bool y
> select ACPI_CCA_REQUIRED if ACPI
> .....
> select ARCH_HAS_STRICT_KERNEL_RWX
> select ARCH_HAS_STRICT_MODULE_RWX
> .....
>
> Hence for all practical purpose, rodata_enabled could be considered
> always available. I am sure there other similar situations as well,
> where code elements are not wrapped around if the config option is
> always present.
>
> >
> > Signed-off-by: AliOS system security <alios_sys_security@linux.alibaba.com>
>
> Also please refer Documentation/process/submitting-patches.rst for
> the rules regarding names, that can be used for a commit sign off.
>
> ------------------------------------------------------------------------
> then you just add a line saying::
>
> Signed-off-by: Random J Developer <random@developer.example.org>
>
> using your real name (sorry, no pseudonyms or anonymous contributions.)
> ------------------------------------------------------------------------
>
> - Anshuman
>
> > ---
> > arch/arm64/mm/mmu.c | 14 ++++++++++++--
> > 1 file changed, 12 insertions(+), 2 deletions(-)
> >
> > diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c
> > index acfae9b..47f8754 100644
> > --- a/arch/arm64/mm/mmu.c
> > +++ b/arch/arm64/mm/mmu.c
> > @@ -596,6 +596,7 @@ static void __init map_kernel_segment(pgd_t *pgdp, void *va_start, void *va_end,
> > vm_area_add_early(vma);
> > }
> >
> > +#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
> > static int __init parse_rodata(char *arg)
> > {
> > int ret = strtobool(arg, &rodata_enabled);
> > @@ -613,11 +614,16 @@ static int __init parse_rodata(char *arg)
> > return 0;
> > }
> > early_param("rodata", parse_rodata);
> > +#endif
> >
> > #ifdef CONFIG_UNMAP_KERNEL_AT_EL0
> > static int __init map_entry_trampoline(void)
> > {
> > - pgprot_t prot = rodata_enabled ? PAGE_KERNEL_ROX : PAGE_KERNEL_EXEC;
> > + pgprot_t prot = PAGE_KERNEL_EXEC;
> > +#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
> > + if (rodata_enabled)
> > + prot = PAGE_KERNEL_ROX;
> > +#endif
> > phys_addr_t pa_start = __pa_symbol(__entry_tramp_text_start);
> >
> > /* The trampoline is always mapped and can therefore be global */
> > @@ -672,7 +678,11 @@ static void __init map_kernel(pgd_t *pgdp)
> > * mapping to install SW breakpoints. Allow this (only) when
> > * explicitly requested with rodata=off.
> > */
> > - pgprot_t text_prot = rodata_enabled ? PAGE_KERNEL_ROX : PAGE_KERNEL_EXEC;
> > + pgprot_t text_prot = PAGE_KERNEL_EXEC;
> > +#if defined(CONFIG_STRICT_KERNEL_RWX) || defined(CONFIG_STRICT_MODULE_RWX)
> > + if (rodata_enabled)
> > + text_prot = PAGE_KERNEL_ROX;
> > +#endif
> >
> > /*
> > * If we have a CPU that supports BTI and a kernel built for
> >
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.