seL4 Version 7.0.0 Release

Announcing the release of seL4 7.0.0 with the following changes:


  • Support for building standalone ia32 kernel added in e7327fa6df3
  • ia32: Set sensible defaults for FS and GS selectors in c2f6d48bcf2
  • aarch64: Use tpidrro_el0 for IPC buffer instead of tpidr_el0 in ae9fe9b5d18
  • More seL4 manual documentation added for aarch64 object invocations
  • Default NUM_DOMAINS set to 16 for x86-64 standalone builds in baa9798f793
  • libsel4: Return seL4_Error in invocation stubs in 8fb06eecff9 ** This is a source code level breaking change **
  • Add a CMake based build system in 0b73072016e
  • x86: Increase TCB size for debug builds in 4c8be8f4f91
  • libsel4: x86: Remove nested struct declarations in a8d6315eb16 ** This is a source code level breaking change **
  • Bugfix: x86: Unmap pages when delete non final frame caps in 08b9265563a

Notable changes

  • CMake based build system added: Initial experimental support has been added for using CMake for building the kernel and some user level libraries. Currently the only project that takes advantage of this is seL4test when using the cmake.xml manifest in sel4test-manifest. Documentation can be found at:

Upgrade notes

  • This release is not source compatible with previous releases.
  • seL4 invocations that previously returned long now return seL4_Error which is an enum. Our libraries have already been updated to reflect this change, but in other places where seL4 invocations are used directly, the return types will need to be updated to reflect this change.
  • On x86 some structs in the Bootinfo have been rearranged. This only affects seL4_VBEModeInfoBlock_t which is used if VESA BIOS Extensions (VBE) information is being used.

Known issues

  • One of our tests is non-deterministicly becoming unresponsive on the SMP release build on the Sabre IMX.6 platform, which is a non verified configuration of the kernel. We are working on fixing this problem, and will likely do a point release once it is fixed.

Full changelog

Use git log 6.0.0..7.0.0 in

More details

See the 7.0.0 manual included in the release or ask on the mailing list!