00001
00002
00003 #ifndef jdb_ktrace_h
00004 #define jdb_ktrace_h
00005
00006 #include "types.h"
00007
00008
00009
00010
00011
00012
00013 enum {
00014 Log_event_context_switch = 0,
00015 Log_event_ipc_shortcut = 1,
00016 Log_event_irq_raised = 2,
00017 Log_event_timer_irq = 3,
00018 Log_event_thread_ex_regs = 4,
00019 Log_event_trap = 5,
00020 Log_event_pf_res = 6,
00021 Log_event_sched = 7,
00022 Log_event_preemption = 8,
00023 Log_event_lipc = 9,
00024 Log_event_task_new = 10,
00025 Log_event_max = 16,
00026 };
00027
00028 enum {
00029 Kern_cnt_context_switch = 0,
00030 Kern_cnt_addr_space_switch = 1,
00031 Kern_cnt_shortcut_failed = 2,
00032 Kern_cnt_shortcut_success = 3,
00033 Kern_cnt_irq = 4,
00034 Kern_cnt_ipc_long = 5,
00035 Kern_cnt_page_fault = 6,
00036 Kern_cnt_io_fault = 7,
00037 Kern_cnt_task_create = 8,
00038 Kern_cnt_schedule = 9,
00039 Kern_cnt_iobmap_tlb_flush = 10,
00040 Kern_cnt_max = 11,
00041 };
00042
00043 struct Tracebuffer_status
00044 {
00045 Unsigned32 tracebuffer0;
00046 Unsigned32 size0;
00047 Unsigned32 version0;
00048 Unsigned32 tracebuffer1;
00049 Unsigned32 size1;
00050 Unsigned32 version1;
00051 Unsigned32 logevents[Log_event_max];
00052
00053 Unsigned32 scaler_tsc_to_ns;
00054 Unsigned32 scaler_tsc_to_us;
00055 Unsigned32 scaler_ns_to_tsc;
00056
00057 Unsigned32 kerncnts[Kern_cnt_max];
00058 };
00059
00060 #endif // jdb_ktrace_h