Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
277 changes: 158 additions & 119 deletions Cargo.lock

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,12 @@ bitflags = "2.10"
bytemuck = { version = "1.23", features = ["unsound_ptr_pod_impl"] }
cfg-if = "1.0"
event-listener = { version = "5.4.0", default-features = false }
extern-trait = "0.2"
extern-trait = "0.4"
hashbrown = "0.16"
kspin = "0.1"
lazy_static = { version = "1.5", features = ["spin_no_std"] }
linkme = "0.3.33"
linux-raw-sys = { version = "0.11", default-features = false, features = [
linux-raw-sys = { version = "0.12", default-features = false, features = [
"no_std",
"general",
"net",
Expand All @@ -73,8 +73,8 @@ scope-local = "0.1"
slab = { version = "0.4.9", default-features = false }
spin = "0.10"
starry-process = "0.2"
starry-signal = "0.2.4-preview.1"
starry-vm = "0.2"
starry-signal = "0.3"
starry-vm = "0.3"

starry-core = { path = "./core" }
starry-api = { path = "./api" }
Expand Down
7 changes: 2 additions & 5 deletions api/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -50,10 +50,7 @@ linkme.workspace = true
linux-raw-sys = { workspace = true, features = ["ioctl", "loop_device"] }
memory_addr.workspace = true
num_enum = { version = "0.7", default-features = false }
rand = { version = "0.9.1", default-features = false, features = [
"alloc",
"small_rng",
] }
rand = { version = "0.10", default-features = false, features = ["alloc"] }
ringbuf = { version = "0.4.8", default-features = false, features = ["alloc"] }
scope-local.workspace = true
slab.workspace = true
Expand All @@ -70,4 +67,4 @@ starry-core.workspace = true
x86 = "0.52"

[target.'cfg(any(target_arch = "riscv32", target_arch = "riscv64"))'.dependencies]
riscv = "0.14"
riscv = "0.16"
2 changes: 1 addition & 1 deletion api/src/syscall/task/clone.rs
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ pub fn sys_clone(
if flags.contains(CloneFlags::CHILD_CLEARTID) {
thr.set_clear_child_tid(child_tid);
}
*new_task.task_ext_mut() = Some(unsafe { AxTaskExt::from_impl(thr) });
*new_task.task_ext_mut() = Some(AxTaskExt::from_impl(thr));

let task = spawn_task(new_task);
add_task_to_table(&task);
Expand Down
6 changes: 3 additions & 3 deletions api/src/syscall/task/schedule.rs
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ pub fn sys_clock_nanosleep(
}

pub fn sys_sched_getaffinity(pid: i32, cpusetsize: usize, user_mask: *mut u8) -> AxResult<isize> {
if cpusetsize * 8 < axconfig::plat::CPU_NUM {
if cpusetsize * 8 < axhal::cpu_num() {
return Err(AxError::InvalidInput);
}

Expand All @@ -109,11 +109,11 @@ pub fn sys_sched_setaffinity(
cpusetsize: usize,
user_mask: *const u8,
) -> AxResult<isize> {
let size = cpusetsize.min(axconfig::plat::CPU_NUM.div_ceil(8));
let size = cpusetsize.min(axhal::cpu_num().div_ceil(8));
let user_mask = vm_load(user_mask, size)?;
let mut cpu_mask = AxCpuMask::new();

for i in 0..(size * 8).min(axconfig::plat::CPU_NUM) {
for i in 0..(size * 8).min(axhal::cpu_num()) {
if user_mask[i / 8] & (1 << (i % 8)) != 0 {
cpu_mask.set(i, true);
}
Expand Down
2 changes: 1 addition & 1 deletion api/src/vfs/dev/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ use axfs_ng_vfs::{DeviceId, Filesystem, NodeFlags, NodeType, VfsResult};
use axsync::Mutex;
#[cfg(feature = "dev-log")]
pub use log::bind_dev_log;
use rand::{RngCore, SeedableRng, rngs::SmallRng};
use rand::{Rng, SeedableRng, rngs::SmallRng};
use starry_core::vfs::{Device, DeviceOps, DirMaker, DirMapping, SimpleDir, SimpleFs};

const RANDOM_SEED: &[u8; 32] = b"0123456789abcdef0123456789abcdef";
Expand Down
4 changes: 2 additions & 2 deletions core/src/task.rs
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ impl Thread {
}

#[extern_trait]
unsafe impl TaskExt for Box<Thread> {
impl TaskExt for Box<Thread> {
fn on_enter(&self) {
let scope = self.proc_data.scope.read();
unsafe { ActiveScope::set(&scope) };
Expand All @@ -184,7 +184,7 @@ pub trait AsThread {
impl AsThread for TaskInner {
fn try_as_thread(&self) -> Option<&Thread> {
self.task_ext()
.map(|ext| unsafe { ext.downcast_ref::<Box<Thread>>() }.as_ref())
.map(|ext| ext.downcast_ref::<Box<Thread>>().as_ref())
}
}

Expand Down
2 changes: 1 addition & 1 deletion src/entry.rs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ pub fn run_initproc(args: &[String], envs: &[String]) -> i32 {
}
let thr = Thread::new(pid, proc_data);

*task.task_ext_mut() = Some(unsafe { AxTaskExt::from_impl(thr) });
*task.task_ext_mut() = Some(AxTaskExt::from_impl(thr));

let task = spawn_task(task);
add_task_to_table(&task);
Expand Down
Loading