diff --git a/scripts/coredump/coredump_parser/log_parser.py b/scripts/coredump/coredump_parser/log_parser.py index 889cfb033bf..409ee7ff568 100644 --- a/scripts/coredump/coredump_parser/log_parser.py +++ b/scripts/coredump/coredump_parser/log_parser.py @@ -62,6 +62,7 @@ class CoredumpLogFile: self.log_hdr = None self.arch_data = list() self.memory_regions = list() + self.threads_metadata = {"hdr_ver" : None, "data" : None} def open(self): self.fd = open(self.logfile, "rb") diff --git a/scripts/coredump/gdbstubs/gdbstub.py b/scripts/coredump/gdbstubs/gdbstub.py index 2fa37303d1e..07d019ae900 100644 --- a/scripts/coredump/gdbstubs/gdbstub.py +++ b/scripts/coredump/gdbstubs/gdbstub.py @@ -179,6 +179,11 @@ class GdbStub(abc.ABC): # For packets qfThreadInfo/qsThreadInfo, obtain a list of all active thread IDs if pkt[0:12] == b"qfThreadInfo": threads_metadata_data = self.logfile.get_threads_metadata()["data"] + + if threads_metadata_data is None: + self.put_gdb_packet(b"l") + return + size_t_size = self.elffile.get_kernel_thread_info_size_t_size() # First, find and store the thread that _kernel considers current