twizzler-operating-system / twizzler

The Twizzler Operating System
BSD 3-Clause "New" or "Revised" License
66 stars 13 forks source link

Update toolchain #97

Closed dbittman closed 1 year ago

dbittman commented 1 year ago

This PR updates the rust toolchain to 2022-10-01 nightly, up from version 1.56. This involves a rebase for all the Twizzler patches in rust, llvm, backtrace, libc, etc. We also update some of the dependencies in xtask and the kernel, and update the boot protocol (see below).

Note that pulling in these changes will require a submodule update AND a re-execution of the cargo bootstrap command.

The update to the boot protocol (from stivale2 to limine) is because the debug kernel is now too large (from all the debug symbols) to load by the older version of our bootloader, but the newer version doesn't support stivale2 anymore. And the upgrade to the limine protocol was fairly easy.

Please don't merge this PR until I verify that the new futex-based mutexes are working properly (these are located in the rust repo, because they are in stdlib).