group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #33977
[Bug 1857616] Re: Cannot collect dump due to "Can't get a valid pmd_pte" error
This bug was fixed in the package makedumpfile - 1:1.6.6-4ubuntu2
---------------
makedumpfile (1:1.6.6-4ubuntu2) focal; urgency=medium
* x86_64: Fix an error due to makedumpfile being out-of-sync with recent
kernels. To achieve that, add the following patch: "Increase
SECTION_MAP_LAST_BIT to 4". (LP: #1857616)
-- gpiccoli@xxxxxxxxxxxxx (Guilherme G. Piccoli) Fri, 03 Jan 2020
16:57:00 -0300
** Changed in: makedumpfile (Ubuntu Focal)
Status: Confirmed => Fix Released
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1857616
Title:
Cannot collect dump due to "Can't get a valid pmd_pte" error
Status in makedumpfile package in Ubuntu:
Fix Released
Status in makedumpfile source package in Xenial:
Opinion
Status in makedumpfile source package in Bionic:
Confirmed
Status in makedumpfile source package in Disco:
Invalid
Status in makedumpfile source package in Eoan:
Confirmed
Status in makedumpfile source package in Focal:
Fix Released
Bug description:
[Impact]
* Currently makedumpfile has 2 flaws due to: (a) out of
synchronization with kernel code and, (b) kaslr handling. The first is
related to a definition of a memory flag bit, whereas the second is
about kaslr offset calculation - both cause similar failures when
collecting the vmcore in kdump environment:
Excluding unnecessary pages : [ 46.3 %] / __vtop4_x86_64[ 39.341233]: Can't get a valid pmd_pte.
readmem: Can't convert a virtual address(ffffe05cb4000000) to physical address.
readmem: type_addr: 0, addr:ffffe05cb4000000, size:32768
__exclude_unnecessary_pages: Can't read the buffer of struct page.
create_2nd_bitmap: Can't exclude unnecessary pages.
* The report is mainly related to the first issue, which started to
happen after the merge of kernel commit 326e1b8f83a4 ("mm/sparsemem:
introduce a SECTION_IS_EARLY flag"), introduced in kernel 5.3. After
this commit, a memory flag was changed and induced the error in dump
collection. The fix is available in makedumpfile, as commit 7bdb468c2c
("Increase SECTION_MAP_LAST_BIT to 4"). This is hereby SRUed to Bionic
(due to HWE kernel 5.3), Eoan and Focal.
* The other issue is fixed in both Eoan and Focal, on makedumpfile
1.6.6-based version. It is related with the kaslr offset: if the
offset is small enough, we may return 0 wrongly in
get_kaslr_offset_x86_64(), causing the vmcore collection to fail or
even worse, to erase unintended data from the memory dump. This is
fixed by makedumpfile commit 3222d4ad04 ("x86_64: fix
get_kaslr_offset_x86_64() to return kaslr_offset correctly"), which
isn't present in versions before 1.6.6. We hereby SRU this fix for
Bionic.
* Notice this modification is being worked concurrently with other
kdump-tools' changes in LP #1828596.
[Test Case]
1) Deploy an Eoan VM e.g. with uvt-kvm;
2) Set-up console output in the guest;
3) Install the kdump-tools package;
4) Configure and collect a dump (with sysrq to panic the system) - the error aforementioned is observed given Eoan kernel is 5.3-based.
[Regression Potential]
* The modifications hereby proposed are minimal and scope-constrained
to makedumpfile in x86_64; both are merged in makedumpfile upstream,
one of them being already released in E/F. An unlikely regression
would potentially fails vmcore collection in kdump environment.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/makedumpfile/+bug/1857616/+subscriptions