#
e1f6cf0a |
|
13-Jul-2020 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
Add 2 new benchmark utilization syscalls - seL4_BenchmarkDumpAllThreadsUtilisation: Prints a JSON formatted record of total and per-thread utilisation statistics about the system. This currently includes a thread's total cycles scheduled, total number of times scheduled, total cycles spent in the kernel and total number of times entering the kernel and then totals of each for all threads on the current core. - seL4_BenchmarkResetAllThreadsUtilisation: Resets the current counts of every user thread on the current core. These syscalls are only available in a Debug build configuration as they use a kernel debug list of all of the threads that exist for a given node. Signed-off-by: Kent McLeod <Kent.Mcleod@data61.csiro.au>
|
#
a221ee1c |
|
05-Apr-2020 |
Saer Debel <saer.debel@data61.csiro.au> |
Enabled IPC debug features under new config Introduced a new config flag to enable userError format strings to be written to the IPC buffer. Another config bool has been introduced to toggle printing the error out and this can also be set at runtime. Signed-off-by: Saer Debel <saer.debel@data61.csiro.au>
|
#
512a0200 |
|
19-Mar-2020 |
Qian Ge <qian.ge@data61.csiro.au> |
replacing all ifndef with pargma once All the kernel header files now use pargma once rather than the ifndef, as the pre-processed C files do not change while header files are protected with pargma once. This will also solve any naming issues caused by ifndef.
|
#
79da0792 |
|
01-Mar-2020 |
Gerwin Klein <gerwin.klein@data61.csiro.au> |
Convert license tags to SPDX identifiers This commit also converts our own copyright headers to directly use SPDX, but leaves all other copyright header intact, only adding the SPDX ident. As far as possible this commit also merges multiple Data61 copyright statements/headers into one for consistency.
|
#
554f812d |
|
08-Nov-2016 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: scheduling context donation over ipc After this commit, threads blocked on an endpoint can recieve a scheduling context from the thread that wakes the blocked thread.
|
#
15091664 |
|
20-Mar-2019 |
Curtis Millar <curtis.millar@data61.csiro.au> |
Add syscall for setting the current TLS register. Some platforms and configurations do not allow user code to change the value of the register used for TLS. On these architectures a syscall can be used to allow the kernel to update the register on their behalf. This does not immediately update the value in the user context on many configurations as the values are only stored in the user context on a context switch.
|
#
b6417f21 |
|
20-Mar-2019 |
Curtis Millar <curtis.millar@data61.csiro.au> |
Remove platform IPC buffer register. This removes the assumption that each platform sotres the IPC buffer address in a platform-specific register. The IPC buffer address is instead stored in a thread-local variable in libsel4 which must be initialised by the runtime.
|
#
7fc45c4e |
|
18-Mar-2019 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
style: set code width to 120
|
#
d0930f67 |
|
18-Mar-2019 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
style: consistently attach return type Add attach-return-type to astyle
|
#
761006e0 |
|
18-Mar-2019 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
style: consistently align pointer with name Run astyle with align-pointer=name
|
#
3d10ef0c |
|
18-Mar-2019 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
style: correct parenthesis padding Use astyle's unpad-paren to unpad all parentheses that are not included by pad-header, pad-oper, and pad-comma.
|
#
a82b066c |
|
05-Feb-2018 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
libsel4: Correct type typo in syscalls.h
|
#
eec02fd2 |
|
15-Jan-2018 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
x86: Dangerous read/write MSR interface Provides a syscall interface for reading and writing arbitrary MSR values. This is being introduced as an alternative to the DebugRun, as the main purpose of debug run is for modifying the performance monitoring events via read/write MSR.
|
#
cfb30f34 |
|
05-Sep-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
libsel4: Remove unused argument in seL4_VMEnter syscall This VCPU argument does not make sense given semantics of the VMEnter syscall, and as a result the argument is ignored by the kernel.
|
#
07f94833 |
|
18-Jun-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
libsel4: fix licenses - some were incorrectly marked GPL (libsel4 is BSD) - update NICTA --> DATA61 etc - fix tags D61 --> DATA61 - update year to 2017
|
#
61f1bd5e |
|
18-Jun-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
seL4_DebugDumpScheduler: remove unused argument
|
#
bb5ecb1b |
|
29-May-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-880: add seL4_DebugDumpScheduler - when CONFIG_DEBUG is enabled, track all threads - when CONFIG_PRINTING is enabled, provide seL4_DebugDumpScheduler which allows the user to dump the state of the kernel scheduler.
|
#
50d72007 |
|
03-May-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-862: CONFIG_PRINTING --> seL4_DebugPutChar seL4_DebugPutChar is only available when CONFIG_PRINTING is enabled
|
#
aa656604 |
|
11-Feb-2017 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
Modify FinalizeLog syscall There is no way to know how many entries the syscall log contains otherwise. One option was iterating through until finding a 0 terminator, however this requires the log to be zeroed before each trial. This changes the FinalizeLog syscall to return the number of entries.
|
#
e937d968 |
|
23-Feb-2017 |
Kent McLeod <Kent.Mcleod@data61.csiro.au> |
Change debug #ifdefs to be from autoconf.h Previously the #ifdefs for some debug syscalls relied on definitions from Makefile.flags in sel4_tools. This changes them to use configs defined in autoconf.h which makes them easier to import when building projects that don't use sel4_tools.
|
#
803dd5c2 |
|
24-Nov-2016 |
Jeff Waugh <jdub@bethesignal.org> |
libsel4: Optional public symbols for external interfaces CONFIG_LIB_SEL4_PUBLIC_SYMBOLS=y will disable inlining for external interfaces (except deprecated functions), thereby providing public symbols for easy linkage with other languages.
|
#
44ed6adb |
|
12-Oct-2016 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
add seL4_BenchmarkFlushCaches() for arm and ia32 Available when CONFIG_ENABLE_BENCHMARKS is set, flushes caches for running cold-cache benchmarks
|
#
7fbde1bb |
|
14-Jun-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
SELFOUR-287: 32-bit vt-x implementation This is an implementation of vt-x for x86 kernels running in ia32 mode.
|
#
f56d1ec1 |
|
04-Oct-2016 |
Bamboo <bamboo@keg.ertos.in.nicta.com.au> |
[STYLE_FIX]
|
#
8a0a7814 |
|
27-Sep-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
ia32/libsel4: Refactor syscall functions Refactors syscalls to use common base functions for assembly stubs. These base functions are duplicated to create the PIC variants.
|
#
9c507cff |
|
27-Sep-2016 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
SELFOUR-603 - Benchmark: Add null syscall
|
#
8808ba7f |
|
07-Sep-2016 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
Benchmark: Implement per-thread reset syscall
|
#
0fb224b0 |
|
30-Aug-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
x86: Correct seL4_DebugRun syscall stub This stub was messed up during the merge of fbeb95edb927fa1c7f8cd9b0b33d3db1d7725339 this commit corrects
|
#
af77b451 |
|
29-Aug-2016 |
Bamboo <bamboo@keg.ertos.in.nicta.com.au> |
[STYLE_FIX]
|
#
fbeb95ed |
|
26-Aug-2016 |
Alexander Boettcher <alexander.boettcher@genode-labs.com> |
x86: support position independent syscall bindings Fixes #34
|
#
c3826e0e |
|
18-Aug-2016 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
SELFOUR-518: Benchmark - User-level log buffer, delete dump and size system calls Given that the log buffer is now (79291252a8cf7bf88a6597a96e25313d56e9c7a5) in user-level, the kernel doesn't have to dump and send the size for users. Users have to take care of this.
|
#
16c34811 |
|
31-Jul-2016 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
SELFOUR-518: User-level log buffer Remove global ksLog and use KS_LOG_PPTR instead Benchmark - Log buffer: use global page table
|
#
d97603bd |
|
14-Jul-2016 |
Hesham Almatary <hesham.almatary@data61.csiro.au> |
SELFOUR-566: Decouble seL4_DebugNameThread from CONFIG_PRINTING
|
#
09358f9b |
|
23-Jun-2016 |
Hesham Almatary <Hesham.Almatary@nicta.com.au> |
SELFOUR-448 Benchmark: Track thread's CPU utilisation time
|
#
bcf0a235 |
|
01-Jun-2016 |
Hesham Almatary <Hesham.Almatary@nicta.com.au> |
SELFOUR-446 Unify code base for trace points and track feature
|
#
7cbaeb8e |
|
30-May-2016 |
Hesham Almatary <Hesham.Almatary@nicta.com.au> |
SELFOUR-446 Benchmark: Track interrupts and user/vm faults
|
#
fc1feb67 |
|
24-May-2016 |
Hesham Almatary <Hesham.Almatary@nicta.com.au> |
SELFOUR-446 Benchmark: Track syscall feature Benchmark feature that currently: - Keeps track of system calls info - Start time - Duration - Capability type - Invocation tag - Log the number of invocations of each system call* - Log the number of invocations for each capability type per syscall. - Has 3 new syscalls (dump, reset, get size). - This new feature uses the existing log buffer (which is 1MiB for x86 and ARM). Since the number of syscall invocations is not deterministic, the logged number of invocations is limited by the size of the buffer. I suggested to enable the users to pass their own user-level buffer, to enable more flexibility, later. - ENABLE_BENCHMARKS is now a parent config option of trace points and system call track features, they can't be used at the same time.
|
#
1287590e |
|
16-May-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Correct separation of printing and debug builds Fixes some build issues with 541289a32603cee8242b5360b05e8f0c52795433 as well as further allowing debugging (via the capdl interface) to happen when printing is turned off.
|
#
6c6a9252 |
|
11-Jan-2016 |
Anna Lyons <Anna.Lyons@nicta.com.au> |
SELFOUR-406: fix message length used by seL4_Signal in libsel4
|
#
44a522dc |
|
18-Aug-2015 |
Adrian Danis <Adrian.Danis@nicta.com.au> |
libsel4: Generate libsel4 definitions from the current ARCH as well as the SEL4_ARCH
|