[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180618163616.52645949a8e4a0f73819fd62@linux-foundation.org>
Date: Mon, 18 Jun 2018 16:36:16 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Pavel Tatashin <pasha.tatashin@...cle.com>
Cc: Michal Hocko <mhocko@...nel.org>,
Naoya Horiguchi <n-horiguchi@...jp.nec.com>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
Oscar Salvador <osalvador@...hadventures.net>,
Oscar Salvador <osalvador@...e.de>,
Steven Sistare <steven.sistare@...cle.com>,
Daniel Jordan <daniel.m.jordan@...cle.com>,
Matthew Wilcox <willy@...radead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"mingo@...nel.org" <mingo@...nel.org>,
"dan.j.williams@...el.com" <dan.j.williams@...el.com>,
Huang Ying <ying.huang@...el.com>
Subject: Re: [PATCH v3] x86/e820: put !E820_TYPE_RAM regions into
memblock.reserved
On Fri, 15 Jun 2018 10:00:00 -0400 Pavel Tatashin <pasha.tatashin@...cle.com> wrote:
> > > Signed-off-by: Naoya Horiguchi <n-horiguchi@...jp.nec.com>
> > > Tested-by: Oscar Salvador <osalvador@...e.de>
> >
> > OK, this makes sense to me. It is definitely much better than the
> > original attempt.
> >
> > Unless I am missing something this should be correct
> > Acked-by: Michal Hocko <mhocko@...e.com>
>
> First of all thank you Naoya for finding and root causing this issue.
>
> So, with this fix we reserve any hole and !E820_TYPE_RAM or
> !E820_TYPE_RESERVED_KERN in e820. I think, this will work because we
> do pfn_valid() check in zero_resv_unavail(), so the ranges that do not have
> backing struct pages will be skipped. But, I am worried on the performance
> implications of when the holes of invalid memory are rather large. We would
> have to loop through it in zero_resv_unavail() one pfn at a time.
>
> Therefore, we might also need to optimize zero_resv_unavail() a little like
> this:
>
> 6407 if (!pfn_valid(ALIGN_DOWN(pfn, pageblock_nr_pages)))
> 6408 continue;
>
> Add before "continue":
> pfn = ALIGN_DOWN(pfn, pageblock_nr_pages) + pageblock_nr_pageas - 1.
> At least, this way, we would skip a section of invalid memory at a time.
>
> For the patch above:
> Reviewed-by: Pavel Tatashin <pasha.tatashin@...cle.com>
>
> But, I think the 2nd patch with the optimization above should go along this
> this fix.
So I expect this patch needs a cc:stable, which I'll add.
The optimiation patch seems less important and I'd like to hold that
off for 4.19-rc1?
Powered by blists - more mailing lists