seL4/libsel4
Adrian Danis 8108c811ed 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.
2017-10-27 12:15:09 +11:00
..
arch_include libsel4: Remove bitfield type unifying Guard and Badge construction 2017-10-27 12:15:09 +11:00
include libsel4: Remove bitfield type unifying Guard and Badge construction 2017-10-27 12:15:09 +11:00
sel4_arch_include libsel4: Remove unused argument in seL4_VMEnter syscall 2017-09-06 15:48:37 +10:00
sel4_plat_include Added 32-bit support for the zynqmp. 2017-09-27 12:58:49 -04:00
src libsel4: fix licenses 2017-06-22 15:27:29 +10:00
tools libsel4: Remove bitfield type unifying Guard and Badge construction 2017-10-27 12:15:09 +11:00
CMakeLists.txt libsel4: Remove bitfield type unifying Guard and Badge construction 2017-10-27 12:15:09 +11:00
Kbuild libsel4: fix licenses 2017-06-22 15:27:29 +10:00
Kconfig libsel4: fix licenses 2017-06-22 15:27:29 +10:00
Makefile libsel4: Remove bitfield type unifying Guard and Badge construction 2017-10-27 12:15:09 +11:00