Skip to content
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

winevulkan: Add FSR for fshack. #116

Closed

Commits on Aug 18, 2021

  1. server: Create a desktop shared mapping.

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    ec84149 View commit details
    Browse the repository at this point in the history
  2. server: Use the helper to update the cursor last change time.

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    94ffb63 View commit details
    Browse the repository at this point in the history
  3. server: Move the cursor position and last change time to the shared d…

    …ata.
    
    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    6c68a76 View commit details
    Browse the repository at this point in the history
  4. server: Add a sequence number to the shared data.

    The client should check that the lower SEQUENCE_MASK_BITS are zero before
    reading the data and confirm that the number is unchanged when it's finished.
    
    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    d734852 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    830ac97 View commit details
    Browse the repository at this point in the history
  6. server: Use the helper to reset the clip rect when the desktop size c…

    …hanges.
    
    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    c433f77 View commit details
    Browse the repository at this point in the history
  7. server: Store the cursor clip rect in the shared data.

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    536a1ef View commit details
    Browse the repository at this point in the history
  8. user32: Use the desktop shared data for GetClipCursor().

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    0003603 View commit details
    Browse the repository at this point in the history
  9. server: Get rid of the global cursor structure.

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    438572c View commit details
    Browse the repository at this point in the history
  10. server: Use a separate variable to determine the message on Alt release.

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    8ecb689 View commit details
    Browse the repository at this point in the history
  11. server: Simplify update_input_key_state().

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    107b1d9 View commit details
    Browse the repository at this point in the history
  12. server: Use separate functions to update the desktop and input keysta…

    …tes.
    
    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    ccbf0c3 View commit details
    Browse the repository at this point in the history
  13. server: Move the desktop keystate to shared memory.

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    7adee65 View commit details
    Browse the repository at this point in the history
  14. user32: Use the shared data if possible for GetAsyncKeyState().

    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    f9b13fc View commit details
    Browse the repository at this point in the history
  15. server: Don't return the desktop keystate from the send_hardware_mess…

    …age request.
    
    Signed-off-by: Huw Davies <huw@codeweavers.com>
    hdmdavies authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    d437829 View commit details
    Browse the repository at this point in the history
  16. user32: Refresh active hook list only when needed.

    Instead of doing it on every get_message request.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    a11f6e4 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    f7a7955 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    4b37acb View commit details
    Browse the repository at this point in the history
  19. user32: Don't check for driver events so often.

    Now that PeekMessage may return quickly we don't want to check for
    driver events on every call.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    ba9cbd9 View commit details
    Browse the repository at this point in the history
  20. esync: user32: Always call get_message request after waiting.

    Because with esync and fsync the wait happens on the client-side, so
    we need to make the request to do the server side effects.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    49a2618 View commit details
    Browse the repository at this point in the history
  21. user32: Call get_message request at least once every 3s.

    So that the thread queue isn't incorrectly flagged as hung.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    d0e74ae View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    3854ac5 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    ae773c1 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    65c9b46 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    c9c2d4e View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    a26f094 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    b916947 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    6aacedf View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    a39af47 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    0d6404b View commit details
    Browse the repository at this point in the history
  31. server: Move capture window to input shared memory.

    As well as menu owner / menu size window handles.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    2a31b21 View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    1be4404 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    f70f399 View commit details
    Browse the repository at this point in the history
  34. user32: Use input shared memory for GetGUIThreadInfo.

    When the current thread is requested.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    da0ed42 View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    ac60b1c View commit details
    Browse the repository at this point in the history
  36. Configuration menu
    Copy the full SHA
    d1c98b9 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    17dd2fe View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    01c7c72 View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    e7ea7fa View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    7e8ed33 View commit details
    Browse the repository at this point in the history
  41. Configuration menu
    Copy the full SHA
    49d3c76 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    26f1eda View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    03a1a67 View commit details
    Browse the repository at this point in the history
  44. Configuration menu
    Copy the full SHA
    f0a3cb6 View commit details
    Browse the repository at this point in the history
  45. kernel32: Catch page faults in GlobalSize.

    In the same way GlobalFree does already.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    f6ea5dc View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    39513fe View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    f5057c4 View commit details
    Browse the repository at this point in the history
  48. Configuration menu
    Copy the full SHA
    7253d15 View commit details
    Browse the repository at this point in the history
  49. Configuration menu
    Copy the full SHA
    b336679 View commit details
    Browse the repository at this point in the history
  50. Configuration menu
    Copy the full SHA
    3e36637 View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    9d732aa View commit details
    Browse the repository at this point in the history
  52. Configuration menu
    Copy the full SHA
    847e880 View commit details
    Browse the repository at this point in the history
  53. ntdll: Add thread destroy notification function.

    This will be used in LFH to recycle the thread local data.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    4ecd190 View commit details
    Browse the repository at this point in the history
  54. Configuration menu
    Copy the full SHA
    9f9c492 View commit details
    Browse the repository at this point in the history
  55. ntdll: Better implement RtlSetHeapInformation.

    And set extended_type heap field when HeapCompatibilityInformation is
    used.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    f313f28 View commit details
    Browse the repository at this point in the history
  56. Configuration menu
    Copy the full SHA
    912b9a7 View commit details
    Browse the repository at this point in the history
  57. ntdll: Implement Low Fragmentation Heap.

    This is a high performance multithreaded heap implementation that tries
    to minimize memory fragmentation as well.
    
    It takes inspiration from rpmalloc / tcmalloc and other thread-local
    heap implementations, while avoiding the complexity of a cache.
    
    The low fragmentation part is achieved by using two layers of pools, or
    arenas, classified by block size:
    
    * The first, coarse grained, pools are called "large" arenas, and are
      allocated directly by mapping 4MiB of virtual memory for each pool,
      which is then split into blocks of fixed size. The large arena classes
      are configured to support block sizes in a range from (64KiB - hs) up
      to (2MiB - hs), increasing by 64KiB steps, where hs is the arena
      header size.
    
    * The second pool layer, called "small" and "medium" arenas is built on
      top of the first, using the exact same mechanism (and code). Each pool
      is allocated by acquiring a block of (64KiB - hs) size from an arena
      of the first "large" class. The "small" arena classes are configured
      for block sizes in a range from 32 to 2048 bytes, increasing by 32B
      steps. The "medium" arena classes are configured for block sizes in a
      range from 2048 bytes up to ((64KiB - hs) - hs) / 2, increasing by
      512B steps.
    
    Any memory allocation that is bigger than what "large" arenas can
    provide will be directly mapped from virtual memory.
    
    The multithreaded part is achieved by keeping thread local heap
    structures to hold the currently allocated classified arenas:
    
    * Whenever a thread needs it, a new thread local heap will be acquired
      from a global orphan list - using an interlocked singly linked list of
      unused heaps - or allocated from virtual memory. Whenever a thread
      terminates, it will release its thread local heap to the global orphan
      list.
    
    * Every alloc is done by using the current thread heap, and by
      allocating a new block from its arenas. The virtual memory mapping
      that may eventually be called is already thread safe and does not
      require additional locking.
    
    * Every free is deferred to the thread that allocated the block, by
      using an interlocked singly linked list.
    
    * Every time a thread allocates a new block, it will first cleanup its
      deferred free block list.
    
    The thread local heaps may not be always associated with an live
    thread, so this means that deferred blocks may have to wait for the
    orphan heap to be adopted by a new thread before they are actually
    released.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    0b5151b View commit details
    Browse the repository at this point in the history
  58. ntdll: Always add 16 bytes to heap block tail.

    To prevent crashing in buffer overflows, and as Windows default heap
    apparently does as well.
    
    Journey does some at the very end of the game, and it sometimes silently
    corrupts the heap until it crashes.
    
    CW-Bug-Id: 18894
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    340c229 View commit details
    Browse the repository at this point in the history
  59. ntdll: Enable LFH for process heap.

    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    5be9679 View commit details
    Browse the repository at this point in the history
  60. msvcrt: Enable LFH for internal heaps.

    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    dcf01a8 View commit details
    Browse the repository at this point in the history
  61. Configuration menu
    Copy the full SHA
    8b73d1d View commit details
    Browse the repository at this point in the history
  62. ntdll/tests: Fix tick count read from user shared data.

    Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit 8591c2a)
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    623fb04 View commit details
    Browse the repository at this point in the history
  63. ntdll/tests: Add InterruptTimeBias to fix spurious test failures.

    Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit 97d2802)
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    3cc4fee View commit details
    Browse the repository at this point in the history
  64. include: Add KSHARED_USER_DATA QpcData details and flags.

    Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit 3b87444)
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    5adde50 View commit details
    Browse the repository at this point in the history
  65. include: Include x86intrin.h in msvcrt/intrin.h.

    Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
    Signed-off-by: Jacek Caban <jacek@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit b18a48e)
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    4bce5df View commit details
    Browse the repository at this point in the history
  66. ntdll/tests: Add RtlQueryPerformanceCounter tests.

    Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
    Signed-off-by: Jacek Caban <jacek@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit d9d478e)
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    79f09b1 View commit details
    Browse the repository at this point in the history
  67. Configuration menu
    Copy the full SHA
    27c6921 View commit details
    Browse the repository at this point in the history
  68. Configuration menu
    Copy the full SHA
    8600adb View commit details
    Browse the repository at this point in the history
  69. Configuration menu
    Copy the full SHA
    cfe916a View commit details
    Browse the repository at this point in the history
  70. Configuration menu
    Copy the full SHA
    65e9207 View commit details
    Browse the repository at this point in the history
  71. Configuration menu
    Copy the full SHA
    200000c View commit details
    Browse the repository at this point in the history
  72. Configuration menu
    Copy the full SHA
    4f2880b View commit details
    Browse the repository at this point in the history
  73. wineboot: Check if the kernel trusts TSC before using it for Qpc.

    Even if the bits are claiming that TSC meets our requirements the
    hardware implementation may still be broken.
    
    The Linux kernel does a lot of quality testing before deciding to use as
    the clock source. If it (or the user, through an override) does not trust
    the TSC we should not trust it either.
    
    CW-Bug-Id: #18918
    CW-Bug-Id: #18958
    ivyl authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    451ef11 View commit details
    Browse the repository at this point in the history
  74. wineboot: Return TSC frequency in ~Mhz

    Some games such as Horizon Zero Dawn use this registry value to correlate values from rtdsc -> real time.
    
    In my testing across a few devices, Windows always returns the tsc frequency in this entry, not the current/maximum frequency of the processor.
    
    Returning the nominal/maximum cpu frequency here causes the game to run in slow motion as it may not match the tsc frequency of the processor.
    
    Ideally we'd not have to measure this and the kernel would return tsc_khz to userspace, but this is a good enough stop-gap until https://lkml.org/lkml/2020/12/31/72 or something similar is merged.
    
    Fixes: #4125 (Slow motion bug)
    
    Signed-off-by: Joshua Ashton <joshua@froggi.es>
    Joshua-Ashton authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    c02b624 View commit details
    Browse the repository at this point in the history
  75. wineboot: Calculate TSC frequency once at the start

    This calculates the TSC frequency once at the very start of wineboot.
    
    This avoids needing to calculate this multiple times which can lead to stalls.
    
    Signed-off-by: Joshua Ashton <joshua@froggi.es>
    Joshua-Ashton authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    c1a6dc9 View commit details
    Browse the repository at this point in the history
  76. Configuration menu
    Copy the full SHA
    1129117 View commit details
    Browse the repository at this point in the history
  77. Configuration menu
    Copy the full SHA
    fc080fb View commit details
    Browse the repository at this point in the history
  78. Configuration menu
    Copy the full SHA
    3e6a0fc View commit details
    Browse the repository at this point in the history
  79. Configuration menu
    Copy the full SHA
    ced29ed View commit details
    Browse the repository at this point in the history
  80. ntdll: Use kernel soft dirty flags for write watches support.

    Requires kernel patches to have effect.
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    eed1541 View commit details
    Browse the repository at this point in the history
  81. ntdll: Use clock_gettime64 if supported.

    zfigura authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    707f332 View commit details
    Browse the repository at this point in the history
  82. Configuration menu
    Copy the full SHA
    90ccf28 View commit details
    Browse the repository at this point in the history
  83. Configuration menu
    Copy the full SHA
    ff3b301 View commit details
    Browse the repository at this point in the history
  84. Configuration menu
    Copy the full SHA
    2a21b00 View commit details
    Browse the repository at this point in the history
  85. ntdll: Convert Windows Epoch to UNIX Epoch

    Some games are hanging on startup, with futexes waiting forever (even
    with timeout values). This is because the timeout values are been passed
    as Windows Epoch, instead of UNIX one. Convert the values so timeouts
    work again. Also, use realtime clock instead of monotonic one, so we
    don't need to issue another syscall do to this conversion.
    andrealmeid authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    f47505b View commit details
    Browse the repository at this point in the history
  86. ntdll: Remove padding for 32bit archs

    In the current version of futex2 patchset, there's a proper entry point
    for 32bit apps that correctly parse 32bit pointers. Remove the padding
    hack used to make 32bit apps use the 64bit entry point.
    andrealmeid authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    c4b6745 View commit details
    Browse the repository at this point in the history
  87. esync, fsync: Yield execution before alertable wait for AC Odyssey.

    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    ea4c1be View commit details
    Browse the repository at this point in the history
  88. ntdll: Simulate async file read and IO cancellation to workaround AC:…

    …Odyssey out of order dialogues bug.
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    9603f49 View commit details
    Browse the repository at this point in the history
  89. Configuration menu
    Copy the full SHA
    da4b38f View commit details
    Browse the repository at this point in the history
  90. winex11.drv: Send message from X11DRV_DisplayDevices_Update.

    When not in desktop thread, instead of calling X11DRV_resize_desktop
    every time.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    28ec34e View commit details
    Browse the repository at this point in the history
  91. winex11.drv: Store current display modes in registry too.

    Because fshack doesn't actually change adapter modes, it's not possible
    to query current mode from fshack or real settings handler from
    another process.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    2c68094 View commit details
    Browse the repository at this point in the history
  92. winex11.drv: Re-apply current display mode on desktop resize.

    So that fshack internal modes are updated in the desktop process too,
    from the current modes that have been written in the registry.
    rbernon authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    1bc7fe6 View commit details
    Browse the repository at this point in the history
  93. winex11.drv: Add GUID_DISPLAY_DEVICE_ARRIVAL interface to display dev…

    …ice.
    
    CW-Bug-Id: 18931
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    0d6beca View commit details
    Browse the repository at this point in the history
  94. winex11.drv: Add a GPU for each Vulkan device that was not tied to an…

    … XRandR provider.
    
    This assures that each Vulkan device has a LUID assigned (see X11DRV_InitGpu
    and VkPhysicalDeviceIDProperties).
    
    LUIDs are important for DirectX <-> Vulkan interop. VKD3D-Proton and
    DXVK's DXGI use that to identify which underlaying Vulkan device to use
    for the selected adapter.
    
    This change fixes GPU selection in Hitman 2 in DX12 mode. Without it
    VKD3D-Proton resorts to a heuristic (vid/pid matching, and if that fails
    use the first device in enumeration order) which can select the wrong
    one on some multi-GPU Nvidia setups due to nvapihack.
    
    This also fixes Forza Horizon 4 on Wayland as XWayland doesn't expose
    providers which results in missing LUIDs even for the GPU driving the
    outputs.
    
    CW-Bug-Id: #18737
    CW-Bug-Id: #18925
    ivyl authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    0597fa1 View commit details
    Browse the repository at this point in the history
  95. gdi32: Implement D3DKMTOpenAdapterFromDeviceName().

    CW-Bug-Id: 18931
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    776e3f9 View commit details
    Browse the repository at this point in the history
  96. dinput: Don't add 'default value 0' entries to the data transform.

    This helps when dealing with the quirky c_dfDIJoystick2 format,
    which defines all the sliders as overlapping, i.e. rglSlider[2],
    rglVSlider[2], rglASlider[2] and rglFSlider[2] all share the same
    offset.
    
    With the Linux backends, if the device exposes enough axes (e.g. some
    HOTAS) we end up using rglSlider.
    
    Let's make sure we don't unnecessarily override the values there.
    
    Signed-off-by: Arkadiusz Hiler <ahiler@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit d10887b)
    
    CW-Bug-Id: #19048
    ivyl authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    08eb4fc View commit details
    Browse the repository at this point in the history
  97. dinput: Add mapping for Logitech G920 for the SDL backend.

    This fixes Project CARS 3 brake problem - the game detects the
    controller and expects certain mapping of axes onto DIJOYSTATE2.
    
    The wheel is handled by hid_logitech_hidpp. Currently there is no way of
    combining accelerator and brake pedals on Linux, but on Windows that
    doesn't change the number or mapping of axes - it just alters the
    semantics of the accelerator axis.
    
    CW-Bug-Id: #19048
    ivyl authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    2b2fabb View commit details
    Browse the repository at this point in the history
  98. ntdll: Add stub implementation for NtSetInformationProcess(ProcessIns…

    …trumentationCallback).
    
    CW-Bug-Id: 19085
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    88ec562 View commit details
    Browse the repository at this point in the history
  99. ntdll: Add stub implementation for NtSetInformationFile(FileAllocatio…

    …nInformation).
    
    CW-Bug-Id: 19085
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    42282e6 View commit details
    Browse the repository at this point in the history
  100. ntdll: Implementat NtQuerySystemInformation(SystemKernelDebuggerInfor…

    …mationEx).
    
    CW-Bug-Id: 19085
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    5c55f5f View commit details
    Browse the repository at this point in the history
  101. winebuild: Output stubs after syscalls.

    CW-Bug-Id: 19085
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    b9ed2d6 View commit details
    Browse the repository at this point in the history
  102. ntdll: Catch all syscalls at the lower addresses.

    CW-Bug-Id: 19085
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    354b7a0 View commit details
    Browse the repository at this point in the history
  103. ntdll: Support '\??\GlobalRoot' prefix in get_dos_prefix_len().

    CW-Bug-Id: 19085
    Paul Gofman authored and aeikum committed Aug 18, 2021
    Configuration menu
    Copy the full SHA
    d8bb750 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2021

  1. Configuration menu
    Copy the full SHA
    fca4353 View commit details
    Browse the repository at this point in the history

Commits on Aug 25, 2021

  1. winegstreamer: Create threads after initializing wg_parser in decode_…

    …transform_create().
    
    CW-Bug-ID: 19317
    Paul Gofman committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    62062d4 View commit details
    Browse the repository at this point in the history
  2. winegstreamer: Shutdown helper and read threads in mf_decoder_Release().

    CW-Bug-ID: 19317
    Paul Gofman committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    301cc95 View commit details
    Browse the repository at this point in the history
  3. winhttp: Factor out query_data_ready() function.

    CW-Bug-ID: 19317
    Paul Gofman committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    e70696e View commit details
    Browse the repository at this point in the history
  4. winhttp: Execute WinHttpQueryDataAvailable() synchronously if the dat…

    …a is available.
    
    CW-Bug-ID: 19317
    Paul Gofman committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    2b2827c View commit details
    Browse the repository at this point in the history
  5. winhttp: Execute WinHttpReadData() synchronously if the data is avail…

    …able.
    
    CW-Bug-ID: 19317
    
    Fixes eFootball PES 2021 in game contents download.
    Paul Gofman committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    03da570 View commit details
    Browse the repository at this point in the history
  6. winegstreamer: Create media source read thread after initializing wg_…

    …parser.
    
    Fixes race condition as wg_parser is used right away in the created
    thread.
    Paul Gofman committed Aug 25, 2021
    Configuration menu
    Copy the full SHA
    657daf4 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2021

  1. ntdll: Fix holes in ELF mappings. (v2)

    Based on a patch by Andrew Wesie.
    
    Included to fix crash on startup of WRC8.
    
    Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44650
    Link: https://github.com/wine-staging/wine-staging/tree/v6.3/patches/ntdll-Builtin_Prot
    Link: ValveSoftware#121
    CW-Bug-Id: #19337
    mmueller2012 authored and ivyl committed Aug 26, 2021
    Configuration menu
    Copy the full SHA
    1cacb4a View commit details
    Browse the repository at this point in the history
  2. wine.inf: Use native xinput1_3 for WRC8.

    WRC8, when run in a win10 prefix, tries to load UWP/xinput1_3.dll that
    ships with the game. It seems to be mostly-compatible xinput
    implementation built on top of windows.gaming.input.dll.
    
    However if we try to replace it with the builtin the game crashes
    (that's the "mostly-compatible" part), so we need this override.
    
    Since our windows.gaming.input.dll implementation is just a stub
    controllers other than steering wheels (which are handled through
    dinput) do not work.
    
    It's possible to make the controllers work in the meantime by switching
    the prefix to win7 and adding `WINEDLLOVERRIDES="xinput1_3=b"`, as on
    win7 the game uses the regular xinput and is fine with our builtin.
    
    Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51643
    Link: ValveSoftware#121
    CW-Bug-Id: #19337
    ivyl committed Aug 26, 2021
    Configuration menu
    Copy the full SHA
    962668c View commit details
    Browse the repository at this point in the history
  3. dinput: Report a non-zero value in dwFFDriverVersion for haptic devices.

    WRC 8 and 9 assumes zero means no driver loaded.
    
    Link: ValveSoftware#121
    CW-Bug-Id: #19337
    whizse authored and ivyl committed Aug 26, 2021
    Configuration menu
    Copy the full SHA
    3d6755c View commit details
    Browse the repository at this point in the history
  4. dinput: Remove code duplication.

    The DIDC_FORCEFEEDBACK flag was set twice.
    
    Link: ValveSoftware#121
    CW-Bug-Id: #19337
    whizse authored and ivyl committed Aug 26, 2021
    Configuration menu
    Copy the full SHA
    f7c7d4a View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2021

  1. kernelbase: Mind MajorOperatingSystemVersion PE header when reporting…

    … OS version.
    
    CW-Bug-ID: #19343
    Paul Gofman committed Aug 27, 2021
    Configuration menu
    Copy the full SHA
    36501c0 View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2021

  1. winex11.drv: HACK: Mind insert_after X11DRV_WindowPosChanged in some …

    …cases.
    
    CW-Bug-ID: 19335
    Paul Gofman committed Aug 30, 2021
    Configuration menu
    Copy the full SHA
    4c93c26 View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2021

  1. ntdll: Reject some of NT path names not in a canonical form.

    CW-Bug-ID: 19384
    
    Fixes Divinity The Original Sin 2 Definitive edition crash on start.
    
    This is a partial backport extracted from upstream commits
    405666b, cdb1f3a (authored by Alexandre Julliard).
    Paul Gofman committed Sep 7, 2021
    Configuration menu
    Copy the full SHA
    af2e298 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2021

  1. wine.inf: Use native xinput1_3 for WRC10.

    This game have the same issue as WRC8.
    
    Link: ValveSoftware#123
    CW-Bug-Id: #19337
    whizse authored and ivyl committed Sep 8, 2021
    Configuration menu
    Copy the full SHA
    7e69a5b View commit details
    Browse the repository at this point in the history
  2. d3dcompiler: Rip out the HLSL compiler.

    The compiler is completely non-functional as-is, and lives in libvkd3d-shader
    now. When a vkd3d release is made d3dcompiler will access it via the
    libvkd3d-shader public API. Accordingly there's no reason to keep it around in
    wine's d3dcompiler.
    
    Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
    Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    CW-Bug-ID: #15810
    Zebediah Figura authored and ivyl committed Sep 8, 2021
    Configuration menu
    Copy the full SHA
    bacf3ff View commit details
    Browse the repository at this point in the history
  3. d3dcompiler: Implement D3DCompile2() on top of vkd3d_shader_compile().

    This probably isn't what it's going to look like upstream, for several reasons.
    
    CW-Bug-ID: #15810
    Zebediah Figura authored and ivyl committed Sep 8, 2021
    Configuration menu
    Copy the full SHA
    06023c4 View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2021

  1. winevulkan: fshack: Enable shaderStorageImageWriteWithoutFormat.

    Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
    DadSchoorse committed Sep 12, 2021
    Configuration menu
    Copy the full SHA
    40adc00 View commit details
    Browse the repository at this point in the history
  2. winevulkan: fshack: Implement fsr.

    Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
    DadSchoorse committed Sep 12, 2021
    Configuration menu
    Copy the full SHA
    9e2a815 View commit details
    Browse the repository at this point in the history
  3. winex11.drv: Env var for sharpness strenght.

    Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
    DadSchoorse committed Sep 12, 2021
    Configuration menu
    Copy the full SHA
    655c030 View commit details
    Browse the repository at this point in the history
  4. winevulkan: fsr: Fix srgb.

    Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
    DadSchoorse committed Sep 12, 2021
    Configuration menu
    Copy the full SHA
    5c7e24e View commit details
    Browse the repository at this point in the history
  5. winevulkan: Allow forcing a negative mip bias.

    Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
    DadSchoorse committed Sep 12, 2021
    Configuration menu
    Copy the full SHA
    31824f8 View commit details
    Browse the repository at this point in the history