mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-24 05:49:58 +00:00
Avoid a possible thread sync issue.
Could be that it's about to wake listsync, does, and then we wait.
This commit is contained in:
parent
0ef02cddfa
commit
55c07bdc73
@ -130,7 +130,6 @@ int GPUCommon::ListSync(int listid, int mode) {
|
||||
}
|
||||
|
||||
if (dl.waitTicks > CoreTiming::GetTicks()) {
|
||||
guard.unlock();
|
||||
__KernelWaitCurThread(WAITTYPE_GELISTSYNC, listid, 0, 0, false, "GeListSync");
|
||||
}
|
||||
return PSP_GE_LIST_COMPLETED;
|
||||
@ -244,7 +243,6 @@ u32 GPUCommon::DequeueList(int listid) {
|
||||
dlQueue.remove(listid);
|
||||
|
||||
dls[listid].waitTicks = 0;
|
||||
guard.unlock();
|
||||
__KernelTriggerWait(WAITTYPE_GELISTSYNC, listid, 0, "GeListSync");
|
||||
|
||||
CheckDrawSync();
|
||||
@ -599,7 +597,6 @@ void GPUCommon::ProcessDLQueueInternal() {
|
||||
|
||||
easy_guard guard(listLock);
|
||||
currentList = NULL;
|
||||
guard.unlock();
|
||||
|
||||
drawCompleteTicks = startingTicks + cyclesExecuted;
|
||||
busyTicks = std::max(busyTicks, drawCompleteTicks);
|
||||
|
Loading…
Reference in New Issue
Block a user