[PR #3592] [MERGED] kernel: Improvements to condvars. #3596

Closed
opened 2026-02-27 22:04:16 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/shadps4-emu/shadPS4/pull/3592
Author: @squidbus
Created: 9/13/2025
Status: Merged
Merged: 9/13/2025
Merged by: @squidbus

Base: mainHead: condvars


📝 Commits (1)

  • 7cd411f kernel: Improvements to condvars.

📊 Changes

6 files changed (+28 additions, -50 deletions)

View changed files

📝 src/core/libraries/kernel/sync/semaphore.h (+8 -35)
📝 src/core/libraries/kernel/threads/condvar.cpp (+4 -4)
📝 src/core/libraries/kernel/threads/mutex.cpp (+3 -3)
📝 src/core/libraries/kernel/threads/pthread.h (+7 -2)
📝 src/core/libraries/kernel/threads/sleepq.cpp (+5 -5)
📝 src/core/libraries/kernel/time.cpp (+1 -1)

📄 Description

Some misc changes I made while investigating a condvar issue:

  • Fix an oversight in Windows semaphore try_acquire_for where the time since the start of the acquire would be subtracted from the remaining time each iteration instead of the time since that iteration started.
  • Simplify semaphore try_acquire_until to utilize other existing functions instead of requiring its own platform implementations.
  • Few type and typo fixes in condvar and mutex code.
  • Misc change in time code to check __APPLE__ definition properly.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/shadps4-emu/shadPS4/pull/3592 **Author:** [@squidbus](https://github.com/squidbus) **Created:** 9/13/2025 **Status:** ✅ Merged **Merged:** 9/13/2025 **Merged by:** [@squidbus](https://github.com/squidbus) **Base:** `main` ← **Head:** `condvars` --- ### 📝 Commits (1) - [`7cd411f`](https://github.com/shadps4-emu/shadPS4/commit/7cd411f8e3fe3e65553f50ff63b0c012ee90648c) kernel: Improvements to condvars. ### 📊 Changes **6 files changed** (+28 additions, -50 deletions) <details> <summary>View changed files</summary> 📝 `src/core/libraries/kernel/sync/semaphore.h` (+8 -35) 📝 `src/core/libraries/kernel/threads/condvar.cpp` (+4 -4) 📝 `src/core/libraries/kernel/threads/mutex.cpp` (+3 -3) 📝 `src/core/libraries/kernel/threads/pthread.h` (+7 -2) 📝 `src/core/libraries/kernel/threads/sleepq.cpp` (+5 -5) 📝 `src/core/libraries/kernel/time.cpp` (+1 -1) </details> ### 📄 Description Some misc changes I made while investigating a condvar issue: * Fix an oversight in Windows semaphore `try_acquire_for` where the time since the start of the acquire would be subtracted from the remaining time each iteration instead of the time since that iteration started. * Simplify semaphore `try_acquire_until` to utilize other existing functions instead of requiring its own platform implementations. * Few type and typo fixes in condvar and mutex code. * Misc change in time code to check `__APPLE__` definition properly. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 22:04:16 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/shadPS4#3596
No description provided.