* 实现statx及测试的应用程序
This commit is contained in:
TTaq
2024-03-21 19:59:10 +08:00
committed by GitHub
parent 8cb2e9b344
commit b4eb05a17f
7 changed files with 450 additions and 0 deletions

View File

@ -7,6 +7,7 @@ use core::{
use crate::{
arch::{ipc::signal::SigSet, syscall::nr::*},
driver::base::device::device_number::DeviceNumber,
filesystem::vfs::syscall::PosixStatx,
libs::{futex::constant::FutexFlag, rand::GRandFlags},
mm::syscall::MremapFlags,
net::syscall::MsgHdr,
@ -20,6 +21,7 @@ use crate::{
use num_traits::FromPrimitive;
use system_error::SystemError;
use uefi::proto::debug;
use crate::{
arch::{cpu::cpu_reset, interrupt::TrapFrame, MMArch},
@ -703,6 +705,16 @@ impl Syscall {
Self::stat(path, kstat)
}
SYS_STATX => {
let fd = args[0] as i32;
let path = args[1] as *const u8;
let flags = args[2] as u32;
let mask = args[3] as u32;
let kstat = args[4] as *mut PosixStatx;
Self::do_statx(fd, path, flags, mask, kstat)
}
SYS_EPOLL_CREATE => Self::epoll_create(args[0] as i32),
SYS_EPOLL_CREATE1 => Self::epoll_create1(args[0]),