-
-
Notifications
You must be signed in to change notification settings - Fork 52
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
No sysv shm #116
No sysv shm #116
Conversation
95aab84
to
926b477
Compare
Duplicate of #78 ? |
81879d7
to
ea57c3d
Compare
This avoids having to define XLIB_ILLEGAL_ACCESS, which we would prefer to avoid.
Xlib does not support file descriptor passing or dma-bufs. The GUI daemon does not currently use either of these, but it will in the future. Switching from Xlib to XCB is a necessary first step in that direction.
Referencing a function that the GUI daemon no longer uses would be confusing.
ea57c3d
to
371c831
Compare
This is another attempt at using FD passing for shared memory, at the cost of still requiring shmoverride. The reason I am filing it as a PR is to at least give it a chance to be reviewed, so that the work done on it has a chance of not being wasted.
By sending a freshly opened Xen file descriptor at each request, the offset is guaranteed to be 0. Furthermore, there is no need to call IOCTL_GNTDEV_UNMAP_GRANT_REF after munmap() ― just calling munmap() is sufficient. The only remaining reason to override munmap() is to handle mfn-based mappings, which may have an offset that is not a multiple of the page size. These require correcting the address before the kernel will accept the munmap() call. Fortunately, there is no legitimate reason for the X.org Server to call munmap() with a non-page-aligned address, so it is safe to unconditionally align the address and pass the aligned version to the kernel, adjusting the size accordingly. Therefore, it is no longer necessary for shmoverride to maintain any state whatsoever about the current mappings, simplifying the code enormously. No mutex locking is needed, and no list of mapped pages needs to be kept. The result is that the code is simpler and less prone to bugs.
System V shared memory is worse than just memory-mapping a file.
371c831
to
590ddd2
Compare
f19e18e
to
93b3e82
Compare
This emulates Xorg's own command-line parser in case the display manager starts to pass additional options to Xorg.
93b3e82
to
a051283
Compare
OpenQA test summaryComplete test suite and dependencies: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.1&build=2022101403-4.1&flavor=pull-requests New failures, excluding unstableCompared to: https://openqa.qubes-os.org/tests/overview?distri=qubesos&version=4.1&build=2022092706-4.1&flavor=update
Failed tests37 failures
Fixed failuresCompared to: https://openqa.qubes-os.org/tests/46840#dependencies 1 fixed
Unstable tests
|
No description provided.