This enabling will be done on a file basis (instead of directory) to ease review.
This serie contains "simple" file migration (mostly refcount and status/GetLastError())
changes.
I likely post afterwards each file change in a single MR to ease up review (and
potentially changes) without blocking the others.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/1589
This is in preparation of implementing all logic from the server in kernelbase, which is needed because Nt*Key ignores KEY_WOW64_32KEY. Unfortunately this requires a lot of server calls.
The full branch can be found here
https://gitlab.winehq.org/sbaars/wine/-/tree/shared-classes-new
The old approach that doesn't duplicate code to kernelbase can be found here
https://gitlab.winehq.org/sbaars/wine/-/tree/shared-classes-old
I ran make_requests by the way, not sure if we should still leave that out with the gitlab workflow.
--
v7: kernelbase: Factor creating a subkey out of create_key().
kernelbase: Use open_subkey() in create_key().
kernelbase: Always try to open the Wow6432Node in create_key()
kernelbase: Add a fast path to create_key().
kernelbase: Move create_key() below open_key().
kernelbase: Factor opening a subkey out of open_key().
kernelbase: Always try to open the Wow6432Node in open_key().
kernelbase: Restructure the open_key() loop.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1445
On Wed Nov 30 10:54:56 2022 +0000, Jacek Caban wrote:
> I guess it wouldn't hurt to take this for now, but note that we'd like
> to get rid of those direct calls. Rémi is working on improving syscall
> dispatcher performance, see !1437 and !1324.
Yes, we can remove it when we stop using direct calls for descriptor set updates. But at the moment I really don't want to have worse performance with descriptor buffers compared to descriptor sets caused by wine. Especially since it's unlikely that Rémi's work will be in 8.0.
This is not just some theoretical problem. With the current non direct calls, vkd3d-proton's descriptor buffer path regresses performance for radv users.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/1552#note_18011