f177b67e1f
[*] GetLastError() == ERROR_FILE_EXISTS fast path
2023-09-13 03:48:10 +01:00
18ac961ac9
[*] (dwFlags & 0x4ffff7) && (!pCreateFile2) check
...
[*] (dwAttributes & 0xFFB00008) && (!pCreateFile2)
2023-09-13 03:38:59 +01:00
b4d5f4c127
[+] AuIO::IO::EStandardStream
...
[+] AuIO::IOHandle::InitFromStreamEnum(...)
2023-09-13 02:50:59 +01:00
d0538ea4de
[*] NT/Win32-like: Use Win32Open as opposed to CreateFileW
2023-09-13 02:27:18 +01:00
a8696c0b7e
[*] ...no
2023-09-13 00:02:26 +01:00
729c9f8508
[*] Ensure WaitFor always respects 0 timeouts, no matter the flags
2023-09-12 22:06:55 +01:00
6ff27c6855
[*] This was bothering me - 4b0a7c65
cont
2023-09-12 21:56:58 +01:00
6181d97c3c
[*] Improve internal path consistency
...
[*] Removes some unnecessary panics
2023-09-12 20:49:02 +01:00
bf03124f92
[+] AuThreading::TryWait
2023-09-12 18:47:25 +01:00
8e54071d60
[-] Remove 2 year old 0.0 WaitFor back-off implementation
2023-09-12 18:30:45 +01:00
4b0a7c651a
[*] Guess I should finalize this for linux. The verbosity of writing a cas in the wait loops is stupid if we arent doing anything special with the bits.
2023-09-12 16:12:54 +01:00
00260294b2
[*] Guess this got twisted, or maybe my intention was to zero out if we cant get accurate topology from apic bits; i don't recall
2023-09-12 14:11:09 +01:00
403c186f0a
[*] Improve NT semaphore: use a different internal api now. Might help uncontested servers with work queues using semaphores
2023-09-12 13:28:46 +01:00
ffd61d4d54
[*] NT: AuProcess this is better
2023-09-12 02:01:12 +01:00
b46390f83a
[*] Remove explicit Windows version check assuming certain file systems and platforms can be stupid
2023-09-12 01:35:54 +01:00
6062a16d9c
[*] Prevent overflow into UNC root namespace of hostnames and volumes via path or filename overflow
2023-09-12 00:52:16 +01:00
92593be412
[*] FS path mitigation: begin to handle >= MAX_PATHs by enforcing UNC \\?\ prefixes across every single Win32/NT api we hit (if relevant. im sure some long paths may still break things.)
2023-09-10 23:49:47 +01:00
d727859cc2
[*] Linux/Modern NT regression in new optimized event wait path
2023-09-10 23:06:58 +01:00
22efbff12f
[*] 74dc6772
cont: this structure is going to be padded to 32bits anyway. this makes the atomic operations easier
2023-09-10 18:10:36 +01:00
4915c5e6bf
[*] dont like me stds' - big baz
2023-09-10 17:58:36 +01:00
5107911ba5
[*] Exploit mitigation - file protocols can be valid paths
2023-09-10 16:30:59 +01:00
445085d069
[*] old win32 - fix c6c35a58
: missing ms to ns conversion
2023-09-10 15:51:26 +01:00
b539cfb353
[*] 74dc6772
cont: improvements
2023-09-10 15:04:32 +01:00
c6c35a588c
[*] Switch to astatic Aurora::Utility::RateLimiter limiter` for gRuntimeConfig.threadingConfig.bWinXpThrough7BlazeOptimizerPower
2023-09-10 14:53:54 +01:00
74dc6772b0
[+] Non-mutually exclusive binary semaphore / event wait path
...
[+] ThreadingConfig::gPreferFutexEvent
2023-09-10 14:50:59 +01:00
48dc2e790b
[+] IEvent::TrySet()
...
[+] New atomic logic for AuEvent. With this change, I can stop slandering it as the "shit primitive."
(it's still not the best it could be, but it's an improvement over what i had before)
2023-09-10 14:04:00 +01:00
12a2f30f47
[*] 9ab0c25b
but for UNIX
2023-09-09 23:57:01 +01:00
9ab0c25b05
[*] Win32 opener: ensure file/dir exists (subject to time of check attack, but its fine to prevent stupid 'open' shellexec exploits. wont save you if io write is available)
2023-09-09 23:15:45 +01:00
1a4a4ad863
[*] Added missing this->
s
2023-09-09 19:46:08 +01:00
dfe44317a0
[*] SMT Yield: minor branch added to SMT Yield
2023-09-09 18:09:22 +01:00
88355932c1
[*] Optimize thread configurations to be unpacked from the bitmap once at startup and during reconfigure as opposed ad-hoc
2023-09-09 17:37:14 +01:00
ca2f8fea71
[*] Mitigate Kernel32 and Rtl mixing
2023-09-09 15:29:48 +01:00
1fa063e19f
[*] Why am i calling libm/crt from here? how stupid am i
2023-09-09 15:16:06 +01:00
4ad70cadb4
[*] optimization: cea33621
cont
2023-09-09 14:38:02 +01:00
e7ec875851
[*] added more win32 steady time clock, frequency-based fast paths
2023-09-09 13:58:14 +01:00
cf7be329d6
[*] Update fallback RNG entropy: reduce expected tick resolution
2023-09-09 13:50:26 +01:00
cea3362186
[*] Finally fixed an old regression: RWLock is back to being write-biased to prevent forever-read conditions
2023-09-09 13:03:02 +01:00
109b0cff3f
[*] ...and same applies to RWLock
...
(instead its pls dont use the public api instead of the internal NT apis)
2023-09-09 12:39:47 +01:00
9601fcfd39
[*] NT AuThreadPrimitives: stop using these AuProcAddresses directly
2023-09-09 12:29:43 +01:00
8e59300395
[*] Another broken Linux path
2023-09-09 12:17:40 +01:00
51dcd190b3
[*] Missing SysPushErrorXXXs
2023-09-07 23:20:26 +01:00
36a72228db
[*] Cleanup/formatting of SMT yields
2023-09-06 17:01:01 +01:00
213ed6c49b
[*] yes
2023-09-05 22:31:16 +01:00
3adb019cf1
[*] d3587dbf
cont
2023-09-05 15:03:59 +01:00
d3587dbf08
[*] 560ca079
cont perf improvement
2023-09-05 14:17:49 +01:00
560ca079a4
[*] AuAsync performance improvement: avoiding the kernel
2023-09-05 02:36:46 +01:00
876f4439b3
[*] NT proceesses: no point in pretending _spawnv is a real thing. this path is just causing defects.
2023-09-04 23:46:48 +01:00
f53508baa9
[*] Unify both SMT subloops
2023-09-04 23:03:08 +01:00
d112179c83
[*] May as well make this in line with the others
2023-09-04 16:45:42 +01:00
bcf3fabd83
[*] FS Resources (GetWritableAppdata): fail over to this path instead of failing
2023-09-04 16:32:28 +01:00