On Tue, Mar 17, 2020 at 02:14:22PM +0000, HAGIO KAZUHITO(萩尾 一仁) wrote: > Hi Michal, > > Thank you for the patch. > > > -----Original Message----- > > 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 > > > > Then I'd prefer to remove PMD_SECTION_MASK and use PHYS_MASK instead. > Is it OK? Keeping PMD_SECTION_MASK looks a little confusing to me. This code will need to be changed for 52bit support. It remains to be seen if the mask will be still the same after that. I would go with just the minimal fix for now to not complicate things. Thanks Michal _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec