b3557ed938
[*] Harden auprocesses / async outputof
2023-12-29 20:49:58 +00:00
7df1d1dd27
[*] Harden panics
2023-12-29 18:46:16 +00:00
5862dbeacc
[+] New generic primitives
...
[-] AuSemaphore.Unix.hpp
[*] Moved the old pthread based primitives to _removed/*.bak
[+] AuWoASemaphore.Unix.cpp
[+] AuWoASemaphore.Unix.hpp
2023-12-29 16:12:14 +00:00
f404e8960f
[+] AuProcesses::RunAs
2023-12-28 21:00:07 +00:00
662dbac0c1
[+] IO completion groups
2023-12-28 16:49:11 +00:00
be2b781ed6
[*] mitigations and clean up before two major commits
2023-12-26 21:01:29 +00:00
d17903251b
[*] another one ( 9393c175
)
2023-12-25 11:56:38 +00:00
cdc6eeeabd
[*] Two trivial bug fixes
2023-12-24 22:03:14 +00:00
ac33e6bb7f
[*] you slimey rats dont get vtable exec that easily
2023-12-24 06:54:19 +00:00
c5656a8843
[+] WIP internal IO improvements (read: hacks) for Linux + bool IProcess::HasExited()
2023-12-24 06:24:39 +00:00
06f54968cd
[+] Linux: missing io cancellations out of parity with Windows
2023-12-24 05:41:03 +00:00
a2c8f036e0
[*] 1576f56d
cont (i messed up again)
2023-12-23 16:55:04 +00:00
71c88316e5
[*] Win32 args escape regression
2023-12-23 11:52:32 +00:00
a6ff21a167
[*] Update AuProcesses::OutputOfAsync
2023-12-23 11:22:10 +00:00
1576f56d19
[*] Fix busted nt timeouts under loopsource waits
2023-12-23 08:03:59 +00:00
cdfb35d5a8
[*] Fix crash when calling ::what() on an external vendors exception
2023-12-23 08:03:10 +00:00
0faf4c7846
[+] Aurora::Processes::OutputOf
...
[+] Aurora::Processes::OutputOfAsync
[*] Fix win32 regression
2023-12-23 07:05:44 +00:00
9393c17564
[*] Other POSIX systems (non-linux) are probably going to need this improved eSpawnChildProcessWorker awareness
2023-12-23 03:59:27 +00:00
2fd41d4142
[*] AuPaths finish up cleanup
2023-12-23 03:35:49 +00:00
9c86d1c899
[*] Linux clean up (?) (+typo)
2023-12-23 03:16:43 +00:00
bd6b70f215
[*] Win32 bug fix
2023-12-22 12:55:08 +00:00
24fec2301c
[+] NtWaitForMultipleObjects awareness
2023-12-22 06:00:13 +00:00
e05bb8f5dc
[+] StartupParameters::posixApplySandboxCOW
2023-12-22 03:57:46 +00:00
730465ca2b
[+] UNIX: AuProcesses should always try to close leaked fds
2023-12-22 03:49:11 +00:00
2e06094e46
[*] Harden consoletty from exceptions
2023-12-22 00:34:30 +00:00
66eca9ff8f
[*] Exceptionless-API hardening
2023-12-22 00:22:43 +00:00
298b095cc1
[*] WhyOnAddress
2023-12-21 22:41:16 +00:00
4febc0e6dc
[*] AuSwInfo under linux fix
2023-12-21 15:31:19 +00:00
9fbed174fc
[*] Realign AuProcAddresses.NT.cpp
2023-12-21 14:27:35 +00:00
5951724374
[*] Improve Linux AuSwInfo
2023-12-21 14:14:06 +00:00
de739b8e1f
[+] AWS and centos detection
2023-12-21 13:21:21 +00:00
2570aea213
[+] Clang/Win32 compilation support
2023-12-19 03:43:11 +00:00
4dc2f94467
[*] Revert AuOptionalEx -> AuOptional change
2023-12-18 08:52:51 +00:00
414c736179
[+] ELoopSource expansion
2023-12-18 07:39:53 +00:00
22486b90e6
[*] NT: WaitMultipleLoopSourcesEx wasn't bypassing the wait cap
2023-12-18 07:35:24 +00:00
f40d59802a
[*] Remove a syscall or two from startup / more accurate startup timings
2023-12-18 05:59:39 +00:00
207b8f6f46
[+] Copyable IOHandles
2023-12-18 05:41:27 +00:00
dc23f14192
[+] A recommendation for Windows 11 or greater users to upgrade to Windows 7 or 10
2023-12-18 04:54:21 +00:00
98f30cac51
[*] Improve ConsoleTTY perf
2023-12-18 01:57:44 +00:00
52f8556efe
[*] Bug fix: leave scroll mode on exit, not enter scroll mode
2023-12-16 21:14:01 +00:00
9b99e6e7c7
[*] Harden IPC pipes
2023-12-16 21:08:46 +00:00
a932aa57d2
[*] Formatting pissing me off
...
[+] using AuWorkerId = AuAsync::WorkerId_t;
[+] using AuWorkerPId = AuAsync::WorkerPId_t;
[+] using AuWorkerID = AuAsync::WorkerPId_t;
2023-12-16 06:42:37 +00:00
a5f4d959be
[+] AuProcess::GetProcessStartupSteadyTimeNS()
2023-12-14 00:37:45 +00:00
1652231fd4
[*] Refactor AuProcess (paths)
2023-12-13 18:11:35 +00:00
98d79a5aa3
[+] RuntimeWaitForSecondaryTick()
2023-12-13 04:43:29 +00:00
e7d8e5b010
[+] NT: Let Grug handle io handle closures
2023-12-13 02:46:06 +00:00
a3046658fe
[*] Minor update to WaitMultipleLoopSourcesEx
2023-12-11 23:34:31 +00:00
35fb78787d
[*] Symmetry in WoA
2023-12-11 20:40:41 +00:00
073d77a17b
[*] Harden IO processor item usage after parent processor release
2023-12-11 20:18:36 +00:00
9527a076cf
[*] Update WoA
2023-12-11 18:58:17 +00:00
5541c25050
[+] AuIO::Loop::WaitMultipleLoopSourcesEx
2023-12-10 22:25:03 +00:00
0747ff230e
[*] Thread primitives optimization
...
[*] Fix wake on address regression
2023-12-10 21:38:41 +00:00
1a71a7dd41
[+] WOA_SEMAPHORE_MODE
2023-12-10 19:25:31 +00:00
3f43c320c5
[*] WoA fixes
2023-12-10 19:11:10 +00:00
fc6902d231
[*] Refactor INetAdapter
2023-12-10 15:42:11 +00:00
76d3759295
[+] IProtocolPiece::GetPreviousPiece()
...
[+] IProtocolPiece::ReallocateSourceBuffer()
[*] IProtocolPiece::GetInputWriter()
[*] IProtocolPiece::GetNextWriter()
2023-12-10 14:06:10 +00:00
9ba725973f
[+] Added a random id (u8) to log filenames
2023-12-09 19:56:00 +00:00
fe529b31da
[*] ITimer comment and win32 patch
2023-12-09 12:25:46 +00:00
783bed0d85
[*] LSLocalEvent: finish optimized impl (?)
2023-12-09 11:10:02 +00:00
ab030ae969
[*] Scar seething
2023-12-08 20:40:24 +00:00
0ff345a558
[+] NT_APPLICATION_COMPAT_AURORA_RUNTIME_ALPHA
...
[+] NT_APPLICATION_COMPAT_AURORA_RUNTIME
2023-12-08 13:38:13 +00:00
8005b67d82
[*] :/
2023-12-08 13:03:14 +00:00
ad5ff2d783
[*] Simplified Win32 TLS callback overhead to prevent unwanted LoadLibraryW calls
...
(ive seen windows components do stupid things to result in crashes. time to harden.)
2023-12-07 19:04:30 +00:00
ae70feb29b
[*] Removed static IAT lookups to WS2_32.dll
2023-12-07 11:13:32 +00:00
8944d8bd16
[+] IAsyncTimer
...
[+] IAsyncTimerCallback
[+] ETickType.hpp
[+] EWorkPriority.hpp
[+] static IThreadPool::GetSelfIOProcessor()
[+] static IThreadPool::GetSelfIONetInterface()
[+] static IThreadPool::GetSelfIONetWorker()
[-] [Source/Async/]AsyncRunnable.hpp
[*] Begin encapsulating WorkerPId_t
[*] WorkerPId_t no longer take strong pointers to prevent leaks given that these identifiers are copied and kept alive everywhere
2023-12-07 09:20:23 +00:00
367118ab0c
[*] (NT Condvar) Minor performance fix
...
[*] (NT Condvar) Suspected XP-Win7 deadlock
2023-12-06 19:15:06 +00:00
e853b44ee6
[*] Fix bugs in the partially rewritten async scheduler
2023-12-06 17:48:20 +00:00
8b4ad9795c
[*] Update the FutexSemaphore to wake no more than the requested wake count
...
[*] Cleanup NTs semaphore
2023-12-06 11:17:50 +00:00
b35b290afd
[+] File System devices API
...
[+] AuFS::EFSDeviceType
[+] AuFS::EFSBusType
[+] AuFS::LogicalUsedResponse
[+] AuFS::LogicalOffsetResponse
[+] AuFS::FSLogicalPartition
[+] AuFS::FSDevice
[+] AuFS::GetRootFromPath
[+] AuFS::GetDeviceFromPath
[+] AuFS::GetDeviceFromRoot
[+] AuFS::GetLogicalMountFromPath
[+] AuFS::TrySimplifyDevicePath
[+] AuFS::GetPerformanceBufferSizeFromPath
[+] AuFS::GetPhysicalSectorSizeFromPath
[+] AuFS::GetLogicalSectorSizeFromPath
[+] AuFS::GetLogicalUsedFromPath
[+] AuFS::GetLogicalUsedFromLogicalDevice
[+] AuFS::GetDeviceSizeInBytes
[+] AuFS::GetDeviceModel
[+] AuFS::GetFSDeviceByFilePath
[+] AuFS::GetFSDeviceByDevice
[+] AuFS::GetFSDevices
[+] AuFS::GetFSDevicesCachedUnsafe
[+] AuFS::ResetDeviceCache
[+] FSPlatformDevices.cpp
[+] FSPlatformDevices.NT.cpp
(holding back Linux)
2023-12-05 18:44:38 +00:00
f79be42357
[*] Clean up dead-code in AuWakeOnAddress.cpp
2023-12-05 07:56:57 +00:00
91cff7ae26
[*] Another WakeOnAddress optimization
2023-12-05 07:15:54 +00:00
e9651eead3
[*] Linux build regressons
2023-12-04 21:13:25 +00:00
e60e308087
[*] Minor WaitMultipleLoopSources optimization
2023-12-03 07:40:20 +00:00
baf31e32d0
[+] IFileStream::ToStreamReader()
...
[+] IFileStreamToStreamWriter()
[+] IProcess::ToStreamReader(EStandardHandle stream)
[+] IProcess::ToStreamWriter()
2023-12-02 18:05:49 +00:00
9fea60a9ed
[*] 64ce35dd
cont
2023-12-02 11:06:49 +00:00
64ce35dd87
[*] Cont work on WaitMultipleLoopSources's yield time
2023-12-02 03:39:41 +00:00
b9e8b138f7
[*] Further optimize AuWakeOnAddress (signaling)
2023-12-02 03:35:24 +00:00
aadca8058e
[*] Net: Globalize adapter cache
2023-12-01 15:02:27 +00:00
e0f74d6160
[+] ISocketServer::GetServerRecvStats()
...
[+] ISocketServer::GetServerSendStats()
2023-12-01 14:49:30 +00:00
81871ed0b8
[+] INetAdapter::GetTransmitBytesPerSec()
...
[+] INetAdapter::GetReceiveBytesPerSec()
2023-12-01 13:26:44 +00:00
eceb037e70
[*] WaitMultipleLoopSources optimizations cont
2023-12-01 12:31:09 +00:00
3f7f2639c4
[*] AuLoop: Fixed missing logic in a fast path
2023-12-01 12:16:47 +00:00
cbcd55ce8e
[+] AuNet::ENetworkAdapterType
...
[+] AuNet::ENetworkAdapterStatus
[+] INetAdapter::ToNetworkType()
[+] INetAdapter::ToStatus()
2023-12-01 12:13:47 +00:00
507f418b81
[*] Attempt to optimize AuLoop::WaitMultipleLoopSources
2023-12-01 11:20:40 +00:00
b0a7417d6f
[*] Local loopsources werent calling the parents OnTrigger
2023-12-01 11:02:15 +00:00
f05cafbff7
[*] Win32 loopqueue optimization
2023-12-01 10:36:47 +00:00
a189151c59
[+] AuAsync::IThreadPool::GetIOProcessor
...
[+] AuAsync::IThreadPool::GetIONetInterface
[+] AuAsync::IThreadPool::GetIONetWorker
[+] AuAsync::IWorkItem::SetSchedByLoopSource
2023-12-01 09:22:51 +00:00
cde646ae86
[*] More formatting regressions
2023-12-01 08:03:31 +00:00
049de14090
[*] Ooops: acd8f6cf
2023-12-01 07:04:04 +00:00
c32022a8e4
[*] eb1ec8b7
(W32oW64 awareness) cont: WinXP regression
2023-12-01 06:20:39 +00:00
acd8f6cf0b
[*] Win32: fast move directory
2023-12-01 06:14:03 +00:00
9ba049d485
[*] Refactor "Jiffies" to "Frequency"
2023-12-01 04:49:18 +00:00
0c1c6d7c24
[*] Formatting regressions (+ 1x double-based RNG regression)
2023-12-01 03:43:06 +00:00
cab8627ffd
[*] (AuRandom) Resolve bad floating point distribution
2023-12-01 03:12:04 +00:00
eb1ec8b763
[*] W32oW64 awareness
2023-12-01 02:21:58 +00:00
274a0e1783
[*] Remove deprecated #if 0s from AuWakeOnAdress.cpp
2023-12-01 01:45:02 +00:00
0283186046
[*] Expand WakeOnAddress array and minor lookup optimization
2023-12-01 01:35:10 +00:00
43583a1748
[+] IRWLock::CheckSelfThreadIsWriter
2023-12-01 01:15:35 +00:00
5ec28735ed
[*] Improved AuProtocolStack API
2023-11-30 09:40:02 +00:00
5c40821d6f
[*] Link error: missing RS4 symbol
2023-11-30 09:35:44 +00:00
52b49986f3
[+] ISocketServer::GetSessionCount
2023-11-30 02:40:30 +00:00
74b1e560bb
[*] I needed 'eeep (amend previous two commits)
2023-11-29 23:38:03 +00:00
42beaeabf5
[*] AuFS::MoveDirectory -> Try remove dirs afterwards (should only succeed if empty. failure is ignored and reported to CopyDirResult)
2023-11-29 14:04:57 +00:00
dcf94a8b23
[+] (dummy!) ISocketServerLimits.hpp
...
[+] (dummy!) ISocketChannelLimits.hpp
[+] ISocketChannel::GetChannelLimits
[+] ISocketBase::GetLockedWorkerThread
[+] ISocket::GetSocketServer
2023-11-29 13:55:01 +00:00
216aa01717
[-] Yeetus
2023-11-29 08:50:14 +00:00
b4410fde52
[+] bool IsWindows10MilestoneTH1OrGreater()
...
[+] bool IsWindows10MilestoneTH1()
[+] bool IsWindows10MilestoneTH2OrGreater()
[+] bool IsWindows10MilestoneTH2()
[+] bool IsWindows10MilestoneRS1OrGreater()
[+] bool IsWindows10MilestoneRS1()
[+] bool IsWindows10MilestoneRS2OrGreater()
[+] bool IsWindows10MilestoneRS2()
[+] bool IsWindows10MilestoneRS3OrGreater()
[+] bool IsWindows10MilestoneRS3()
[+] bool IsWindows10MilestoneRS4OrGreater()
[+] bool IsWindows10MilestoneRS4()
[+] bool IsWindows10MilestoneRS5OrGreater()
[+] bool IsWindows10MilestoneRS5()
[+] bool IsWindows10Milestone19H1OrGreater()
[+] bool IsWindows10Milestone19H1()
[+] bool IsWindows10Milestone19H2OrGreater()
[+] bool IsWindows10Milestone19H2()
[+] bool IsWindows10Milestone20H1OrGreater()
[+] bool IsWindows10Milestone20H1()
[+] bool IsWindows10Milestone20H2OrGreater()
[+] bool IsWindows10Milestone20H2()
[+] bool IsWindows10Milestone21H1OrGreater()
[+] bool IsWindows10Milestone21H1()
[+] bool IsWindows10Milestone21H2OrGreater()
[+] bool IsWindows10Milestone21H2()
[+] bool IsWindows10Milestone22H2OrGreater()
[+] bool IsWindows10Milestone22H2()
2023-11-29 08:22:22 +00:00
de6b9d0bcb
[*] (todo port) Dont forget these should be upcasted to doubles
2023-11-29 07:12:25 +00:00
22f2e73954
[+] ConditionEx::WaitForSignalAbsNS
2023-11-29 06:08:09 +00:00
f06248f687
[*] Minor WakeOnAddress optimization
2023-11-29 05:37:51 +00:00
ed823a9819
[+] AuHwInfo::GetThreadCPUUtilization(AuOptional<bool> optIncludeKernel)
2023-11-29 04:14:14 +00:00
2d58f8fdef
[-] Remove #if 0s from AuRandomDevice (finished working on the rng upgrades)
2023-11-18 11:19:57 +00:00
37adbad397
[*] IM NOT MAD. YOURE MAD ( b88c61c1
cont)
2023-11-18 01:45:12 +00:00
63b72a9fb5
[*] Resolve WakeOnAddress emu-mode bug and a potential dead-lock
2023-11-17 23:11:58 +00:00
b88c61c16d
[*] Amend 999f3e69
2023-11-17 12:41:08 +00:00
999f3e69ca
[*] RNG (PLAYBACK ABI-BREAK!!!): preemptively silence the turbo autists that are going to complain about modulo bias
...
(...well, mostly. this will be good enough.)
[*] Improve fast RNG device perf
2023-11-15 17:53:37 +00:00
62e8625a11
[+] Aurora::Threading::TryWaitOnAddressEx
...
[*] Spin on top of Linuxs kernel spin, if in non-emu mode
2023-11-14 14:49:40 +00:00
3225d8cbda
[*] Fix shutdown regression ( e037fc21
, a7dfd899
151bb106
, cleanup cont)
2023-11-12 00:21:50 +00:00
9b74a623af
[*] UNIX: Use O_EXCL if available
...
[*] UNIX: Try to open readable dirs
2023-11-11 13:32:31 +00:00
151bb106fb
[*] Lock access to wpWorkers ( e037fc21
, a7dfd899
cleanup cont) and remove a redundant write lock to solve a deadlock
2023-11-11 12:48:02 +00:00
a7dfd899f8
[*] e037fc21
cleanup cont
2023-11-11 11:30:38 +00:00
e037fc214a
[*] Begin cleaning up AuAsync (2/?)
...
6af9940b
, ???
2023-11-11 10:11:09 +00:00
5e15cadce4
[+] ICompressionStream::ToSeekingStreamReader
2023-11-09 19:54:35 +00:00
8624499ab8
[*] async: none of these async io mixing modes ever worked properly. simplify/remove
2023-11-06 04:14:43 +00:00
dcb27645a1
[*] bug: drop limitation in io processor
...
[*] attempting to mitigate freeze on remote start watch
2023-11-05 21:20:16 +00:00
0331c7cf87
[+] DispatchTimeFromAuSteadyAbsNS
2023-11-04 04:43:55 +00:00
5041b2f241
[+] Mach steady time
2023-11-02 17:45:03 +00:00
df784c45b8
[+] IWorkItemHandler::ProcessInfo::reschedSteadyClockAbsNs
2023-10-31 21:07:51 +00:00
01824d6589
[*] Caught Windows XP network iface regression
2023-10-30 15:42:15 +00:00
e071b3d509
[+] WaitOnAddress[Steady](..., AuOptional<bool> optAlreadySpun = {}) arguments
...
[+] ...slight UWP optimization?
[*] Lift WoA limitation
2023-10-30 15:29:20 +00:00
77253a7654
[*] Ignore kernel CPU usage by default
...
[*] Normalize cpu load over queries
2023-10-29 21:02:09 +00:00
087bac4085
[+] AuByteBuffer::flagNoRealloc
...
[*] Fix IO regression / Critical Bug / Leak and stupid double free
2023-10-29 20:36:11 +00:00
59b30e47c0
[*] yea
2023-10-29 11:24:00 +00:00
54e8cf01c5
[*] clean up: I forgot these were a thing
2023-10-29 11:20:32 +00:00
4f275184d3
[+] Win32Config::bProcessCheckWinLdrForModNameFirst
2023-10-28 21:16:14 +01:00
004eba6e09
[*] Unlimited input fps
2023-10-28 20:12:28 +01:00
1dd9d552bd
[*] Amended CpuLoadSampler
2023-10-28 19:14:30 +01:00
178d2d79a7
[+] AuHwInfo::GetProcessCPUUtilization
2023-10-28 16:10:25 +01:00
bdf5b44cd3
[+] CpuLoadSampler
2023-10-28 16:07:44 +01:00
8408358c9d
[*] manually call mi_thread_done to avoid fls
2023-10-28 15:30:28 +01:00
17ca7a6bef
[*] Added SMT yield down these paths
2023-10-26 17:25:40 +01:00
bf49eb5fdd
[+] AuMemory::ReserveHeapMemory
2023-10-26 17:05:44 +01:00
deaa18ab07
[*] Bug fixes
2023-10-25 23:49:43 +01:00
ec8f3b3f23
[+] INetAdapter::ToMacAddress
...
[+] INetAdapter::HasDHCP
[+] INetAdapter::GetMTU
2023-10-24 19:12:47 +01:00
9092f9268c
[+] void IBasicSinkRB::PreviewRingBuffer
2023-10-24 18:37:34 +01:00
1735fa9c6c
[*] deinit check
2023-10-24 18:33:25 +01:00
ca3bded0d4
[+] AuMemory::SetMemoryLowNotification
2023-10-24 18:01:05 +01:00
4ce49941ff
[+] SysCheckNotNullMemory
...
[+] SysCheckNotNull
[+] SysCheckRetExpNotNull
[+] SysCheckRetExpNotNullMemory
2023-10-24 17:43:00 +01:00
69188d8c1e
[+] ICompressionStream::ToStreamReader
2023-10-24 17:14:54 +01:00
ceb67798f1
[+] IThreadPool::IncrementAbortFenceOnPool
...
[+] IThreadPool::IncrementAbortFenceOnWorker
[+] IThreadPool::QueryAbortFence
[+] IThreadPool::QueryShouldAbort
2023-10-24 15:33:30 +01:00
cca3ff73cb
[+] Protocol stack: IOConfig::uProtocolStackDefaultBufferSize
2023-10-24 12:02:05 +01:00
efd4da861a
[*] Protocol stack: harden these/check for out of memory
2023-10-24 11:59:55 +01:00
4b38f205d1
[*] oops i didnt just break the build
2023-10-23 12:38:29 +01:00
dfe6b468ec
[*] protocol stack: hardening of buffer flags
2023-10-23 11:30:25 +01:00
08c37454fe
[+] ENetworkError::eBrokenByteBuffer
2023-10-23 11:21:10 +01:00
72fd8d018e
[*] a7af61e9
cont: Potential Win32 loop queue bug fixes/improvements
2023-10-23 10:21:31 +01:00
1f685b635b
[+] ISocketStats::GetUptimeNS
...
[*] Some socket stat cleanup+fixes
2023-10-23 09:17:46 +01:00
a7af61e9bf
[*] Potential Win32 loop queue bug fixes/improvements
2023-10-22 22:12:55 +01:00
fb1920ccba
[*] Ensure the other fast paths work properly
2023-10-22 06:17:32 +01:00
591c0fe48b
[+] ILSSemaphore::AddMany
2023-10-22 06:11:39 +01:00
3d01d6cc8f
[*] Improve LSLocalSemaphore
2023-10-21 18:57:48 +01:00
a1a2d482d7
[*] everything before semaphore cast
2023-10-21 16:09:45 +01:00
f9916e0f21
[*] More NT Loop Queue fixes
2023-10-21 14:22:12 +01:00
5233dc7ac8
[*] NT fix pre/finish sleep out of balance
...
[*] Fix some more wait alls
2023-10-21 13:22:11 +01:00
4d454287b8
[+] IPCPipeWriter
...
[+] IPCPipeReader
2023-10-21 10:43:28 +01:00
c79993af74
[*] Fixup the WaitMultipleLoopSources Any path
2023-10-21 09:33:04 +01:00
f185f13dc7
[+] LSLocalEvent
2023-10-21 09:04:48 +01:00
73f6f6ea1e
[*] Reintroduce this function pointer test branch
2023-10-21 07:23:56 +01:00
d910c71ad8
[*] This snucked in and i forgot to enable an nt specific fast path
2023-10-21 06:57:07 +01:00
18c023acae
[*] Suppress spurious IO wakeups in WaitSingleBase
2023-10-21 06:19:51 +01:00
60bb1020ce
[+] bool WaitMultipleLoopSources(const AuList<AuSPtr<Loop::ILoopSource>> &lsList,
...
AuList<AuSPtr<Loop::ILoopSource>> &signaled,
bool bAny = true,
AuOptionalEx<AuUInt32> uTimeoutMS = 0);
2023-10-21 06:10:33 +01:00
e366d058f6
[*] Fix busted timeout calc in the previous two commits
2023-10-21 05:41:29 +01:00
186444853d
[+] LSLocalSemaphore (faster io semaphore)
2023-10-21 04:59:05 +01:00
1589079ead
[+] LSLocalMutex (faster io mutex)
2023-10-21 04:51:51 +01:00
bd69ad6739
[+] IPCPipe::ToFileStream
...
[+] IPCPipe::ToStreamReader
[+] IPCPipe::ToStreamWriter
2023-10-20 16:33:18 +01:00
88094c48ae
[*] Harden pipe reads under FS streams
2023-10-20 11:37:52 +01:00
871479172b
[+] AuIPC::NewPipeEx(AuUInt32 uPipeLength)
2023-10-20 10:48:10 +01:00
718b5a9316
[*] Nt Condvars: I'm paranoid about this potential race condition
2023-10-20 10:04:06 +01:00
09401cecd6
[*] Added call to Win32DropSchedulerResolution under sleep
2023-10-19 02:48:56 +01:00
7324a59e5b
[+] (NT preload symbols) Missing obvious fast path under Aurora::IsBlocked
2023-10-18 05:06:04 +01:00
513a7aec7e
[+] AuProcesses::StartupParameters::ntLikeHookCreateProcessW
2023-10-18 04:55:56 +01:00
8fd4ef0a71
[*] Allocless RNG devices
2023-10-17 10:03:15 +01:00
95643d6e19
[+] ICompressionStream::GetLastErrorString
...
[+] ICompressionStream::GetLastError
2023-10-17 09:28:58 +01:00
fe36ee5fb2
[+] AuMemory::SetLeakFinder
2023-10-17 08:46:08 +01:00
97decebfe9
[*] Expand NT AuProcAddresses' blacklist to include symbols
2023-10-17 08:14:20 +01:00
13e8ff460b
[+] AURORA_STEADY_TIME_SHID_CPU_XP_MODE
2023-10-17 07:55:44 +01:00
27fd8ff292
[+] AURORA_DLL_BLACKLIST
2023-10-17 05:38:08 +01:00
f62771b6e7
[*] Build regression after ROXTL AuMin/Max update to use the common type as opposed to a stupid reference of a forced common T in the usual case of taking one of two integer values
...
(thats to say, the edge case of needing copy-less operator-overloaded numeric-like classes aren't used anywhere. The c++ definition of min/max is stupid; we dont ever need a reference to min/max variable)
2023-10-17 04:58:30 +01:00
c8f3305669
[*] Address a number of NT/x86_32 build regressions
2023-10-17 03:08:29 +01:00
6bb5dd39f2
[*] 358964ef
cont: realloc event callbacks not fired
2023-10-16 04:03:19 +01:00
f53ea2a0a7
[*] 240685f7
cont: datagram channel missing [G/S]etNextFrameTargetLength
2023-10-16 03:20:28 +01:00
4742d2b9e7
[*] Missing iStartTickMS_ assignment
2023-10-16 02:18:12 +01:00
358964efb0
[+] IIOPipeEventListener::OnPipeFailureEvent
2023-10-16 01:56:28 +01:00
240685f7a6
[+] ISocketChannel::GetNextFrameTargetLength
...
[+] ISocketChannel::SetNextFrameTargetLength
2023-10-16 01:48:09 +01:00
cb60e77c63
[+] IIOPipeWork::SetNextFrameTargetLength
...
[+] IIOPipeWork::GetNextFrameTargetLength
[+] IIOPipeWork::GetNextFrameTargetLength
[+] IIOPipeWork::ReallocateLater
[+] IIOPipeWork::GetSuccessfulReallocations
[+] IIOPipeWork::GetFailedReallocations
[+] IIOPipeWork::DidLastReallocFail
(will save net and engine from doing its their current hacks)
2023-10-16 01:47:22 +01:00
6a3ff1c62f
[+] bool Aurora::AddBlockedDLL(...)
2023-10-14 20:21:39 +01:00
74b8910bf9
[*] 529eba18
cont. added support for process time
2023-10-13 21:57:38 +01:00
529eba18c7
[+] IAuroraThread::GetThreadCreationTime
2023-10-13 21:43:59 +01:00
be60d2c80d
[+} NewMemoryViewReadAdapter
...
[+] NewMemoryViewLinearSeekableAdapter
[+] NewMemoryViewWriteAdapter
2023-10-13 21:08:57 +01:00
19849ac0f2
[*] ensure these paths are always consistent
2023-10-13 20:27:21 +01:00
4a0eeefe1b
[+] AuFS::MoveDirectory
2023-10-13 18:11:49 +01:00
c52c1c89f1
[+] AuFS::CopyDirectory
2023-10-13 18:04:47 +01:00
44afa1e3de
[*] Disable this perf hack for now
2023-10-13 17:00:51 +01:00
7db0e2e688
[*] Drop all static references to User32.dll
2023-10-13 00:10:44 +01:00
f5f79bb184
[*] this is going to be a problem
2023-10-12 19:03:58 +01:00
23ddcf9ba1
[*] Trivial XP+ semaphore optimization for high wake counts
2023-10-12 17:00:13 +01:00
e3ba8cf1c5
[*] I'm just not going to bother for.now
2023-10-12 16:36:15 +01:00
ff77873ad6
[*] Further reduce win32 link time requirements (advanced api)
2023-10-11 02:13:49 +01:00
33f77cf011
[+] Aurora::Process::GetBinaryClassPath
...
[+] Aurora::Process::SetBinaryClassPath
[+] Aurora::Process::AddBinaryClassPath
[+] Aurora::Process::LoadModuleEx
[+] Aurora::Process::GetProcHandle
[+] Aurora::Process::GetProcAddressEx
[+] Aurora::ProcessConfig
[*] Cleanup a bit
2023-10-11 01:11:57 +01:00
bee9b8b07b
[*] Another AuProcess DLL loader fixerino
2023-10-10 21:24:41 +01:00
709a95cee1
[*] fix busted init once
2023-10-10 19:16:04 +01:00
f798c59cb8
[*] Fixed missed and double mimalloc init, via allocation under SwInfo, being probed by alternative nt clock query logic, under the fallback rng algorithm, possibly under another tls thread_only race condition
2023-10-08 15:00:52 +01:00
48c2175be9
[+] IProtocolStack::AppendInterceptorDynamicBuffer
...
[+] IProtocolStack::PrependInterceptorDynamicBuffer
[+] IProtocolStack::PrependSingleFrameProcessorDynamicBuffer
[+] IProtocolStack::AppendSingleFrameProcessorDynamicBuffer
[+] IProtocolStack::IsValid
[+] IProtocolPiece::ExchangeMaximumBufferLength
2023-10-07 20:25:43 +01:00
5c29787f9c
[*] Bug fixes
2023-10-07 20:04:47 +01:00
f585d41ba3
[*] 478cb2b1
?
2023-10-07 17:12:54 +01:00
795fb3d2d1
[+] NT 3.5 through Windows 7 specific clock backends
2023-10-07 16:57:20 +01:00
a7a45aaf4b
[*] Using bcrypt continues to be a dumpsterfire mistake
2023-10-07 16:56:33 +01:00
478cb2b185
[*] Improve RNG fallback performance (early process init canaries) by properly accounting for < 10 Mhz clocks
2023-10-07 14:50:32 +01:00
605862094e
[*] Fix some old known Win32 loop queue issues under bullshit real world conditions
...
(recursion, any retries, etc)
2023-10-03 22:02:48 +01:00
9686457891
[*] caught async crash on shutdown
2023-10-02 21:33:15 +01:00
a60e740328
[*] caught async deinit deadlock
...
featues conflicting with idec what. this mess needs rewriting
2023-10-01 17:10:48 +01:00
cdad552ed0
[*] Fix OSThread regression / main thread was stalling for a few seconds on exit because the schedulers end of thread clean up was bailing out under the "pls no dtor race before the os spawn kicks in" lock path
...
TODO: destink OSThread
2023-10-01 14:12:22 +01:00
654bf8eff0
[*] annoying console tty insertion quirk/bug
2023-09-28 20:38:36 +01:00
636a7ef625
[*] Fix project build regressions caused by refactoring in 522def0a
2023-09-28 20:08:59 +01:00
522def0a85
[*] I'm going to be autistic and say "everybody" is (read: industry midwits are) wrong about dates
...
(amend comments)
2023-09-28 18:29:28 +01:00
ea241d86f3
[*] Resolve ambiguous namespace regression (new conflict between Aurora::IO::Utility and Aurora::Utility)
2023-09-28 15:42:09 +01:00
635f9e39e9
[*] Modernize IOBufferedProcessor (and moved to the io utility namespace)
...
[+] AuIO::Utility::NewBufferedProcessorEx
[+] AuByteBuffer::calcDifferenceBetweenHeadsUnsigned
[+] AuByteBuffer::calcDifferenceBetweenHeadsSigned
2023-09-28 12:38:01 +01:00
c5ab03cbfc
[-] OS specific types derived from AFileHandle
2023-09-28 11:53:42 +01:00
5555e99488
[*] Move NewByteBufferPair, NewByteBufferPairEx, and NewRingByteBuffer to AuIO::Utility
2023-09-28 11:51:46 +01:00
374df4a92b
[*] 3c8442d8
regressed DNS based connect
...
[*] improved an error message
2023-09-23 20:36:28 +01:00
53215e57b1
[*] Harden thread entrypoints and post-call deinit
2023-09-23 20:32:01 +01:00
3c8442d8ce
[+] Added NetSocketConnectBase
...
[*] ded60591
cont
2023-09-23 19:33:08 +01:00
ded605910f
[*] Refactor AuNet::NetSocketConnect
2023-09-23 17:10:00 +01:00
7e9bfd8215
[*] Move/refactor AuIO adapters to Aurora::IO::Adapters
2023-09-23 16:40:13 +01:00
345cf608b3
[*] Linux connect by hostname regression/first pass?
2023-09-23 09:25:18 +01:00
c05fabc633
[*] Linux fixes
2023-09-23 08:15:50 +01:00
828430889c
[+] IIOHandle::SectionLock
...
[+] IIOHandle::SectionUnlock
[*] FileSteam.NT.cpp clean up
2023-09-23 04:48:48 +01:00
c3165de4cf
[*] RWLock: Disable dumb scatter switch for now
2023-09-23 02:50:54 +01:00
76bd36939e
[*] Simplify RWLock some more
2023-09-23 02:40:23 +01:00
0a1db024e8
[+] QueryClockTimeNS
...
[+] QueryClockTimeFrequency
2023-09-23 02:28:06 +01:00
dfecf10f1d
[*] All CivilTime APIs should just use ETimezoneShift
2023-09-22 06:21:50 +01:00
f6437ef66e
[-] Engine 0.0/1.0 async
2023-09-22 06:07:03 +01:00
994fcb5010
[*/+] Added/Moved code to AuProtocolStackSpecialWriter[.cpp]
...
[+] Further mutex guarantees under protocol stacks (hardening)
2023-09-21 21:18:59 +01:00
7da39d2022
[+] Aurora::IO::Protocol::NewProtocolStackFromDescription
...
[+] Aurora::IO::Protocol::UtilityWrapStreamReaderWithInterceptors
[+] Aurora::IO::Protocol::EProtocolStackCreateType
[+] Aurora::IO::Protocol::ProtocolStackByBufferedAdhoc
[+] Aurora::IO::Protocol::ProtocolStackByBuffered
[+] Aurora::IO::Protocol::ProtocolStackByPipe
[+] Aurora::IO::Protocol::ProtocolStackDescription
2023-09-21 08:02:02 +01:00
f310fa9aae
[+] AuTime::GetClockUserAndKernelTimeNS
2023-09-20 22:51:59 +01:00
7bc533b710
[*] More POSIX bugs
2023-09-20 21:13:43 +01:00
4fa053ce97
[*] Harden POSIX FS Remove
2023-09-20 20:17:42 +01:00
259572724c
[+] Fetch non-desktop class NT hostnames
2023-09-20 18:33:27 +01:00
f59de8b4ae
[*] Two typos and change bPreferEmulatedWakeOnAddress to true under NIX
2023-09-20 18:32:02 +01:00
9e1655d579
[*] Clean up RWLock
2023-09-19 17:36:21 +01:00
baadcbb13d
[*] ?
2023-09-19 16:39:35 +01:00
7477bfe56f
[*] A Linux and other OS insurance policy: rel/xref 7357764c
2023-09-19 02:05:11 +01:00
5a9292ad1a
[*] ...yes
2023-09-19 01:38:16 +01:00
125c150fc5
[*] Made AuOpen.Unix.cpp in parity with Windows in that all IO should be deferred off the calling thread
2023-09-19 00:40:00 +01:00
746f39f848
[*] yeet
2023-09-19 00:17:28 +01:00
2a0ff9ab0c
[+] AuCivilTime.cpp
...
[*] Split AuClock.cpp
2023-09-18 22:53:28 +01:00
e60c891eac
[-] last trace of the high res clock
2023-09-18 22:34:34 +01:00
5ef6e0cd23
[*] Fix IO Processor regression, circa WorkerPId_t behaviour change.
...
[*] Fix minor Linux SOCK_CLOEXEC issue
2023-09-18 19:04:09 +01:00
7357764cfc
[*] Fix abnormal ::UnlockWrite performance under heavyweight native WaitOnAddress platforms (Linux, BSD-like, etc)
2023-09-18 18:21:46 +01:00
5d12f1a203
[*] Resolve IO regressions (4. Hello FS) (Mostly UNIX)
2023-09-18 07:11:34 +01:00
11ef18cbf0
[*] moar regressions :(
2023-09-18 06:09:29 +01:00
09b044ab2e
[*] amend 9be76adb23
2023-09-17 22:21:24 +01:00
d387657e04
[*] Dynamic linking on non-desktop, NT platforms
2023-09-17 22:15:15 +01:00
9be76adb23
[*] Further drop required symbols from OLE (COM) and SHELL32 (NT Shell)
...
[*] Optimize NT file and URI opener
2023-09-17 21:33:14 +01:00
a96788623f
[*] Fix linux build warning and not quite complete linux ipc fix a4f6db7ec9
2023-09-17 18:36:20 +01:00
84c0e94282
[*] 523abaf0
cont: not so sure on the UNIX-like variant either
2023-09-17 14:03:03 +01:00
523abaf0bb
[*] security: bIsIntranetTrusted not properly respected
2023-09-17 13:57:58 +01:00
0de153dfe3
[*] Aggressively harden win32 loops against out of memory events
2023-09-17 04:08:01 +01:00
ab6f00f094
[*] NT build regression
2023-09-17 00:35:23 +01:00
a4f6db7ec9
[*] Linux IPC reliability: finally got around to closing #48
2023-09-16 23:30:10 +01:00
f2339bb0a9
[+] AuIO::Loop::NewLSIOHandle(const AuSPtr<IIOHandle> &pHandle)
...
[-] Rip 2021-10-1 LSCondVar
2023-09-16 22:59:26 +01:00
f13efd0cbf
[+] AuProcesses::IProcess::GetOutputAndInputHandles()
...
[+] AuProcesses::IProcess::GetErrorStreamHandle()
2023-09-16 22:08:10 +01:00
644c294c36
[+] Unix AuProcesses: missing optAffinity support
2023-09-16 21:49:30 +01:00
841fa39321
[*] CmdLine has been deserving of the Au prefix for quite some time
2023-09-16 21:33:38 +01:00
6c5e99ba8f
[-] ...an api that shouldn't exist anymore
2023-09-16 21:12:50 +01:00
7010155916
[*] Improved schedular regressed intraprocess command dispatch of main thread cmds
2023-09-16 18:08:27 +01:00
9a294cf955
[*] (Mostly Linux) Harden FS apis
2023-09-16 01:20:28 +01:00
9bfd895fc4
[*] Linux: replace the initial map scanners aggressive filtering to not dismiss potential hits. Also parses file offsets for these section maps.
2023-09-15 23:50:00 +01:00
e3a493bf9c
[+] const AuList<AuString> &AuCmdLine::GetValues(const AuString &key)
2023-09-15 20:12:01 +01:00
ac86fd481b
[*] caught runtime regressions
2023-09-15 18:21:47 +01:00
d0fb19f87e
[*] Global build regressions caused by addd4080
2023-09-15 18:09:34 +01:00
d49d4ad4fc
[*] addd4080
cont
2023-09-15 16:54:21 +01:00
addd4080b2
[*] Adjust PId_t::pool null behaviour
2023-09-15 16:48:55 +01:00
3ba93439c8
[*] NT Processes: GetProcessId() now returns a pointer to a _PROCESS_INFORMATION struct
2023-09-15 16:25:40 +01:00
67b047eead
[*] UNIX Processes: fix overmap regression in ( d166a00d
) and added support for envblock updates missing in ( d166a00d
)
2023-09-15 16:03:41 +01:00
a80524d573
[-] AuProcesses::EStandardHandle
2023-09-15 15:55:46 +01:00
d166a00d81
[*] Linux: begin catching up AuProcesses to NT
2023-09-15 00:11:14 +01:00
81775a76bf
[*] Linux: build regressions
2023-09-15 00:10:40 +01:00
0f88b16395
[*] d0538ea4
cont support for CreateFile2W if required
2023-09-14 03:02:42 +01:00
db8db7b0cc
[+] Secret visible symbol: Aurora::Win32Open/AuWin32Open
2023-09-13 15:35:09 +01:00
599d77e341
[*] default args for Win32Open bc lazy
2023-09-13 15:09:53 +01:00
c79b0b5921
[*] missing W suffix
2023-09-13 14:17:45 +01:00
fe8ef28930
[*] tism
2023-09-13 04:04:45 +01:00
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
1c80e4910b
[*] RWLock: another optimization for embedded and win7 targets
2023-09-03 13:35:12 +01:00
1479bcaa22
[*] bonk
2023-09-02 21:24:37 +01:00
5b9e780fa0
[*] Fix some obvious recent regressions in NT loop queue
2023-09-02 19:36:12 +01:00
c2a6bd92fa
[*] Minor optimization in a shit primitive
2023-09-02 19:09:04 +01:00
0838373410
[*] NT Optimization: more aggressive semaphores to prevent atomic failures (perhaps this could be made to account for weak exchanges under different archs)
2023-09-02 19:05:07 +01:00
73a52552f7
[*] [to revert?] Attempt to mitigate message spam wakeups on older systems
...
Also forces higher latency on Windows 7
2023-09-02 17:56:15 +01:00
cc6e0358fa
[*] NT: further optimizations to solve CPU usage regressions
2023-09-02 16:11:06 +01:00
9fbdafea74
[*] x86_64 Use RDSC for more deterministic back-off durations
...
Well, sort of. It's more likely to be referenced against the exact frequency stated in the hard-coded CPUID vendor string.
2023-09-02 14:37:07 +01:00