swung0x48
|
5973bf353b
|
[CI] (scripts/data): lower the hygiene and structure baselines after the renderer split
|
2026-10-16 04:30:51 -04:00 |
|
swung0x48
|
16994dc994
|
[Docs] (MG_Backend/Record, MG_IntegrationTest/Scenarios): cite symbols the split left past their files' ends
|
2026-10-16 04:30:26 -04:00 |
|
swung0x48
|
7f7c596213
|
[Docs] (docs/Disaggregated, docs/MobileVA, docs/Performance, MG_Impl/Pipe, MG_IntegrationTest/Scenarios, MG_State/GLState, MG_Test/Buffer, MG_Test/Wire, scripts/ci): name the renderer's new files
|
2026-10-16 04:28:53 -04:00 |
|
swung0x48
|
98c8e8833c
|
[Refactor] (CMakeLists.txt, MG_Backend/DirectVulkan): split VulkanRenderer.cpp and its fragments by area
- code moves unchanged; helpers several files use are in VulkanRendererInternal.h
|
2026-10-16 04:28:47 -04:00 |
|
swung0x48
|
b0e229f2a3
|
[Refactor] (MG_Backend/DirectVulkan): make the renderer's two file-scope singletons inline
|
2026-10-16 04:20:26 -04:00 |
|
swung0x48
|
01f80b0a0a
|
[Refactor] (CMakeLists.txt, MG_Backend, MG_Backend/DirectGLES, MG_Backend/DirectVulkan, MG_Backend/MGPipe, MG_Test/Framebuffer, MG_Test/Texture): move the client readback packing out of DirectGLES
|
2026-10-16 04:20:19 -04:00 |
|
swung0x48
|
deae0fc4c1
|
[Refactor] (MG_Backend/DirectGLES): drop the readback stores' pack-buffer branch, which never runs
|
2026-10-16 04:05:43 -04:00 |
|
swung0x48
|
f90537c3cb
|
[CI] (.github/workflows, CONTRIBUTING.md, scripts, scripts/data): add the layering and size ratchets
|
2026-10-16 04:01:29 -04:00 |
|
swung0x48
|
26a30ecd02
|
[CI] (CONTRIBUTING.md, scripts): skip moved lines in the changed-lines format check
|
2026-10-16 04:01:27 -04:00 |
|
swung0x48
|
37cb446bda
|
[CI] (scripts/data): lower the text hygiene baseline after the comment cleanup
|
2026-10-15 23:16:52 -04:00 |
|
swung0x48
|
7bb5a9ccbe
|
[Docs] (.github/workflows, docs/Disaggregated, MG_IntegrationTest): shorten the long comments in the integration lanes and test workflow
|
2026-10-15 23:16:45 -04:00 |
|
swung0x48
|
1161d489e2
|
[Build] (MG_IntegrationTest): register each integration lane with one mgl_itest_lane call
- The generated test registrations are identical in the monolith, verify and split builds.
|
2026-10-15 22:41:35 -04:00 |
|
swung0x48
|
92f1b9b231
|
[CI] (scripts/data): lower the text hygiene baseline after the comment cleanup
|
2026-10-15 22:29:04 -04:00 |
|
swung0x48
|
265966a15d
|
[Docs] (MG_Backend/DirectGLES, MG_Backend/MGPipe, MG_Backend/Record, MG_Impl/Pipe, MG_IntegrationTest, MG_IntegrationTest/Harness, MG_IntegrationTest/Scenarios, MG_Pipe, MG_Pipe/generated, MG_Remote, MG_Remote/Client, MG_Remote/Server, MG_Remote/Transport, MG_Remote/Wire, MG_State/GLState, MG_Test/Pipe, MG_Test/Wire, MG_Util/Metrics, MobileGL, scripts, scripts/ci): cite symbols, not line numbers, in the shortened files
|
2026-10-15 22:27:15 -04:00 |
|
swung0x48
|
23ee8bdb49
|
[Docs] (docs/Disaggregated, MG_Remote, MG_Remote/Client, MG_Remote/Protocol, MG_Remote/Server, MG_Remote/Transport, MG_Remote/Wire): shorten long comments and move their design arguments into docs
|
2026-10-15 21:53:39 -04:00 |
|
swung0x48
|
37ecba200b
|
[Docs] (docs/Disaggregated, MG_Impl/Pipe, MG_Remote/Client): shorten long comments and move their design arguments into docs
|
2026-10-15 21:18:49 -04:00 |
|
swung0x48
|
7ec1448f03
|
[Docs] (docs/Disaggregated, MG_Backend/MGPipe, MG_IntegrationTest/Harness, MG_Pipe): shorten long comments and move their design arguments into docs
|
2026-10-15 20:48:58 -04:00 |
|
swung0x48
|
211ca08b0c
|
[Docs] (docs/Disaggregated): point the indexes' prose at docs/archive
|
2026-10-15 20:06:45 -04:00 |
|
swung0x48
|
aabca3c171
|
[Docs] (.claude/skills, .github/workflows, CMakeLists.txt, docs/archive, docs/Disaggregated, docs/MobileVA, docs/Performance, MG_Backend, MG_Backend/DirectGLES, MG_Backend/DirectVulkan, MG_Backend/Record, MG_Gbm, MG_Impl, MG_Impl/EGLImpl, MG_Impl/GLImpl, MG_Impl/GLXImpl, MG_Impl/Pipe, MG_IntegrationTest, MG_IntegrationTest/Harness, MG_IntegrationTest/Scenarios, MG_Pipe, MG_Pipe/generated, MG_Remote, MG_Remote/Client, MG_Remote/Server, MG_Remote/Transport, MG_Remote/Wire, MG_State/GLState, MG_Test/Pipe, MG_Test/Util, MG_Test/Wire, MobileGL, scripts, scripts/data, tools/device_bench, userguide): archive the planning notes and agent contracts under docs/archive
- DEBTS.md and OPEN-QUESTIONS.md stay maintained, now in docs/Disaggregated.
|
2026-10-15 20:01:45 -04:00 |
|
swung0x48
|
0e3e2b7761
|
[CI, Docs] (CONTRIBUTING.md, scripts): freeze docs/archive and treat moved files as moves
|
2026-10-15 19:55:42 -04:00 |
|
swung0x48
|
174a428e81
|
[Test] (MG_Test/Util): give each log level test process its own log file
|
2026-10-15 12:22:36 -04:00 |
|
swung0x48
|
d3c10f15c3
|
[Fix, Test] (MG_Test, MG_Test/Backend, MG_Test/BackendLoader, MG_Test/Buffer, MG_Test/EGLState, MG_Test/Framebuffer, MG_Test/Gbm, MG_Test/Pipe, MG_Test/Pipeline, MG_Test/Program, MG_Test/Query, MG_Test/SelfTest, MG_Test/ShaderTranspiler, MG_Test/State, MG_Test/Swapchain, MG_Test/Texture, MG_Test/Util, MG_Test/VertexArray, MG_Test/Wire, MG_Util/Async): drain shader compile workers before a test's main returns
- On MSVC the atexit drain deadlocked with a worker registering a static's
destructor, hanging the shader tests on Windows.
|
2026-10-15 12:12:24 -04:00 |
|
swung0x48
|
66ef4076c8
|
[Fix] (scripts, scripts/data): count comment lines the same on CRLF checkouts
|
2026-10-15 10:24:19 -04:00 |
|
swung0x48
|
67c4864ea1
|
[CI] (.github/workflows, scripts, scripts/data): check commit messages, comment text and formatting
|
2026-10-15 10:17:32 -04:00 |
|
swung0x48
|
b1f36a71b5
|
[Docs] (MG_Backend, MG_Backend/DirectGLES, MG_Impl/Pipe, MG_IntegrationTest/Scenarios, MG_State/GLState, MG_Test/Buffer, MG_Test/Util, MG_Util/Metrics): correct comments about retired switches and moved code
|
2026-10-15 10:15:41 -04:00 |
|
swung0x48
|
725a73e2b5
|
[Docs] (.claude/skills): point the anland skill's commit rule at CONTRIBUTING.md
|
2026-10-15 10:15:41 -04:00 |
|
swung0x48
|
73d4511bc1
|
[Chore] (MG_Backend/DirectVulkan, MG_Benchmark, MG_Benchmark/Buffer, MG_Benchmark/Container, MG_Benchmark/Driver, MG_Benchmark/Program, MG_Benchmark/ShaderCache, MG_Benchmark/Transpile, MG_Gbm, MG_IntegrationTest, MG_IntegrationTest/Harness, MG_Test, MG_Test/Backend, MG_Test/BackendLoader, MG_Test/Buffer, MG_Test/EGLState, MG_Test/Framebuffer, MG_Test/Gbm, MG_Test/Pipe, MG_Test/Pipeline, MG_Test/Program, MG_Test/Purity, MG_Test/Query, MG_Test/SelfTest, MG_Test/ShaderTranspiler, MG_Test/State, MG_Test/Swapchain, MG_Test/Texture, MG_Test/Util, MG_Test/VertexArray, MG_Test/Wire, scripts, scripts/ci, tools/cts, tools/device_bench, tools/spikes, tools/trace_replay): extend license headers to shell, CMake, Java and GLSL
|
2026-10-15 10:15:40 -04:00 |
|
swung0x48
|
b808b68fd2
|
[Chore] (MG_Backend/DirectVulkan): remove an empty source file nothing builds
|
2026-10-15 10:15:39 -04:00 |
|
swung0x48
|
eb0830dfeb
|
[Fix] (MG_IntegrationTest/Scenarios): re-encode a GBK section sign as UTF-8
|
2026-10-15 10:15:38 -04:00 |
|
swung0x48
|
f9c5e0adbc
|
[Docs] (docs/Disaggregated, docs/Performance, MG_Pipe, MG_Remote/Client, MobileGL): correct a stale default, stub banners, a call count and a status line
- the create-window measurements move from Config.h to docs/Performance
|
2026-10-15 10:15:38 -04:00 |
|
swung0x48
|
5370d917d0
|
[Docs] (.github/workflows, MG_Backend/DirectGLES, MG_Backend/DirectVulkan, MG_Benchmark/Driver, MG_Impl/EGLImpl, MG_Impl/Pipe, MG_IntegrationTest, MG_IntegrationTest/Harness, MG_IntegrationTest/Scenarios, MG_Pipe, MG_State/GLState, MG_Test, MG_Test/Pipe, MG_Test/Program, MG_Test/SelfTest, MG_Test/ShaderTranspiler, MG_Test/Swapchain, MG_Test/Wire, MG_Util/Async, MG_Util/BackendLoaders, MG_Util/SelfTest, MG_Util/ShaderTranspiler, MobileGL, scripts/ci, tools/spikes, tools/trace_replay): name drivers and techniques instead of external projects
|
2026-10-15 10:15:37 -04:00 |
|
swung0x48
|
506ab1541d
|
[Docs] (.github/workflows, CMakeLists.txt, MG_Backend, MG_Backend/DirectGLES, MG_Backend/DirectVulkan, MG_Backend/MGPipe, MG_Backend/Record, MG_Impl/Pipe, MG_IntegrationTest, MG_IntegrationTest/Harness, MG_IntegrationTest/Scenarios, MG_Pipe, MG_Remote, MG_Remote/Client, MG_Remote/Server, MG_Remote/Transport, MG_Remote/Wire, MG_State/GLState, MG_Test, MG_Test/Buffer, MG_Test/Purity, MG_Test/Util, MG_Test/Wire, MG_Util/Metrics, MobileGL, scripts, tools/trace_replay): replace stale line-number citations with sections and symbols
|
2026-10-15 10:15:35 -04:00 |
|
swung0x48
|
c4fb9397cb
|
[Chore] (MG_Backend/DirectGLES, MG_Backend/DirectVulkan, MG_Impl/EGLImpl, MG_Impl/Pipe, MG_IntegrationTest/Harness, MG_IntegrationTest/Scenarios, MG_Pipe, MG_Remote, MG_Remote/Client, MG_Remote/Server, MG_Remote/Transport, MG_Test/Backend, MG_Test/EGLState, MG_Test/Wire, scripts, scripts/ci, tools/cts, tools/device_bench, tools/spikes, tools/trace_replay, tools/wgl-smoke): add the license header where it is missing
|
2026-10-15 10:15:34 -04:00 |
|
swung0x48
|
35c7b589f4
|
[Chore] (scripts): add license headers only where missing, covering .inc and Python
|
2026-10-15 10:15:32 -04:00 |
|
swung0x48
|
f0cd9b2c84
|
[Chore] (MG_Client, MG_Protocol, MG_Protocol/gen): remove generated wire code nothing builds or includes
|
2026-10-15 10:15:30 -04:00 |
|
swung0x48
|
bc38b0f735
|
[Docs] (AGENTS.md, CLAUDE.md, CONTRIBUTING.md): add rules for commits, comments and files
|
2026-10-15 10:15:30 -04:00 |
|
swung0x48
|
37d07cd38c
|
[CI] (.github/workflows): run CI on cleanup as on feat/disaggregated
|
2026-10-15 08:28:43 -04:00 |
|
swung0x48
|
652e7cd3fc
|
[Merge] (Anland): take fix-d1100-mali - the damage-swap fallback and extent-and-format shared-image naming on kernels with one dma-buf identity
|
2026-10-14 20:40:21 -04:00 |
|
swung0x48
|
fdb93e9e65
|
[Fix] (CI): treat a process that exits mid-read of its /proc stat as gone in the TCP server fixture
|
2026-10-14 18:59:27 -04:00 |
|
swung0x48
|
d1b3a3325f
|
[Test] (ServerLoop): arm the guilty-reset drain hold by the healthy record's seq so the previous drain cannot take it
|
2026-10-14 14:59:47 -04:00 |
|
swung0x48
|
28f937d539
|
[Fix] (Espryt): keep the invalid-image placeholder on ANGLE instead of probing an empty unit it faults on
|
2026-10-14 10:30:17 -04:00 |
|
swung0x48
|
2afbcaaf4f
|
[CI] (Census): retire the renamed subgroup sanity case and Magma's split T0 fallback, admit the split-only writeback skip
|
2026-10-13 12:47:31 -04:00 |
|
swung0x48
|
e8dafacb1c
|
[Fix] (Magma): leave the fragment stage out of rasterizer-discard pipelines
|
2026-10-13 12:47:30 -04:00 |
|
swung0x48
|
6336943b87
|
[Test] (Coverage): register ClipControlScenario on the gated split arms
|
2026-10-13 10:28:38 -04:00 |
|
swung0x48
|
a31eabd12b
|
[Test] (IterationRP): accept the driver's dot() rounding within one ulp in the sampled first-reduction probe
|
2026-10-13 10:28:37 -04:00 |
|
swung0x48
|
b9f940ac63
|
[Test] (Pipe): re-pin the pipeline member count and the clear-blit recorder golden
|
2026-10-13 08:02:37 -04:00 |
|
swung0x48
|
5980349b33
|
[Fix] (CI): the parity gate sanctions Magma's spawn-only AdoptTier0 fallback case
|
2026-10-13 08:02:36 -04:00 |
|
swung0x48
|
fdb747b06d
|
[Fix] (Remote): stop the adoption's falling edge from overwriting writes made through the adopted map
|
2026-10-13 08:02:35 -04:00 |
|
swung0x48
|
8ecab66567
|
[Fix] (Espryt): probe empty image units and keep invalid units empty on drivers that read them as zero
|
2026-10-13 08:02:34 -04:00 |
|
swung0x48
|
d6b0eba8fe
|
[Feat] (Subgroups): use native subgroups or emulate them on both backends
|
2026-10-13 06:03:57 -04:00 |
|
swung0x48
|
cfbaffd757
|
[Fix] (Espryt): defer geometry emits behind memory writes on drivers that drop them
|
2026-10-12 23:57:48 -04:00 |
|
swung0x48
|
735b705397
|
[Fix] (Espryt): invalid image units read zero through a shaped placeholder
|
2026-10-12 23:13:18 -04:00 |
|
swung0x48
|
cd9f67763e
|
[Fix] (Magma): re-emit dynamic state after rasterizer-discard draws
|
2026-10-12 22:32:28 -04:00 |
|
swung0x48
|
8c2d5019c2
|
[Fix] (Magma): convert 32-bit int and packed 2_10_10_10 float attributes on the CPU
|
2026-10-12 21:13:30 -04:00 |
|
swung0x48
|
4e0989b99a
|
[Fix] (Magma): read unbacked depth levels back from the CPU shadow
|
2026-10-12 21:03:54 -04:00 |
|
swung0x48
|
4eb0dbc8a9
|
[Fix] (Magma): probe and work around Adreno E5 transfer reads and cross-format slice copies
|
2026-10-12 21:00:18 -04:00 |
|
swung0x48
|
065d1582ba
|
[Fix] (Magma): ignore shader gl_SampleMask without multisample fragment ops
|
2026-10-12 19:37:25 -04:00 |
|
swung0x48
|
05d58a566a
|
[Fix] (Espryt): sample cube-array shadow textures at LOD 0 with texture() outside the fragment stage
|
2026-10-12 19:05:33 -04:00 |
|
swung0x48
|
702f937ca9
|
[Fix] (Pipe): avalanche the composite shutter mix so dirty bits stop colliding
|
2026-10-12 18:55:51 -04:00 |
|
swung0x48
|
6129d6e463
|
[Fix] (Magma): zero gl_Layer in draws into a non-layered framebuffer
|
2026-10-12 18:28:13 -04:00 |
|
swung0x48
|
53f3b7a9af
|
[Fix] (GL): leave the injected default fragment stage out of program pipeline validation
|
2026-10-12 18:28:03 -04:00 |
|
swung0x48
|
47601cbbb8
|
[Fix] (Buffer): refresh persistent read maps at a client-mapped buffer barrier
|
2026-10-12 18:00:16 -04:00 |
|
swung0x48
|
cd26f508df
|
[Fix] (Pipe): skip the location tables a failed relink cleared when emitting program bindings
|
2026-10-12 15:30:33 -04:00 |
|
swung0x48
|
da6b172d08
|
[Fix] (Magma): lower pixel_center_integer gl_FragCoord so Vulkan validation stops refusing the program
|
2026-10-12 15:06:42 -04:00 |
|
swung0x48
|
171eed9ac0
|
[Fix] (CI): re-baseline the link ratchet for the seq-ordered buffer writeback signature
|
2026-10-12 08:40:52 -04:00 |
|
swung0x48
|
09b315197b
|
[Fix] (Espryt): bound usampler2DMS fetches by the bound texture's real sample count
|
2026-10-12 08:39:26 -04:00 |
|
swung0x48
|
c9bf43b710
|
[Fix] (Texture): decode ETC2/EAC uploads into the texel shadow
|
2026-10-12 08:32:53 -04:00 |
|
swung0x48
|
1962e0c603
|
[Fix] (Buffer): refresh persistent read maps at glFinish and glClientWaitSync
|
2026-10-12 08:32:52 -04:00 |
|
swung0x48
|
acad001b34
|
[Fix] (Pipe): bind incomplete image units as no image
|
2026-10-12 08:32:51 -04:00 |
|
swung0x48
|
8fff9363f7
|
[Fix] (Backend): apply framebuffer no-attachment defaults on both backends
|
2026-10-12 08:32:51 -04:00 |
|
swung0x48
|
3b0e6270b7
|
[Fix] (Backend): apply the polygon offset clamp on both backends
|
2026-10-12 08:32:50 -04:00 |
|
swung0x48
|
1469022b53
|
[Fix] (Shader): keep ESSL 3.10 block-array indexing and image-uniform rules for sources that declared an es version
|
2026-10-12 08:32:49 -04:00 |
|
swung0x48
|
e98c5b4a6a
|
[Fix] (GL): validate program pipelines by the spec rules in glValidateProgramPipeline and on every pipeline draw
|
2026-10-12 08:32:49 -04:00 |
|
swung0x48
|
e0193f0b3d
|
[Fix] (GL): fail the link of a non-separable program that has a tessellation or geometry stage but no vertex stage
|
2026-10-12 08:32:48 -04:00 |
|
swung0x48
|
35077242c3
|
[Fix] (GL): derive per-stage atomic-counter limits from the backend's storage-block budget and fail the link past them
|
2026-10-12 08:32:47 -04:00 |
|
swung0x48
|
cc23ed3c7e
|
[Fix] (Shader): reject a location qualifier on an atomic counter instead of dropping it with a warning
|
2026-10-12 08:32:47 -04:00 |
|
swung0x48
|
4cb65bdfdc
|
[Fix] (Shader): place relaxed-rule atomic counters on their binding's offset cursor and reject unsized, unbound and overlapping counters at compile
|
2026-10-12 08:32:46 -04:00 |
|
swung0x48
|
c2dbcbee19
|
[Fix] (GL): report GL_SAMPLE_POSITION from the backend's sample locations and check the index against the draw framebuffer's GL_SAMPLES
|
2026-10-12 08:32:44 -04:00 |
|
swung0x48
|
45f5bae8b3
|
[Fix] (GL): answer one for the name-length program queries of a program linked from SPIR-V
|
2026-10-12 08:32:44 -04:00 |
|
swung0x48
|
b4da0e1a87
|
[Fix] (GL): raise INVALID_VALUE/INVALID_ENUM from glGetStringi for an index past the list or an unindexed name
|
2026-10-12 08:32:43 -04:00 |
|
swung0x48
|
049c8a421c
|
[Fix] (GL): implement glGetCompressedTextureSubImage over the compressed block shadow
|
2026-10-12 08:22:18 -04:00 |
|
swung0x48
|
60ba52bfe4
|
[Fix] (GL): validate the glGetTextureSubImage region with INVALID_VALUE before refusing a partial read
|
2026-10-12 08:22:17 -04:00 |
|
swung0x48
|
b7d42faac0
|
[Fix] (GL): answer GL_TEXTURE_BUFFER_DATA_STORE_BINDING in glGetTexLevelParameter
|
2026-10-12 08:22:16 -04:00 |
|
swung0x48
|
2f312262ea
|
[Fix] (GL): keep TEXTURE_BASE_LEVEL/MAX_LEVEL as set on immutable textures and clamp only the effective range
|
2026-10-12 08:22:16 -04:00 |
|
swung0x48
|
4b5c315ea5
|
[Fix] (GL): report FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS and treat an attached layer past the last one as an incomplete attachment
|
2026-10-12 08:22:15 -04:00 |
|
swung0x48
|
d4501e0c23
|
[Fix] (GL): raise INVALID_OPERATION from glTextureParameter* for sampler state on a multisample texture
|
2026-10-12 08:22:14 -04:00 |
|
swung0x48
|
6e43ff8ccc
|
[Feat] (GL): apply glClipControl on both backends and advertise ARB_clip_control
|
2026-10-12 08:11:18 -04:00 |
|
swung0x48
|
82ef0053ea
|
[Fix] (DirectVulkan): express polygon facing as the pipeline front face
|
2026-10-12 08:10:50 -04:00 |
|
swung0x48
|
c83d27a668
|
[Feat] (GL): advertise ARB_cull_distance where the backend has cull distances
|
2026-10-12 08:10:50 -04:00 |
|
swung0x48
|
454083bf57
|
[Fix] (DirectGLES): redeclare input gl_PerVertex with the producer's clip/cull sizes
|
2026-10-12 08:10:04 -04:00 |
|
swung0x48
|
b22c37f763
|
[Fix] (GL): resolve attribute array elements in glGetAttribLocation
|
2026-10-12 08:10:04 -04:00 |
|
swung0x48
|
4c9ce56124
|
[Feat] (GL): advertise the 4.x-core extension batch and ARB_tessellation_shader where the device has tessellation
|
2026-10-12 08:09:24 -04:00 |
|
swung0x48
|
2eae028938
|
[Fix] (GL): report tessellation-stage image uniform limits from the backend and enforce them at link
|
2026-10-12 08:08:58 -04:00 |
|
swung0x48
|
c881bc2396
|
[Feat] (Magma): pipeline and primitive fragment shading rate via VK_KHR_fragment_shading_rate
|
2026-10-12 08:03:31 -04:00 |
|
swung0x48
|
db23b9d551
|
[Feat] (Espryt): forward fragment shading rate to the driver extension
|
2026-10-12 08:03:29 -04:00 |
|
swung0x48
|
6d27499f3c
|
[Feat] (ShaderTranspiler): carry shading-rate built-ins through the ESSL leg
|
2026-10-12 08:03:28 -04:00 |
|
swung0x48
|
7e544c2b78
|
[Feat] (Frontend): add GL_EXT_fragment_shading_rate state, entry points and getters
|
2026-10-12 08:03:27 -04:00 |
|
swung0x48
|
ba6db60c09
|
[Fix] (GL): fail the link when a stage exceeds its uniform or storage block limits
|
2026-10-12 06:46:05 -04:00 |
|
swung0x48
|
106190e2ff
|
[Fix] (Shader): make demoted double varyings flat on every stage so both sides of the interface agree
|
2026-10-12 06:46:04 -04:00 |
|
swung0x48
|
bc3c4fbb6c
|
[Fix] (Remote): order buffer writebacks by producing seq so a stale capture writeback cannot retire a newer GPU-write mark
|
2026-10-12 06:46:04 -04:00 |
|