Fix benchmark_debug_syscall_start
The lowest syscall number is -8, which doesnt' fit in 3 bits -> change to 4. Also, we were storing the -ve number, which also doesn't fit into 3 bits -> invert it when we store it.
This commit is contained in:
parent
1c50cec9e8
commit
49f26d5c84
2 changed files with 3 additions and 3 deletions
|
|
@ -60,7 +60,7 @@ benchmark_debug_syscall_start(word_t cptr, word_t msgInfo, word_t syscall)
|
|||
seL4_MessageInfo_t info = messageInfoFromWord_raw(msgInfo);
|
||||
lookupCapAndSlot_ret_t lu_ret = lookupCapAndSlot(NODE_STATE(ksCurThread), cptr);
|
||||
ksKernelEntry.path = Entry_Syscall;
|
||||
ksKernelEntry.syscall_no = syscall;
|
||||
ksKernelEntry.syscall_no = -syscall;
|
||||
ksKernelEntry.cap_type = cap_get_capType(lu_ret.cap);
|
||||
ksKernelEntry.invocation_tag = seL4_MessageInfo_get_label(info);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -43,10 +43,10 @@ typedef struct PACKED kernel_entry {
|
|||
};
|
||||
/* Tracked kernel entry info filled from outside this file */
|
||||
struct {
|
||||
seL4_Word syscall_no: 3;
|
||||
seL4_Word syscall_no: 4;
|
||||
seL4_Word cap_type: 5;
|
||||
seL4_Word is_fastpath: 1;
|
||||
seL4_Word invocation_tag: 20;
|
||||
seL4_Word invocation_tag: 19;
|
||||
};
|
||||
};
|
||||
} kernel_entry_t;
|
||||
|
|
|
|||
Loading…
Reference in a new issue