-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
X11 passthrough and futex sharing #232
Conversation
b5fc39e
to
e02eebd
Compare
Question: Should we renumber CROSS_DOMAIN_CMD_FUTEX_NEW and friends and CROSS_DOMAIN_ID_TYPE_SHM to something higher, in case upstream decides to add commands or types in the future? |
e02eebd
to
06e29f1
Compare
There's still more work to be done on the X11 cross-domain channel so I'm marking this as draft. The prep work MR should be OK to review though (and this one too, it's just incomplete and not ready to merge yet). |
06e29f1
to
074b502
Compare
This should now be ready, Steam finally works stably and Portal 2 runs (including windowed) 🎉 |
9e94bdf
to
2a0a6dc
Compare
Please rebase on top of #231 |
This adds the X11 cross domain channel and an ability to share futexes between the vm and the host. Signed-off-by: Sasha Finkelstein <[email protected]> Co-developed-by: Asahi Lina <[email protected]> Signed-off-by: Asahi Lina <[email protected]>
2a0a6dc
to
4f36a56
Compare
Done! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested both with sommelier and x112virtgpu
Add the X11 cross domain channel type and futex sharing. This is the new approach using explicit FD passing, which depends on #231 (will rebase once that is merged). Also includes a bunch of bug fixes over the previous PR, and CI now passes. I think this should be good to start reviewing.
This approach no longer needs the
LD_PRELOAD
. You can just use nothing (the ptrace code in x112virtgpu should be more robust now), orxshmwrap
(packaged with x112virgpu) to avoid the ptrace hack. I also sent a PR upstream to libxshmfence so we can do this with a simple env var in the future, without hacks.Compared to #213, this removes the rootfs DAX enablement, but I think @slp wants to do the DAX toggle another way anyway. DAX is still required for /dev/shm for any of this to work, but best keep that out of the scope of this PR.
Supersedes #213.