fix(renderer): resolve delayed GPU page faults through buffer and texture caches

This commit is contained in:
nmzik
2026-07-29 17:13:19 +02:00
parent f6e01e5403
commit 8a244677d7
3 changed files with 12 additions and 5 deletions
+2 -1
View File
@@ -394,6 +394,7 @@ void BufferCache::InvalidateMemory(uint64_t vaddr, uint64_t size) {
}
void BufferCache::ReadMemory(uint64_t vaddr, uint64_t size) {
(void)SynchronizeBacking(vaddr, size);
std::vector<DownloadCopy> copies;
{
FaultSafeCacheLock lock(this, m_mutex);
@@ -426,7 +427,7 @@ void BufferCache::ReadMemory(uint64_t vaddr, uint64_t size) {
});
}
if (copies.empty()) {
EXIT("BufferCache: GPU-owned invalidation has no dirty byte ranges\n");
return;
}
auto downloads = RecordDownloads(copies);
m_scheduler.FinishCurrent();