mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 11:48:10 +00:00
Kernel: Fixed argument passing for profiling_enable syscall
Arguments larger than 32bit need to be passed as a pointer on a 32bit architectures. sys$profiling_enable has u64 event_mask argument, which means that it needs to be passed as an pointer. Previously upper 32bits were filled by garbage.
This commit is contained in:
parent
0f2e18403c
commit
895a050e04
4 changed files with 9 additions and 4 deletions
|
@ -373,7 +373,8 @@ void init_stage2(void*)
|
|||
if (boot_profiling) {
|
||||
dbgln("Starting full system boot profiling");
|
||||
MutexLocker mutex_locker(Process::current().big_lock());
|
||||
auto result = Process::current().sys$profiling_enable(-1, ~0ull);
|
||||
const auto enable_all = ~(u64)0;
|
||||
auto result = Process::current().sys$profiling_enable(-1, reinterpret_cast<FlatPtr>(&enable_all));
|
||||
VERIFY(!result.is_error());
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue