From c2ea5e79c0d73925080f3da1614b504dee2feb2f Mon Sep 17 00:00:00 2001
From: Jeremy Soller <jackpot51@gmail.com>
Date: Wed, 30 Mar 2022 10:35:40 -0600
Subject: [PATCH] Update to support latest Redox toolchain

---
 Cargo.lock           | 31 +++++++++++++++++++------------
 Cargo.toml           |  2 +-
 rust-toolchain.toml  |  2 +-
 src/main.rs          |  1 -
 src/os/bios/panic.rs |  1 +
 5 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock
index 673a4f7..88d65e7 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -24,6 +24,12 @@ dependencies = [
  "blake2",
 ]
 
+[[package]]
+name = "autocfg"
+version = "1.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
+
 [[package]]
 name = "base64ct"
 version = "1.1.1"
@@ -77,9 +83,9 @@ dependencies = [
 
 [[package]]
 name = "cpufeatures"
-version = "0.2.1"
+version = "0.2.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95059428f66df56b63431fdb4e1947ed2190586af5c5a8a8b71122bdf5a7f469"
+checksum = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b"
 dependencies = [
  "libc",
 ]
@@ -117,9 +123,9 @@ dependencies = [
 
 [[package]]
 name = "libc"
-version = "0.2.119"
+version = "0.2.121"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bf2e165bb3457c8e098ea76f3e3bc9db55f87aa90d52d0e6be741470916aaa4"
+checksum = "efaa7b300f3b5fe8eb6bf21ce3895e1751d9665086af2d64b42f19701015ff4f"
 
 [[package]]
 name = "linked_list_allocator"
@@ -132,18 +138,19 @@ dependencies = [
 
 [[package]]
 name = "lock_api"
-version = "0.4.6"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b"
+checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53"
 dependencies = [
+ "autocfg",
  "scopeguard",
 ]
 
 [[package]]
 name = "log"
-version = "0.4.14"
+version = "0.4.16"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710"
+checksum = "6389c490849ff5bc16be905ae24bc913a9c8892e19b2341dbc175e14c341c2b8"
 dependencies = [
  "cfg-if",
 ]
@@ -156,9 +163,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
 
 [[package]]
 name = "raw-cpuid"
-version = "10.2.0"
+version = "10.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "929f54e29691d4e6a9cc558479de70db7aa3d98cd6fe7ab86d7507aa2886b9d2"
+checksum = "738bc47119e3eeccc7e94c4a506901aea5e7b4944ecd0829cbebf4af04ceda12"
 dependencies = [
  "bitflags",
 ]
@@ -185,9 +192,9 @@ checksum = "c4e4404b4e54e59e7bb5f5236b61d8e822c2a77b2e955be8072002ff7ff8d69c"
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.11"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c"
+checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
 dependencies = [
  "bitflags",
 ]
diff --git a/Cargo.toml b/Cargo.toml
index 114eb1c..b3c3972 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -17,7 +17,7 @@ crate-type = ["staticlib"]
 [dependencies]
 linked_list_allocator = "0.9.1"
 log = "0.4.14"
-redox_syscall = "0.2.10"
+redox_syscall = "0.2.13"
 spin = "0.9.2"
 
 [dependencies.redoxfs]
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
index 4d97fdd..f31d204 100644
--- a/rust-toolchain.toml
+++ b/rust-toolchain.toml
@@ -1,3 +1,3 @@
 [toolchain]
-channel = "nightly-2021-06-15"
+channel = "nightly-2022-03-18"
 components = ["rust-src"]
diff --git a/src/main.rs b/src/main.rs
index ae1808e..64d1745 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1,5 +1,4 @@
 #![no_std]
-#![feature(asm)]
 #![feature(lang_items)]
 #![cfg_attr(
     target_os = "uefi",
diff --git a/src/os/bios/panic.rs b/src/os/bios/panic.rs
index 1997256..377797e 100644
--- a/src/os/bios/panic.rs
+++ b/src/os/bios/panic.rs
@@ -1,6 +1,7 @@
 //! Intrinsics for panic handling
 
 use core::alloc::Layout;
+use core::arch::asm;
 use core::panic::PanicInfo;
 
 #[lang = "eh_personality"]
-- 
GitLab