On October 28, 2025 11:54:43 PM PDT, Brian Gerst <[email protected]> wrote:
>On Sun, Oct 26, 2025 at 6:12 PM H. Peter Anvin <[email protected]> wrote:
>>
>> There is no fundamental reason for the int80_landing_pad symbol. If ip
>> falls within the vdso, and the vdso is moved, we should change the ip
>> accordingly, regardless of mode or location within the vdso. This
>> *currently* can only happen on 32 bits, but there isn't any reason not
>> to do so generically.
>>
>> Note that if this is ever possible from a vdso-internal call, then the
>> user space stack will also needed to be adjusted (as well as the
>> shadow stack, if enabled.) Fortunately this is not currently the case.
>>
>> At the moment, we don't even consider other threads when moving the
>> vdso. The assumption is that it is only used by process freeze/thaw
>> for migration, where this is not an issue.
>>
>> Signed-off-by: H. Peter Anvin (Intel) <[email protected]>
>> ---
>>  arch/x86/entry/vdso/vdso32/system_call.S |  1 -
>>  arch/x86/entry/vdso/vma.c                | 16 ++++++----------
>>  arch/x86/tools/vdso2c.c                  |  1 -
>>  3 files changed, 6 insertions(+), 12 deletions(-)
>>
>> diff --git a/arch/x86/entry/vdso/vdso32/system_call.S 
>> b/arch/x86/entry/vdso/vdso32/system_call.S
>> index 2a15634bbe75..d14eca4403c5 100644
>> --- a/arch/x86/entry/vdso/vdso32/system_call.S
>> +++ b/arch/x86/entry/vdso/vdso32/system_call.S
>> @@ -62,7 +62,6 @@ __kernel_vsyscall:
>>
>>         /* Enter using int $0x80 */
>>         int     $0x80
>> -SYM_INNER_LABEL(int80_landing_pad, SYM_L_GLOBAL)
>
>This is still needed by do_fast_syscall_32().
>
>
>Brian Gerst
>

Yeah, that was a complete brainfart on my part. I'm already reworking the 
patchset, fixing this and adding more improvements. 

Reply via email to