31 enum { TBUF_LOG = L4_KDEBUG_GROUP_TRACE + 0x01 };
39 enum { TBUF_LOG_3VAL = L4_KDEBUG_GROUP_TRACE + 0x04 };
41 __builtin_strlen(text), v1, v2, v3));
47 enum { TBUF_CLEAR = L4_KDEBUG_GROUP_TRACE + 0x02 };
54 enum { TBUF_DUMP = L4_KDEBUG_GROUP_TRACE + 0x03 };
61 enum { TBUF_LOG_BIN = L4_KDEBUG_GROUP_TRACE + 0x08 };
68 enum { TBUF_MAP_STATUS = L4_KDEBUG_GROUP_TRACE + 0x10 };
74 mr->
mr[0] = TBUF_MAP_STATUS;
75 mr->
mr[1] = ku_mem->
raw;
79 ku_mem->
raw = mr->
mr[0];
87 enum { TBUF_MAP_SLOTS = L4_KDEBUG_GROUP_TRACE + 0x11 };
93 mr->
mr[0] = TBUF_MAP_SLOTS;
94 mr->
mr[1] = ku_mem->
raw;
98 ku_mem->
raw = mr->
mr[0];
l4_umword_t fiasco_tbuf_log(const char *text)
Create new trace-buffer entry with describing <text>.
l4_msgtag_t fiasco_tbuf_map_status(l4_fpage_t *ku_mem)
Map kernel trace-buffer status page.
void fiasco_tbuf_clear(void)
Clear trace-buffer.
l4_msgtag_t fiasco_tbuf_map_slots(l4_fpage_t *ku_mem)
Map kernel trace-buffer slots.
l4_msgtag_t fiasco_tbuf_validate(void)
Validate the kernel base debugger capability.
l4_umword_t fiasco_tbuf_log_3val(const char *text, l4_umword_t v1, l4_umword_t v2, l4_umword_t v3)
Create new trace-buffer entry with describing <text> and three additional values.
l4_umword_t fiasco_tbuf_log_binary(const unsigned char *data)
Create new trace-buffer entry with binary data.
void fiasco_tbuf_dump(void)
Dump trace-buffer to kernel console.
unsigned long l4_umword_t
Unsigned machine word.
@ L4_BASE_DEBUGGER_CAP
Capability selector for the debugger cap.
@ L4_BASE_TASK_CAP
Capability selector for the current task.
l4_msgtag_t l4_ipc_call(l4_cap_idx_t object, l4_utcb_t *utcb, l4_msgtag_t tag, l4_timeout_t timeout) L4_NOTHROW
Object call (usual invocation).
l4_ret_t l4_error(l4_msgtag_t tag) L4_NOTHROW
Get IPC error code if any or message tag label otherwise for an IPC call.
unsigned l4_msgtag_has_error(l4_msgtag_t t) L4_NOTHROW
Test for error indicator flag.
l4_msgtag_t l4_msgtag(long label, unsigned words, unsigned items, unsigned flags) L4_NOTHROW
Create a message tag from the specified values.
@ L4_PROTO_DEBUGGER
Protocol ID for the debugger.
l4_msgtag_t l4_task_cap_valid(l4_cap_idx_t task, l4_cap_idx_t cap) L4_NOTHROW
Check whether a capability is present (refers to an object).
#define L4_IPC_NEVER
never timeout
struct l4_utcb_t l4_utcb_t
Opaque type for the UTCB.
l4_utcb_t * l4_utcb(void) L4_NOTHROW L4_PURE
Get the UTCB address.
#define L4_INLINE
L4 Inline function attribute.
Functionality for invoking the kernel debugger.
l4_msgtag_t __l4_kdebug_3_text(unsigned op, char const *text, unsigned len, l4_umword_t v1, l4_umword_t v2, l4_umword_t v3) L4_NOTHROW
Invoke a text output operation with 3 additional machine word arguments on the base debugger capabili...
l4_msgtag_t __l4_kdebug_text(unsigned op, char const *text, unsigned len) L4_NOTHROW
Invoke a text output operation on the base debugger capability.
l4_msgtag_t __l4_kdebug_op(unsigned op) L4_NOTHROW
Invoke a nullary operation on the base debugger capability.
Common task related definitions.
Common L4 ABI Data Types.
Message tag data structure.
l4_umword_t raw
Raw value.
Encapsulation of the message-register block in the UTCB.
l4_umword_t mr[L4_UTCB_GENERIC_DATA_SIZE]
Message registers.