All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3
@ 2023-03-21  6:19 Peng Liu
  0 siblings, 0 replies; 12+ messages in thread
From: Peng Liu @ 2023-03-21  6:19 UTC (permalink / raw)
  Cc: jan.kiszka, kbingham, akpm, linux-kernel, liupeng17

From: Peng Liu <liupeng17@lenovo.com>

Below incompatibilities between Python2 and Python3 made lx-timerlist
fail to run under Python3.

o xrange() is replaced by range() in Python3
o bytes and str are different types in Python3
o the return value of Inferior.read_memory() is memoryview object in
  Python3

Signed-off-by: Peng Liu <liupeng17@lenovo.com>
Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 scripts/gdb/linux/timerlist.py | 4 +++-
 scripts/gdb/linux/utils.py     | 5 ++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/scripts/gdb/linux/timerlist.py b/scripts/gdb/linux/timerlist.py
index 44e39dc3eb64..8281da068c5b 100644
--- a/scripts/gdb/linux/timerlist.py
+++ b/scripts/gdb/linux/timerlist.py
@@ -72,7 +72,7 @@ def print_cpu(hrtimer_bases, cpu, max_clock_bases):
     ts = cpus.per_cpu(tick_sched_ptr, cpu)
 
     text = "cpu: {}\n".format(cpu)
-    for i in xrange(max_clock_bases):
+    for i in range(max_clock_bases):
         text += " clock {}:\n".format(i)
         text += print_base(cpu_base['clock_base'][i])
 
@@ -157,6 +157,8 @@ def pr_cpumask(mask):
     num_bytes = (nr_cpu_ids + 7) / 8
     buf = utils.read_memoryview(inf, bits, num_bytes).tobytes()
     buf = binascii.b2a_hex(buf)
+    if type(buf) is not str:
+        buf=buf.decode()
 
     chunks = []
     i = num_bytes
diff --git a/scripts/gdb/linux/utils.py b/scripts/gdb/linux/utils.py
index 1553f68716cc..7f36aee32ac6 100644
--- a/scripts/gdb/linux/utils.py
+++ b/scripts/gdb/linux/utils.py
@@ -88,7 +88,10 @@ def get_target_endianness():
 
 
 def read_memoryview(inf, start, length):
-    return memoryview(inf.read_memory(start, length))
+    m = inf.read_memory(start, length)
+    if type(m) is memoryview:
+        return m
+    return memoryview(m)
 
 
 def read_u16(buffer, offset):
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2023-03-21  6:19 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20220720122711.6174-1-pngliu@hotmail.com>
2022-07-20 12:27 ` [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 pngliu
2022-08-04  8:50   ` Peng Liu
2022-08-22  9:30     ` Peng Liu
2022-08-31  2:02       ` Peng Liu
2022-08-31 15:01   ` Jan Kiszka
2022-09-01  2:29     ` Peng Liu
2022-07-20 12:27 ` [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing pngliu
2022-08-04  8:50   ` Peng Liu
2022-08-22  9:30     ` Peng Liu
2022-08-31  2:02       ` Peng Liu
2022-08-31 15:03   ` Jan Kiszka
2023-03-21  6:19 [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 Peng Liu

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.