On March 24, 2026 7:46:26 AM PDT, Andrew Cooper <[email protected]> 
wrote:
>On 24/03/2026 2:33 pm, H. Peter Anvin wrote:
>> On March 24, 2026 7:08:14 AM PDT, Andrew Cooper <[email protected]> 
>> wrote:
>>> On 23/03/2026 8:27 pm, H. Peter Anvin wrote:
>>>> On 2026-03-23 12:17, Andrew Cooper wrote:
>>>>> This doesn't really test whether FRED is active.  It tests whether the
>>>>> OS is not providing strict backwards compatibility, and I think will
>>>>> malfunction when there's a hypervisor above Linux providing strict
>>>>> backwards compatibility.
>>>>>
>>>> But that applies equally to IRET, no? If the hypervisor clobbers the 
>>>> segment
>>>> selector like IRET would in the interest of compatibility then you have the
>>>> same issue.
>>> I suppose.  I for one don't care to provide that level of compatibility.
>>>
>>> But for SYSCALL, what are Linux's plans for CRIU or RR ?  I had to fix
>>> SYSCALL legacy behaviour in Xen for the following case:
>>>
>>> * PV guest issues SYSCALL on FRED system.  %rcx/%r11 not clobbered
>>> * Migrate to a non-FRED system
>>> * Xen uses a real SYSRET instruction to resume execution
>>>
>>>
>>> Here, the guest continues executing at whichever dead variable is in %rcx.
>>>
>>> CRIU/RR won't be exactly the same, but will suffer the same class of
>>> problem when moving between FRED and non-FRED systems.
>>>
>>> ~Andrew
>> "Doctor, it hurts when I PV?"
>
>I'm asking straight up, what is Linux doing to fix this same issue for
>CRIU/RR?
>
>~Andrew
>
>P.S.  It's rhetorical, seeing as it's taken between Linux 6.9 and now (2
>whole years) for anyone to even run the x86 selftests on a FRED system.

That's not true, and in fact *this exact bug was fixed once already*; 
apparently someone "fixed the fix?"

I'm well and truly confused by it.

Reply via email to