2015-05-14 05:24:15

by Thiébaud Weksteen

[permalink] [raw]
Subject: [PATCH 0/3] scripts/gdb: clean up

Set of patches to clean up scripts/gdb

Thiébaud Weksteen (3):
scripts/gdb: Fix typo in exception name
scripts/gdb: Fix PEP8 compliance
scripts/gdb: Remove useless global instruction

scripts/gdb/linux/dmesg.py | 1 -
scripts/gdb/linux/symbols.py | 9 ++++-----
scripts/gdb/linux/tasks.py | 4 ++--
scripts/gdb/linux/utils.py | 4 ++--
4 files changed, 8 insertions(+), 10 deletions(-)

--
2.1.0


2015-05-14 05:24:13

by Thiébaud Weksteen

[permalink] [raw]
Subject: [PATCH 1/3] scripts/gdb: Fix typo in exception name

Signed-off-by: Thiébaud Weksteen <[email protected]>
---
scripts/gdb/linux/utils.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/gdb/linux/utils.py b/scripts/gdb/linux/utils.py
index 128c306..d7ff3a3 100644
--- a/scripts/gdb/linux/utils.py
+++ b/scripts/gdb/linux/utils.py
@@ -83,7 +83,7 @@ def get_target_endianness():
elif "big endian" in endian:
target_endianness = BIG_ENDIAN
else:
- raise gdb.GdgError("unknown endianness '{0}'".format(str(endian)))
+ raise gdb.GdbError("unknown endianness '{0}'".format(str(endian)))
return target_endianness


--
2.1.0

2015-05-14 05:30:27

by Thiébaud Weksteen

[permalink] [raw]
Subject: [PATCH 2/3] scripts/gdb: Fix PEP8 compliance

Signed-off-by: Thiébaud Weksteen <[email protected]>
---
scripts/gdb/linux/dmesg.py | 1 -
scripts/gdb/linux/symbols.py | 9 ++++-----
scripts/gdb/linux/tasks.py | 2 ++
scripts/gdb/linux/utils.py | 2 +-
4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/scripts/gdb/linux/dmesg.py b/scripts/gdb/linux/dmesg.py
index 3c947f0..927d0d2 100644
--- a/scripts/gdb/linux/dmesg.py
+++ b/scripts/gdb/linux/dmesg.py
@@ -12,7 +12,6 @@
#

import gdb
-import string

from linux import utils

diff --git a/scripts/gdb/linux/symbols.py b/scripts/gdb/linux/symbols.py
index cd5bea9..627750c 100644
--- a/scripts/gdb/linux/symbols.py
+++ b/scripts/gdb/linux/symbols.py
@@ -14,9 +14,8 @@
import gdb
import os
import re
-import string

-from linux import modules, utils
+from linux import modules


if hasattr(gdb, 'Breakpoint'):
@@ -97,7 +96,7 @@ lx-symbols command."""
return ""
attrs = sect_attrs['attrs']
section_name_to_address = {
- attrs[n]['name'].string() : attrs[n]['address']
+ attrs[n]['name'].string(): attrs[n]['address']
for n in range(int(sect_attrs['nsections']))}
args = []
for section_name in [".data", ".data..read_mostly", ".rodata", ".bss"]:
@@ -124,7 +123,7 @@ lx-symbols command."""
addr=module_addr,
sections=self._section_arguments(module))
gdb.execute(cmdline, to_string=True)
- if not module_name in self.loaded_modules:
+ if module_name not in self.loaded_modules:
self.loaded_modules.append(module_name)
else:
gdb.write("no module object found for '{0}'\n".format(module_name))
@@ -164,7 +163,7 @@ lx-symbols command."""
self.load_all_symbols()

if hasattr(gdb, 'Breakpoint'):
- if not self.breakpoint is None:
+ if self.breakpoint is not None:
self.breakpoint.delete()
self.breakpoint = None
self.breakpoint = LoadModuleBreakpoint(
diff --git a/scripts/gdb/linux/tasks.py b/scripts/gdb/linux/tasks.py
index e2037d9..89d38e1 100644
--- a/scripts/gdb/linux/tasks.py
+++ b/scripts/gdb/linux/tasks.py
@@ -18,6 +18,7 @@ from linux import utils

task_type = utils.CachedType("struct task_struct")

+
def task_lists():
global task_type
task_ptr_type = task_type.get_type().pointer()
@@ -38,6 +39,7 @@ def task_lists():
if t == init_task:
return

+
def get_task_by_pid(pid):
for task in task_lists():
if int(task['pid']) == pid:
diff --git a/scripts/gdb/linux/utils.py b/scripts/gdb/linux/utils.py
index d7ff3a3..0893b32 100644
--- a/scripts/gdb/linux/utils.py
+++ b/scripts/gdb/linux/utils.py
@@ -151,6 +151,6 @@ def get_gdbserver_type():
gdbserver_type = GDBSERVER_QEMU
elif probe_kgdb():
gdbserver_type = GDBSERVER_KGDB
- if not gdbserver_type is None and hasattr(gdb, 'events'):
+ if gdbserver_type is not None and hasattr(gdb, 'events'):
gdb.events.exited.connect(exit_handler)
return gdbserver_type
--
2.1.0

2015-05-14 06:00:27

by Thiébaud Weksteen

[permalink] [raw]
Subject: [PATCH 3/3] scripts/gdb: Remove useless global instruction

Signed-off-by: Thiébaud Weksteen <[email protected]>
---
scripts/gdb/linux/tasks.py | 2 --
1 file changed, 2 deletions(-)

diff --git a/scripts/gdb/linux/tasks.py b/scripts/gdb/linux/tasks.py
index 89d38e1..0fa33b0 100644
--- a/scripts/gdb/linux/tasks.py
+++ b/scripts/gdb/linux/tasks.py
@@ -20,7 +20,6 @@ task_type = utils.CachedType("struct task_struct")


def task_lists():
- global task_type
task_ptr_type = task_type.get_type().pointer()
init_task = gdb.parse_and_eval("init_task").address
t = g = init_task
@@ -73,7 +72,6 @@ ia64_task_size = None


def get_thread_info(task):
- global thread_info_type
thread_info_ptr_type = thread_info_type.get_type().pointer()
if utils.is_target_arch("ia64"):
global ia64_task_size
--
2.1.0

2015-05-15 11:32:18

by Jan Kiszka

[permalink] [raw]
Subject: Re: [PATCH 2/3] scripts/gdb: Fix PEP8 compliance

On 2015-05-14 07:22, Thiébaud Weksteen wrote:
> Signed-off-by: Thiébaud Weksteen <[email protected]>
> ---
> scripts/gdb/linux/dmesg.py | 1 -
> scripts/gdb/linux/symbols.py | 9 ++++-----
> scripts/gdb/linux/tasks.py | 2 ++
> scripts/gdb/linux/utils.py | 2 +-
> 4 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/scripts/gdb/linux/dmesg.py b/scripts/gdb/linux/dmesg.py
> index 3c947f0..927d0d2 100644
> --- a/scripts/gdb/linux/dmesg.py
> +++ b/scripts/gdb/linux/dmesg.py
> @@ -12,7 +12,6 @@
> #
>
> import gdb
> -import string
>
> from linux import utils
>
> diff --git a/scripts/gdb/linux/symbols.py b/scripts/gdb/linux/symbols.py
> index cd5bea9..627750c 100644
> --- a/scripts/gdb/linux/symbols.py
> +++ b/scripts/gdb/linux/symbols.py
> @@ -14,9 +14,8 @@
> import gdb
> import os
> import re
> -import string
>
> -from linux import modules, utils
> +from linux import modules
>
>
> if hasattr(gdb, 'Breakpoint'):
> @@ -97,7 +96,7 @@ lx-symbols command."""
> return ""
> attrs = sect_attrs['attrs']
> section_name_to_address = {
> - attrs[n]['name'].string() : attrs[n]['address']
> + attrs[n]['name'].string(): attrs[n]['address']
> for n in range(int(sect_attrs['nsections']))}
> args = []
> for section_name in [".data", ".data..read_mostly", ".rodata", ".bss"]:
> @@ -124,7 +123,7 @@ lx-symbols command."""
> addr=module_addr,
> sections=self._section_arguments(module))
> gdb.execute(cmdline, to_string=True)
> - if not module_name in self.loaded_modules:
> + if module_name not in self.loaded_modules:
> self.loaded_modules.append(module_name)
> else:
> gdb.write("no module object found for '{0}'\n".format(module_name))
> @@ -164,7 +163,7 @@ lx-symbols command."""
> self.load_all_symbols()
>
> if hasattr(gdb, 'Breakpoint'):
> - if not self.breakpoint is None:
> + if self.breakpoint is not None:
> self.breakpoint.delete()
> self.breakpoint = None
> self.breakpoint = LoadModuleBreakpoint(
> diff --git a/scripts/gdb/linux/tasks.py b/scripts/gdb/linux/tasks.py
> index e2037d9..89d38e1 100644
> --- a/scripts/gdb/linux/tasks.py
> +++ b/scripts/gdb/linux/tasks.py
> @@ -18,6 +18,7 @@ from linux import utils
>
> task_type = utils.CachedType("struct task_struct")
>
> +
> def task_lists():
> global task_type
> task_ptr_type = task_type.get_type().pointer()
> @@ -38,6 +39,7 @@ def task_lists():
> if t == init_task:
> return
>
> +
> def get_task_by_pid(pid):
> for task in task_lists():
> if int(task['pid']) == pid:
> diff --git a/scripts/gdb/linux/utils.py b/scripts/gdb/linux/utils.py
> index d7ff3a3..0893b32 100644
> --- a/scripts/gdb/linux/utils.py
> +++ b/scripts/gdb/linux/utils.py
> @@ -151,6 +151,6 @@ def get_gdbserver_type():
> gdbserver_type = GDBSERVER_QEMU
> elif probe_kgdb():
> gdbserver_type = GDBSERVER_KGDB
> - if not gdbserver_type is None and hasattr(gdb, 'events'):
> + if gdbserver_type is not None and hasattr(gdb, 'events'):
> gdb.events.exited.connect(exit_handler)
> return gdbserver_type
>

Thanks, queued these first 2.

Which tool did you use for identifying the unused imports?

Jan

--
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux

2015-05-15 11:32:36

by Jan Kiszka

[permalink] [raw]
Subject: Re: [PATCH 3/3] scripts/gdb: Remove useless global instruction

On 2015-05-14 07:22, Thiébaud Weksteen wrote:
> Signed-off-by: Thiébaud Weksteen <[email protected]>
> ---
> scripts/gdb/linux/tasks.py | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/scripts/gdb/linux/tasks.py b/scripts/gdb/linux/tasks.py
> index 89d38e1..0fa33b0 100644
> --- a/scripts/gdb/linux/tasks.py
> +++ b/scripts/gdb/linux/tasks.py
> @@ -20,7 +20,6 @@ task_type = utils.CachedType("struct task_struct")
>
>
> def task_lists():
> - global task_type
> task_ptr_type = task_type.get_type().pointer()
> init_task = gdb.parse_and_eval("init_task").address
> t = g = init_task
> @@ -73,7 +72,6 @@ ia64_task_size = None
>
>
> def get_thread_info(task):
> - global thread_info_type
> thread_info_ptr_type = thread_info_type.get_type().pointer()
> if utils.is_target_arch("ia64"):
> global ia64_task_size

These are from my early Python days...

Did you check all the other global statements as well? I bet there are
more, e.g. the one in the last line above.

Jan

--
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux