All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yang Shi <shy828301@gmail.com>
To: Hugh Dickins <hughd@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>,
	"Kirill A. Shutemov" <kirill@shutemov.name>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linux MM <linux-mm@kvack.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [RFC PATCH] mm: khugepaged: don't carry huge page to the next loop for !CONFIG_NUMA
Date: Wed, 22 Sep 2021 20:07:51 -0700	[thread overview]
Message-ID: <CAHbLzkoE5CCqTp1VtbRex+piDEAATM2YD0n5Py1VGD__PDZfFA@mail.gmail.com> (raw)
In-Reply-To: <e5da8162-8360-a380-dfbb-d6b9899d508f@google.com>

On Wed, Sep 22, 2021 at 4:49 PM Hugh Dickins <hughd@google.com> wrote:
>
> On Wed, 1 Sep 2021, Yang Shi wrote:
> > On Wed, Sep 1, 2021 at 3:26 AM Vlastimil Babka <vbabka@suse.cz> wrote:
> > > On 9/1/21 05:46, Yang Shi wrote:
> > > > On Tue, Aug 31, 2021 at 4:38 PM Kirill A. Shutemov <kirill@shutemov.name> wrote:
> > > >> On Mon, Aug 30, 2021 at 11:49:43AM -0700, Yang Shi wrote:
> > > >> > Gently ping...
> > > >> >
> > > >> > Does this patch make sense? BTW, I have a couple of other khugepaged
> > > >> > related patches in my queue. I plan to send them with this patch
> > > >> > together. It would be great to hear some feedback before resending
> > > >> > this one.
> > > >>
> > > >> I don't really care for !NUMA optimization. I believe that most of setups
> > > >> that benefit from THP has NUMA enabled compile time.
> > > >
> > > > Agreed.
> > > >
> > > >>
> > > >> But if you wanna to go this path, make an effort to cleanup other
> > > >> artifacts for the !NUMA optimization: the ifdef has to be gone and all
> > > >> callers of these helpers has to be revisited. There's more opportunities to
> > > >> cleanup. Like it is very odd that khugepaged_prealloc_page() frees the
> > > >> page.
> > > >
> > > > Yes, they are gone in this patch. The only remaining for !NUMA is
> > > > khugepaged_find_target_node() which just returns 0.
> > >
> > > As Kirill pointed out, there's also khugepaged_prealloc_page() where the
> > > only remaining variant does actually no preallocation, just freeing of an
> > > unused page and some kind of "sleep after first alloc fail, break after
> > > second alloc fail" logic.
> > > This could now be moved to khugepaged_do_scan() loop itself and maybe it
> > > will be easier to follow.
> >
> > Aha, I see. Misunderstood him. I'm supposed that you mean move into
> > khugepaged_scan_mm_slot().
>
> It may not be possible, but I'd always imagined that a cleanup of this
> kind would get rid of all those "struct page **hpage" artifacts.

It seems we need to find another way to do "sleep for the first alloc
failure, break loop for the second alloc failure" or just remove the
heuristic.

I will take a closer look once I find some time.

>
> Hugh

  reply	other threads:[~2021-09-23  3:08 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-17 20:21 [RFC PATCH] mm: khugepaged: don't carry huge page to the next loop for !CONFIG_NUMA Yang Shi
2021-08-30 18:49 ` Yang Shi
2021-08-30 18:49   ` Yang Shi
2021-08-31 23:38   ` Kirill A. Shutemov
2021-09-01  3:46     ` Yang Shi
2021-09-01  3:46       ` Yang Shi
2021-09-01 10:26       ` Vlastimil Babka
2021-09-01 17:25         ` Yang Shi
2021-09-01 17:25           ` Yang Shi
2021-09-22 23:49           ` Hugh Dickins
2021-09-22 23:49             ` Hugh Dickins
2021-09-23  3:07             ` Yang Shi [this message]
2021-09-23  3:07               ` Yang Shi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAHbLzkoE5CCqTp1VtbRex+piDEAATM2YD0n5Py1VGD__PDZfFA@mail.gmail.com \
    --to=shy828301@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=hughd@google.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=kirill@shutemov.name \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.