mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-11-07 10:03:23 +09:00
P9 — 反向通道(待排,P6.5 之后)
2026-09-29:范围已按树里现状重划,实现交接见
HANDOFF-P9.md(先读它的 §2:路线图下面的原文有一半已经做完或前提已变)。 尚未开工。本页保存该阶段在路线图上的完整范围与出口门(2026-09-24 从ROADMAP.md阶段表移入,原文照录);阶段开工后,计划、裁定与报告都放在本目录。
摘要
- 异步 reply 语义,建立在 P6.5 的消息式 reply 之上;2 MiB reply cap 与 chunked readback(ID-47);PACK-PBO 回读 fire-and-forget(ID-57);武装剩余回调(
OnTextureWriteback、OnTexturePullRequest、OnMipLevelsGenerated、OnLog分级);OnGlError有序;纹理拉取缓解 + 终止符;XFB 命名空间(DeleteTransformFeedback)。 - 门:回读 / XFB 场景在 split 下绿;
TextureRemintPullScenario;拉取计数逐 trace 发布;两条故障注入。
阶段表行(原 ROADMAP.md)
- 阶段:P9 反向通道
- 状态:待排,P6.5 之后(2026-09-22 重定范围)
- 落地什么 / 范围:异步 reply 语义,机制建立在 P6.5 的消息式 reply 之上(不再造
SEG_REPLYslot 池——池今天就有,stream 链路会删它);2 MiB reply cap 与 chunked readback(契约 §10.2.3 从 P6 改判至此,ID-47);PACK-PBO 回读 fire-and-forget + client 侧MarkGpuWritten(ID-57,P6 未做);十个回调里未武装的四个:OnTextureWriteback、OnTexturePullRequest、OnMipLevelsGenerated、OnLog分级(OnXfbScatterReady是零生产者、零消费者、无 EventKind 的死声明——随 P3b/P4b 删除,kMGPipeCallbackCount10→9;ClientSession.cpp:429;OnBufferWriteback/OnGpuWritten/OnSurfaceChanged/OnGlError/OnCapsInvalidated已武装);OnGpuWritten收窄;OnBufferWriteback批处理 + epoch 排序;OnGlError有序(CONTRACT-P5C §4.2);纹理拉取四条缓解 + 终止符;XFB 命名空间(DeleteTransformFeedback的 server 侧泄漏——按裁定无行、最后两个 class-C 之一)。机制已由 P5e 落地(SEG_EVENT溢出策略ARCHITECTURE.md§11.7),剩余的"不排空对端杀宿主"归 Ph - 验收门 / 证据:回读 / XFB 场景在 split 下绿;
TextureRemintPullScenario(含无解用例);拉取计数逐 trace 发布;两条故障注入