#
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.
|
#
7286a3f0 |
|
28-Feb-2018 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
trivial: add correct section in docs
|
#
2329cd81 |
|
14-Mar-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: add seL4_SchedContext_YieldTo Implement seL4_SchedContext_YieldTo, which allows users to manipulate the scheduling queues up to their MCP and can be used for user level scheduling.
|
#
a38e62f2 |
|
28-Feb-2018 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: timeout exceptions - Add seL4_TCB_SetTimeoutEndpoint - implement timeout exceptions
|
#
c405ef53 |
|
28-Feb-2018 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: install fault endpoint into tcb cnode - seL4_TCB_Configure no longer takes a fault endpoint. - seL4_TCB_SetSpace takes a cap in the callers cspace for the fault endpoint, not the target tcbs. - seL4_TCB_SetSchedParams now also takes a fault endpoint as above. This change installs the fault endpoint cap into the tcb cnode first validating it. This means either of the functions that set it will now return an error if the cap is not either a null cap or an endpoint with send and grant rights. Significantly, the cap passed to the function should be in the callers cspace, not the target tcbs.
|
#
106b893e |
|
23-May-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: configurable scheduling context size This allows users to define custom amounts of refills without increasing the scheduling context size system wide. also add libsel4 functions for refill size
|
#
b3fca26b |
|
10-Aug-2019 |
Anna Lyons <anna@gh.st> |
trivial: fix error tags in sel4.xml
|
#
abcd5aff |
|
10-Aug-2019 |
Anna Lyons <anna@gh.st> |
mcs: update manual Major manual update with details of the MCS configuration option of the kernel.
|
#
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.
|
#
34c1f920 |
|
03-Nov-2016 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: add periodic scheduling This commit adds periodic scheduling with sporadic servers.
|
#
952134d1 |
|
27-Oct-2016 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
mcs: Add a scheduling context object This is the first part of the seL4 MCS. This commit: * adds a scheduling context object. Threads without scheduling context objects cannot be scheduled. * replaces tcbTimeSlice with the scheduling context object * adds seL4_SchedControl caps for each core * adds seL4_SchedControl_Configure which allows users to configure amount of ticks a scheduling context has, and set a core for the scheduling context. * adds seL4_SchedContext_Bind, Unbind and UnbindObject, which allows a tcb to be bound to a scheduling context.
|
#
a8879f01 |
|
17-Feb-2019 |
Japheth Lim <Japheth.Lim@data61.csiro.au> |
manual: document badge range for 64-bit platforms
|
#
fb854a7b |
|
08-Nov-2018 |
Kofi Doku Atuah <kofidoku.atuah@data61.csiro.au> |
Strongly type these interface arguments
|
#
a96e0059 |
|
05-Nov-2018 |
Kofi Doku Atuah <kofidoku.atuah@data61.csiro.au> |
TCB API: Fix minor discrepancy: seL4_CNode was used for VSpace roots
|
#
5539b9e8 |
|
27-Jun-2018 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
docs: s/depth of 32/depth equivalent to the wordsize
|
#
e20e8e05 |
|
07-Aug-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
SELFOUR-823: Provide TCB invocation for setting TLS_BASE This provides a common invocation for all architectures for setting their respective TLS_BASE virtual register. As you frequently want to modify your *own* TLS_BASE, and doing read/write registers to modify your own registers is tricky to impossible depending on which register and how they are ordered in seL4_UserContext, this is a separate invocation.
|
#
c2320256 |
|
01-May-2018 |
Adam Felizzi <a.felizzi@student.unsw.edu.au> |
libsel4: Removed use of parentheses in XML docs Removed use of parentheses in sel4.xml around \texttt tag as it deforms markdown generated output.
|
#
8fd604eb |
|
23-Apr-2018 |
Adam Felizzi <a.felizzi@student.unsw.edu.au> |
manual: Added <docref> XML Tag to Doxygen Introduced a new Doxygen XML tag '<docref>'. The intention of this tag is to indicate a section of text in the Doxygen XML that will contain a reference to another section in the Manual e.g. "See \autoref<sec:x>". As other generation formats aren't aware of other chapters/sections in the manual, the <docref> encapsulation allows it to omit the text from the output. The Latex generator has been modified to continue parsing the 'docref' contents.
|
#
33398f21 |
|
24-Jan-2018 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-331: add seL4_TCB_SetSchedParams This allows the prio and mcp to be set in one system call.
|
#
46ddf1ab |
|
21-Feb-2018 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
Change prio, mcp to seL4_Word from Uint8_t Although seL4_MaxPrio does fit into 8 bits, making the argument 8 bits is not saving us anything.
|
#
05b83acd |
|
14-Dec-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-1016: Require auth cap to set prio/mcp This fixes confused deputy problem when setting priorities/mcps.
|
#
8108c811 |
|
02-Oct-2017 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
libsel4: Remove bitfield type unifying Guard and Badge construction Using the bitfield generator to treat guards and badges as a union type can be convenient, but it requires reserving a bit in the data for the bitfield run time type information. This type information is not needed by the kernel as it knows implicitly whether the passed data is a badge or a guard based on the kind of cap being operated on. However, with the type information present we cannot pass a word sized piece of data to the kernel. The solution here is to go back to using a plain seL4_Word as the type for invocations that want a capdata and let the user either construct a badge as a plain word, or use the seL4_CNode_CapData bitfield for constructing a guard, although they have to manually extract the word representation out of it.
|
#
192a4162 |
|
27-Jun-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
manual: allow non sec autorefs Previously anything in an autoref block was assumed to reference a section, which isn't true. Change 'sec' to 'label' and move the 'sec' prefix into the label itself.
|
#
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
|
#
c206dda4 |
|
24-May-2017 |
Stephen Sherratt <Stephen.Sherratt@data61.csiro.au> |
manual: Remove errorenumdesc docs from sel4 idl Methods with no output params return an error. Previously each such method had a line of documentation in its interface definition explaining this. This commit removes this. The documentation is for such cases is generated implicitly.
|
#
3230c900 |
|
23-May-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
SELFOUR-708: fix priority docs on TCBConfigure
|
#
c05210f5 |
|
14-Dec-2016 |
Stephen Sherratt <Stephen.Sherratt@data61.csiro.au> |
manual: Remove empty cap description attribute
|
#
cd8b5de2 |
|
28-Nov-2016 |
Stephen Sherratt <Stephen.Sherratt@data61.csiro.au> |
manual: Add docs to arch-independent inv xml file This also moves the description of TCBSetEPTRoot from the general object invocation xml file to the x86-specific one to prevent the need for documentation-generating scripts to distinguish between VTX (ie. x86) invocations, and truly architecture independent invocations. JIRA: SELFOUR-606
|
#
891a5eb5 |
|
28-Nov-2016 |
Stephen Sherratt <Stephen.Sherratt@data61.csiro.au> |
libsel4: Trivial whitespace
|
#
2fea9a0f |
|
18-Jul-2016 |
Anna Lyons <Anna.Lyons@nicta.com.au> |
SELFOUR-567: use seL4_CapRights_t from libsel4 This change * changes seL4_CapRights from the kernel to be seL4_CapRights_t in libsel4 * deprecates the duplicated seL4_CapRights in libsel4, which is now the bitfield generated type seL4_CapRights_t. * fixes all usages in kernel and libsel4 Impact: for verification, this will require the type to change name from cap_rights to seL4_CapRights_t. This is a breaking libsel4 API change, although most code uses seL4_AllRights or similar constants, which will not break at a source level as these constants have been updated.
|
#
31628d9a |
|
25-Oct-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
Remove recycle Removes the recycle operation and adds an operation to cancel any badged sends on and endpoint. Calling Revoke + CancelBadgedSend is equivalent to Recycle on a badged endpoint
|
#
654e366f |
|
27-Oct-2016 |
Adrian Danis <Adrian.Danis@data61.csiro.au> |
libsel4: Update condition for SetEPTRoot Using `config=` for guarding invocations was changed to be `condition=`, but `SetEPTRoot` was not updated
|
#
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.
|
#
2d462d4a |
|
17-Oct-2016 |
amrzar <azarrabi@nicta.com.au> |
add basic api for setting affinity
|
#
ee75f086 |
|
16-Oct-2016 |
amrzar <azarrabi@nicta.com.au> |
update #ifdef to #if in auto generated files
|
#
bebfcf6d |
|
23-Jun-2016 |
Kofi Doku Atuah <kofi.dokuatuah@nicta.com.au> |
SELFOUR-499: X86, ARM: Add userspace invocations for hardware debugging This commit implements the body of SELFOUR-499. The API exposes the x86 DR0-7 and ARM coprocessor 14 features to userspace by virtualizing them as context- switched registers in the TCB. Implemented as TCB invocations. This feature is only built when CONFIG_HARDWARE_DEBUG_API is selected. * Add low-level support routines for setting, unsetting, getting, enabling and disabling breakpoints. * Add support for single-stepping as well. ^ Single-stepping is not supported on ARMv6 since the hardware doesn't have support. ^ ARM implements single-stepping as instruction breakpoints configured to fault on every instruction -- this is achieved through the "mismatch" mode, which is only supported from ARMv7 onwards. * Also support explicit software break requests, a la "BKPT" and "INT $3". * New invocations: * seL4_TCB_SetBreakpoint(). * seL4_TCB_GetBreakpoint(). * seL4_TCB_UnsetBreakpoint(). * seL4_TCB_ConfigureSingleStepping(). * New constants: ^ Event types: ^ seL4_InstructionBreakpoint. ^ seL4_DataBreakpoint. ^ seL4_SoftwareBreakRequest. ^ Access types: ^ seL4_BreakOnRead. ^ seL4_BreakOnWrite. ^ seL4_BreakOnReadWrite. ^ Exports: ^ seL4_NumHWBreakpoints. ^ seL4_NumExclusiveBreakpoints. ^ seL4_NumExclusiveWatchpoints. ^ seL4_NumDualFunctionMonitors. ^ seL4_FirstBreakpoint. ^ seL4_FirstWatchpoint. ^ seL4_FirstDualFunctionMonitor. See documentation in the seL4 API manual.
|
#
7336303b |
|
08-Jun-2016 |
Anna Lyons <Anna.Lyons@nicta.com.au> |
SELFOUR-276: Add MCP field to threads. Where MCP = Maximum Controlled Priority This commit adds: * seL4_TCB_SetMCPriority and changes the arguments to * seL4_TCB_Configure As of this commit, a thread cannot create or set a threads priority (including itself) above its mcp. Previously the kernel did this check against a threads priority, which prevented a thread from setting it's own priority down and then up again.
|
#
bddd804a |
|
06-Jan-2016 |
Adrian Danis <Adrian.Danis@nicta.com.au> |
x86: IOAPIC/MSI syscalls Restructure the x86 interrupt handling to allow for a more flexible method of using IOAPIC and MSI interrupts. The essence of this change is to allow for the user to pick, for both IOAPIC and MSIs, which CPU vector to use. Additionally there is future support, in the API, for seL4 to eventually protect MSI interrupts with the vt-d interrupt routing tables. API behaviour for legacy systems using the PIC is preserved Part of SELFOUR-281
|
#
a6aa7472 |
|
25-Nov-2015 |
Adrian Danis <Adrian.Danis@nicta.com.au> |
Remove redundant IRQInterruptControl invocation, and replace with a mechanism to actually decode arch specific IRQ invocations Part of SELFOUR-281
|
#
13995279 |
|
18-Oct-2015 |
Yanyan Shen <yanyan.shen@nicta.com.au> |
libsel4: use seL4_Word to avoid packing on architectures where int is not the machine size
|
#
79be32ac |
|
12-Oct-2015 |
Anna Lyons <Anna.Lyons@nicta.com.au> |
AEP -> Notification: deprecate old API syscalls, functions and constants that refer to AEP's and introduce new ones that refer to Notifications
|
#
97042a0f |
|
17-Jul-2014 |
Adrian Danis <Adrian.Danis@nicta.com.au> |
Introduce 'Notification Binding': a new feature which allows a tcb to be bound to a single asynchronous endpoint.
|
#
e653f8f6 |
|
09-Jul-2015 |
Wink Saville <wink@saville.com> |
Streamline libsel4 and remove its libc dependencies. There are now separate libs for benchmark, assert, printf, putchar start/stop: libs/libsel4benchmark libs/libsel4assert libs/libsel4printf libs/libsel4putchar libs/libsel4startstop The primary changes are introducing sel4/sel4.h and removing std* types plus porting assert and IO code from the kernel to libsel4assert, libsel4printf, libsel4putchar. This means the code within libsel4 and the newlibs do not overload any typical libc entities. Instead the libraries use types like seL4_Uint32 ... instead of uint32_t. And printf is now seL4_Printf and assert is seL4_Assert .... Finally, the only file modified that effects kernel code is kernel/tools/bitfield_gen.py. It needed to be modified as it generates files for both kernel and user space. And for user space the generated code (types_gen.h) needed to use the new types and asserts. The changes should not change what is generated for the kernel and I did a comparison of kernel_final.{c|s} before and after my change and the only differences were time stamps. Bug: #15 Streamline kernel/libsel4 and remove its libc dependencies
|
#
c0e9c638 |
|
11-Aug-2014 |
Adrian Danis <Adrian.Danis@nicta.com.au> |
Support IOAPIC on ia32 and modify interrupt handling to support user level setting of modes
|
#
91b7da86 |
|
17-Jul-2014 |
TrusthworthySystems <gatekeeper@sel4.systems> |
Release snapshot
|