Commit Graph

45 Commits

Author SHA1 Message Date
Maschell
79787e7dce The allocated size is now always an integral multiple of alignment. 2022-02-13 13:41:39 +01:00
Maschell
f513e1a374 Round up the size of the allocated memory to avoid heap corruption 2022-02-11 20:38:46 +01:00
Maschell
cd56a105e3 Add memory barrier to ensure memory coherence 2022-02-11 20:38:46 +01:00
Maschell
9e424205e0 Guard heap access with OSMutex 2022-02-11 20:38:46 +01:00
Maschell
f56e6938be Nop out additional branches to app panics 2022-02-11 20:33:27 +01:00
Maschell
cd18ab16a6 Update .clang-format to update the comment, macro and assignment formatting 2022-02-03 15:51:47 +01:00
Maschell
6db316c682 Use clang-format to format the code 2022-02-02 18:34:27 +01:00
Maschell
5033473292 Formatting 2022-01-26 13:25:28 +01:00
Maschell
fcba5a9f1c Implement logging, but only when built with make DEBUG=1 2022-01-26 13:24:56 +01:00
Maschell
833a37e0cf WUMS 0.3.1 support 2022-01-26 13:21:07 +01:00
Maschell
88f4e0af29 Reduce the filesize by avoid "new" and any exceptions 2022-01-21 19:52:35 +01:00
Maschell
21e39fb642 Trust in CafeOS to figure it out 2021-12-15 17:01:36 +01:00
Maschell
44676078ee Do not flush heap header to gain performance 2021-12-07 20:44:00 +01:00
Maschell
d890a6c91e Init Spinlock 2021-12-07 20:43:48 +01:00
Maschell
e11cf31b05 Revert "Replace the Spinlock with a Mutex, flush the heap header"
This reverts commit 60d000a277.
2021-12-03 11:44:53 +01:00
Maschell
c608b60a1b Patch KiGetOrPutUserData to allows usage of our mapped memory inside kernel 2021-11-06 17:06:31 +01:00
Maschell
60d000a277 Replace the Spinlock with a Mutex, flush the heap header 2021-10-20 23:52:09 +02:00
Maschell
2b68e73d9c Remove logging - this fixes booting minecraft for some reason. 2021-10-20 23:51:47 +02:00
Maschell
d36d3610ca Use a global spinlock to lock the alloc/free functions 2021-09-28 17:58:20 +02:00
Maschell
d0e432fb69 Formatting and cleanup 2021-09-24 16:51:11 +02:00
Maschell
18a2889a36 Reenable logging, Update Dockerfile to use WUMS 0.2 2021-09-17 18:19:32 +02:00
Maschell
3c22ea9404 Use latest wut, remove logging for now 2021-04-17 12:27:01 +02:00
Maschell
c32079fbac Reduce the number of logged messages 2021-03-13 13:56:07 +01:00
Maschell
0089ec9f40 Use WUMS_MODULE_SKIP_WUT_INIT 2021-02-19 17:11:50 +01:00
Maschell
9c9e1cc5ce Add DCFlushRange to HeapBlockHeader on malloc/free 2021-01-01 01:56:54 +01:00
Maschell
989b455eff Implement MemoryMapping_MEMGetAllocatableSize and MemoryMapping_MEMGetAllocatableSizeEx 2021-01-01 01:56:24 +01:00
Maschell
aaf9a1a082 Add sCheckDataRange hook to allow loading .rpl files into our memory region via OSDynload_Acquire (and a custom allocator) 2020-12-26 15:52:06 +01:00
Maschell
699273c86d Rename WUMS_MODULE_INIT_BEFORE_ENTRYPOINT => WUMS_MODULE_INIT_BEFORE_RELOCATION_DONE_HOOK, add WUMS_MODULE_SKIP_ENTRYPOINT 2020-12-26 15:51:21 +01:00
Maschell
36ba62e669 Add memory that's usable for GX2 usage 2020-06-27 11:17:38 +02:00
Maschell
360a87977a Improve logging 2020-06-13 15:53:36 +02:00
Maschell
58f9c4f334 Make sure to call the init hook before the entrypoint. 2020-06-10 14:59:43 +02:00
Maschell
51c92881af Add kernel patches to allow usage of the memory mapping 2020-06-10 14:59:36 +02:00
Maschell
4e0010da0b Fix compiler warnings 2020-06-10 14:59:30 +02:00
Maschell
093343ddf9 Add more KernelNOPs and run them on all cores 2020-06-10 14:59:22 +02:00
Maschell
73537b58d4 Print used memory blocks on custom heap at each application start. 2020-06-10 14:59:09 +02:00
Maschell
7a2804ac7e Use the WUMS_APPLICATION_STARTS hook instead of the main() function 2020-06-10 14:59:03 +02:00
Maschell
d0898430fc Use the MEM_HEAP_FLAG_USE_LOCK flag on our custom heap for thread safe operations 2020-06-10 14:58:54 +02:00
Maschell
3dab586704 Try to use only C code, removing the MemoryMapping class (which only had static functions) 2020-06-10 14:58:34 +02:00
Maschell
6c5a2edf6d Formatting 2020-06-03 18:36:02 +02:00
Maschell
5ac51ef3ce Add a function to get the total free space left on the heaps 2020-05-30 21:49:29 +02:00
Maschell
3a0abb940f Destroy and create the heaps at every application start 2020-05-30 21:48:50 +02:00
Maschell
0f81a4cc8f Expose malloc and free as data exports 2020-05-30 21:47:44 +02:00
Maschell
4c7d8d80ab Remove some debugs logs 2020-05-30 21:45:48 +02:00
Maschell
667a90d7ed Fix the alloc and free functions to use all heaps 2020-05-30 21:45:05 +02:00
Maschell
5d38198e41 frist commit 2020-05-29 19:25:05 +02:00