From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 371A3C4332F for ; Mon, 5 Dec 2022 01:38:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6C8AC8E0002; Sun, 4 Dec 2022 20:38:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 654688E0001; Sun, 4 Dec 2022 20:38:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4F2BC8E0002; Sun, 4 Dec 2022 20:38:51 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 3BCF78E0001 for ; Sun, 4 Dec 2022 20:38:51 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 08922160170 for ; Mon, 5 Dec 2022 01:38:51 +0000 (UTC) X-FDA: 80206543662.11.9FA623B Received: from mail-qt1-f177.google.com (mail-qt1-f177.google.com [209.85.160.177]) by imf26.hostedemail.com (Postfix) with ESMTP id 9FD78140005 for ; Mon, 5 Dec 2022 01:38:50 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=Ho3FcbvI; spf=pass (imf26.hostedemail.com: domain of hughd@google.com designates 209.85.160.177 as permitted sender) smtp.mailfrom=hughd@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1670204330; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=CXxcMzUFM9e1S5I3wG5dQ8xpfGdRGLVQZ2ZblyAR08k=; b=znutKaER6aiE+MDaDl5CqghyQkelc6HMTIqjcwPrX+Q/ibJGAqNGVgkF0jrGn8cj90fSWC E1gwVrnLv4Ym7IZecmsFIKc9Y4y1wYt2DQdHVBCf8arcgKk1fguQHUJVa7StQWy7wuGXuo kUkCuO5hrIcfd06spm9zkeUIrfpDdKo= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=Ho3FcbvI; spf=pass (imf26.hostedemail.com: domain of hughd@google.com designates 209.85.160.177 as permitted sender) smtp.mailfrom=hughd@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1670204330; a=rsa-sha256; cv=none; b=NJoCLoRsMMfnhnDDWoQj9ahS63D4Aw4DSYTd54JN0uj6bVIdSRgt9VAAk0szoeSziQ5mgi 3zczSbaDfl6NzWWvlp6Hcg7NegUL8nhTJ+bCJO3xb64ADIrcdq7Ps7Dq+F6rNENF2wnIt7 ACQA9QZvj1+nMJjN5Ug4TmfxeFxxYzA= Received: by mail-qt1-f177.google.com with SMTP id l15so10520519qtv.4 for ; Sun, 04 Dec 2022 17:38:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=CXxcMzUFM9e1S5I3wG5dQ8xpfGdRGLVQZ2ZblyAR08k=; b=Ho3FcbvIgRC/Ln9u3Gal/122V7y3okAGFtaeZaJ4W/4D4sphNZo9MFGG+xxWUR6Y8D /bbgn6cmLx+R1DCEpD5687i7Vno6npA+c2rqBZfuvtZ58rscaQysFg8bQX8e6LlHcpyZ 1TE4Uo4uTNl2CaKioXBbW6IFB7DrzxgGd6nrqJK7Lmc6bwqbH75KqwZudP3W2CuC/flv zuMiSJDaYnqvBFIyvkJapl9lUf4XilxQVro1CCs8AVODEtzjgGyPiGJuhXjJVwdLyx11 Nm0sXsMtRHK/RL5ZNq9zTrx357yyXyuqU8lbOWML0Krwgx9gUg2O0urR99FPMtexMbHY lMjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CXxcMzUFM9e1S5I3wG5dQ8xpfGdRGLVQZ2ZblyAR08k=; b=ko/cXUYdxts9OOMWWPiiYuhMPGEGxHkdmm8L0PbLJr4EyXVconYmT766qMiMDEtPCv k4/rwOjL7fuEulCPqWcIXFFTWZHleIwaHn75DExYjC2Efjd5imoqAakxLiRbdxsLAXvO LcYh125UbwC3QznxtgcRhqiwVuONNsXiL4m3kw/8g+ZxOIznFbe9/xH43YPqdSmV8hD3 e+HekXfzqe5UlVWP6vEof6+uU12Z6uLA4fshIG0i7cQ4R0xg93vRUT+tuLLfErE44ont ZRmNKfBwNamth9zqF9gUjtuEVSXh9+JJuhlPJpXdldjy+4u9IWMR9FG8LK/aJnYH8xae b1rg== X-Gm-Message-State: ANoB5pkPd/0HMUqpZ7ya0CLPxl6v9+mwXxPYOL3WOGFnEpAIjDywLWXe RYfffVAVl6m9R0MjVN9NlKXMqw== X-Google-Smtp-Source: AA0mqf4Nqj9lnTkSOc1yx5kPVPyVAyOJCmDcDvRKi4mjaNFiZnwxhw7VrWIA4N+cNinpFSzgTelAzQ== X-Received: by 2002:a05:622a:909:b0:3a5:7aaa:cfac with SMTP id bx9-20020a05622a090900b003a57aaacfacmr75038938qtb.278.1670204329819; Sun, 04 Dec 2022 17:38:49 -0800 (PST) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id f10-20020a05620a280a00b006a6ebde4799sm10993796qkp.90.2022.12.04.17.38.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 04 Dec 2022 17:38:49 -0800 (PST) Date: Sun, 4 Dec 2022 17:38:46 -0800 (PST) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: "Kirill A. Shutemov" cc: Andrew Morton , Linus Torvalds , Johannes Weiner , Matthew Wilcox , David Hildenbrand , Vlastimil Babka , Peter Xu , Yang Shi , John Hubbard , Mike Kravetz , Sidhartha Kumar , Muchun Song , Miaohe Lin , Naoya Horiguchi , Mina Almasry , James Houghton , Zach O'Keefe , Yu Zhao , Dan Carpenter , linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2 3/3] mm,thp,rmap: clean up the end of __split_huge_pmd_locked() In-Reply-To: Message-ID: <306c84f5-f383-a95c-489f-151ef5202c@google.com> References: <5f52de70-975-e94f-f141-543765736181@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 9FD78140005 X-Stat-Signature: apzoznrc357cc96a7pmherj18owtgiri X-Rspam-User: X-Spamd-Result: default: False [3.34 / 9.00]; SORBS_IRL_BL(3.00)[209.85.160.177:from]; SUBJECT_HAS_UNDERSCORES(1.00)[]; BAYES_HAM(-0.76)[77.25%]; BAD_REP_POLICIES(0.10)[]; RCVD_NO_TLS_LAST(0.10)[]; MIME_GOOD(-0.10)[text/plain]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[google.com:+]; DMARC_POLICY_ALLOW(0.00)[google.com,reject]; FROM_EQ_ENVFROM(0.00)[]; RCPT_COUNT_TWELVE(0.00)[22]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_THREE(0.00)[3]; ARC_SIGNED(0.00)[hostedemail.com:s=arc-20220608:i=1]; PREVIOUSLY_DELIVERED(0.00)[linux-mm@kvack.org]; ARC_NA(0.00)[]; R_DKIM_ALLOW(0.00)[google.com:s=20210112]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(0.00)[+ip4:209.85.128.0/17]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[] X-Rspamd-Server: rspam08 X-HE-Tag: 1670204330-650601 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Tue, 22 Nov 2022, Hugh Dickins wrote: > It's hard to add a page_add_anon_rmap() into __split_huge_pmd_locked()'s > HPAGE_PMD_NR set_pte_at() loop, without wincing at the "freeze" case's > HPAGE_PMD_NR page_remove_rmap() loop below it. No problem here, but I did later learn something worth sharing. Comparing before and after vmstats for the series, I was worried to find the thp_deferred_split_page count consistently much lower afterwards (10%? 1%?), and thought maybe the COMPOUND_MAPPED patch had messed up the accounting for when to call deferred_split_huge_page(). But no: that's as before. We can debate sometime whether it could do a better job - the vast majority of calls to deferred_split_huge_page() are just repeats - but that's a different story, one I'm not keen to get into at the moment. > - if (freeze) { > - for (i = 0; i < HPAGE_PMD_NR; i++) { > - page_remove_rmap(page + i, vma, false); > - put_page(page + i); > - } > - } The reason for the lower thp_deferred_split_page (at least in the kind of testing I was doing) was a very good thing: those page_remove_rmap() calls from __split_huge_pmd_locked() had very often been adding the page to the deferred split queue, precisely while it was already being split. The list management is such that there was no corruption, and splitting calls from the split queue itself did not reach the point of bumping up the thp_deferred_split_page count; but off-queue splits would add the page before deleting it again, adding lots of noise to the count, and unnecessary contention on the queue lock I presume. Hugh