* [merged] scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks.patch removed from -mm tree
@ 2015-02-18 19:44 akpm
0 siblings, 0 replies; only message in thread
From: akpm @ 2015-02-18 19:44 UTC (permalink / raw
To: jan.kiszka, andi, ben, bp, jason.wessel, tglx, mm-commits
The patch titled
Subject: scripts/gdb: add helper and convenience function to look up tasks
has been removed from the -mm tree. Its filename was
scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
From: Jan Kiszka <jan.kiszka@siemens.com>
Subject: scripts/gdb: add helper and convenience function to look up tasks
Add the helper task_by_pid that can look up a task by its PID. Also
export it as a convenience function.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Wessel <jason.wessel@windriver.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Ben Widawsky <ben@bwidawsk.net>
Cc: Borislav Petkov <bp@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
scripts/gdb/linux/tasks.py | 27 +++++++++++++++++++++++++++
scripts/gdb/vmlinux-gdb.py | 1 +
2 files changed, 28 insertions(+)
diff -puN scripts/gdb/linux/tasks.py~scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks scripts/gdb/linux/tasks.py
--- a/scripts/gdb/linux/tasks.py~scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks
+++ a/scripts/gdb/linux/tasks.py
@@ -44,3 +44,30 @@ class TaskList:
utils.container_of(t['thread_group']['next'],
self.task_ptr_type, "thread_group")
return t
+
+
+def get_task_by_pid(pid):
+ for task in TaskList():
+ if int(task['pid']) == pid:
+ return task
+ return None
+
+
+class LxTaskByPidFunc(gdb.Function):
+ """Find Linux task by PID and return the task_struct variable.
+
+$lx_task_by_pid(PID): Given PID, iterate over all tasks of the target and
+return that task_struct variable which PID matches."""
+
+ def __init__(self):
+ super(LxTaskByPidFunc, self).__init__("lx_task_by_pid")
+
+ def invoke(self, pid):
+ task = get_task_by_pid(pid)
+ if task:
+ return task.dereference()
+ else:
+ raise gdb.GdbError("No task of PID " + str(pid))
+
+
+LxTaskByPidFunc()
diff -puN scripts/gdb/vmlinux-gdb.py~scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks scripts/gdb/vmlinux-gdb.py
--- a/scripts/gdb/vmlinux-gdb.py~scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks
+++ a/scripts/gdb/vmlinux-gdb.py
@@ -26,3 +26,4 @@ else:
import linux.symbols
import linux.modules
import linux.dmesg
+ import linux.tasks
_
Patches currently in -mm which might be from jan.kiszka@siemens.com are
origin.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2015-02-18 19:44 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-18 19:44 [merged] scripts-gdb-add-helper-and-convenience-function-to-look-up-tasks.patch removed from -mm tree akpm
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.