Skip to content
This repository was archived by the owner on Nov 3, 2022. It is now read-only.

Commit 4ef6ec8

Browse files
committed
update dependency to fix build on latest nightly
ref: phil-opp/blog_os#990
1 parent f674773 commit 4ef6ec8

File tree

4 files changed

+144
-44
lines changed

4 files changed

+144
-44
lines changed

Cargo.lock

+121-34
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+16-3
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,29 @@ harness = false
1616
bootloader = { version = "0.9.8", features = ["map_physical_memory"] }
1717
volatile = "0.2.6"
1818
spin = "0.5.2"
19-
x86_64 = "0.13.2"
19+
x86_64 = "0.14.2"
2020
uart_16550 = "0.2.0" # Serial port; to print test result to host console
21-
pic8259_simple = "0.2.0" # PIC; for hardware interrupts
21+
pic8259 = "0.10.1" # PIC; for hardware interrupts
2222
pc-keyboard = "0.5.0"
23-
linked_list_allocator = "0.8.0"
23+
linked_list_allocator = "0.9.0"
2424

2525
[dependencies.lazy_static]
2626
version = "1.0"
2727
features = ["spin_no_std"]
2828

29+
[dependencies.crossbeam-queue]
30+
version = "0.2.1"
31+
default-features = false
32+
features = ["alloc"]
33+
34+
[dependencies.conquer-once]
35+
version = "0.2.0"
36+
default-features = false
37+
38+
[dependencies.futures-util]
39+
version = "0.3.4"
40+
default-features = false
41+
features = ["alloc"]
2942

3043
[package.metadata.bootimage]
3144
test-args = [

src/interrupts.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use crate::{gdt, hlt_loop, print, println};
22
use lazy_static::lazy_static;
3-
use pic8259_simple::ChainedPics;
3+
use pic8259::ChainedPics;
44
use spin;
55
use x86_64::structures::idt::{InterruptDescriptorTable, InterruptStackFrame, PageFaultErrorCode};
66

@@ -47,12 +47,12 @@ pub fn init_idt() {
4747
IDT.load();
4848
}
4949

50-
extern "x86-interrupt" fn breakpoint_handler(stack_frame: &mut InterruptStackFrame) {
50+
extern "x86-interrupt" fn breakpoint_handler(stack_frame: InterruptStackFrame) {
5151
println!("EXCEPTION: BREAKPOINT\n{:#?}", stack_frame);
5252
}
5353

5454
extern "x86-interrupt" fn page_fault_handler(
55-
stack_frame: &mut InterruptStackFrame,
55+
stack_frame: InterruptStackFrame,
5656
error_code: PageFaultErrorCode,
5757
) {
5858
use x86_64::registers::control::Cr2;
@@ -65,13 +65,13 @@ extern "x86-interrupt" fn page_fault_handler(
6565
}
6666

6767
extern "x86-interrupt" fn double_fault_handler(
68-
stack_frame: &mut InterruptStackFrame,
68+
stack_frame: InterruptStackFrame,
6969
_error_code: u64
7070
) -> ! {
7171
panic!("EXCEPTION: DOUBLE FAULT\n{:#?}",stack_frame);
7272
}
7373

74-
extern "x86-interrupt" fn timer_interrupt_handler(_stack_frame: &mut InterruptStackFrame) {
74+
extern "x86-interrupt" fn timer_interrupt_handler(_stack_frame: InterruptStackFrame) {
7575
print!(".");
7676

7777
unsafe {
@@ -80,7 +80,7 @@ extern "x86-interrupt" fn timer_interrupt_handler(_stack_frame: &mut InterruptSt
8080
}
8181
}
8282

83-
extern "x86-interrupt" fn keyboard_interrupt_handler(_stack_frame: &mut InterruptStackFrame) {
83+
extern "x86-interrupt" fn keyboard_interrupt_handler(_stack_frame: InterruptStackFrame) {
8484
use pc_keyboard::{layouts, DecodedKey, HandleControl, Keyboard, ScancodeSet1};
8585
use spin::Mutex;
8686
use x86_64::instructions::port::Port;

tests/stack_overflow.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ use nokos::{exit_qemu, QemuExitCode, serial_println};
4848
use x86_64::structures::idt::InterruptStackFrame;
4949

5050
extern "x86-interrupt" fn test_double_fault_handler(
51-
_stack_frame: &mut InterruptStackFrame,
51+
_stack_frame: InterruptStackFrame,
5252
_error_code: u64,
5353
) -> ! {
5454
serial_println!("[ok]");

0 commit comments

Comments
 (0)