sel4utils: properly cache ept pages (#43)

A kernel bug previously always cached EPT page regardless of the
cacheable flag. When the bug was fixed, this function would always map
EPT pages as uncacheable, due to the attributes difference between an
EPT map and a normal page map. This commit checks if the function is
mapping an EPT and provides the proper cache attribute to the kernel.

Signed-off-by: Chris Guikema <chris.guikema@dornerworks.com>
1 file changed
tree: 19462b0356d05fc1a5dca507699b685a7439df8f
  1. .github/
  2. libsel4allocman/
  3. libsel4bench/
  4. libsel4debug/
  5. libsel4muslcsys/
  6. libsel4platsupport/
  7. libsel4serialserver/
  8. libsel4simple/
  9. libsel4simple-default/
  10. libsel4sync/
  11. libsel4test/
  12. libsel4utils/
  13. libsel4vka/
  14. libsel4vspace/
  15. LICENSES/
  16. .gitignore
  17. CMakeLists.txt
  18. FindseL4_libs.cmake
  19. LICENSE.md
  20. README.md
README.md

seL4 Libraries

A collection of libraries for working on seL4.

  • libsel4allocman: an allocator for managing virtual memory, malloc memory and cspaces.
  • libsel4bench: a library with utilities for benchmarking on seL4.
  • libsel4debug: a library with utilities for debugging on seL4. Only useful when debugging a userlevel app; potentially hacky.
  • libsel4muslcsys: a library to support muslc for the root task.
  • libsel4platsupport: a wrapper around libplatsupport specificially for seL4.
  • libsel4simple: an interface which abstracts over the boot environment of a seL4 application.
  • libsel4simple-default: an implementation of simple for the master branch of the kernel.
  • libsel4simple-experimental: an implementatoin of simple for the experimental branch of the kernel.
  • libsel4sync: a synchronisation library that uses notifications to construct basic locks.
  • libsel4test: a very basic test infrastructure library.
  • libsel4utils: a library OS - Commonly used stuff, actively maintained: implements threads, processes, elf loading, virtual memory management etc.
  • libsel4vka: an allocation interface for seL4.
  • libsel4vspace: a virtual memory management interface for seL4.