kvm/internal
Alex P 94cab8b2ac Fix: prevent race condition crash in audio playback using pthread mutexes
Root cause: ALSA assertion failure `snd_pcm_writei: Assertion 'pcm' failed`
when pcm_playback_handle became NULL during concurrent write operations.

The crash occurred because:
1. Thread A checks pcm_playback_handle != NULL (passes)
2. Thread B calls jetkvm_audio_playback_close(), sets handle = NULL
3. Thread A calls snd_pcm_writei(NULL, ...) → SIGABRT

Solution: Added pthread mutexes to protect concurrent access:
- playback_mutex protects pcm_playback_handle in decode_write and close
- capture_mutex protects pcm_capture_handle in read_encode and close

All critical sections now acquire mutex before accessing ALSA handles,
preventing the NULL pointer from being passed to ALSA functions.
2025-11-18 00:53:15 +02:00
..
audio Fix: prevent race condition crash in audio playback using pthread mutexes 2025-11-18 00:53:15 +02:00
confparser feat: refactoring network stack (#878) 2025-10-15 18:32:58 +02:00
hidrpc feat: release keyPress automatically (#796) 2025-09-18 13:35:47 +02:00
logging feat: jetkvm native in cGo 2025-09-29 14:09:30 +02:00
mdns feat: refactoring network stack (#878) 2025-10-15 18:32:58 +02:00
native Fix: improve EDID compatibility and add audio configuration options 2025-11-18 00:53:15 +02:00
network/types feat: refactoring network stack (#878) 2025-10-15 18:32:58 +02:00
sync feat: refactoring network stack (#878) 2025-10-15 18:32:58 +02:00
timesync feat: refactoring network stack (#878) 2025-10-15 18:32:58 +02:00
tzdata feat: improve custom jiggler settings and add timezone support (#742) 2025-08-24 22:54:26 +00:00
usbgadget Fix: skip redundant USB gadget reconfigurations to prevent HID disruption 2025-11-17 22:48:02 +02:00
utils fix: ensure that security-key backed SSH keys are supported (#807) 2025-09-17 12:14:45 +02:00
websecure feat(websecure): add support for ed25519 certificates (#513) 2025-05-25 11:09:58 +02:00