mirror of
https://github.com/jetkvm/kvm.git
synced 2026-06-20 05:24:32 +00:00
* Enhance synctrace logging. Switched the maps to be indexed by the .Pointer (not a string) Grouped the lockCount, unlockCount ,and lastLock in an trackingEntry so we can detect unlocks of something that wasn't ever locked and excessive unlocks and also tracks the first time locked and the last unlock time. Added LogDangledLocks for debugging use. Added a panic handler to the Main so we can log out panics * Switch to traceable sync for most everything * More documentation * Update internal/sync/log.go * Update DEVELOPMENT.md * Resolve merge issue. * Applied review comments * Restore --enable-sync-trace option. * Use WithLevel so we can re-panic as desired
jetkvm-native
This component (internal/native/) acts as a bridge between Golang and native (C/C++) code.
It manages spawning and communicating with a native process via sockets (gRPC and Unix stream).
For performance-critical operations such as video frame, a dedicated Unix socket should be used to avoid the overhead of gRPC and ensure low-latency communication.
Debugging
To enable debug mode, create a file called .native-debug-mode in the /userdata/jetkvm directory.
touch /userdata/jetkvm/.native-debug-mode
This will cause the native process to listen for SIGHUP signal and crash the process.
pgrep native | xargs kill -SIGHUP