Re: [PATCH] makedumpfile: cope with not-present mem section

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

 



On 01/20/20 at 09:33am, David Hildenbrand wrote:
> 
> 
> > Am 20.01.2020 um 03:25 schrieb Pingfan Liu <piliu@xxxxxxxxxx>:
> > 
> > After kernel commit ba72b4c8cf60 ("mm/sparsemem: support sub-section
> > hotplug"), when hot-removed, section_mem_map is still encoded with section
> > start pfn, not NULL. This break the current makedumpfile.
> > 
> > Whatever section_mem_map coding info after hot-removed, it is reliable
> > just to work on SECTION_MARKED_PRESENT bit. Fixing makedumpfile by this
> > way.
> > 
> > Signed-off-by: Pingfan Liu <piliu@xxxxxxxxxx>
> > To: kexec@xxxxxxxxxxxxxxxxxxx
> > Cc: Kazuhito Hagio <k-hagio@xxxxxxxxxxxxx>
> > Cc: Baoquan He <bhe@xxxxxxxxxx>
> > Cc: David Hildenbrand <david@xxxxxxxxxx>
> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > Cc: Dan Williams <dan.j.williams@xxxxxxxxx>
> > Cc: Oscar Salvador <osalvador@xxxxxxx>
> > Cc: Michal Hocko <mhocko@xxxxxxxxxx>
> > Cc: Qian Cai <cai@xxxxxx>
> > ---
> > makedumpfile.c | 6 +-----
> > 1 file changed, 1 insertion(+), 5 deletions(-)
> > 
> > diff --git a/makedumpfile.c b/makedumpfile.c
> > index e290fbd..ab40a58 100644
> > --- a/makedumpfile.c
> > +++ b/makedumpfile.c
> > @@ -3406,8 +3406,6 @@ section_mem_map_addr(unsigned long addr, unsigned long *map_mask)
> >    map = ULONG(mem_section + OFFSET(mem_section.section_mem_map));
> >    mask = SECTION_MAP_MASK;
> >    *map_mask = map & ~mask;
> > -    if (map == 0x0)
> > -        *map_mask |= SECTION_MARKED_PRESENT;
> 
> Why was that added in the first place? This looks like dome compat handling to me. Are we sure we can remove it?


The original code assumes that there are only two kinds of mem_section,
one is empty value, the second is a present one. This removing behaves
the same as the old code, I don't see a problem with it.

I tried to understand the code, but I don't know why it need call
validate_mem_section() twice and compare the returned value.


_______________________________________________
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