diff options
author | Ali Saidi <saidi@eecs.umich.edu> | 2004-08-18 23:06:51 -0400 |
---|---|---|
committer | Ali Saidi <saidi@eecs.umich.edu> | 2004-08-18 23:06:51 -0400 |
commit | 9d4ee7acaa930811bbb8e28894a96fd371702ef4 (patch) | |
tree | 15b67b1fbd88afb34dbf4860adc340408b3da149 /kern/linux/linux_system.cc | |
parent | 239183cfe675684aeca1a2b24362ca5e0a82809d (diff) | |
download | gem5-9d4ee7acaa930811bbb8e28894a96fd371702ef4.tar.xz |
Added code using VPtr to be able to extract info from linux thread
structures.
Added event to print out currently running task
base/traceflags.py:
Added Thread trace flag
kern/linux/linux_system.cc:
kern/linux/linux_system.hh:
Added event to print out currently running task
--HG--
extra : convert_revision : 94347dbaf90f39eb40467b2a43b4628a3deafc6c
Diffstat (limited to 'kern/linux/linux_system.cc')
-rw-r--r-- | kern/linux/linux_system.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/kern/linux/linux_system.cc b/kern/linux/linux_system.cc index bc2753908..dd188ffe0 100644 --- a/kern/linux/linux_system.cc +++ b/kern/linux/linux_system.cc @@ -132,6 +132,8 @@ LinuxSystem::LinuxSystem(const string _name, const uint64_t _init_param, debugPrintkEvent = new DebugPrintkEvent(&pcEventQueue, "dprintk"); + printThreadEvent = new PrintThreadInfo(&pcEventQueue, "threadinfo"); + Addr addr = 0; /** @@ -242,6 +244,10 @@ LinuxSystem::LinuxSystem(const string _name, const uint64_t _init_param, if (kernelSymtab->findAddress("dprintk", addr)) debugPrintkEvent->schedule(addr+sizeof(MachInst)*2); + + if (kernelSymtab->findAddress("alpha_switch_to", addr) && + DTRACE(Thread)) + printThreadEvent->schedule(addr+sizeof(MachInst)*6); } LinuxSystem::~LinuxSystem() |