On 11/24/19 10:00 AM, Sveinar Søpler wrote:
On 24.11.2019 16:24, Zebediah Figura wrote:
On 11/23/19 9:57 AM, Hans-Kristian Arntzen wrote:
On 11/23/19 4:47 PM, Sveinar Søpler wrote:
On 18.11.2019 10:55, Henri Verbeet wrote:
On Sun, 17 Nov 2019 at 00:11, Sveinar Søpler cybermax@dexter.no wrote:
Ok. Tested as follows:
Wine-staging-4.20
vkd3d git HEAD@da68980fdc0e549174ce0a9c1f7859f2f388a907
World of Warcraft crashes upon loading with a "Error #132 Fatal Exception!"
Added the following patch to wine-staging-4.20: https://www.winehq.org/pipermail/wine-devel/2019-October/152356.html
WoW now loads, and can zone in. Textures are flashing ref. https://bugs.winehq.org/show_bug.cgi?id=46410
The bug: https://bugs.winehq.org/show_bug.cgi?id=47471 can be closed as this seems fixed with a recent commit.
Ok, so the regression from commit c002aee119b638d30eeb7cdc91099449ccafeafc is independent of bug 46410, correct? Does the attached patch fix the regression?
Yes, the bug 46410 is independent of this regression. I made an attempt at reposting a fix for that particular bug here: https://source.winehq.org/patches/data/174234 but i borked some formatting, so i dunno if that applies...
Your attached patch for vkd3d fixed the regression. I tested this with a clean unpatched wine-staging-4.20.
It does seem as the patch just forces things back to root_signature_1.0 tho? Would it not be better to implement the Fix D3D12SerializeVersionedRootSignature patch to wine?
Sveinar
I think the problem is that D3D12SerializeVersionedRootSignature implementation depends on latest vkd3d to be able to compile, it cannot compile against vkd3d 1.1 (latest release, from January), which does not implement RS 1.1. Ideally wine master would depend on vkd3d master so we can expose RS 1.1 support.
This isn't really a sustainable way to release libraries. It requires that anyone distributing libvkd3d distribute the git master, and it also requires that libvkd3d be distributed in lockstep with Wine in case its API does change in a non-backwards-compatible way.
The ideal solution is that the libvkd3d 1.2 API be reviewed and fixed, and that 1.2 be released.
Does this mean that supporting D3D12 root signature 1.1 requires a API change to libvkd3d_1.2? How would the testbot pick up the new package? Would it be much different than "releasing" libvkd3d_1.1-2 or something as a intermediate "release"?
libvkd3d 1.2 hasn't been released. Exporting vkd3d_serialize_versioned_root_signature() is itself an API change from libvkd3d 1.1. The API change corresponds (if I understand correctly) to a convention in version naming: the minor version is incremented for changes which are backwards-compatible, the major version for those which are not.
I'm not sure how libraries are installed on testbot machines, but I suspect they go through distribution packages.
Would doing some configure check be possible? If the local libvkd3d-dev package have the function compile WITH D3D12SerializeVersionedRootSignature, and if not, do not use this function? I mean if it is necessary for a distro to pick up this new release when that happens, will leave us in a state like the libFAudio library is now, and i do not think that is much more preferable...
Once libvkd3d 1.2 has been released (and, I suspect, once a reasonable amount of time has been given for distributors to update it), Wine will either use it conditionally or require 1.2 to compile. See also Wine commit 72cf4a99c.
It is kind of a catch 22 this thing, cos you cannot update Wine with this due to missing libvkd3d function, and you cannot upgrade libvkd3d with this, cos Wine does not support it....
I'm not sure I see how. libvkd3d doesn't depend on Wine at all; that's kind of its entire point.
Sveinar
Cheers, Hans-Kristian
PS. This "mailinglist" thing is horribly hopeless to keep up to date when referring to other patches.. atleast not in a way that i can figure out other than posting links.. and browsing through various .txt archive files to figure that out, so when i posted about a vkd3d patch that fixed things, it was probably not clear that it ALSO needed wine patches, that i think (without once again searching through 100'eds of mailthreads) was mentioned earlier in the thread. Sorry.
The bug tracker does work better for tracking bugs, yes.
Henri