diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2020-05-31 10:45:11 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2020-05-31 10:45:11 -0700 |
commit | 8fc984aedcedbbabae91d8496bd0b608c0749a98 (patch) | |
tree | c0f63cf03677c64b07e33421e3040c663368d3d7 /arch/x86/include/uapi/asm/unistd.h | |
parent | 3d0428232909d9aa9248c3724f04a333f6f53bb3 (diff) | |
parent | aa61b7bb00f7c0738823237a06161d568442b93c (diff) | |
download | linux-8fc984aedcedbbabae91d8496bd0b608c0749a98.tar.gz linux-8fc984aedcedbbabae91d8496bd0b608c0749a98.tar.bz2 linux-8fc984aedcedbbabae91d8496bd0b608c0749a98.zip |
Merge tag 'x86-urgent-2020-05-31' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 fixes from Thomas Gleixner:
"A pile of x86 fixes:
- Prevent a memory leak in ioperm which was caused by the stupid
assumption that the exit cleanup is always called for current,
which is not the case when fork fails after taking a reference on
the ioperm bitmap.
- Fix an arithmething overflow in the DMA code on 32bit systems
- Fill gaps in the xstate copy with defaults instead of leaving them
uninitialized
- Revert: "Make __X32_SYSCALL_BIT be unsigned long" as it turned out
that existing user space fails to build"
* tag 'x86-urgent-2020-05-31' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/ioperm: Prevent a memory leak when fork fails
x86/dma: Fix max PFN arithmetic overflow on 32 bit systems
copy_xstate_to_kernel(): don't leave parts of destination uninitialized
x86/syscalls: Revert "x86/syscalls: Make __X32_SYSCALL_BIT be unsigned long"
Diffstat (limited to 'arch/x86/include/uapi/asm/unistd.h')
-rw-r--r-- | arch/x86/include/uapi/asm/unistd.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/arch/x86/include/uapi/asm/unistd.h b/arch/x86/include/uapi/asm/unistd.h index 196fdd02b8b1..be5e2e747f50 100644 --- a/arch/x86/include/uapi/asm/unistd.h +++ b/arch/x86/include/uapi/asm/unistd.h @@ -2,8 +2,15 @@ #ifndef _UAPI_ASM_X86_UNISTD_H #define _UAPI_ASM_X86_UNISTD_H -/* x32 syscall flag bit */ -#define __X32_SYSCALL_BIT 0x40000000UL +/* + * x32 syscall flag bit. Some user programs expect syscall NR macros + * and __X32_SYSCALL_BIT to have type int, even though syscall numbers + * are, for practical purposes, unsigned long. + * + * Fortunately, expressions like (nr & ~__X32_SYSCALL_BIT) do the right + * thing regardless. + */ +#define __X32_SYSCALL_BIT 0x40000000 #ifndef __KERNEL__ # ifdef __i386__ |