Skip to content
Snippets Groups Projects
  1. Aug 02, 2023
  2. Jul 25, 2023
  3. Nov 11, 2022
  4. Jul 27, 2022
  5. Aug 11, 2021
    • Jacob Lorentzon's avatar
      WIP: Stop using recursive mapping. · 465c461b
      Jacob Lorentzon authored
      Note that this is very preliminary, and I merely got my already freezing
      kernel branch not to triple fault, but I would probably apply this patch
      to upstream.
      
      What is changed here, is that rather than relying on recursive mapping
      for accessing page table frames, it now uses linear translation
      (virt=phys+KERNEL_OFFSET). The only problem is that the paging code now
      makes assumptions that the entire physical address space remains mapped,
      which is not necessarily the case on x86_64 architecturally, even though
      systems with RAM more than a PML4 are very rare. We'd probably lazily
      (but linearly) map physical address space using huge pages.
      465c461b
  6. May 04, 2021
  7. May 03, 2021
  8. Apr 29, 2021
  9. Feb 13, 2021
  10. Jan 21, 2021
  11. Jan 15, 2021
  12. Jan 10, 2021
  13. Jul 11, 2020
  14. Jun 16, 2020
  15. Jun 15, 2020
  16. Jun 13, 2020
  17. Apr 19, 2020
  18. Feb 11, 2020
  19. Aug 15, 2019
  20. Jul 27, 2019
  21. Jul 26, 2019
  22. Jul 24, 2019
  23. Jul 21, 2019
  24. Jul 20, 2019
    • jD91mZM2's avatar
      WIP(ptrace): Only use non-signal stack when using a default handler · 6a3825d4
      jD91mZM2 authored
      This is a curious problem and it's really hard to solve it in a way
      that doesn't feel hacky. On one hand, of course you want to be able to
      modify and intercept what happens when you use a signal, right? On the
      other hand, changes made to the context (especially singlestepping)
      while a signal is handled (such as `SIGSTOP`) are not preserved since
      the stack is restored after the signal handler was invoked.
      
      I think what we have in this change makes sense anyway, as we don't
      really want users modifying registers and other data in the default
      signal behavior that occurs **in kernel mode**. Also trying to use
      `PTRACE_SINGLESTEP` will set the singlestep flag only if in a
      user-mode signal handler, else it will set it on the instruction after
      the signal handling, which I guess makes sense since it can't affect
      the kernel-mode code that runs the default handler.
      
      I don't know. Help. Pls.
      6a3825d4
    • jD91mZM2's avatar
Loading