Thread (11 messages) 11 messages, 3 authors, 2023-09-12
STALE996d
Revisions (2)
  1. v1 [diff vs current]
  2. v2 current

[PATCH v2 3/8] scripts/gdb/utils: add common type usage

From: Kuan-Ying Lee <hidden>
Date: 2023-08-08 16:20:20
Also in: linux-arm-kernel, linux-mediatek, linux-mm, lkml
Subsystem: gdb kernel debugging helper scripts, the rest · Maintainers: Jan Kiszka, Kieran Bingham, Linus Torvalds

Since we often use 'unsigned long', 'size_t', 'usigned int'
and 'struct page', we add these common types to utils.

Signed-off-by: Kuan-Ying Lee <redacted>
---
 scripts/gdb/linux/utils.py | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
diff --git a/scripts/gdb/linux/utils.py b/scripts/gdb/linux/utils.py
index 9f44df13761e..7d5278d815fa 100644
--- a/scripts/gdb/linux/utils.py
+++ b/scripts/gdb/linux/utils.py
@@ -35,12 +35,32 @@ class CachedType:
 
 
 long_type = CachedType("long")
+ulong_type = CachedType("unsigned long")
+uint_type = CachedType("unsigned int")
 atomic_long_type = CachedType("atomic_long_t")
+size_t_type = CachedType("size_t")
+struct_page_type = CachedType("struct page")
+
+def get_uint_type():
+    global uint_type
+    return uint_type.get_type()
+
+def get_page_type():
+    global struct_page_type
+    return struct_page_type.get_type()
 
 def get_long_type():
     global long_type
     return long_type.get_type()
 
+def get_ulong_type():
+    global ulong_type
+    return ulong_type.get_type()
+
+def get_size_t_type():
+    global size_t_type
+    return size_t_type.get_type()
+
 def offset_of(typeobj, field):
     element = gdb.Value(0).cast(typeobj)
     return int(str(element[field].address).split()[0], 16)
-- 
2.18.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help