mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-05 06:21:26 +12:00
rsx: Fix memory range invalidation
This commit is contained in:
parent
1550dc7f1f
commit
a9fad83971
1 changed files with 4 additions and 1 deletions
|
@ -3532,15 +3532,18 @@ namespace rsx
|
||||||
// NOTE: m_mtx_task lock must be acquired before calling this method
|
// NOTE: m_mtx_task lock must be acquired before calling this method
|
||||||
void thread::handle_invalidated_memory_range()
|
void thread::handle_invalidated_memory_range()
|
||||||
{
|
{
|
||||||
|
AUDIT(!m_mtx_task.is_free());
|
||||||
m_eng_interrupt_mask.clear(rsx::memory_config_interrupt);
|
m_eng_interrupt_mask.clear(rsx::memory_config_interrupt);
|
||||||
|
|
||||||
if (!m_invalidated_memory_range.valid())
|
if (!m_invalidated_memory_range.valid())
|
||||||
|
{
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (is_stopped())
|
if (is_stopped())
|
||||||
{
|
{
|
||||||
|
// We only need to commit host-resident memory to the guest in case of savestates or captures.
|
||||||
on_invalidate_memory_range(m_invalidated_memory_range, rsx::invalidation_cause::read);
|
on_invalidate_memory_range(m_invalidated_memory_range, rsx::invalidation_cause::read);
|
||||||
on_invalidate_memory_range(m_invalidated_memory_range, rsx::invalidation_cause::write);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
on_invalidate_memory_range(m_invalidated_memory_range, rsx::invalidation_cause::unmap);
|
on_invalidate_memory_range(m_invalidated_memory_range, rsx::invalidation_cause::unmap);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue