diff options
author | Brandon Potter <brandon.potter@amd.com> | 2018-04-18 14:45:37 -0400 |
---|---|---|
committer | Anthony Gutierrez <anthony.gutierrez@amd.com> | 2018-09-19 20:54:04 +0000 |
commit | f2abc6bb9edbcb23c7e314873b26ca6303a9c1b7 (patch) | |
tree | 89bba644fd3934779e9330f45703e59cbdce9512 /src/sim/syscall_emul.hh | |
parent | bed9460aaa6ade07383642e14e5076ce5e456fea (diff) | |
download | gem5-f2abc6bb9edbcb23c7e314873b26ca6303a9c1b7.tar.xz |
syscall_emul: implement dir-related syscalls
Add getdents, rmdir, chdir, and mknod to SE mode for x86.
Change-Id: I387ea3066869e8999bc0064f74070f4e47c1e9a1
Reviewed-on: https://gem5-review.googlesource.com/12112
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Anthony Gutierrez <anthony.gutierrez@amd.com>
Diffstat (limited to 'src/sim/syscall_emul.hh')
-rw-r--r-- | src/sim/syscall_emul.hh | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/sim/syscall_emul.hh b/src/sim/syscall_emul.hh index 1f4233aa8..c7818b6c6 100644 --- a/src/sim/syscall_emul.hh +++ b/src/sim/syscall_emul.hh @@ -215,6 +215,18 @@ SyscallReturn symlinkFunc(SyscallDesc *desc, int num, Process *p, SyscallReturn mkdirFunc(SyscallDesc *desc, int num, Process *p, ThreadContext *tc); +/// Target mknod() handler. +SyscallReturn mknodFunc(SyscallDesc *desc, int num, + Process *p, ThreadContext *tc); + +/// Target chdir() handler. +SyscallReturn chdirFunc(SyscallDesc *desc, int num, + Process *p, ThreadContext *tc); + +// Target rmdir() handler. +SyscallReturn rmdirFunc(SyscallDesc *desc, int num, + Process *p, ThreadContext *tc); + /// Target rename() handler. SyscallReturn renameFunc(SyscallDesc *desc, int num, Process *p, ThreadContext *tc); @@ -291,7 +303,11 @@ SyscallReturn pipeImpl(SyscallDesc *desc, int num, Process *p, SyscallReturn getpidFunc(SyscallDesc *desc, int num, Process *p, ThreadContext *tc); -/// Target getuid() handler. +// Target getdents() handler. +SyscallReturn getdentsFunc(SyscallDesc *desc, int num, + Process *p, ThreadContext *tc); + +// Target getuid() handler. SyscallReturn getuidFunc(SyscallDesc *desc, int num, Process *p, ThreadContext *tc); |