summaryrefslogtreecommitdiff
path: root/kern/linux/linux_system.cc
diff options
context:
space:
mode:
authorAli Saidi <saidi@eecs.umich.edu>2004-08-18 23:06:51 -0400
committerAli Saidi <saidi@eecs.umich.edu>2004-08-18 23:06:51 -0400
commit9d4ee7acaa930811bbb8e28894a96fd371702ef4 (patch)
tree15b67b1fbd88afb34dbf4860adc340408b3da149 /kern/linux/linux_system.cc
parent239183cfe675684aeca1a2b24362ca5e0a82809d (diff)
downloadgem5-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.cc6
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()