* [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 [not found] <20220720122711.6174-1-pngliu@hotmail.com> @ 2022-07-20 12:27 ` pngliu 2022-08-04 8:50 ` Peng Liu 2022-08-31 15:01 ` Jan Kiszka 2022-07-20 12:27 ` [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing pngliu 1 sibling, 2 replies; 12+ messages in thread From: pngliu @ 2022-07-20 12:27 UTC (permalink / raw) To: jan.kiszka, kbingham; +Cc: linux-kernel, Peng Liu 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> --- 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 ff7c1799d588..db59f986c7fd 100644 --- a/scripts/gdb/linux/utils.py +++ b/scripts/gdb/linux/utils.py @@ -89,7 +89,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.25.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 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 15:01 ` Jan Kiszka 1 sibling, 1 reply; 12+ messages in thread From: Peng Liu @ 2022-08-04 8:50 UTC (permalink / raw) To: jan.kiszka, kbingham; +Cc: linux-kernel, Peng Liu ping On 2022/7/20 20:27, pngliu@hotmail.com wrote: > 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> > --- > 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 ff7c1799d588..db59f986c7fd 100644 > --- a/scripts/gdb/linux/utils.py > +++ b/scripts/gdb/linux/utils.py > @@ -89,7 +89,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): ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 2022-08-04 8:50 ` Peng Liu @ 2022-08-22 9:30 ` Peng Liu 2022-08-31 2:02 ` Peng Liu 0 siblings, 1 reply; 12+ messages in thread From: Peng Liu @ 2022-08-22 9:30 UTC (permalink / raw) To: jan.kiszka; +Cc: kbingham, linux-kernel, Peng Liu ping On 2022/8/4 16:50, Peng Liu wrote: > ping > > On 2022/7/20 20:27, pngliu@hotmail.com wrote: >> 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> >> --- >> 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 ff7c1799d588..db59f986c7fd 100644 >> --- a/scripts/gdb/linux/utils.py >> +++ b/scripts/gdb/linux/utils.py >> @@ -89,7 +89,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): ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 2022-08-22 9:30 ` Peng Liu @ 2022-08-31 2:02 ` Peng Liu 0 siblings, 0 replies; 12+ messages in thread From: Peng Liu @ 2022-08-31 2:02 UTC (permalink / raw) To: kbingham; +Cc: jan.kiszka, linux-kernel, Peng Liu ping On 2022/8/22 17:30, Peng Liu wrote: > ping > > On 2022/8/4 16:50, Peng Liu wrote: >> ping >> >> On 2022/7/20 20:27, pngliu@hotmail.com wrote: >>> 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> >>> --- >>> 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 ff7c1799d588..db59f986c7fd 100644 >>> --- a/scripts/gdb/linux/utils.py >>> +++ b/scripts/gdb/linux/utils.py >>> @@ -89,7 +89,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): ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 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-31 15:01 ` Jan Kiszka 2022-09-01 2:29 ` Peng Liu 1 sibling, 1 reply; 12+ messages in thread From: Jan Kiszka @ 2022-08-31 15:01 UTC (permalink / raw) To: pngliu, kbingham, Stephen Boyd; +Cc: linux-kernel, Peng Liu On 20.07.22 14:27, pngliu@hotmail.com wrote: > 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 Means this only ever worked with Python2? And we now hard-switch it to Python3? Not voting against this, just confused if it was like this so far. Jan > > Signed-off-by: Peng Liu <liupeng17@lenovo.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 ff7c1799d588..db59f986c7fd 100644 > --- a/scripts/gdb/linux/utils.py > +++ b/scripts/gdb/linux/utils.py > @@ -89,7 +89,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): -- Siemens AG, Technology Competence Center Embedded Linux ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 2/3] scripts/gdb: fix lx-timerlist for Python3 2022-08-31 15:01 ` Jan Kiszka @ 2022-09-01 2:29 ` Peng Liu 0 siblings, 0 replies; 12+ messages in thread From: Peng Liu @ 2022-09-01 2:29 UTC (permalink / raw) To: Jan Kiszka, kbingham, Stephen Boyd; +Cc: linux-kernel, Peng Liu On 2022/8/31 23:01, Jan Kiszka wrote: > On 20.07.22 14:27, pngliu@hotmail.com wrote: >> 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 > Means this only ever worked with Python2? And we now hard-switch it to > Python3? Not voting against this, just confused if it was like this so far. > > Jan I think so. I tried the other gdb scripts and they worked for both python2 and python3. I guess timerlist.py was initially tested only with a gdb with python2 support built in but not one with python3 support built in. >> Signed-off-by: Peng Liu <liupeng17@lenovo.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 ff7c1799d588..db59f986c7fd 100644 >> --- a/scripts/gdb/linux/utils.py >> +++ b/scripts/gdb/linux/utils.py >> @@ -89,7 +89,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): ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing [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-07-20 12:27 ` pngliu 2022-08-04 8:50 ` Peng Liu 2022-08-31 15:03 ` Jan Kiszka 1 sibling, 2 replies; 12+ messages in thread From: pngliu @ 2022-07-20 12:27 UTC (permalink / raw) To: jan.kiszka, kbingham; +Cc: linux-kernel, Peng Liu From: Peng Liu <liupeng17@lenovo.com> HRTIMER_MAX_CLOCK_BASES is of enum type hrtimer_base_type. To print it as an integer, HRTIMER_MAX_CLOCK_BASES should be converted first. Signed-off-by: Peng Liu <liupeng17@lenovo.com> --- scripts/gdb/linux/timerlist.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/gdb/linux/timerlist.py b/scripts/gdb/linux/timerlist.py index 8281da068c5b..249f0e804b24 100644 --- a/scripts/gdb/linux/timerlist.py +++ b/scripts/gdb/linux/timerlist.py @@ -188,7 +188,8 @@ class LxTimerList(gdb.Command): max_clock_bases = gdb.parse_and_eval("HRTIMER_MAX_CLOCK_BASES") text = "Timer List Version: gdb scripts\n" - text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format(max_clock_bases) + text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format( + max_clock_bases.type.fields()[max_clock_bases].enumval) text += "now at {} nsecs\n".format(ktime_get()) for cpu in cpus.each_online_cpu(): -- 2.25.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing 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 15:03 ` Jan Kiszka 1 sibling, 1 reply; 12+ messages in thread From: Peng Liu @ 2022-08-04 8:50 UTC (permalink / raw) To: jan.kiszka, kbingham; +Cc: linux-kernel, Peng Liu On 2022/7/20 20:27, pngliu@hotmail.com wrote: > From: Peng Liu <liupeng17@lenovo.com> > > HRTIMER_MAX_CLOCK_BASES is of enum type hrtimer_base_type. To print > it as an integer, HRTIMER_MAX_CLOCK_BASES should be converted first. > > Signed-off-by: Peng Liu <liupeng17@lenovo.com> > --- > scripts/gdb/linux/timerlist.py | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/scripts/gdb/linux/timerlist.py b/scripts/gdb/linux/timerlist.py > index 8281da068c5b..249f0e804b24 100644 > --- a/scripts/gdb/linux/timerlist.py > +++ b/scripts/gdb/linux/timerlist.py > @@ -188,7 +188,8 @@ class LxTimerList(gdb.Command): > max_clock_bases = gdb.parse_and_eval("HRTIMER_MAX_CLOCK_BASES") > > text = "Timer List Version: gdb scripts\n" > - text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format(max_clock_bases) > + text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format( > + max_clock_bases.type.fields()[max_clock_bases].enumval) > text += "now at {} nsecs\n".format(ktime_get()) > > for cpu in cpus.each_online_cpu(): ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing 2022-08-04 8:50 ` Peng Liu @ 2022-08-22 9:30 ` Peng Liu 2022-08-31 2:02 ` Peng Liu 0 siblings, 1 reply; 12+ messages in thread From: Peng Liu @ 2022-08-22 9:30 UTC (permalink / raw) To: jan.kiszka; +Cc: kbingham, linux-kernel, Peng Liu ping On 2022/8/4 16:50, Peng Liu wrote: > > On 2022/7/20 20:27, pngliu@hotmail.com wrote: >> From: Peng Liu <liupeng17@lenovo.com> >> >> HRTIMER_MAX_CLOCK_BASES is of enum type hrtimer_base_type. To print >> it as an integer, HRTIMER_MAX_CLOCK_BASES should be converted first. >> >> Signed-off-by: Peng Liu <liupeng17@lenovo.com> >> --- >> scripts/gdb/linux/timerlist.py | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/scripts/gdb/linux/timerlist.py >> b/scripts/gdb/linux/timerlist.py >> index 8281da068c5b..249f0e804b24 100644 >> --- a/scripts/gdb/linux/timerlist.py >> +++ b/scripts/gdb/linux/timerlist.py >> @@ -188,7 +188,8 @@ class LxTimerList(gdb.Command): >> max_clock_bases = >> gdb.parse_and_eval("HRTIMER_MAX_CLOCK_BASES") >> text = "Timer List Version: gdb scripts\n" >> - text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format(max_clock_bases) >> + text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format( >> + max_clock_bases.type.fields()[max_clock_bases].enumval) >> text += "now at {} nsecs\n".format(ktime_get()) >> for cpu in cpus.each_online_cpu(): ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing 2022-08-22 9:30 ` Peng Liu @ 2022-08-31 2:02 ` Peng Liu 0 siblings, 0 replies; 12+ messages in thread From: Peng Liu @ 2022-08-31 2:02 UTC (permalink / raw) To: kbingham; +Cc: jan.kiszka, linux-kernel, Peng Liu ping On 2022/8/22 17:30, Peng Liu wrote: > ping > > On 2022/8/4 16:50, Peng Liu wrote: >> >> On 2022/7/20 20:27, pngliu@hotmail.com wrote: >>> From: Peng Liu <liupeng17@lenovo.com> >>> >>> HRTIMER_MAX_CLOCK_BASES is of enum type hrtimer_base_type. To print >>> it as an integer, HRTIMER_MAX_CLOCK_BASES should be converted first. >>> >>> Signed-off-by: Peng Liu <liupeng17@lenovo.com> >>> --- >>> scripts/gdb/linux/timerlist.py | 3 ++- >>> 1 file changed, 2 insertions(+), 1 deletion(-) >>> >>> diff --git a/scripts/gdb/linux/timerlist.py >>> b/scripts/gdb/linux/timerlist.py >>> index 8281da068c5b..249f0e804b24 100644 >>> --- a/scripts/gdb/linux/timerlist.py >>> +++ b/scripts/gdb/linux/timerlist.py >>> @@ -188,7 +188,8 @@ class LxTimerList(gdb.Command): >>> max_clock_bases = >>> gdb.parse_and_eval("HRTIMER_MAX_CLOCK_BASES") >>> text = "Timer List Version: gdb scripts\n" >>> - text += "HRTIMER_MAX_CLOCK_BASES: >>> {}\n".format(max_clock_bases) >>> + text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format( >>> + max_clock_bases.type.fields()[max_clock_bases].enumval) >>> text += "now at {} nsecs\n".format(ktime_get()) >>> for cpu in cpus.each_online_cpu(): ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing 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-31 15:03 ` Jan Kiszka 1 sibling, 0 replies; 12+ messages in thread From: Jan Kiszka @ 2022-08-31 15:03 UTC (permalink / raw) To: pngliu, kbingham, Andrew Morton; +Cc: linux-kernel, Peng Liu, Stephen Boyd On 20.07.22 14:27, pngliu@hotmail.com wrote: > From: Peng Liu <liupeng17@lenovo.com> > > HRTIMER_MAX_CLOCK_BASES is of enum type hrtimer_base_type. To print > it as an integer, HRTIMER_MAX_CLOCK_BASES should be converted first. > > Signed-off-by: Peng Liu <liupeng17@lenovo.com> > --- > scripts/gdb/linux/timerlist.py | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/scripts/gdb/linux/timerlist.py b/scripts/gdb/linux/timerlist.py > index 8281da068c5b..249f0e804b24 100644 > --- a/scripts/gdb/linux/timerlist.py > +++ b/scripts/gdb/linux/timerlist.py > @@ -188,7 +188,8 @@ class LxTimerList(gdb.Command): > max_clock_bases = gdb.parse_and_eval("HRTIMER_MAX_CLOCK_BASES") > > text = "Timer List Version: gdb scripts\n" > - text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format(max_clock_bases) > + text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format( > + max_clock_bases.type.fields()[max_clock_bases].enumval) > text += "now at {} nsecs\n".format(ktime_get()) > > for cpu in cpus.each_online_cpu(): Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com> Jan -- Siemens AG, Technology Competence Center Embedded Linux ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 3/3] scripts/gdb: fix lx-timerlist for HRTIMER_MAX_CLOCK_BASES printing @ 2023-03-21 6:20 Peng Liu 0 siblings, 0 replies; 12+ messages in thread From: Peng Liu @ 2023-03-21 6:20 UTC (permalink / raw) Cc: jan.kiszka, kbingham, akpm, linux-kernel, liupeng17 From: Peng Liu <liupeng17@lenovo.com> HRTIMER_MAX_CLOCK_BASES is of enum type hrtimer_base_type. To print it as an integer, HRTIMER_MAX_CLOCK_BASES should be converted first. Signed-off-by: Peng Liu <liupeng17@lenovo.com> Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com> --- scripts/gdb/linux/timerlist.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/gdb/linux/timerlist.py b/scripts/gdb/linux/timerlist.py index 8281da068c5b..249f0e804b24 100644 --- a/scripts/gdb/linux/timerlist.py +++ b/scripts/gdb/linux/timerlist.py @@ -188,7 +188,8 @@ class LxTimerList(gdb.Command): max_clock_bases = gdb.parse_and_eval("HRTIMER_MAX_CLOCK_BASES") text = "Timer List Version: gdb scripts\n" - text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format(max_clock_bases) + text += "HRTIMER_MAX_CLOCK_BASES: {}\n".format( + max_clock_bases.type.fields()[max_clock_bases].enumval) text += "now at {} nsecs\n".format(ktime_get()) for cpu in cpus.each_online_cpu(): -- 2.34.1 ^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2023-03-21 6:20 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:20 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.