Theseus icon indicating copy to clipboard operation
Theseus copied to clipboard

Moved memory-management crates into kernel/memory

Open NathanRoyer opened this issue 3 years ago • 3 comments

This moves the following crates:

  • block_allocator
  • entryflags_x86_64
  • frame_allocator
  • memory_initialization
  • memory_structs
  • memory_x86_64
  • page_allocator
  • page_table_entry

into theseus/kernel/memory, similarly to what was done to ACPI-related crates.

With this PR, there are less crates in theseus/kernel/.

Additionally, most non-memory crates now use re-exports from the memory supercrate, which makes it easier to know what re-exports other crates actually depend on, from these crates. There is one exception: I left the direct import from nano_core to memory/memory_initialization because removing that dependency looks more difficult than what I did in this PR; removing that dependency can have its own PR, imo.

NathanRoyer avatar Oct 25 '22 13:10 NathanRoyer

Note: all file modifications with this icon: image are files that were simply moved without internal modification. I hope this simplifies your review.

NathanRoyer avatar Oct 25 '22 13:10 NathanRoyer

Thanks, this looks pretty good. Also a step forwards in the right direction re: #51.

Currently there is a CI build error, but I'm going to wait until all the current memory subsystem changes are merged to address this anyway.

kevinaboos avatar Oct 26 '22 19:10 kevinaboos

alrighty, all the memory subsystem changes have been merged in now, so we can accept this PR whenever you're able to merge in the latest changes from theseus_main and address the failing CI checks. :+1:

kevinaboos avatar Nov 04 '22 18:11 kevinaboos