Merge branch 'misc_changes' into 'master'

Various improvements

See merge request redox-os/bootstrap!7
This commit is contained in:
Jeremy Soller
2024-03-10 15:14:37 +00:00
10 changed files with 25 additions and 18 deletions
Generated
+7
View File
@@ -18,6 +18,7 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
name = "bootstrap"
version = "0.0.0"
dependencies = [
"hashbrown",
"linked_list_allocator",
"redox-exec",
"redox-initfs",
@@ -35,6 +36,12 @@ dependencies = [
"scroll",
]
[[package]]
name = "hashbrown"
version = "0.14.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604"
[[package]]
name = "linked_list_allocator"
version = "0.10.5"
+2
View File
@@ -10,6 +10,7 @@ name = "bootstrap"
crate-type = ["staticlib"]
[dependencies]
hashbrown = { version = "0.14", default-features = false, features = ["inline-more"] }
linked_list_allocator = "0.10"
redox-initfs = { git = "https://gitlab.redox-os.org/redox-os/redox-initfs.git", features = ["kernel"], default-features = false }
redox-exec = { git = "https://gitlab.redox-os.org/redox-os/relibc.git" }
@@ -17,6 +18,7 @@ redox_syscall = "0.4"
[profile.release]
panic = "abort"
lto = "fat"
[profile.dev]
panic = "abort"
+1 -2
View File
@@ -1,4 +1,4 @@
ENTRY(ustart)
ENTRY(_start)
OUTPUT_FORMAT("elf64-littleaarch64", "elf64-littleaarch64", "elf64-littleaarch64")
SECTIONS {
@@ -34,7 +34,6 @@ SECTIONS {
. = ALIGN(4096);
__bss_end = .;
}
__end = .;
/DISCARD/ : {
*(.comment*)
+2 -2
View File
@@ -20,8 +20,8 @@ static MAP: Map = Map {
core::arch::global_asm!(
"
.globl ustart
ustart:
.globl _start
_start:
// Setup a stack.
ldr x8, ={number}
ldr x0, ={fd}
+1 -2
View File
@@ -1,4 +1,4 @@
ENTRY(ustart)
ENTRY(_start)
OUTPUT_FORMAT(elf32-i386)
SECTIONS {
@@ -34,7 +34,6 @@ SECTIONS {
. = ALIGN(4096);
__bss_end = .;
}
__end = .;
/DISCARD/ : {
*(.comment*)
+3 -3
View File
@@ -15,9 +15,9 @@ static MAP: Map = Map {
};
core::arch::global_asm!(
"
.globl ustart
ustart:
"
.globl _start
_start:
# Setup a stack.
mov eax, {number}
mov ebx, {fd}
+6 -3
View File
@@ -1,9 +1,11 @@
use core::convert::TryFrom;
#[allow(deprecated)]
use core::hash::{BuildHasherDefault, SipHasher};
use core::str;
use alloc::collections::BTreeMap;
use alloc::string::String;
use hashbrown::HashMap;
use redox_initfs::{InitFs, InodeStruct, Inode, InodeDir, InodeKind, types::Timespec};
use syscall::data::{Packet, Stat};
@@ -19,14 +21,15 @@ struct Handle {
filename: String,
}
pub struct InitFsScheme {
handles: BTreeMap<usize, Handle>,
#[allow(deprecated)]
handles: HashMap<usize, Handle, BuildHasherDefault<SipHasher>>,
next_id: usize,
fs: InitFs<'static>,
}
impl InitFsScheme {
pub fn new(bytes: &'static [u8]) -> Self {
Self {
handles: BTreeMap::new(),
handles: HashMap::default(),
next_id: 0,
fs: InitFs::new(bytes).expect("failed to parse initfs"),
}
-2
View File
@@ -11,8 +11,6 @@ mod offsets {
// data+bss (RW-)
static __data_start: u8;
static __bss_end: u8;
static __end: u8;
}
pub fn text() -> (usize, usize) {
unsafe { (&__text_start as *const u8 as usize, &__text_end as *const u8 as usize) }
+1 -2
View File
@@ -1,4 +1,4 @@
ENTRY(ustart)
ENTRY(_start)
OUTPUT_FORMAT(elf64-x86-64)
SECTIONS {
@@ -34,7 +34,6 @@ SECTIONS {
. = ALIGN(4096);
__bss_end = .;
}
__end = .;
/DISCARD/ : {
*(.comment*)
+2 -2
View File
@@ -17,8 +17,8 @@ static MAP: Map = Map {
core::arch::global_asm!(
"
.globl ustart
ustart:
.globl _start
_start:
# Setup a stack.
mov rax, {number}
mov rdi, {fd}