Re: [PATCH v26 24/30] x86/cet/shstk: Introduce shadow stack token setup/verify routines

From: Yu, Yu-cheng
Date: Tue May 18 2021 - 14:05:39 EST

On 5/17/2021 5:14 PM, Eugene Syromiatnikov wrote:
On Mon, May 17, 2021 at 01:55:01PM -0700, Yu, Yu-cheng wrote:
On 5/17/2021 12:45 AM, Borislav Petkov wrote:
On Tue, Apr 27, 2021 at 01:43:09PM -0700, Yu-cheng Yu wrote:
+static inline int write_user_shstk_32(u32 __user *addr, u32 val)
+ WARN_ONCE(1, "%s used but not supported.\n", __func__);
+ return -EFAULT;

What is that supposed to catch? Any concrete (mis-)use cases?

If 32-bit apps are not supported, there should be no need of 32-bit shadow
stack write, otherwise there is a bug.

Speaking of which, I wonder what would happen if a 64-bit process makes
a 32-bit system call (using int 0x80, for example), and gets a signal.

Yes, that's right. Thanks! I should have said, if neither IA32 nor X32 is supported.