summaryrefslogtreecommitdiffstats
path: root/arch/x86/entry
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2020-11-16 20:51:59 +0100
committerThomas Gleixner <tglx@linutronix.de>2020-11-16 20:51:59 +0100
commit4cffe21d4a6272ae905b3e915778b1fb1300f267 (patch)
treecefe7d2d63a635805d20e7f11699678de8fc9419 /arch/x86/entry
parent78a56e0494ad29feccd4c54c2b5682721f8cb988 (diff)
parentc8d5ed67936fddbe2ae845fc80397718006322d7 (diff)
downloadlinux-stable-4cffe21d4a6272ae905b3e915778b1fb1300f267.tar.gz
linux-stable-4cffe21d4a6272ae905b3e915778b1fb1300f267.tar.bz2
linux-stable-4cffe21d4a6272ae905b3e915778b1fb1300f267.zip
Merge branch 'x86/entry' into core/entry
Prepare for the merging of the syscall_work series which conflicts with the TIF bits overhaul in X86.
Diffstat (limited to 'arch/x86/entry')
-rw-r--r--arch/x86/entry/vdso/vma.c4
-rw-r--r--arch/x86/entry/vsyscall/vsyscall_64.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/entry/vdso/vma.c b/arch/x86/entry/vdso/vma.c
index 9185cb1d13b9..50e5d3a2e70a 100644
--- a/arch/x86/entry/vdso/vma.c
+++ b/arch/x86/entry/vdso/vma.c
@@ -413,10 +413,10 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
#ifdef CONFIG_COMPAT
int compat_arch_setup_additional_pages(struct linux_binprm *bprm,
- int uses_interp)
+ int uses_interp, bool x32)
{
#ifdef CONFIG_X86_X32_ABI
- if (test_thread_flag(TIF_X32)) {
+ if (x32) {
if (!vdso64_enabled)
return 0;
return map_vdso_randomized(&vdso_image_x32);
diff --git a/arch/x86/entry/vsyscall/vsyscall_64.c b/arch/x86/entry/vsyscall/vsyscall_64.c
index 44c33103a955..1b40b9297083 100644
--- a/arch/x86/entry/vsyscall/vsyscall_64.c
+++ b/arch/x86/entry/vsyscall/vsyscall_64.c
@@ -316,7 +316,7 @@ static struct vm_area_struct gate_vma __ro_after_init = {
struct vm_area_struct *get_gate_vma(struct mm_struct *mm)
{
#ifdef CONFIG_COMPAT
- if (!mm || mm->context.ia32_compat)
+ if (!mm || !(mm->context.flags & MM_CONTEXT_HAS_VSYSCALL))
return NULL;
#endif
if (vsyscall_mode == NONE)