From 36292e6fcd6b8768dcf53e864b1683c3bb3814c0 Mon Sep 17 00:00:00 2001 From: Jiajie Chen Date: Thu, 28 Feb 2019 07:34:45 +0800 Subject: [PATCH] Add dummy implementations for more syscalls --- kernel/src/process/structs.rs | 9 ++++----- kernel/src/syscall/mod.rs | 16 ++++++++++++++++ 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/kernel/src/process/structs.rs b/kernel/src/process/structs.rs index b5ca3ef..6bfd400 100644 --- a/kernel/src/process/structs.rs +++ b/kernel/src/process/structs.rs @@ -104,11 +104,10 @@ impl Thread { envs: BTreeMap::new(), auxv: { let mut map = BTreeMap::new(); - let phdr = elf.program_iter() - .find(|ph| ph.get_type() == Ok(Type::Phdr)) - .expect("PHDR section not found") - .virtual_addr(); - map.insert(abi::AT_PHDR, phdr as usize); + if let Some(phdr) = elf.program_iter() + .find(|ph| ph.get_type() == Ok(Type::Phdr)) { + map.insert(abi::AT_PHDR, phdr.virtual_addr() as usize); + } map.insert(abi::AT_PHENT, elf.header.pt2.ph_entry_size() as usize); map.insert(abi::AT_PHNUM, elf.header.pt2.ph_count() as usize); map diff --git a/kernel/src/syscall/mod.rs b/kernel/src/syscall/mod.rs index ee6e6fd..9145fde 100644 --- a/kernel/src/syscall/mod.rs +++ b/kernel/src/syscall/mod.rs @@ -100,6 +100,22 @@ pub fn syscall(id: usize, args: [usize; 6], tf: &mut TrapFrame) -> isize { warn!("sys_sigprocmask is unimplemented"); Ok(0) } + 016 => { + warn!("sys_ioctl is unimplemented"); + Ok(0) + } + 102 => { + warn!("sys_getuid is unimplemented"); + Ok(0) + } + 107 => { + warn!("sys_geteuid is unimplemented"); + Ok(0) + } + 108 => { + warn!("sys_getegid is unimplemented"); + Ok(0) + } 131 => { warn!("sys_sigaltstack is unimplemented"); Ok(0)