summaryrefslogtreecommitdiff
path: root/src/sim/process.hh
diff options
context:
space:
mode:
authorBrandon Potter <brandon.potter@amd.com>2017-02-27 14:10:02 -0500
committerBrandon Potter <brandon.potter@amd.com>2017-02-27 14:10:02 -0500
commit073cb266079edddec64ea8cd5169dd2cbef8f812 (patch)
tree63de367b090c3aae3e4c3ea5b43949c899c8e811 /src/sim/process.hh
parentf5656738dc3ded25ba8a269efff70e8f12fc22ee (diff)
downloadgem5-073cb266079edddec64ea8cd5169dd2cbef8f812.tar.xz
syscall_emul: [patch 14/22] adds identifier system calls
This changeset add fields to the process object and adds the following three system calls: setpgid, gettid, getpid.
Diffstat (limited to 'src/sim/process.hh')
-rw-r--r--src/sim/process.hh5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/sim/process.hh b/src/sim/process.hh
index 101e4a31c..fa2eff6fa 100644
--- a/src/sim/process.hh
+++ b/src/sim/process.hh
@@ -95,6 +95,9 @@ class Process : public SimObject
inline uint64_t egid() { return _egid; }
inline uint64_t pid() { return _pid; }
inline uint64_t ppid() { return _ppid; }
+ inline uint64_t pgid() { return _pgid; }
+ inline uint64_t tgid() { return _tgid; }
+ inline void setpgid(uint64_t pgid) { _pgid = pgid; }
const char *progName() const { return executable.c_str(); }
std::string fullPath(const std::string &filename);
@@ -199,6 +202,8 @@ class Process : public SimObject
// pid of the process and it's parent
uint64_t _pid;
uint64_t _ppid;
+ uint64_t _pgid;
+ uint64_t _tgid;
// Emulated drivers available to this process
std::vector<EmulatedDriver *> drivers;