Thread (8 messages) 8 messages, 4 authors, 2021-09-28

Re: [PATCH RESEND 2/2] x86/mm: Randomize va with generic arch_pick_mmap_layout()

From: Xiongwei Song <hidden>
Date: 2021-09-22 13:28:55
Also in: lkml

On Sep 21, 2021, at 10:41 PM, Peter Zijlstra [off-list ref] wrote:

On Tue, Sep 21, 2021 at 10:34:14PM +0800, sxwjean@me.com wrote:
quoted
diff --git a/arch/x86/include/asm/compat.h b/arch/x86/include/asm/compat.h
index 7516e4199b3c..c697e377644d 100644
--- a/arch/x86/include/asm/compat.h
+++ b/arch/x86/include/asm/compat.h
@@ -151,6 +151,11 @@ struct compat_shmid64_ds {
	compat_ulong_t __unused5;
};

+static inline int is_compat_task(void)
+{
+	return IS_ENABLED(CONFIG_COMPAT) && test_thread_flag(TIF_32BIT);
+}
+
This is still fundamentally broken for x86. x86 doesn't have compat
tasks, the granularity is at syscall at best.
Hi Peter,

Thank you for pointing this out. I understand now a 64bit task can call a 32bit syscall. 
Here we should use in_compat_syscall() to check if the kernel is in compat mode, right?

Regards,
Xiongwei
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help