LLDB mainline
Public Member Functions | Public Attributes | List of all members
lldb_private::TraceIntelPTStartRequest Struct Reference

jLLDBTraceStart gdb-remote packet More...

#include <TraceIntelPTGDBRemotePackets.h>

Inheritance diagram for lldb_private::TraceIntelPTStartRequest:
Inheritance graph
[legend]

Public Member Functions

bool IsPerCpuTracing () const
 
- Public Member Functions inherited from lldb_private::TraceStartRequest
bool IsProcessTracing () const
 jLLDBTraceStart
 

Public Attributes

uint64_t ipt_trace_size
 Size in bytes to use for each thread's trace buffer.
 
bool enable_tsc
 Whether to enable TSC.
 
std::optional< uint64_t > psb_period
 PSB packet period.
 
std::optional< uint64_t > process_buffer_size_limit
 Required when doing "process tracing".
 
std::optional< bool > per_cpu_tracing
 Whether to have a trace buffer per thread or per cpu cpu.
 
std::optional< bool > disable_cgroup_filtering
 Disable the cgroup filtering that is automatically applied in per cpu mode.
 
- Public Attributes inherited from lldb_private::TraceStartRequest
std::string type
 Tracing technology name, e.g. intel-pt, arm-coresight.
 
std::optional< std::vector< lldb::tid_t > > tids
 If std::nullopt, then this starts tracing the whole process.
 

Detailed Description

jLLDBTraceStart gdb-remote packet

Definition at line 34 of file TraceIntelPTGDBRemotePackets.h.

Member Function Documentation

◆ IsPerCpuTracing()

bool lldb_private::TraceIntelPTStartRequest::IsPerCpuTracing ( ) const

Member Data Documentation

◆ disable_cgroup_filtering

std::optional<bool> lldb_private::TraceIntelPTStartRequest::disable_cgroup_filtering

Disable the cgroup filtering that is automatically applied in per cpu mode.

Definition at line 56 of file TraceIntelPTGDBRemotePackets.h.

Referenced by lldb_private::fromJSON(), lldb_private::trace_intel_pt::TraceIntelPT::Start(), lldb_private::toJSON(), and lldb_private::process_linux::IntelPTCollector::TraceStart().

◆ enable_tsc

bool lldb_private::TraceIntelPTStartRequest::enable_tsc

◆ ipt_trace_size

uint64_t lldb_private::TraceIntelPTStartRequest::ipt_trace_size

◆ per_cpu_tracing

std::optional<bool> lldb_private::TraceIntelPTStartRequest::per_cpu_tracing

Whether to have a trace buffer per thread or per cpu cpu.

Definition at line 52 of file TraceIntelPTGDBRemotePackets.h.

Referenced by lldb_private::fromJSON(), IsPerCpuTracing(), lldb_private::trace_intel_pt::TraceIntelPT::Start(), and lldb_private::toJSON().

◆ process_buffer_size_limit

std::optional<uint64_t> lldb_private::TraceIntelPTStartRequest::process_buffer_size_limit

Required when doing "process tracing".

Limit in bytes on all the thread traces started by this "process trace" instance. When a thread is about to be traced and the limit would be hit, then a "tracing" stop event is triggered.

Definition at line 49 of file TraceIntelPTGDBRemotePackets.h.

Referenced by lldb_private::fromJSON(), IsTotalBufferLimitReached(), lldb_private::trace_intel_pt::TraceIntelPT::Start(), lldb_private::toJSON(), and lldb_private::process_linux::IntelPTPerThreadProcessTrace::TraceStart().

◆ psb_period

std::optional<uint64_t> lldb_private::TraceIntelPTStartRequest::psb_period

The documentation for this struct was generated from the following files: