Alexandre Julliard pushed to branch master at wine / wine
Commits:
4f146546 by Rémi Bernon at 2024-12-05T12:44:16+01:00
win32u: Add a force parameter to lock_display_devices.
- - - - -
cdfd20b2 by Rémi Bernon at 2024-12-05T12:44:19+01:00
win32u: Implement update_display_cache with lock_display_devices.
- - - - -
7164987a by Rémi Bernon at 2024-12-05T12:44:19+01:00
win32u: Remove recursive lock_display_devices calls.
- - - - -
81084324 by Rémi Bernon at 2024-12-05T12:44:19+01:00
win32u: Hold the display_lock when checking the cache update time.
Fix a race condition in lock_display_devices if the cache is updated
right after it has checked the registry update time and before it has
entered the display_lock.
- - - - -
1 changed file:
- dlls/win32u/sysparams.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/11e8662ebbbde9d39301aaf4bbc6f…
--
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/11e8662ebbbde9d39301aaf4bbc6f…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
bbe10dcf by Feifan He at 2024-12-05T21:13:29+01:00
vkd3d-shader/msl: Implement VKD3DSIH_NOT.
- - - - -
ebf58285 by Feifan He at 2024-12-05T21:25:35+01:00
vkd3d-shader/msl: Implement VKD3DSIH_ELSE.
- - - - -
8e0de82c by Feifan He at 2024-12-05T21:26:03+01:00
vkd3d-shader/msl: Implement support for VKD3DSPDM_SATURATE modifiers.
- - - - -
a425c242 by Feifan He at 2024-12-05T21:26:03+01:00
vkd3d-shader/msl: Implement VKD3DSIH_MAD.
- - - - -
5d6ed0fa by Feifan He at 2024-12-05T21:26:03+01:00
vkd3d-shader/msl: Implement VKD3DSIH_ISHL.
- - - - -
138e7caa by Feifan He at 2024-12-05T21:26:03+01:00
vkd3d-shader/msl: Implement VKD3DSIH_ISHR.
- - - - -
9d4bcc95 by Feifan He at 2024-12-05T21:26:03+01:00
vkd3d-shader/msl: Implement VKD3DSIH_USHR.
- - - - -
9 changed files:
- libs/vkd3d-shader/msl.c
- tests/hlsl/arithmetic-float-uniform.shader_test
- tests/hlsl/bitwise-assignment.shader_test
- tests/hlsl/cf-cond-types.shader_test
- tests/hlsl/conditional.shader_test
- tests/hlsl/function-return.shader_test
- tests/hlsl/return.shader_test
- tests/hlsl/saturate.shader_test
- tests/hlsl/unroll.shader_test
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/74fa51d57ceace72c80e24746ffe…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/74fa51d57ceace72c80e24746ffe…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
38c53dca by Giovanni Mascellani at 2024-12-05T21:05:50+01:00
vkd3d-shader/ir: Introduce a helper function to determine the signature for a register type.
- - - - -
aae0a74d by Giovanni Mascellani at 2024-12-05T21:06:31+01:00
vkd3d-shader/ir: Validate the DCL_INDEX_RANGE instruction.
- - - - -
74fa51d5 by Giovanni Mascellani at 2024-12-05T21:06:31+01:00
vkd3d-shader/ir: Check that DCL_INDEX_RANGE ranges do not overlap with unrelated signature elements.
- - - - -
2 changed files:
- libs/vkd3d-shader/ir.c
- libs/vkd3d-shader/vkd3d_shader_private.h
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/b5e1c458279428c86ccbcf0a0375…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/b5e1c458279428c86ccbcf0a0375…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
239c88e8 by Giovanni Mascellani at 2024-12-05T21:00:03+01:00
vkd3d: Do not use more than a few million descriptors in Vulkan heap set layouts.
Currently, when using Vulkan heaps, we create descriptor set
layouts with as many descriptors as allowed by the Vulkan
implementation limits. For some implementations this can mean
hundreds of millions of descriptors or more, which is wasteful,
given that even on the best resource binding tier Direct3D 12
applications should not expect to have more than a million usable
descriptors.
Recently this began being a problem, because since Mesa 24.2.7
the Intel driver advertises more than 200 million descriptors,
but pipeline compilation takes linear RAM in the number of
descriptors declared in the pipeline layout. This means that
compiling even a simple shader requires 10-20 GB of RAM.
In order to avoid using too much memory, with this commit we clamp
the number of descriptors declared in the set layouts to how many
we actually need to guarantee tier 3 resource binding support.
- - - - -
2 changed files:
- libs/vkd3d/device.c
- libs/vkd3d/vkd3d_private.h
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/commit/239c88e8d3ccdf28845505d614b94…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/commit/239c88e8d3ccdf28845505d614b94…
You're receiving this email because of your account on gitlab.winehq.org.
Henri Verbeet pushed to branch master at wine / vkd3d
Commits:
4a94bfc2 by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Store only a single vkd3d descriptor type in each Vulkan descriptor set.
We currently create statically sized descriptor pools, shared among
different descriptor types. Once we're unable to allocate a descriptor
set from a pool, we create a new pool. The unfortunate but predictable
consequence is that when we run out of descriptors of one type, we waste
any unallocated descriptors of the other types.
Dynamically adjusting the pool sizes could mitigate the issue, but it
seems non-trivial to handle all the edge cases, particularly in
situations where the descriptor count ratios change significantly
between frames. Instead, by storing only a single vkd3d descriptor type
in each Vulkan descriptor set we're able to create separate descriptor
pools for each vkd3d descriptor type, which also avoids the issue.
The main drawback of using separate descriptor sets for each descriptor
type is that we can no longer pack all bounded descriptor ranges into a
single descriptor set, potentially leaving fewer descriptor sets
available for unbounded ranges. That seems worth it, but we may end up
having to switch to a more complicated strategy if this ends up being a
problem on Vulkan implementations with a very limited number of
available descriptor sets.
- - - - -
3c620e88 by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Introduce struct vkd3d_vk_descriptor_pool_array.
- - - - -
7c0ce25b by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Introduce vkd3d_vk_descriptor_pool_array_push_array().
- - - - -
9d46a186 by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Introduce vkd3d_vk_descriptor_pool_array_push().
- - - - -
8dc9fe72 by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Introduce vkd3d_vk_descriptor_pool_array_pop().
- - - - -
19c6df1a by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Introduce vkd3d_vk_descriptor_pool_array_destroy_pools().
- - - - -
a97c7c1f by Henri Verbeet at 2024-12-05T20:54:45+01:00
vkd3d: Introduce d3d12_descriptor_set_layout_init().
- - - - -
e729ceeb by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Create separate descriptor pools for each vkd3d descriptor type.
Now that our Vulkan descriptor sets contain only a single vkd3d
descriptor type, we're able to create descriptor pools containing only a
single vkd3d descriptor type as well. This avoids wasting unallocated
descriptors of one type when we run out of descriptors of another type.
- - - - -
a43f6a66 by Conor McCarthy at 2024-12-05T20:54:45+01:00
vkd3d: Create descriptor pools of geometrically increasing size.
Creating a pool of 16k descriptors is wasteful if an allocator only uses
a fraction of them, so start at 1k and double for each subsequent
allocation until 16k is reached.
- - - - -
4 changed files:
- libs/vkd3d/command.c
- libs/vkd3d/device.c
- libs/vkd3d/state.c
- libs/vkd3d/vkd3d_private.h
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/01117c716dea0e934ac594a7596d…
--
View it on GitLab: https://gitlab.winehq.org/wine/vkd3d/-/compare/01117c716dea0e934ac594a7596d…
You're receiving this email because of your account on gitlab.winehq.org.
Alexandre Julliard pushed to branch master at wine / wine
Commits:
fe7674a1 by Ziqing Hui at 2024-12-04T20:07:46+01:00
qasf/tests: Add more tests for dmo_wrapper_sink_Receive.
The tests indicate that for dmo_wrapper_sink_Receive:
(1) If ProcessOutput succeeds, including S_FALSE, it continue processing.
(2) If ProcessOutput fails, it returns S_OK.
(3) If downstream Receive fails or return S_FALSE, it returns downstream hr.
- - - - -
29b69755 by Ziqing Hui at 2024-12-04T20:08:11+01:00
qasf: Correctly return failure in process_output.
- - - - -
2 changed files:
- dlls/qasf/dmowrapper.c
- dlls/qasf/tests/dmowrapper.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/48e49d313d61a376bbc59bb8554a2…
--
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/48e49d313d61a376bbc59bb8554a2…
You're receiving this email because of your account on gitlab.winehq.org.
Alexandre Julliard pushed to branch master at wine / wine
Commits:
ae28ed38 by Nikolay Sivov at 2024-12-04T20:07:16+01:00
windowscodecs/tests: Use string literals in the metadata tests.
Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
- - - - -
daf14cc1 by Nikolay Sivov at 2024-12-04T20:07:16+01:00
windowscodecs/tests: Add some tests for CreateMetadataReader().
Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
- - - - -
f694b62a by Nikolay Sivov at 2024-12-04T20:07:16+01:00
windowscodecs/tests: Add a basic test for CreateComponentEnumerator().
Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
- - - - -
09ced5c7 by Nikolay Sivov at 2024-12-04T20:07:16+01:00
windowscodecs/metadata: Add a helper to iterate over components.
Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
- - - - -
48e49d31 by Nikolay Sivov at 2024-12-04T20:07:18+01:00
windowscodecs: Implement CreateMetadataReader().
Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com>
- - - - -
3 changed files:
- dlls/windowscodecs/imgfactory.c
- dlls/windowscodecs/tests/info.c
- dlls/windowscodecs/tests/metadata.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/7cdd2ec1235d96d53b5552dd0f181…
--
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/7cdd2ec1235d96d53b5552dd0f181…
You're receiving this email because of your account on gitlab.winehq.org.