On Sat Mar 22 22:31:59 2025 +0000, Robert Lippmann wrote:
> Well, according to the SDK, the header is now powersetting.h, not
> powrprof.h, which is why I created the new file.
Header is another thing, but source files do not have to match how functions are arranged in the SDK.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98763
On Sat Mar 22 22:41:16 2025 +0000, Robert Lippmann wrote:
> Oops, I just took the output of winedump and didn't change the numbers
> to @'s.
I meant ordinal numbers, preceding calling convention marker "stdcall". Does SteamVR require any of newer functions?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98762
On Sat Mar 22 22:32:59 2025 +0000, Robert Lippmann wrote:
> These are additional power related functions that were defined in
> Windows Vista (the current code is like 20 years old).
Oops, I just took the output of winedump and didn't change the numbers to @'s.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98761
On Sat Mar 22 22:37:26 2025 +0000, Nikolay Sivov wrote:
> Do you have an application that depends on those functions returning anything?
SteamVR's vrmonitor.exe tries to change the power profile and crashes with an access violation.
Valve has been bugged about this for years, since they really shouldn't be doing it. So, I figure it will never be fixed by them.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98760
On Sat Mar 22 22:35:07 2025 +0000, Nikolay Sivov wrote:
> Hi, @rlippmann. This needs some basic cleanup first - fixup commits
> should be merged with main commits so that MR has a clean list of
> wellformed changes. Note that you don't need to create a new MR every
> time you want to change something. Just force push to the same branch.
I've been trying to. Unfortunately the pipeline build fails every time saying it couldn't get my credentials even though I've set git global username and email address.
I've been trying to figure out why that happens, hence the multiple (closed) merge requests.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98759
On Sat Mar 22 22:15:29 2025 +0000, Nikolay Sivov wrote:
> Why do you need this?
These are additional power related functions that were defined in Windows Vista (the current code is like 20 years old).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98758
On Sat Mar 22 22:15:29 2025 +0000, Nikolay Sivov wrote:
> You probably don't need a new file for this.
Well, according to the SDK, the header is now powersetting.h, not powrprof.h, which is why I created the new file.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7644#note_98757
This fixes a real problem and improves behavior at the same time.
- Fixes: hanging when trying to run Wine built with epoll_pwait2 headers available
but epoll_pwait2 is missing in the run-time kernel (i.e. build 5.11->run 5.10)
- Improvement: bring the improved timeout resolution to Wine builds
which didn't have epoll_pwait2 at compile time, if the run-time kernel supports it
(i.e. build 5.10->run 6.14)
This last point is especially important in my opinion, as it applies to official Proton builds.
Proton is (currently) built in Debian 11 with kernel 5.10, but SteamOS is a moving target with
a much newer kernel version being used to run these Wine builds.
These builds use the lower resolution timeouts if epoll_pwait2 is only checked for at compile-time,
when it can cheaply and easily be done at run-time instead.
Fixes: 87ca5db40e2c1b37423bdc25101a5c5e39e67e6f
An alternative to !7640 that kills two birds with one stone.
--
v4: server: Fall back to epoll_wait if epoll_pwait2 isn't available at run-time.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7642