Optimize vm::range_lock

Only test address on `range_locked`
Don't check current transaction
Remove vm::clear_range_locks completely
This commit is contained in:
Nekotekina 2020-11-01 16:46:06 +03:00
parent 8d12816001
commit 46d3066c62
3 changed files with 39 additions and 47 deletions

View file

@ -2104,8 +2104,8 @@ void spu_thread::do_dma_transfer(spu_thread* _this, const spu_mfc_cmd& args, u8*
perf_meter<"DMA_PUT"_u64> perf2;
// TODO: split range-locked stores in cache lines for consistency
auto res = &vm::reservation_acquire(eal, args.size);
// Temporarily disabled, may be removed at all
atomic_t<u64>* res = nullptr;
switch (u32 size = args.size)
{