Commit graph

92 commits

Author SHA1 Message Date
Unknown W. Brackets
88ba003f46 ThreadManager: Add a simple priority field.
Currently, not actually respected.
2023-02-02 17:08:24 -08:00
Unknown W. Brackets
dea9cac16c Core: Add range checks to some helpers and similar. 2023-01-09 16:56:18 -08:00
Unknown W. Brackets
9cfcbc46e6 Global: Cleanup initialization/pointer checks.
Cleaning up a lot of cases of uninitialized data, unchecked return values
for failures, and similar.
2022-12-10 21:13:36 -08:00
Henrik Rydgård
50285f6bf6 Revert "Revert "Loader: Validate offsets and truncation in ELF.""
This reverts commit 470edac18a.
2022-10-10 13:29:09 +02:00
Henrik Rydgård
6833589e38 Update elfSize to uncompressed elf size when needed. Fixes infinite loading in Wipeout.
Also minor cleanups.
2022-10-10 12:22:05 +02:00
Henrik Rydgård
470edac18a Revert "Loader: Validate offsets and truncation in ELF."
This reverts commit 4ecdce2a37.
2022-10-10 11:42:24 +02:00
Unknown W. Brackets
4ecdce2a37 Loader: Validate offsets and truncation in ELF. 2022-10-09 16:41:32 -07:00
Henrik Rydgård
ac7ca963db Make valgrind happy 2022-09-23 12:24:43 +02:00
Henrik Rydgård
e6403d7157 Split GetPointer into two versions, to help with const correctness 2022-07-24 13:26:19 +02:00
Unknown W. Brackets
cdcd77a931 Core: Correct relocation error check. 2021-06-13 10:51:51 -07:00
Henrik Rydgård
77908cb9e5 atomic include buildfix 2021-06-12 23:20:47 +02:00
Henrik Rydgård
73871b9b7e Implement new thread manager, port stuff to it. 2021-06-12 13:03:53 +02:00
Unknown W. Brackets
4f6aaea1e8 Core: Correct thread dependency in relocations.
Didn't realize it was looking at the later value before relocation.
This still remains about as much faster as before and still beneficial to
thread.
2021-04-25 16:49:52 -07:00
Unknown W. Brackets
572c20b4cd Debugger: Mark ELF sections as suballocations.
Sometimes they're named, it's helpful to see where rodata starts, etc.
2021-04-21 19:45:58 -07:00
Unknown W. Brackets
6ee944a0a6 Module: Process relocations on threads.
There's usually quite some, and using threads can halve the load time.
ELF loading isn't terribly slow, but it adds up.
2021-04-16 00:41:56 -07:00
Unknown W. Brackets
e7012f8f88 Module: Process relocations using unchecked reads.
No need to do checks twice.  Also switch the LO16 part to
Read_Instruction.
2021-04-16 00:32:42 -07:00
Unknown W. Brackets
f6ad90fab8 Module: Correctly handle modules with -1 entry.
It should not try to run, options or not.
2021-03-14 16:52:48 -07:00
Unknown W. Brackets
9ead436069 Debugger: Specifically tag relocations.
This is useful info.
2021-02-15 15:01:23 -08:00
Unknown W. Brackets
ca7d127adc Debugger: Notate more cases of memory clears. 2021-02-15 15:01:23 -08:00
Unknown W. Brackets
f7740edc6d Debugger: Add more metadata for memory usage. 2021-02-15 15:01:21 -08:00
Unknown W. Brackets
1b00da2f3a Common: Sign extend w/func not chained casts.
Should be clearer to read and easier to get right.
2021-01-31 01:25:52 -08:00
shenweip
807de037bb IMP sceKernelFindModuleByUID and sceKernelFindModuleByName. 2020-10-27 20:48:34 +08:00
Unknown W. Brackets
e21753bc93 Debugger: Add assembler to build. 2018-06-06 05:59:24 -07:00
Unknown W. Brackets
0e2a586c1b Global: Fix some type comparison/shadow warnings. 2018-02-11 07:03:23 -08:00
Unknown W. Brackets
30b2d05bac Module: Correct detection of executable sections. 2018-01-02 21:53:13 -08:00
Henrik Rydgård
42bdf3e19b ELF loading potential out-of-bounds fix 2017-06-07 00:22:37 +02:00
Henrik Rydgård
9ce874d2cf Typo fix, MOBILE_DEVICE 2017-05-25 00:31:00 +02:00
Henrik Rydgård
875e7f0372 Throw in a few more checks in ElfReader 2017-05-24 20:45:29 +02:00
Henrik Rydgård
e981139e71 Some constification in ElfReader, sanity checks in sceKernelMutex. Might help #9718 a little bit, though probably not the Elf issue (and if the workarea pointer is bad, it's not likely the game will limp along for much longer) 2017-05-24 10:52:19 +02:00
Florent Castelli
373db56a16 blackberry: Remove! 2016-10-11 17:40:32 +02:00
Henrik Rydgard
853ea02201 Minor cleanups in elfreader 2016-09-18 23:11:41 +02:00
Henrik Rydgard
4197148dc4 Add some paranoid checks hoping to fix crashes reported in Google Play developer console. 2016-04-09 18:27:35 +02:00
Henrik Rydgard
b998131581 Move the symbol map to the heap, deallocate it when no game is running. 2015-10-31 23:01:19 +01:00
Henrik Rydgard
bb57aa69d1 Somewhat better check to prevent some homebrew from loading into kernel memory. 2015-07-02 23:07:07 +02:00
Henrik Rydgård
04ce8a63e5 Workaround issue where some homebrew (like moppi-flower) would erroneously load into kernel ram where it won't fit 2015-07-02 15:55:09 +02:00
Lioncash
f830d5dec7 Core: Mark some functions as const 2014-12-03 15:16:11 -05:00
Unknown W. Brackets
71e8c0f6e0 Sum all .bss* sections when counting bss size. 2014-08-17 14:25:58 -07:00
Unknown W. Brackets
3ccc0d1e47 Don't count strings as text in module info. 2014-08-17 14:25:57 -07:00
Unknown W. Brackets
892980ada1 Blackberry buildfix. 2014-08-17 14:25:56 -07:00
Unknown W. Brackets
337a8553aa Add module name to ELF allocations.
Makes debugging it easier.
2014-08-17 14:25:56 -07:00
Unknown W. Brackets
7c37d64717 Load kernel modules into kernel memory.
This way they don't eat up user memory space.
2014-08-17 14:25:55 -07:00
Unknown W. Brackets
1d310ad8bb Allocate module memory from top/bottom per request. 2014-08-17 14:25:54 -07:00
Unknown W. Brackets
4a94a30ba6 Calculate the module info data/text/bss size. 2014-07-13 19:53:00 -07:00
Unknown W. Brackets
ec94498342 When scanning or relocating, check replacements.
Just to make sure we don't wrongly detect the length or unresolve a var
wrong etc.
2014-06-23 08:18:56 -07:00
Unknown W. Brackets
4706876809 Add memchecks for ELF loading.
Helps in games that use modules.
2014-05-04 01:22:57 -07:00
sum2012
8cd5720b0b Remove report 2014-02-07 04:31:51 +08:00
sum2012
1c3adb42f2 Fix Diabolik: The Original Sin crash
This commit orignal want fix #3326 by @unknownbrackets
2014-02-06 20:40:18 +08:00
Unknown W. Brackets
2b10fbae1e Small tweaks to rel2 logging. 2013-12-08 22:34:36 -08:00
Henrik Rydgard
32f479b0a6 Assorted log spam reductions.
Also let Java know of some important events. Not used for anything yet.
2013-12-04 17:43:00 +01:00
Unknown W. Brackets
eac8b1a84d Scan for functions even without a .text section.
It's possible this may be wrong, but every game I've seen loads the funcs
in this area.  Sometimes there's data after the funcs before the stubs,
but it's better than no funcs.
2013-12-01 19:43:40 -08:00