[PATCH makedumpfile] Align PMD_SECTION_MASK with PHYS_MASK

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Reportedly on some arm64 systems makedumpfile loops forever exhausting
all memory when filtering kernel core. It turns out the reason is it
cannot resolve some addresses because the PMD mask is wrong. When
physical address mask allows up to 48bits pmd mask should allow the
same.
I suppose you would need a system that needs physical addresses over 1TB
to be able to reproduce this. This may be either because you have a lot
of memory or because the firmware mapped some memory above 1TB for some
reason.

Signed-off-by: Michal Suchanek <msuchanek@xxxxxxx>
---
 arch/arm64.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64.c b/arch/arm64.c
index 43164ccc32d4..54d60b440850 100644
--- a/arch/arm64.c
+++ b/arch/arm64.c
@@ -81,7 +81,7 @@ static unsigned long kimage_voffset;
  * Remove the highest order bits that are not a part of the
  * physical address in a section
  */
-#define PMD_SECTION_MASK	((1UL << 40) - 1)
+#define PMD_SECTION_MASK	((1UL << PHYS_MASK_SHIFT) - 1)
 
 #define PMD_TYPE_MASK		3
 #define PMD_TYPE_SECT		1
-- 
2.23.0


_______________________________________________
kexec mailing list
kexec@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/kexec



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux