render: stamp the texture-store LRU clock at commit so fresh decodes survive the eviction latch
This commit is contained in:
parent
5f2470e868
commit
3d09c764f8
1 changed files with 8 additions and 0 deletions
|
|
@ -4795,6 +4795,14 @@ void PrewarmCommit(const NativeGuestOutputRenderContext& context,
|
||||||
t.gt.fetch_words[5]);
|
t.gt.fetch_words[5]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Fresh commits must enter the store with a live LRU stamp: an
|
||||||
|
// unstamped (0) clock sorts as the oldest entry, and with the store
|
||||||
|
// over cap the eviction latch would retire brand-new decodes before
|
||||||
|
// their first draw ever stamps them - a commit/evict/re-decode loop
|
||||||
|
// that starved dense areas of all new content.
|
||||||
|
if (t.gt.last_used_frame == 0) {
|
||||||
|
t.gt.last_used_frame = frame_number;
|
||||||
|
}
|
||||||
g_r.tex_store.emplace(t.words_key, t.gt);
|
g_r.tex_store.emplace(t.words_key, t.gt);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue