Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

revert "scripts/gdb/symbols: add specific ko module load command"

Revert 11f956538c07 ("scripts/gdb/symbols: add specific ko module load
command") due to breakage identified by Johannes Berg in [1].

Fixes: 11f956538c07 ("scripts/gdb/symbols: add specific ko module load command")
Reported-by: Johannes Berg <johannes@sipsolutions.net>
Closes: https://lkml.kernel.org/r/c44b748307a074d0c250002cdcfe209b8cce93c9.camel@sipsolutions.net [1]
Cc: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Cc: Chinwen Chang <chinwen.chang@mediatek.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Kieran Bingham <kbingham@kernel.org>
Cc: Kuan-Ying Lee <Kuan-Ying.Lee@mediatek.com>
Cc: Matthias Brugger <matthias.bgg@gmail.com>
Cc: Qun-Wei Lin <qun-wei.lin@mediatek.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

+2 -21
+2 -21
scripts/gdb/linux/symbols.py
··· 111 111 return "{textaddr} {sections}".format( 112 112 textaddr=textaddr, sections="".join(args)) 113 113 114 - def load_module_symbols(self, module, module_file=None): 114 + def load_module_symbols(self, module): 115 115 module_name = module['name'].string() 116 116 module_addr = str(module['mem'][constants.LX_MOD_TEXT]['base']).split()[0] 117 117 118 - if not module_file: 119 - module_file = self._get_module_file(module_name) 118 + module_file = self._get_module_file(module_name) 120 119 if not module_file and not self.module_files_updated: 121 120 self._update_module_files() 122 121 module_file = self._get_module_file(module_name) ··· 137 138 self.loaded_modules.append(module_name) 138 139 else: 139 140 gdb.write("no module object found for '{0}'\n".format(module_name)) 140 - 141 - def load_ko_symbols(self, mod_path): 142 - self.loaded_modules = [] 143 - module_list = modules.module_list() 144 - 145 - for module in module_list: 146 - module_name = module['name'].string() 147 - module_pattern = ".*/{0}\.ko(?:.debug)?$".format( 148 - module_name.replace("_", r"[_\-]")) 149 - if re.match(module_pattern, mod_path) and os.path.exists(mod_path): 150 - self.load_module_symbols(module, mod_path) 151 - return 152 - raise gdb.GdbError("%s is not a valid .ko\n" % mod_path) 153 141 154 142 def load_all_symbols(self): 155 143 gdb.write("loading vmlinux\n") ··· 175 189 # enforce update 176 190 self.module_files = [] 177 191 self.module_files_updated = False 178 - 179 - argv = gdb.string_to_argv(arg) 180 - if len(argv) == 1: 181 - self.load_ko_symbols(argv[0]) 182 - return 183 192 184 193 self.load_all_symbols() 185 194