mirror of
https://github.com/gnif/LookingGlass.git
synced 2026-08-02 05:12:02 +00:00
f3155647d2fdcf4306a0676c2d14eb2757677d43
NVIDIA's Wayland EGL implementation sets explicit-sync acquire and release points while presenting a frame. The requests emitted by eglSwapBuffers and its final surface commit must be treated as one logical transaction. The pointer-warp path can commit the main surface from the input thread while the render thread is inside eglSwapBuffers. If this occurs between the explicit-sync requests, the cursor commit applies incomplete pending state and the compositor disconnects the client with: explicit sync is used, but no release point is set Add a surface lock and hold it across EGL presentation. Use the same lock for direct commits, frame callback registration, and pointer-constraint updates, replacing the narrower confinement lock. This prevents another thread from splitting the EGL transaction and removes the need for __NV_DISABLE_EXPLICIT_SYNC=1.
Looking Glass
An extremely low latency KVMFR (KVM FrameRelay) implementation for guests with VGA PCI Passthrough.
- Project Website: https://looking-glass.io
- Documentation: https://looking-glass.io/docs
Documentation
❕❕❕ IMPORTANT ❕❕❕
This project contains submodules that must be checked out if building from the git repository! If you are not a developer and just want to compile Looking Glass, please download the source archive from the website instead:
https://looking-glass.io/downloads
Source code for the documentation can be found in the /doc directory.
You may view this locally as HTML by running make html with python3-sphinx
and python3-sphinx-rtd-theme installed.
Languages
C
81.3%
C++
14.9%
CMake
2%
NSIS
0.8%
GLSL
0.6%
Other
0.4%