From fc7860efd9255c3ad20452c8c0d1471a0da5e41c Mon Sep 17 00:00:00 2001 From: Soumen Ghosh <soumeng@codeaurora.org> Date: Fri, 28 Sep 2018 11:25:52 +0530 Subject: [PATCH] lrdp-v2: setting kimage_voffset to null In case of 32bit ramdump kimage_voffset will not be used in ramparser. In upstream kernel 4.14 this variable got added and set to some address. Due to that in case of 32 bit all calculation went worng. So forcefully setting to null if it is 32 bit dump Change-Id: Ia341074ebfd0811543cc3a2e77d2b23ade43d520 --- linux-ramdump-parser-v2/ramdump.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/linux-ramdump-parser-v2/ramdump.py b/linux-ramdump-parser-v2/ramdump.py index 3e4cae9..f4db068 100644 --- a/linux-ramdump-parser-v2/ramdump.py +++ b/linux-ramdump-parser-v2/ramdump.py @@ -627,11 +627,14 @@ class RamDump(): modules_vsize self.kimage_vaddr = self.kimage_vaddr + self.get_kaslr_offset() self.modules_end = self.page_offset - self.kimage_voffset = self.address_of("kimage_voffset") - if self.kimage_voffset is not None: - self.kimage_voffset = self.kimage_vaddr - self.phys_offset - self.modules_end = self.kimage_vaddr - print_out_str("The kimage_voffset extracted is: {:x}".format(self.kimage_voffset)) + if self.arm64: + self.kimage_voffset = self.address_of("kimage_voffset") + if self.kimage_voffset is not None: + self.kimage_voffset = self.kimage_vaddr - self.phys_offset + self.modules_end = self.kimage_vaddr + print_out_str("The kimage_voffset extracted is: {:x}".format(self.kimage_voffset)) + else: + self.kimage_voffset = None # The address of swapper_pg_dir can be used to determine # whether or not we're running with LPAE enabled since an -- GitLab