20 Commits
Author SHA1 Message Date
KernelPanicNT 9ed4377be4 Merge main into fix/libkernel-mutexattr-setkind-any-kind 2026-10-27 19:22:42 +00:00
dwk001andClaude Opus 5.5 e632137d7c fix(libkernel): keep the mutex kind as a signed 16-bit value as firmware 13.42 does
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01B7MJ4KkM4JNNWQxjsXT4ib
2026-10-25 12:53:57 +00:00
orezraeyandClaude Opus 5.5 d677bc6353 Merge main into fix/libkernel-posix-thread-attr-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 21:17:39 -03:00
boykopovar edeb508b23 fix(tests): use guest scheduling policy in mutex attributes 2026-10-25 00:30:18 +03:00
boykopovar fdf9ca7574 fix(sdk): reconcile public headers after rebase 2026-10-24 23:17:47 +03:00
boykopovar f38d29fd08 refactor(sdk): add canonical headers for remaining libraries 2026-10-24 23:17:42 +03:00
dwk001andClaude Opus 5.5 eaeb9c7de7 fix(libkernel): accept any pthread_mutexattr_setkind_np kind as FreeBSD libthr does
pthread_mutexattr_setkind_np stored only kinds 1 to 4 and threw for others.
FreeBSD 11.4 stores any kind, pthread_mutexattr_gettype rejects kinds of
PTHREAD_MUTEX_TYPE_MAX or more with EINVAL, and mutex_check_attr makes
pthread_mutex_init fail with EINVAL for a kind outside the mutex types.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01B7MJ4KkM4JNNWQxjsXT4ib
2026-10-24 19:44:31 +00:00
orezraeyandClaude Opus 5.5 293bc5dd2b Merge main into fix/libkernel-posix-thread-attr-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:20:25 -03:00
SebastianandClaude Opus 5.5 bb403de88f feat(libkernel): add missing pthread attribute accessors
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QnkpF2oEMofseVz9Z7WEAC
2026-10-23 06:27:49 +00:00
orezraeyandClaude Opus 5.5 bc23ed7853 fix(libkernel): follow the thread priority ranges and POSIX attribute errors measured on a PS5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-22 21:12:32 -03:00
pushkarreddyy 4ea1c112bb feat(libkernel): implement pthread_mutexattr_getprotocol 2026-10-19 23:48:09 +05:30
ionut27001andClaude Opus 5.5 db504f6b9c fix(libkernel): reject PTHREAD_PROCESS_SHARED in pshared setters as the PS5 does
On a PS5 (firmware 12.70), of the values 0, 1, 2 and -1,
pthread_spin_init, pthread_barrierattr_setpshared and
pthread_mutexattr_setpshared accept only PTHREAD_PROCESS_PRIVATE (0);
1, 2 and -1 return EINVAL and leave the attribute unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 00:49:58 +03:00
Codex ced0305455 fix(libkernel): return EINVAL for invalid mutex priority attributes 2026-10-15 21:34:35 +03:00
Adrià 63b377b51b Merge pull request #5612 from JJenkx/feat/private-mutex-sharing
fix(libkernel): store mutex process-sharing attributes
2026-10-15 17:03:30 +02:00
JJenkx bfa0de72cb fix(libkernel): retain shared mutex attributes 2026-10-13 23:13:51 -04:00
mugurc facc03ae90 fix(libs): build with libc++
Apple clang ships libc++, which differs from libstdc++ where the sources
relied on it:

- std::atomic<std::shared_ptr<T>> is not provided. AtomicSharedPtr is that
  type where the library has it and a mutex-guarded pointer with the same
  member functions elsewhere; the AGC driver uses it.
- std::atomic_ref<const T> is not provided; the page span reads go through
  a non-const reference.
- std::filesystem::file_time_type::clock::to_sys is not provided;
  std::chrono::file_clock::to_sys is.
- std::max and std::min do not deduce across the integer types of the
  guest range arithmetic, which is spelled with an explicit type.
- <string> and <initializer_list> are included where the sources and tests
  use them.
2026-10-12 19:57:33 +03:00
JJenkx 05f2dc4c91 feat(libkernel): support process-private mutex sharing attributes 2026-10-12 12:22:44 -04:00
Claude 74d44b8e6c fix(libkernel): try the lock before checking the pthread_mutex_timedlock deadline
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Ha6Tsy62AFUyp9a5Mf7vjA
2026-10-11 21:00:30 +00:00
Achraf ReyaniandClaude Opus 5.5 466c86255f feat(libkernel): implement pthread_mutexattr_gettype
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-11 20:05:46 +09:00
ps54all 08728f95b9 feat(libkernel): implement pthread_mutexattr_setprioceiling and getprioceiling
The mutex attribute now keeps its protocol and priority ceiling the way
FreeBSD's libthr does: the ceiling can be set and read only under
PTHREAD_PRIO_PROTECT (EINVAL otherwise), and setting a protocol resets it
to the highest SCHED_RR priority. Mutexes still do not apply priority
protection; that is listed as a silent stub.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
(cherry picked from commit d10c024f8f)
2026-10-10 18:12:31 +00:00