Commit Graph

749 Commits

Author SHA1 Message Date
1f8ecd1bbd [*] Docs: Emphasize what IsWindowsNNN*ANY* means 2024-02-14 07:25:07 +00:00
3dc82bf1cb [+] AuCastPointer because C++ is a big pile of shit (TODO: port to AuROXTL) 2024-02-14 06:35:43 +00:00
f049053776 [*] Refactor AuProcess paths to return AuOptional<const AuString &>
(because the previous iteration was using a pointer, dereference and operator bool() semantics still apply. no changes required, except for direct access of the string buffer, but no instances of the -> operator were found)
2024-02-14 04:05:32 +00:00
11e18d462a [+] ErrorStack::HasOOMCondition() 2024-02-14 00:40:38 +00:00
8b64a97514 [*] RequestHeapOfRegion should take a memory view 2024-02-13 05:11:05 +00:00
39ba32df3c [+] AuNewClassArrayUnique
[+] AuNewClassArray
[+] AuNewClassUnique
[+] AuNewClass
[*] Unfuck/refactor GetDefaultDiscontiguousHeap
2024-02-13 03:18:13 +00:00
c1ccb81b7b [+] AuUtility::ADestructionWatcher::DoUnderLock 2024-02-10 05:56:13 +00:00
b7a5bfe8b3 [*] fuck the brain diseased demented boomers on the c++ arse sniffing committee 2024-01-30 16:05:47 +00:00
fc081615a7 [+] AuMemory::HeapAccessor 2024-01-27 08:04:29 +00:00
7038787001 [+] Thread name identities 2024-01-23 23:03:52 +00:00
63858cfcb9 [+] Early impl of allocless destruction callbacks for adal (AuUtility::DestructionWatch and AuUtility::ADestructionWatcher) 2024-01-22 03:29:29 +00:00
20e0473af1 [+] AuNullHeapPointer<T>() 2024-01-19 19:40:38 +00:00
9fe0655959 [+] AuHUPOf_t 2024-01-18 17:19:35 +00:00
d1ab8377bc [+] Heap::NewClassUnique
[+] Heap::NewClassArrayUnique
2024-01-18 12:22:12 +00:00
dbdfceb97f [*] Amended NewClass[Array] tracking 2024-01-18 00:01:52 +00:00
fce755f293 [+] Added uOldLength to the free function pointer type of the memory leak detection interface 2024-01-17 20:59:51 +00:00
d4eab8e477 [*] aubytebuffer move: carry user alignment 2024-01-17 19:04:27 +00:00
9ac6be62f4 [*] I hate clang even more 2024-01-17 18:25:27 +00:00
3e3a071e8e [*] Improved RNG utils 2024-01-17 17:47:31 +00:00
c3e0418e1a [+] Aurora::Memory::HeapProxy[Ex]
[*] Heap improvements
[+] Heap::NewClassArray
2024-01-17 15:22:35 +00:00
997d4a2eca [*] Updated memory comments and keep alignment 2024-01-15 12:34:03 +00:00
363560e9e9 [*] Amended protostack api: ::GetParent() should not be using the internal type 2024-01-12 14:14:17 +00:00
ba66c25651 [+] ICompletionGroup::IsNeverEnding
[+] ICompletionGroup::SetNeverEnding
2024-01-11 12:19:54 +00:00
4112e33e48 [+] Missing ByteBuffer::ReadString implementation after 2 years of procrastination 2024-01-10 17:44:14 +00:00
3766ea8b86 [+] IAsyncTransaction::GetCompletionGroup
[*] IO improvements
2024-01-06 04:32:54 +00:00
4a4f4e9608 [*] im not being bitched around by clang anymore. fuck you 2024-01-06 03:25:56 +00:00
3c7eff396f [+] IAsyncOutputOf::TryAttachProcessExitToCompletionGroup
[+] IAsyncOutputOf::ICompletionGroupWorkHandle
2024-01-06 01:32:03 +00:00
6d77a55d75 [+] ICompletionGroup::WaitForAnyMS
[+] ICompletionGroup::WaitForAnyNS
2024-01-05 12:06:17 +00:00
f1e170add0 [+] IProcess::TryAttachProcessExitToCompletionGroup
[+] IProcess::ToCompletionGroupHandle
2024-01-05 09:25:48 +00:00
72a3513a04 [+] New stream adapters
[+] IRandomDevice::ToStreamReader
[+] AuIO::Adapters::NewRandomAdapter
[+] AuIO::Adapters::NewNOPsReadAdapter
[+] AuIO::Adapters::NewNOPsSeekingAdapter
[+] AuIO::Adapters::NewNOPsWriteAdapter
[+] AuIO::Adapters::NewZerosReadAdapter
[+] AuIO::Adapters::NewZerosSeekingAdapter
2024-01-03 23:54:46 +00:00
aa811f93aa [*] Readd the public symbols to create base kernel io primitives for interop 2024-01-03 17:36:45 +00:00
ce1ae24506 [+] IIOHandle::InitFromSharing
[+] IIOHandle::SharingGetString
[+] IIOHandle::SharingIsShared
[+] IIOHandle::SharingStop
[+] HANDLEPipeServer.[h/c]pp
2024-01-03 02:39:54 +00:00
1c0efebd87 [+] AuLoop::DbgLoopSourceToReadFd
[+] AuLoop::DbgLoopSourceToWriteFd
2024-01-03 01:49:15 +00:00
63050b2262 [+] IFileStream::IsFlushOnClose
[+] IFileStream::SetFlushOnClose
[+] IFileStream::IsWriteEoSOnClose
[+] IFileStream::SetWriteEoSOnClose
[+] IIOHandle::IsFlushOnClose
[+] IIOHandle::SetFlushOnClose
2024-01-02 00:00:47 +00:00
c16a0b1600 [+] IRandomDevice::NextArrayI32Range
[+] IRandomDevice::NextArrayU32Range
[+] IRandomDevice::NextArrayDoubleRange
[+] IRandomDevice::NextArrayI32
[+] IRandomDevice::NextArrayU32
[+] IRandomDevice::NextArrayDouble
[+] IRandomDevice::NextArrayDecimals
[+] IRandomDevice::NextArrayUUIDs
[*] IRandomDevice minor refactoring for consistency
[*] Improve decimals once again (perf/deterministic)
2024-01-01 14:49:35 +00:00
c64cb0c0e2 [+] AuHWInfo::ICoreLoadSampler
[+] AuHWInfo::CpuCoreTime
[+] AuHWInfo::GetPerCoreCPUTime
2023-12-31 23:14:27 +00:00
7b59cab36e [*] eepy 2023-12-31 22:39:31 +00:00
063aa5c548 [+] IRandomDevice::NextUUID 2023-12-29 22:59:34 +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
c5656a8843 [+] WIP internal IO improvements (read: hacks) for Linux + bool IProcess::HasExited() 2023-12-24 06:24:39 +00:00
0faf4c7846 [+] Aurora::Processes::OutputOf
[+] Aurora::Processes::OutputOfAsync
[*] Fix win32 regression
2023-12-23 07:05:44 +00:00
daab43a2b2 [+] AuRNG::RandomDef static utilities (Fast, Secure, FromU64Seed, FromU32Seed, FromMassiveSeed) 2023-12-23 04:17:55 +00:00
9c86d1c899 [*] Linux clean up (?) (+typo) 2023-12-23 03:16:43 +00:00
eb95aeeac7 [*] Fix allocate_at_least 2023-12-23 02:47:22 +00:00
17d113b74d [+] CppHeapWrapper.hpp 2023-12-22 06:54:39 +00:00
e05bb8f5dc [+] StartupParameters::posixApplySandboxCOW 2023-12-22 03:57:46 +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
207b8f6f46 [+] Copyable IOHandles 2023-12-18 05:41:27 +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
5541c25050 [+] AuIO::Loop::WaitMultipleLoopSourcesEx 2023-12-10 22:25:03 +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
fe529b31da [*] ITimer comment and win32 patch 2023-12-09 12:25:46 +00:00
8005b67d82 [*] :/ 2023-12-08 13:03:14 +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
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
b65d0032dd [*] Minor header updates 2023-12-05 10:16:22 +00:00
e9651eead3 [*] Linux build regressons 2023-12-04 21:13:25 +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
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
cbcd55ce8e [+] AuNet::ENetworkAdapterType
[+] AuNet::ENetworkAdapterStatus
[+] INetAdapter::ToNetworkType()
[+] INetAdapter::ToStatus()
2023-12-01 12:13:47 +00:00
a189151c59 [+] AuAsync::IThreadPool::GetIOProcessor
[+] AuAsync::IThreadPool::GetIONetInterface
[+] AuAsync::IThreadPool::GetIONetWorker
[+] AuAsync::IWorkItem::SetSchedByLoopSource
2023-12-01 09:22:51 +00:00
503fd40032 [*] Bytebuffer move: missing flags 2023-12-01 07:18:11 +00:00
cde973ba90 [*] Fix regressed bytebuffer scaling alg 2023-12-01 07:15:20 +00:00
019cba1677 [*] Fix AuSPtr<T> Heap::NewClass(Args &&...args) 2023-12-01 06:50:39 +00:00
9ba049d485 [*] Refactor "Jiffies" to "Frequency" 2023-12-01 04:49:18 +00:00
2972481066 [+] mo aliases that always bugged me 2023-12-01 04:09:16 +00:00
cab8627ffd [*] (AuRandom) Resolve bad floating point distribution 2023-12-01 03:12:04 +00:00
741c7228d3 [+] RuntimeConfig.hpp
[+] RuntimeAliases.hpp
2023-12-01 02:41:58 +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
52b49986f3 [+] ISocketServer::GetSessionCount 2023-11-30 02:40:30 +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
22f2e73954 [+] ConditionEx::WaitForSignalAbsNS 2023-11-29 06:08:09 +00:00
541f12acfb [+] AuLogWarnOnce
[+] AuLogInfoOnce
[+] AuLogDbgOnce
[+] AuLogErrorOnce
[+] AuLogVerboseOnce
2023-11-29 04:36:10 +00:00
ed823a9819 [+] AuHwInfo::GetThreadCPUUtilization(AuOptional<bool> optIncludeKernel) 2023-11-29 04:14:14 +00:00
daeb5ba06f [*] Reference futex semaphore fix timeout = 0 under ::LockNS 2023-11-18 09:19:10 +00:00
0bcdb46d72 [+] AuEvent alias
[+] AuBarrier alias
[+] AuCriticalSection alias
[+] ...et al
2023-11-14 18:28:10 +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
e037fc214a [*] Begin cleaning up AuAsync (2/?)
6af9940b, ???
2023-11-11 10:11:09 +00:00
73c5904d97 [*] Disable bPreferWaitOnAddressAlwaysSpin by default 2023-11-09 19:54:57 +00:00
5e15cadce4 [+] ICompressionStream::ToSeekingStreamReader 2023-11-09 19:54:35 +00:00
028c85e4c8 [*] why not make these mean something while we can 2023-11-04 23:33:25 +00:00
df784c45b8 [+] IWorkItemHandler::ProcessInfo::reschedSteadyClockAbsNs 2023-10-31 21:07:51 +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