mirror of
https://github.com/SerenityOS/serenity
synced 2024-10-15 12:23:15 +00:00
Kernel: Accept RegisterState in append_with_ip_and_bp
This commit is contained in:
parent
edbd8b22e8
commit
a4509ba633
|
@ -8,6 +8,7 @@
|
|||
#include <AK/JsonObjectSerializer.h>
|
||||
#include <AK/ScopeGuard.h>
|
||||
#include <Kernel/Arch/x86/SmapDisabler.h>
|
||||
#include <Kernel/Arch/x86/RegisterState.h>
|
||||
#include <Kernel/FileSystem/Custody.h>
|
||||
#include <Kernel/KBufferBuilder.h>
|
||||
#include <Kernel/PerformanceEventBuffer.h>
|
||||
|
@ -54,6 +55,12 @@ static Vector<FlatPtr, PerformanceEvent::max_stack_frame_count> raw_backtrace(Fl
|
|||
return backtrace;
|
||||
}
|
||||
|
||||
KResult PerformanceEventBuffer::append_with_ip_and_bp(ProcessID pid, ThreadID tid, const RegisterState& regs,
|
||||
int type, u32 lost_samples, FlatPtr arg1, FlatPtr arg2, const StringView& arg3)
|
||||
{
|
||||
return append_with_ip_and_bp(pid, tid, regs.ip(), regs.bp(), type, lost_samples, arg1, arg2, arg3);
|
||||
}
|
||||
|
||||
KResult PerformanceEventBuffer::append_with_ip_and_bp(ProcessID pid, ThreadID tid,
|
||||
FlatPtr ip, FlatPtr bp, int type, u32 lost_samples, FlatPtr arg1, FlatPtr arg2, const StringView& arg3)
|
||||
{
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
namespace Kernel {
|
||||
|
||||
class KBufferBuilder;
|
||||
struct RegisterState;
|
||||
|
||||
struct [[gnu::packed]] MallocPerformanceEvent {
|
||||
size_t size;
|
||||
|
@ -103,6 +104,8 @@ public:
|
|||
KResult append(int type, FlatPtr arg1, FlatPtr arg2, const StringView& arg3, Thread* current_thread = Thread::current());
|
||||
KResult append_with_ip_and_bp(ProcessID pid, ThreadID tid, FlatPtr eip, FlatPtr ebp,
|
||||
int type, u32 lost_samples, FlatPtr arg1, FlatPtr arg2, const StringView& arg3);
|
||||
KResult append_with_ip_and_bp(ProcessID pid, ThreadID tid, const RegisterState& regs,
|
||||
int type, u32 lost_samples, FlatPtr arg1, FlatPtr arg2, const StringView& arg3);
|
||||
|
||||
void clear()
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue