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 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

Pull arm64 fixes from Catalin Marinas:

- Bring the PTRACE_SYSEMU semantics in line with the man page.

- Annotate variable assignment in get_user() with the type to avoid
sparse warnings.

* tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
arm64: Add get_user() type annotation on the !access_ok() path
arm64: Fix PTRACE_SYSEMU semantics

+5 -4
+1 -1
arch/arm64/include/asm/uaccess.h
··· 304 304 __p = uaccess_mask_ptr(__p); \ 305 305 __raw_get_user((x), __p, (err)); \ 306 306 } else { \ 307 - (x) = 0; (err) = -EFAULT; \ 307 + (x) = (__force __typeof__(x))0; (err) = -EFAULT; \ 308 308 } \ 309 309 } while (0) 310 310
+4 -3
arch/arm64/kernel/ptrace.c
··· 1829 1829 1830 1830 int syscall_trace_enter(struct pt_regs *regs) 1831 1831 { 1832 - if (test_thread_flag(TIF_SYSCALL_TRACE) || 1833 - test_thread_flag(TIF_SYSCALL_EMU)) { 1832 + unsigned long flags = READ_ONCE(current_thread_info()->flags); 1833 + 1834 + if (flags & (_TIF_SYSCALL_EMU | _TIF_SYSCALL_TRACE)) { 1834 1835 tracehook_report_syscall(regs, PTRACE_SYSCALL_ENTER); 1835 - if (!in_syscall(regs) || test_thread_flag(TIF_SYSCALL_EMU)) 1836 + if (!in_syscall(regs) || (flags & _TIF_SYSCALL_EMU)) 1836 1837 return -1; 1837 1838 } 1838 1839