| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2023-11-10 | k_page_table: fix shutdown | Liam | |
| 2023-11-10 | k_page_table: use more precise icache invalidates | Liam | |
| 2023-11-10 | kernel: add KPageTableBase | Liam | |
| Co-authored-by: Kelebek1 <eeeedddccc@hotmail.co.uk> | |||
| 2023-10-21 | kernel: fix extraneous ref | Liam | |
| 2023-10-21 | kernel: signal thread on termination completed | Liam | |
| 2023-10-21 | kernel: add missing TLR clear | Liam | |
| 2023-10-21 | kernel: update KProcess | Liam | |
| 2023-10-20 | Merge pull request #11748 from liamwhite/kern_1700 | Fernando S | |
| kernel: update for 17.0.0 | |||
| 2023-10-20 | kernel: fix incorrect calculation of used non system memory value | Liam | |
| 2023-10-20 | kernel: fix format string error | Liam | |
| 2023-10-20 | kernel: make check fully constexpr for broken msvc constant folding | Liam | |
| 2023-10-20 | k_page_table: add MapFirstGroup | Liam | |
| 2023-10-20 | kernel: update KMemoryRegionType values | Liam | |
| 2023-10-20 | k_page_table: implement PermissionLocked | Liam | |
| 2023-10-20 | k_page_table: add new CheckMemoryState helper | Liam | |
| 2023-10-20 | kernel: split Io memory state, add PermissionLocked attribute | Liam | |
| 2023-10-20 | kernel: reshuffle ini1 size, add slab clear note | Liam | |
| 2023-10-13 | Merge pull request #11766 from liamwhite/open-sesame | liamwhite | |
| k_page_table: add missing page group open when locking memory | |||
| 2023-10-12 | k_page_table: add missing page group open when locking memory | Liam | |
| 2023-10-12 | kernel: mark TLS accessors as noinline for non-MSVC LTO | Liam | |
| 2023-10-04 | kernel: implement transfer memory | Liam | |
| 2023-10-02 | ci: fix new codespell errors | Liam | |
| 2023-10-01 | k_page_table: skip page table clearing on finalization | Liam | |
| 2023-09-19 | Reduce core timing mutex contention | Kelebek1 | |
| 2023-09-14 | core: improve debug workflow | Liam | |
| 2023-09-03 | msvc: set warning level to /W4 globally | Danila Malyutin | |
| And fix a bunch of warnings | |||
| 2023-08-25 | kernel: offset code entry point for 39-bit address space type (#11326) | liamwhite | |
| 2023-08-14 | kernel: remove relative task registration | Liam | |
| 2023-08-08 | core: remove ResultVal type | Liam | |
| 2023-08-02 | Merge pull request #10839 from lat9nq/pgc-plus | liamwhite | |
| general: Reimplement per-game configurations | |||
| 2023-07-26 | Merge pull request #10990 from comex/ubsan | liamwhite | |
| Fixes and workarounds to make UBSan happier on macOS | |||
| 2023-07-22 | core: reduce TOCTTOU memory access | Liam | |
| 2023-07-22 | Merge pull request #11094 from liamwhite/get | liamwhite | |
| kernel: misc cleanup of page table accessors | |||
| 2023-07-21 | core: remove remaining uses of dynamic_cast | Liam | |
| 2023-07-21 | k_system_control: Always return some memory size | lat9nq | |
| 2023-07-21 | core,common: Give memory layout setting an enum | lat9nq | |
| Allows for 6GB and 8GB layouts to be selected. | |||
| 2023-07-21 | settings,core,config_sys: Remove optional type from custom_rtc, rng_seed | lat9nq | |
| core: Fix MSVC errors | |||
| 2023-07-18 | general: Silence -Wshadow{,-uncaptured-local} warnings | lat9nq | |
| These occur in the latest commits in LLVM Clang. | |||
| 2023-07-15 | Fixes and workarounds to make UBSan happier on macOS | comex | |
| There are still some other issues not addressed here, but it's a start. Workarounds for false-positive reports: - `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`, because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp) of how big it thinks objects can be, specifically when dealing with offset-to-top values used with multiple inheritance. Hopefully this doesn't have a performance impact. - `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks is UB even though it at least arguably isn't. See the link in the comment for more information. Fixes for correct reports: - `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to avoid UB from pointer overflow (when pointer arithmetic wraps around the address space). - `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`; avoid calling methods on it in this case. (The existing code returns a garbage reference to a field, which is then passed into `LoadWatchpointArray`, and apparently it's never used, so it's harmless in practice but still triggers UBSan.) - `KAutoObject::Close`: This function calls `this->Destroy()`, which overwrites the beginning of the object with junk (specifically a free list pointer). Then it calls `this->UnregisterWithKernel()`. UBSan complains about a type mismatch because the vtable has been overwritten, and I believe this is indeed UB. `UnregisterWithKernel` also loads `m_kernel` from the 'freed' object, which seems to be technically safe (the overwriting doesn't extend as far as that field), but seems dubious. Switch to a `static` method and load `m_kernel` in advance. | |||
| 2023-07-14 | kernel: reduce page table region checking | Liam | |
| 2023-07-14 | k_process: PageTable -> GetPageTable | Liam | |
| 2023-07-08 | k_server_session: translate special header for non-HLE requests | Liam | |
| 2023-07-01 | kernel: Synchronize | Morph | |
| 2023-06-22 | Remove memory allocations in some hot paths | Kelebek1 | |
| 2023-06-21 | Merge pull request #10086 from Morph1984/coretiming-ng-1 | bunnei | |
| core_timing: Use CNTPCT as the guest CPU tick | |||
| 2023-06-17 | k_thread: Use a mutex and cond_var to sync bool | lat9nq | |
| std::atomic<bool> is broken on MinGW and causes deadlocks there. Use a normal cond var in its stead. | |||
| 2023-06-07 | core_timing: Fix SingleCore cycle timer | Morph | |
| 2023-06-07 | core_timing: Use CNTPCT as the guest CPU tick | Morph | |
| Previously, we were mixing the raw CPU frequency and CNTFRQ. The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available. | |||
| 2023-06-03 | device_memory: Use smaller virtual reservation size for compatibility with ↵ | Liam | |
| 39-bit paging | |||
| 2023-05-23 | k_memory_block_manager: remove auditing calls | Liam | |
