[mark:arm64/percpu-fixup 11/18] arch/arm64/kernel/entry.S:1064: Error: operand 1 must be an integer register -- `ldrh w,[,#320]'
kernel test robot <[email protected]> Tue, 04 Aug 2026 21:50:08 +0800
| Newsgroups | dev.linux.lists.oe-kbuild-all |
|---|---|
| Message-ID | <[email protected]> |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git arm64/percpu-fixup head: 9e0b9ccad924850288def352da05df0b54fb8aa8 commit: 636f49109b313ff05fac31d2d369c535b399d9a1 [11/18] arm64: percpu: Add infrastructure for preemptible this_cpu_*() ops config: arm64-randconfig-004-20260804 (https://download.01.org/0day-ci/archive/20260804/[email protected]/config) compiler: aarch64-linux-gcc (GCC) 9.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260804/[email protected]/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): arch/arm64/kernel/entry.S: Assembler messages: >> arch/arm64/kernel/entry.S:1064: Error: operand 1 must be an integer register -- `ldrh w,[,#320]' >> arch/arm64/kernel/entry.S:1064: Error: operand 1 must be an integer register -- `strh w,[tsk,#28]' vim +1064 arch/arm64/kernel/entry.S 1040 1041 /* 1042 * We may have interrupted userspace, or a guest, or exit-from or 1043 * return-to either of these. Preserve the interrupted sp_el0, and 1044 * initialize sp_el0 to the current task. 1045 */ 1046 mrs x20, sp_el0 1047 ldr_this_cpu dst=tsk, sym=__entry_task, tmp=x1 1048 msr sp_el0, tsk 1049 1050 /* If we interrupted the kernel point to the previous stack/frame. */ 1051 and x0, x3, #0xc 1052 mrs x1, CurrentEL 1053 cmp x0, x1 1054 csel x29, x29, xzr, eq // fp, or zero 1055 csel x4, x2, xzr, eq // elr, or zero 1056 1057 stp x29, x4, [sp, #-16]! 1058 mov x29, sp 1059 1060 add x0, x19, #SDEI_EVENT_INTREGS 1061 mov x1, x19 1062 pcpu_gprs_entry tsk, x0, x2 1063 bl __sdei_handler > 1064 pcpu_gprs_exit tsk 1065 1066 msr sp_el0, x20 1067 /* restore regs >x17 that firmware won't restore */ 1068 mov x4, x19 // keep x4 for __sdei_asm_exit_trampoline 1069 ldp x18, x19, [x4, #SDEI_EVENT_INTREGS + 16 * 9] 1070 ldp x20, x21, [x4, #SDEI_EVENT_INTREGS + 16 * 10] 1071 ldp x22, x23, [x4, #SDEI_EVENT_INTREGS + 16 * 11] 1072 ldp x24, x25, [x4, #SDEI_EVENT_INTREGS + 16 * 12] 1073 ldp x22, x27, [x4, #SDEI_EVENT_INTREGS + 16 * 13] 1074 ldp x28, x29, [x4, #SDEI_EVENT_INTREGS + 16 * 14] 1075 ldp lr, x1, [x4, #SDEI_EVENT_INTREGS + S_LR] 1076 mov sp, x1 1077 1078 mov x1, x0 // address to complete_and_resume 1079 /* x0 = (x0 <= SDEI_EV_FAILED) ? 1080 * EVENT_COMPLETE:EVENT_COMPLETE_AND_RESUME 1081 */ 1082 cmp x0, #SDEI_EV_FAILED 1083 mov_q x2, SDEI_1_0_FN_SDEI_EVENT_COMPLETE 1084 mov_q x3, SDEI_1_0_FN_SDEI_EVENT_COMPLETE_AND_RESUME 1085 csel x0, x2, x3, ls 1086 1087 ldr_l x2, sdei_exit_mode 1088 1089 /* Clear the registered-event seen by crash_smp_send_stop() */ 1090 ldrb w3, [x4, #SDEI_EVENT_PRIORITY] 1091 cbnz w3, 1f 1092 adr_this_cpu dst=x5, sym=sdei_active_normal_event, tmp=x6 1093 b 2f 1094 1: adr_this_cpu dst=x5, sym=sdei_active_critical_event, tmp=x6 1095 2: str xzr, [x5] 1096 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki