[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Zl_g7qmXAJDy4vKu@casper.infradead.org>
Date: Wed, 5 Jun 2024 04:52:14 +0100
From: Matthew Wilcox <willy@...radead.org>
To: alexs@...nel.org
Cc: Andrew Morton <akpm@...ux-foundation.org>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, izik.eidus@...ellosystems.com,
aarcange@...hat.com, chrisw@...s-sol.org, hughd@...gle.com,
david@...hat.com
Subject: Re: [PATCH 02/10] mm/ksm: skip subpages of compound pages
On Tue, Jun 04, 2024 at 12:24:44PM +0800, alexs@...nel.org wrote:
> From: "Alex Shi (tencent)" <alexs@...nel.org>
>
> When a folio isn't fit for KSM, the subpages are unlikely to be good,
> So let's skip the rest page checking to save some actions.
Why would you say that is true? We have plenty of evidence that
userspace allocators can allocate large folios, then use only the first
few bytes, leaving many tail pages full of zeroes.
> @@ -2660,6 +2662,9 @@ static struct ksm_rmap_item *scan_get_next_rmap_item(struct page **page)
> cond_resched();
> continue;
> }
> +
> + VM_WARN_ON(PageTail(*page));
> + nr = compound_nr(*page);
And this is simply wrong. *page can obviously be a tail page.
Powered by blists - more mailing lists