Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'x86-urgent-2024-06-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 fixes from Ingo Molnar:

- Fix the 8 bytes get_user() logic on x86-32

- Fix build bug that creates weird & mistaken target directory under
arch/x86/

* tag 'x86-urgent-2024-06-15' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/boot: Don't add the EFI stub to targets, again
x86/uaccess: Fix missed zeroing of ia32 u64 get_user() range checking

+9 -5
+2 -2
arch/x86/boot/compressed/Makefile
··· 105 105 106 106 vmlinux-objs-$(CONFIG_EFI) += $(obj)/efi.o 107 107 vmlinux-objs-$(CONFIG_EFI_MIXED) += $(obj)/efi_mixed.o 108 - vmlinux-objs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a 108 + vmlinux-libs-$(CONFIG_EFI_STUB) += $(objtree)/drivers/firmware/efi/libstub/lib.a 109 109 110 - $(obj)/vmlinux: $(vmlinux-objs-y) FORCE 110 + $(obj)/vmlinux: $(vmlinux-objs-y) $(vmlinux-libs-y) FORCE 111 111 $(call if_changed,ld) 112 112 113 113 OBJCOPYFLAGS_vmlinux.bin := -R .comment -S
+2 -2
arch/x86/include/asm/uaccess.h
··· 78 78 int __ret_gu; \ 79 79 register __inttype(*(ptr)) __val_gu asm("%"_ASM_DX); \ 80 80 __chk_user_ptr(ptr); \ 81 - asm volatile("call __" #fn "_%c4" \ 81 + asm volatile("call __" #fn "_%c[size]" \ 82 82 : "=a" (__ret_gu), "=r" (__val_gu), \ 83 83 ASM_CALL_CONSTRAINT \ 84 - : "0" (ptr), "i" (sizeof(*(ptr)))); \ 84 + : "0" (ptr), [size] "i" (sizeof(*(ptr)))); \ 85 85 instrument_get_user(__val_gu); \ 86 86 (x) = (__force __typeof__(*(ptr))) __val_gu; \ 87 87 __builtin_expect(__ret_gu, 0); \
+5 -1
arch/x86/lib/getuser.S
··· 44 44 or %rdx, %rax 45 45 .else 46 46 cmp $TASK_SIZE_MAX-\size+1, %eax 47 + .if \size != 8 47 48 jae .Lbad_get_user 49 + .else 50 + jae .Lbad_get_user_8 51 + .endif 48 52 sbb %edx, %edx /* array_index_mask_nospec() */ 49 53 and %edx, %eax 50 54 .endif ··· 158 154 #ifdef CONFIG_X86_32 159 155 SYM_CODE_START_LOCAL(__get_user_8_handle_exception) 160 156 ASM_CLAC 161 - bad_get_user_8: 157 + .Lbad_get_user_8: 162 158 xor %edx,%edx 163 159 xor %ecx,%ecx 164 160 mov $(-EFAULT),%_ASM_AX