Commit Graph

555 Commits

Author SHA1 Message Date
7046ccec11 [*] Refactor some APIs to use string views instead of strings
[+] Added new shell dirs API
[+] AuOptional<AuROString> GetUserDocuments()
[+] AuOptional<AuROString> GetUserDownloads()
[+] AuOptional<AuROString> GetUserDesktop()
[+] AuOptional<AuROString> GetUserPhotos()
[+] AuOptional<AuROString> GetUserVideos()
[+] AuOptional<AuROString> GetUserMusic()
[*] Amend IPCHandle::InitFromSharing (use string view)
[*] AuFS devices API should now use string views
[*] AuProcess, Process APIs now use string views (ModuleLoadRequest, LoadModule, GetProcAddressEx, etc)
[*] AuProcess, Paths APIs now use string views (GetProcessDirectory, GetProcessFullPath, etc)
[*] Fix XP using common my documents vs local user documents
2024-09-24 18:59:54 +01:00
9b1ff8889e [*] Fix Win32 pipe regression
[*] Fix Win32 network regression
2024-09-21 10:42:44 +01:00
ff65193d0f [*] TODO: (Finish me) Win7 ILoopQueue doesn't seem to like the in process high perf timer io primitive so much. It works fine under Linux and WaitForMultipleObject WinXP-WinRT.
Windows 7 Perf hack
2024-09-21 01:45:46 +01:00
36349b4d02 [*] NT: fix AuLoop::ILoopQueue::WaitAll defects 2024-09-21 01:43:03 +01:00
f95244f4ba [*] Fix NT: READ handle leak under fastpath 2024-09-19 18:29:53 +01:00
fb1f53a930 [*] Fix latency and internal tick wakeup filtering regressions in: 57c5515173 2024-09-17 18:37:31 +01:00
436d50a01f [+] AuIO::IOPipeRequest::bReadEntireAllocation
[*] Fix 24. Hello IO regression
2024-09-17 18:23:49 +01:00
a4d2649dac [*] Fix regression in af5c8e86c0 2024-09-17 18:17:13 +01:00
b80bb7fc77 [*] Fix regression in WaitForMultipleObjectsEx 2024-09-13 08:47:32 +01:00
6852fbddf1 [*] Improved high resolution timing on Windows 7, Windows 10 < RS4, and Windows10 >= RS4/Win11
Win7 test:
[2024-09-10 07:09:31] [Debug]  | Waiting 750 overshoot: 103600 NS
[2024-09-10 07:09:31] [Debug]  | bret: true
[2024-09-10 07:09:31] [Debug]  | Waiting 750 overshoot: 145200 NS
[2024-09-10 07:09:32] [Debug]  | bret: true
[2024-09-10 07:09:32] [Debug]  | Waiting 750 overshoot: 100000 NS
[2024-09-10 07:09:33] [Debug]  | bret: true
[2024-09-10 07:09:33] [Debug]  | Waiting 750 overshoot: 88000 NS
[2024-09-10 07:09:34] [Debug]  | bret: true
[2024-09-10 07:09:34] [Debug]  | Waiting 750 overshoot: 114500 NS
[2024-09-10 07:09:34] [Debug]  | bret: true
[2024-09-10 07:09:34] [Debug]  | Waiting 750 overshoot: 85000 NS
[2024-09-10 07:09:35] [Debug]  | bret: true
[2024-09-10 07:09:35] [Debug]  | Waiting 750 overshoot: 133500 NS
[2024-09-10 07:09:36] [Debug]  | bret: true
[2024-09-10 07:09:36] [Debug]  | Waiting 750 overshoot: 137600 NS
[2024-09-10 07:09:36] [Debug]  | bret: true
[2024-09-10 07:09:36] [Debug]  | Waiting 750 overshoot: 111800 NS
[2024-09-10 07:09:37] [Debug]  | bret: true
[2024-09-10 07:09:37] [Debug]  | Waiting 750 overshoot: 103100 NS
[2024-09-10 07:09:38] [Debug]  | bret: true
[2024-09-10 07:09:38] [Debug]  | Waiting 750 overshoot: 132100 NS
[2024-09-10 07:09:39] [Debug]  | bret: true
[2024-09-10 07:09:39] [Debug]  | Waiting 750 overshoot: 87900 NS
[2024-09-10 07:09:39] [Debug]  | bret: true
[2024-09-10 07:09:39] [Debug]  | Waiting 750 overshoot: 105000 NS
[2024-09-10 07:09:40] [Debug]  | Waiting 250 overshoot: 59100 NS
[2024-09-10 07:09:40] [Debug]  | Waiting 250 overshoot: 95000 NS
[2024-09-10 07:09:40] [Debug]  | Waiting 250 overshoot: 116100 NS
[2024-09-10 07:09:40] [Debug]  | Waiting 250 overshoot: 111600 NS
[2024-09-10 07:09:41] [Debug]  | Waiting 250 overshoot: 46600 NS
[2024-09-10 07:09:41] [Debug]  | Waiting 250 overshoot: 82300 NS
[2024-09-10 07:09:41] [Debug]  | Waiting 250 overshoot: 84700 NS
[2024-09-10 07:09:41] [Debug]  | Waiting 250 overshoot: 77400 NS
[2024-09-10 07:09:42] [Debug]  | Waiting 250 overshoot: 56500 NS
[2024-09-10 07:09:42] [Debug]  | Waiting 250 overshoot: 88500 NS
[2024-09-10 07:09:42] [Debug]  | Waiting 250 overshoot: 67100 NS
[2024-09-10 07:09:42] [Debug]  | Waiting 250 overshoot: 69200 NS
[2024-09-10 07:09:43] [Debug]  | Waiting 250 overshoot: 52500 NS
[2024-09-10 07:09:43] [Debug]  | Waiting 250 overshoot: 87300 NS
[2024-09-10 07:09:43] [Debug]  | Waiting 250 overshoot: 66600 NS
[2024-09-10 07:09:43] [Debug]  | Waiting 250 overshoot: 83700 NS
[2024-09-10 07:09:44] [Debug]  | Waiting 250 overshoot: 79700 NS
[2024-09-10 07:09:44] [Debug]  | Waiting 250 overshoot: 60300 NS
[2024-09-10 07:09:44] [Debug]  | Waiting 250 overshoot: 116800 NS
[2024-09-10 07:09:44] [Debug]  | Waiting 250 overshoot: 80500 NS
[2024-09-10 07:09:46] [Debug]  | Waiting 1250 overshoot: 75800 NS
[2024-09-10 07:09:47] [Debug]  | Waiting 1250 overshoot: 87500 NS
[2024-09-10 07:09:48] [Debug]  | Waiting 1250 overshoot: 5367700 NS
[2024-09-10 07:09:49] [Debug]  | Waiting 1250 overshoot: 103200 NS
[2024-09-10 07:09:51] [Debug]  | Waiting 1250 overshoot: 7424400 NS
[2024-09-10 07:09:52] [Debug]  | Waiting 1250 overshoot: 5281800 NS
[2024-09-10 07:09:53] [Debug]  | Waiting 1250 overshoot: 5673100 NS
[2024-09-10 07:09:54] [Debug]  | Waiting 1250 overshoot: 10185700 NS
[2024-09-10 07:09:55] [Debug]  | Waiting 1250 overshoot: 12369200 NS
[2024-09-10 07:09:57] [Debug]  | Waiting 1250 overshoot: 75800 NS
[2024-09-10 07:09:58] [Debug]  | Waiting 1250 overshoot: 96900 NS
[2024-09-10 07:09:59] [Debug]  | Waiting 1250 overshoot: 3663000 NS
[2024-09-10 07:10:00] [Debug]  | Waiting 1250 overshoot: 11713900 NS
[2024-09-10 07:10:02] [Debug]  | Waiting 1250 overshoot: 138500 NS
[2024-09-10 07:10:03] [Debug]  | Waiting 1250 overshoot: 9764800 NS
[2024-09-10 07:10:04] [Debug]  | Waiting 1250 overshoot: 8398700 NS
[2024-09-10 07:10:05] [Debug]  | Waiting 1250 overshoot: 8862000 NS
[2024-09-10 07:10:07] [Debug]  | Waiting 1250 overshoot: 3616900 NS
[2024-09-10 07:10:08] [Debug]  | Waiting 1250 overshoot: 6343400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1250 overshoot: 9492100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 111900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 115700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 137100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 135000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 219300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 127700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 87900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 862200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 107200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 80000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 69800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 230000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 72400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 67100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 89000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 80400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 73200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 58100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 64100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 5 overshoot: 55700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 75100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 59900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 56100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 57300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 141700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 1089800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 183100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 328500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 80200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 72200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 74800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 67900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 74000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 65400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 83400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 85500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 74600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 73200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 79300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 10 overshoot: 74100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 77800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 93200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 71000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 71300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 80700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 90700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 95200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 81500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 79300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 90600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 104000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 99400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 89600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 106500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 107800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 104300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 105300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 103900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 72900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 1 overshoot: 112300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 109600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 112800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 75700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 103900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 104800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 109600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 126700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 110700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 108500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 96900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 111200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 118800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 115800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 137200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 65200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 233800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 106300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 126500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 105100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting 2 overshoot: 104600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 106300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 107200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 107000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 102300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 97600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 95800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 104800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 115900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 104900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 114200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 108900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 117400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 106400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 118400 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 348300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 113300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 125600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 111800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 106300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .6 overshoot: 106700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 108000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 82100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 116500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 96500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 99100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 78000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 87500 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 103100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 99100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 114000 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 87800 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 101600 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 89300 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 76100 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 75700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 75900 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 90200 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 94700 NS
[2024-09-10 07:10:09] [Debug]  | Waiting .3 overshoot: 88000 NS
-----------------------------------------------------------------
[2024-09-10 07:16:32] [Debug]  | bret: true
[2024-09-10 07:16:32] [Debug]  | Waiting 750 overshoot: 65200 NS
[2024-09-10 07:16:33] [Debug]  | bret: true
[2024-09-10 07:16:33] [Debug]  | Waiting 750 overshoot: 73900 NS
[2024-09-10 07:16:34] [Debug]  | bret: true
[2024-09-10 07:16:34] [Debug]  | Waiting 750 overshoot: 66800 NS
[2024-09-10 07:16:34] [Debug]  | bret: true
[2024-09-10 07:16:34] [Debug]  | Waiting 750 overshoot: 63800 NS
[2024-09-10 07:16:35] [Debug]  | bret: true
[2024-09-10 07:16:35] [Debug]  | Waiting 750 overshoot: 84200 NS
[2024-09-10 07:16:36] [Debug]  | bret: true
[2024-09-10 07:16:36] [Debug]  | Waiting 750 overshoot: 138500 NS
[2024-09-10 07:16:37] [Debug]  | bret: true
[2024-09-10 07:16:37] [Debug]  | Waiting 750 overshoot: 85000 NS
[2024-09-10 07:16:37] [Debug]  | bret: true
[2024-09-10 07:16:37] [Debug]  | Waiting 750 overshoot: 71900 NS
[2024-09-10 07:16:38] [Debug]  | bret: true
[2024-09-10 07:16:38] [Debug]  | Waiting 750 overshoot: 81400 NS
[2024-09-10 07:16:39] [Debug]  | bret: true
[2024-09-10 07:16:39] [Debug]  | Waiting 750 overshoot: 65600 NS
[2024-09-10 07:16:40] [Debug]  | bret: true
[2024-09-10 07:16:40] [Debug]  | Waiting 750 overshoot: 60400 NS
[2024-09-10 07:16:40] [Debug]  | bret: true
[2024-09-10 07:16:40] [Debug]  | Waiting 750 overshoot: 77400 NS
[2024-09-10 07:16:41] [Debug]  | bret: true
[2024-09-10 07:16:41] [Debug]  | Waiting 750 overshoot: 81500 NS
[2024-09-10 07:16:42] [Debug]  | bret: true
[2024-09-10 07:16:42] [Debug]  | Waiting 750 overshoot: 91600 NS
[2024-09-10 07:16:43] [Debug]  | bret: true
[2024-09-10 07:16:43] [Debug]  | Waiting 750 overshoot: 148500 NS
[2024-09-10 07:16:43] [Debug]  | bret: true
[2024-09-10 07:16:43] [Debug]  | Waiting 750 overshoot: 75600 NS
[2024-09-10 07:16:44] [Debug]  | bret: true
[2024-09-10 07:16:44] [Debug]  | Waiting 750 overshoot: 112200 NS
[2024-09-10 07:16:45] [Debug]  | bret: true
[2024-09-10 07:16:45] [Debug]  | Waiting 750 overshoot: 102700 NS
[2024-09-10 07:16:46] [Debug]  | bret: true
[2024-09-10 07:16:46] [Debug]  | Waiting 750 overshoot: 103700 NS
[2024-09-10 07:16:46] [Debug]  | Waiting 250 overshoot: 96700 NS
[2024-09-10 07:16:46] [Debug]  | Waiting 250 overshoot: 101500 NS
[2024-09-10 07:16:46] [Debug]  | Waiting 250 overshoot: 59100 NS
[2024-09-10 07:16:47] [Debug]  | Waiting 250 overshoot: 73500 NS
[2024-09-10 07:16:47] [Debug]  | Waiting 250 overshoot: 89700 NS
[2024-09-10 07:16:47] [Debug]  | Waiting 250 overshoot: 65900 NS
[2024-09-10 07:16:47] [Debug]  | Waiting 250 overshoot: 53600 NS
[2024-09-10 07:16:48] [Debug]  | Waiting 250 overshoot: 117200 NS
[2024-09-10 07:16:48] [Debug]  | Waiting 250 overshoot: 133600 NS
[2024-09-10 07:16:48] [Debug]  | Waiting 250 overshoot: 65700 NS
[2024-09-10 07:16:48] [Debug]  | Waiting 250 overshoot: 60900 NS
[2024-09-10 07:16:49] [Debug]  | Waiting 250 overshoot: 76400 NS
[2024-09-10 07:16:49] [Debug]  | Waiting 250 overshoot: 77000 NS
[2024-09-10 07:16:49] [Debug]  | Waiting 250 overshoot: 115700 NS
[2024-09-10 07:16:49] [Debug]  | Waiting 250 overshoot: 45000 NS
[2024-09-10 07:16:50] [Debug]  | Waiting 250 overshoot: 73000 NS
[2024-09-10 07:16:50] [Debug]  | Waiting 250 overshoot: 75400 NS
[2024-09-10 07:16:50] [Debug]  | Waiting 250 overshoot: 95300 NS
[2024-09-10 07:16:50] [Debug]  | Waiting 250 overshoot: 164200 NS
[2024-09-10 07:16:51] [Debug]  | Waiting 250 overshoot: 97600 NS
[2024-09-10 07:16:52] [Debug]  | Waiting 1250 overshoot: 274900 NS
[2024-09-10 07:16:53] [Debug]  | Waiting 1250 overshoot: 121300 NS
[2024-09-10 07:16:54] [Debug]  | Waiting 1250 overshoot: 61100 NS
[2024-09-10 07:16:55] [Debug]  | Waiting 1250 overshoot: 172200 NS
[2024-09-10 07:16:57] [Debug]  | Waiting 1250 overshoot: 75700 NS
[2024-09-10 07:16:58] [Debug]  | Waiting 1250 overshoot: 218500 NS
[2024-09-10 07:16:59] [Debug]  | Waiting 1250 overshoot: 172700 NS
[2024-09-10 07:17:00] [Debug]  | Waiting 1250 overshoot: 87200 NS
[2024-09-10 07:17:02] [Debug]  | Waiting 1250 overshoot: 197300 NS
[2024-09-10 07:17:03] [Debug]  | Waiting 1250 overshoot: 213600 NS
[2024-09-10 07:17:04] [Debug]  | Waiting 1250 overshoot: 388600 NS
[2024-09-10 07:17:05] [Debug]  | Waiting 1250 overshoot: 85200 NS
[2024-09-10 07:17:07] [Debug]  | Waiting 1250 overshoot: 91900 NS
[2024-09-10 07:17:08] [Debug]  | Waiting 1250 overshoot: 176100 NS
[2024-09-10 07:17:09] [Debug]  | Waiting 1250 overshoot: 7844400 NS
[2024-09-10 07:17:10] [Debug]  | Waiting 1250 overshoot: 145600 NS
[2024-09-10 07:17:11] [Debug]  | Waiting 1250 overshoot: 61100 NS
[2024-09-10 07:17:13] [Debug]  | Waiting 1250 overshoot: 94400 NS
[2024-09-10 07:17:14] [Debug]  | Waiting 1250 overshoot: 94400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1250 overshoot: 101800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 81100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 96800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 97500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 43600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 60000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 62400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 74500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 96600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 93800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 74500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 87900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 102600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 61600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 55200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 57200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 83600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 53300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 56000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 58900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 5 overshoot: 91000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 96500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 51900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 322800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 82600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 140300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 334400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 317200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 110800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 318200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 102800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 141000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 84000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 190100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 69100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 104300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 84500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 123400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 77500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 57300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 10 overshoot: 59000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 41000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 31900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 86100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 54100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 201000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 43800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 47300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 62900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 56000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 58700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 40900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 55800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 57500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 33900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 39100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 40500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 40100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 65400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 77500 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 1 overshoot: 27000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 57700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 50100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 63100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 62400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 74200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 59000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 39000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 56700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 67200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 445400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 60900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 46600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 48800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 39400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 35000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 52400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 41100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 38000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 36000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting 2 overshoot: 41400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 36800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 36900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 30400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 61000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 36800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 48700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 30000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 31400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 41100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 25700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 37900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 36700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 31300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 30700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 27600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 29200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 28600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 28800 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 47200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .6 overshoot: 28300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28900 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 29700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 27400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 26100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28000 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 29200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 29700 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 29300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 27100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 26600 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 28200 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 27300 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 27400 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 30100 NS
[2024-09-10 07:17:15] [Debug]  | Waiting .3 overshoot: 35100 NS
2024-09-10 08:17:32 +01:00
e62a99777f [*] WaitMultipleLoopSourcesEx (any) fixes 2024-09-09 12:40:49 +01:00
634eb35959 [+] IOConfig::bAPCUseCoroutineStack 2024-09-09 08:16:19 +01:00
0571aa8dd4 [+] AU_LOCK_GLOBAL_GUARD
[+] AuThreading::GetShutdownReadLock()
2024-09-09 03:46:38 +01:00
16409d449b [*] Build regression (4d4f5e2501) and amend (35761edaec)
v0.3.1178
2024-09-08 23:35:12 +01:00
35761edaec [+] AuIO::Loop::NewLSTimerHighResolution
[*] ILSTimer::UpdateTime -> ILSTimer::UpdateTimeWall
[*] ILSTimer::UpdateTimeNs -> ILSTimer::UpdateTimeWallNs
[+] ILSTimer::UpdateTimeSteady
[+] ILSTimer::UpdateTimeSteadyNs
2024-09-08 07:26:23 +01:00
4d4f5e2501 [+] ILoopSource::IsSignaledExt(...)
[+] ILoopSource::WaitOnExt(...)
[+] ILoopSource::WaitOnAbsExt(...)
2024-09-07 22:45:34 +01:00
f466df8464 [*] Minor thread pool fixes / improvements before some bigger commits are done 2024-09-05 06:38:57 +01:00
6f29237b78 [*] AuFS::ReadString shouldn't fail with an empty file 2024-08-17 16:23:38 +01:00
1d2d5753b9 [*] Linux: possible regressions in 57c5515173. Fixes read while transaction is signaled loops 2024-08-06 05:15:33 +01:00
57c5515173 [*] Linux: Harden recursive IO scheduling 2024-08-05 19:44:54 +01:00
55cac676f5 [+] AuLoop::NewSemaphoreEx with max count option for in-process (not ipc) limiting the total wakes.
This is required for Xbox, Xbox 360, and Win32 emulators deriving a mutex via a the NT semaphore primitive instead of the builtin binary semaphore (event) and mutex.
2024-08-05 15:57:13 +01:00
75f6325ee2 [*] Linux: fix spinning in an io_submit=EAGAIN loop 2024-08-05 04:32:52 +01:00
5947e6a2c3 [*/+] Added internal AuLoop::WaitMultipleOrObjects function for POSIX Issue4+ users, excluding the BSDs, to optimize AuLoop::WaitForMultipleObject users. (Win32 and Xbox emulators).
This mitigates the epoll allocation / release under Linux.
2024-08-02 02:23:19 +01:00
67c4cdbee0 [*] TODO: fix int on both platforms 2024-08-01 13:33:36 +01:00
cc01b0557a [*] Improve ILoopQueue::WaitAll parity (been on the todo list for, idk, 3 years) 2024-08-01 12:55:08 +01:00
8545c59cba [*] Amend: 5cafefae bad linux optimization (?) 2024-07-31 12:02:31 +01:00
5cafefae5d [*] LSLocalSemaphore bug fix for scriptability. (TODO: reimpl like the event?)
[*] Fix: IO objects not using the explicit slow sync primitives.
Dunno how these werent refactored; then again, i never properly got around to finishing the factories for fast/slow io objects. In addition, some of these arent even accessed by the ILoopSource interface, so it's not as critical of a failure.
2024-07-30 17:53:58 +01:00
9956f1c153 [+] AuIO::Loop::kWaitMultipleFlagBreakAfterOne for Win32 WaitForMultipleObjects shim (we cannot return an array of indices to a win32 program) 2024-07-30 17:26:38 +01:00
3d652ed605 [*] af5c8e86c0 20hrs ago: AuSPtr<AuMemoryViewXXX>s werent fully eliminated 2024-07-13 16:34:44 +01:00
46ef3231a2 [*] Change how the default work completion group for an AuAsync threads is created and kept alive 2024-07-12 20:40:05 +01:00
af5c8e86c0 [*] AuSPtr<AuMemoryViewXXXX> is now an anti-pattern. After 3 fucking years, memory views of shared control blocks and atomic in use counters are properly utilized everywhere. We do not need generic superclasses to be safe anymore 2024-07-12 20:22:48 +01:00
2b2f5c3d23 [*] Win32: added nvme pcie check under fs devices 2024-07-12 16:22:26 +01:00
d9230ec9c3 [*] Fix NT regression whilst working on a POSIX path bug (3143f3d2) 2024-07-12 16:16:12 +01:00
c6e6c1c433 [+] Added Linux FSPlatformDevices implementation 2024-07-05 10:39:24 +01:00
3143f3d2eb [*] Handling of edge case special dirs under Torbalds OS 2024-07-04 18:54:55 +01:00
937016e9f3 [*] Harden awaiting unlock via RuntimeWaitForSecondaryTick() usage under linux 2024-07-03 20:07:59 +01:00
cb69a7e737 [*] Solve two Linux regressions introduced/poorly worked around in: e7597b8463, 592afe00a7 2024-07-02 05:16:49 +01:00
e7597b8463 [+] Added basic posix name resolution for when glibc isnt present or when being built on non-glibc toolchains 2024-07-01 12:37:38 +01:00
592afe00a7 [*] AuNet: Missing Linux TODO block; harden two callbacks missing a try/catch 2024-07-01 11:54:18 +01:00
3bae761e50 [*] AuIO harden 2024-07-01 11:52:12 +01:00
ba36ea4ef1 [+] Added AuOptional<AuUInt> optMaxRecursion to AuFS::ReadDirRecursive 2024-05-19 17:12:14 +01:00
631624dc55 [*] Linux build regressions, and shrink the size of Linux RWLocks to 48 bytes from 64 2024-05-07 14:57:19 +01:00
134816e128 [*] Optimize primitives SMTYield for Alderlake+ user-space, BIOS-ring mwait, and AARCH 2024-05-03 12:22:38 +01:00
b88e28aea0 [*] IOPipeWork completion group problem 2024-04-22 02:51:17 +01:00
579185ec10 [*] Harden AuIOAdapterAsyncStream 2024-04-21 13:23:58 +01:00
c26eaf86a7 [*] Minor UWP progress 2024-04-21 11:52:24 +01:00
85cf7d7a4c [*] Missed u 2024-04-20 02:54:31 +01:00
e7d9df3cab [*] Improve alt-AuString allocator awareness 2024-04-20 02:29:49 +01:00
83f34b0c47 [*] I was right. String views are [mostly] pointless (*)
03:28:55:638  17>2 of 53388 functions (<0.1%) were compiled, the rest were copied from previous compilation.
03:28:55:638  17>  0 functions were new in current compilation
03:28:55:638  17>  65 functions had inline decision re-evaluated but remain unchanged
03:28:56:749  17>Finished generating code

the header of const AuString & is the same as std::string_view therefore nothing changes. in fact, we still need to alloc strings a bunch of times for a zero terminated string. worse, <c++20 always allocs each time we want to access a hashmap with o(1) lookup, making small hashmaps kinda pointless when we always have to alloc+copy (thx std)

perhaps this will help some language binders
2024-04-19 05:58:08 +01:00
528cb01679 [*] INetAdapter refactor: lets not assume all adapters have IP addresses 2024-04-14 22:02:38 +01:00