microsoft / microsoft/litebox

gsbase-less kernel

Open
#514 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion
Dominant language
Rust
Stars
2.7k
Forks
144
Avg merge
12h 21m
Merged PRs (30d)
146

Description

> > Side note, Coconut avoids use of gsbase in kernel mode altogether and instead has a per-CPU region of the kernel-mode address space (and per-CPU kernel-mode page tables). Interesting design choice...
>
> Interesting. Our LiteBox kernel platform is still WiP, so we can adopt coconut's idea if it makes sense. Using `gsbase` and `swapgs` is not a strict requirement (might have a minor performance impact, though).

I'm trying to get more information about why they made this design choice. I think with their current design it's less efficient than using `gsbase`, but I don't think that has to be the case...

_Originally posted by @jstarks in https://github.com/microsoft/litebox/issues/510#issuecomment-3559546285_

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file, test, or entry point is named. Start with the design discussion in issue #510 and the referenced Coconut approach, then inspect LiteBox's current gsbase and swapgs usage. Done means establishing whether a gsbase-less per-CPU design should be adopted and documenting the resulting implementation scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.