1. 14 Apr, 2021 3 commits
  2. 21 Mar, 2021 2 commits
  3. 03 Mar, 2021 1 commit
  4. 02 Mar, 2021 1 commit
  5. 27 Feb, 2021 1 commit
    • 4lDO2's avatar
      Fix "Grant should not exist" errors. · 031496ff
      4lDO2 authored
      This is done by making sure that when empty() is called on a context,
      the grants Arc will be replaced with a new unused Arc, hence
      decrementing the refcount. Previously this was only done when the
      context was actually reaped, but since there is no guarantee as far as I
      am aware about when this must happen, the grants could be completely
      leaked, leading to the error.
      031496ff
  6. 23 Feb, 2021 2 commits
  7. 20 Feb, 2021 1 commit
    • 4lDO2's avatar
      Give schemes a dangling address for empty slices. · ad58ca1d
      4lDO2 authored
      This allows schemes to avoid checking the length against zero before
      constructing a slice from pointer+len that the kernel gave.
      Additionally, the address is now non-canonical on x86, meaning that
      userspace will fail instead of continuing with UB, if they would ever
      forget to check the length.
      ad58ca1d
  8. 17 Feb, 2021 3 commits
    • 4lDO2's avatar
      Use GS for TLS! · bdc925d2
      4lDO2 authored
      Previously, the kernel used the regular FS segment for Thread-Local
      Storage. The problem however, is that userspace code also uses FS for
      TLS, meaning that the kernel would have to switch the FS segment between
      user and kernel, _upon every syscall_. This is obviously suboptimal for
      performance (especially with fast syscalls such as futex, nanosleep, or
      yield).
      
      I had to search LLVM for hours, just to find out that the insertion of
      the memory load with FS was actually done in the linker, so I added a
      flag for that.
      
      I haven't done any proper benchmarking, but the boot process seems to
      have gotten much faster!
      bdc925d2
    • Jeremy Soller's avatar
      Merge branch 'sysretq-fix2' into 'master' · a283160c
      Jeremy Soller authored
      FIX: Forbid lower-half noncanonical addresses too.
      
      See merge request !170
      a283160c
    • 4lDO2's avatar
      Forbid lower-half noncanonical addresses too. · 1988583e
      4lDO2 authored
      1988583e
  9. 15 Feb, 2021 14 commits
  10. 14 Feb, 2021 1 commit
  11. 13 Feb, 2021 11 commits