From 1ee623bc408713abc9761ad9e7e4661dba2c353b Mon Sep 17 00:00:00 2001 From: Swung0x48 Date: Sun, 20 Sep 2026 00:09:57 -0400 Subject: [PATCH] [MG_Test] (Disaggregated): P5f close - require barriered legacy reads to remain retired --- MobileGL/MG_Test/Wire/RemoteClientTest.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/MobileGL/MG_Test/Wire/RemoteClientTest.cpp b/MobileGL/MG_Test/Wire/RemoteClientTest.cpp index 7773ad01..60e41fc2 100644 --- a/MobileGL/MG_Test/Wire/RemoteClientTest.cpp +++ b/MobileGL/MG_Test/Wire/RemoteClientTest.cpp @@ -2521,9 +2521,9 @@ TEST(RemoteGuards, AResidualPullUnderAnUnbarrieredRecordIsFatalWithoutTheStrictK ExpectNamedAbort(child, "Fatal{UnmigratedPipeInput, \"GetProgramObject@Clear\"}"); } -// The control: the SAME probe inside a BARRIERED record is P5C's counted residual pull, and -// with the strict knob off it counts and carries on. Ruling 4 is this line - a barriered -// record keeps P5C's semantics exactly, because the client is parked in its own wait. +// P5f retires this formerly admitted read. A barrier can order a record but cannot +// turn a client ProgramObject into a server-owned value. The historical name stays +// registered for G14; both barrier states now have the same named refusal. TEST(RemoteGuards, AResidualPullUnderABarrieredRecordStillOnlyCounts) { const auto child = RunInChild([] { MG_Config::Ipc.StrictErrors = false; @@ -2540,7 +2540,7 @@ TEST(RemoteGuards, AResidualPullUnderABarrieredRecordStillOnlyCounts) { nullptr); ClientSessionInstance().Stop(); }); - ExpectChildSuccess(child); + ExpectNamedAbort(child, "Fatal{UnmigratedPipeInput, \"GetProgramObject@Clear\"}"); } // ยง2.6's RED-ONCE, and the one the brief names: ~300 KiB of kEventGpuWritten published from