Aufgrund einer Störung des s3 Storage, könnten in nächster Zeit folgende GitLab Funktionen nicht zur Verfügung stehen: LFS, Container Registry, Job Artifacs, Uploads (Wiki, Bilder, Projekt-Exporte). Wir bitten um Verständnis. Es wird mit Hochdruck an der Behebung des Problems gearbeitet. Weitere Informationen zur Störung des Object Storage finden Sie hier: https://maintenance.itc.rwth-aachen.de/ticket/status/messages/59-object-storage-pilot

This project is mirrored from https://github.com/hermitcore/libhermit-rs.git. Pull mirroring updated .
  1. 11 Jul, 2021 1 commit
    • bors[bot]'s avatar
      Merge #254 · bce6d72f
      bors[bot] authored
      
      
      254: update dependencies / lockfile r=stlankes a=striezel
      
      * updating proc-macro2 v1.0.26 -> v1.0.27
      * updating raw-cpuid v9.0.0 -> v9.1.1
      * updating syn v1.0.72 -> v1.0.73
      
      
      `proc-macro2` and `syn` should be painless, because these are only patch version updates.
      
      `raw-cpuid` should be no hassle, too, if it follows semver - and its readme says it does. :)
      Co-authored-by: default avatarDirk Stolle <striezel-dev@web.de>
      bce6d72f
  2. 10 Jul, 2021 1 commit
  3. 09 Jul, 2021 1 commit
  4. 02 Jul, 2021 1 commit
  5. 29 Jun, 2021 4 commits
  6. 28 Jun, 2021 2 commits
    • bors[bot]'s avatar
      Merge #246 #248 · 3e9f6cdb
      bors[bot] authored
      
      
      246: Fix copyright header placement r=stlankes a=mkroening
      
      
      
      248: Remove more instances of hardcoded stack offsets r=stlankes a=mkroening
      Co-authored-by: Martin Kröning's avatarMartin Kröning <mkroening@posteo.net>
      3e9f6cdb
    • bors[bot]'s avatar
      Merge #247 · 3f93b2f9
      bors[bot] authored
      247: Fix switching to kernel stack r=stlankes a=mkroening
      
      This fixes https://github.com/hermitcore/libhermit-rs/issues/234 introduced in https://github.com/hermitcore/libhermit-rs/commit/41cf625c33801690f5be566db67e3eec5b372feb.
      
      As described in https://github.com/hermitcore/libhermit-rs/issues/234
      
      , the issue with the old implementation was inlining resulting in wrongly managing stack space after the switch, potentially resulting in a page fault, when writing before the new stack:
      
      ```rust
      fn sys_foo() {
          // reserves stack space for `a` (`rsp -= 16`)
      
          switch_rsp();
      
          // use reserved stack space (`[rsp + 16]`), even though rsp is not the same anymore
          let a = [0_u8; 16];
      }
      ```
      
      To my knowledge, inlining can only be really prevented, by explicitly `call`ing the function in assembly.
      
      I fixed this issue in five steps:
      
      1. Remove `switch_to_kernel!`, `switch_to_user!`, migrate uses to `kernel_function!`
      2. Fix a potential stack overflow caused by a typo (unrelated)
      3. Improve consistency of kernel functions by adding the prefix `__sys_` to all functions.
      4. Make all `__sys_`-functions `extern "C"` to allow calling in assembly.
      5. Reimplement `kernel_function!` and call kernel function in assembly.
      Co-authored-by: Martin Kröning's avatarMartin Kröning <mkroening@posteo.net>
      3f93b2f9
  7. 26 Jun, 2021 1 commit
    • Martin Kröning's avatar
      Reimplement kernel_function! · d25ab7a6
      Martin Kröning authored
      To force Rust manage the new stack in the kernel function, we call the
      kernel function manually in assembly. That's why we need the kernel
      functions to be extern "C".
      d25ab7a6
  8. 25 Jun, 2021 5 commits
  9. 24 Jun, 2021 6 commits
  10. 23 Jun, 2021 1 commit
  11. 22 Jun, 2021 5 commits
  12. 19 Jun, 2021 1 commit
  13. 18 Jun, 2021 1 commit
  14. 17 Jun, 2021 4 commits
  15. 16 Jun, 2021 6 commits