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 9F3A0EB64DD for ; Tue, 8 Aug 2023 02:44:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2F05D6B0074; Mon, 7 Aug 2023 22:44:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2A07A6B0075; Mon, 7 Aug 2023 22:44:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1B8A98D0001; Mon, 7 Aug 2023 22:44:29 -0400 (EDT) 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 087726B0074 for ; Mon, 7 Aug 2023 22:44:29 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id C36FAA0B8E for ; Tue, 8 Aug 2023 02:44:28 +0000 (UTC) X-FDA: 81099393816.05.66E64DE Received: from mail-qt1-f182.google.com (mail-qt1-f182.google.com [209.85.160.182]) by imf26.hostedemail.com (Postfix) with ESMTP id 09F6714000D for ; Tue, 8 Aug 2023 02:44:26 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b="i/VHYmem"; spf=pass (imf26.hostedemail.com: domain of yuzhao@google.com designates 209.85.160.182 as permitted sender) smtp.mailfrom=yuzhao@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=1691462667; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=HFBtj5+GUeabKO+a6gaW+tViZxqLfdyLTKUL9Gnj9eE=; b=kD8Muzo1JYlc7YsGEUk4/k1v/kkpB5mQIMGz+BeSI2B2L0uWiRZh5iP4xD0VHYamHZS4JM xbI6QkxftxoT8qAtD3nWC81GIi++7dCe63ns8MnyvF1/FS2GopWa+qzfBuJ1JABBfkp3P0 TnOFT4QpdHo7NIWixDQUk7Qgxi8ufF8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1691462667; a=rsa-sha256; cv=none; b=VZAApazLapklfepavZnzqoT98g2Atieq7Gy9vB+6C9MC78ZpQ5JSxPv1qqNHx6Cf+n4Cyp XuyhFHJYwyn+WdXxWV8ozmaZM7TMreYt5HuSUlNdbaH8bS626Me3efQ1SS1iB5wDffgYYA rDTqAkgC+tXN/3Z3fF51fAJsLn06jsI= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b="i/VHYmem"; spf=pass (imf26.hostedemail.com: domain of yuzhao@google.com designates 209.85.160.182 as permitted sender) smtp.mailfrom=yuzhao@google.com; dmarc=pass (policy=reject) header.from=google.com Received: by mail-qt1-f182.google.com with SMTP id d75a77b69052e-407db3e9669so101451cf.1 for ; Mon, 07 Aug 2023 19:44:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1691462666; x=1692067466; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=HFBtj5+GUeabKO+a6gaW+tViZxqLfdyLTKUL9Gnj9eE=; b=i/VHYmemj0AqwkE/aEQ4VIiX9E0CoxW/L48u4vW5wLdg+eBjtfFFhyPqu2GgIu5+dt BiI2K5Lb0TvWaP543JgNpD7yXw9P2/pLuGt2dsO/utVzQ8XT7TYpsrHSkTwtdX2mA5DT irRmR0UxGtLREgcczpJCHDyBpvwUqQ6l+NDAeO486ZTbdMidl781riX1QJ4Jl0xlIIjk RfgUMutLOKsftAogFysgdrsiR9oepxWFN9bA9VmQylHmBypyYAA7UyrmUH52/2rB5uD+ LOz2Af4axT+crlWHpcBMMcF6pmoXQPvyG16cS3nxnJRqBj1X+3Hd4on0V903PwK2KSr3 eLNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691462666; x=1692067466; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HFBtj5+GUeabKO+a6gaW+tViZxqLfdyLTKUL9Gnj9eE=; b=UY1PDSAX9VniVUXmI8mruIi0jdOSvOuB8kao2oXFnlKhpcuxy/SQc9Tpa5pJAzcRtF QrARK8XF4NzvMAJ0r3kgD77cSMjFdCD1Sd5NL65ELIor6RTlK+Vh4PeRebV8I9wSGb1V dUBE3+TiFBX2oO1ujt7FdPgvaFYinp9lDpvlhCSX6ok9DL5+WrRXyYeIetlFbmGh0RF0 VS1S8/DlvWrZ5EA5bCB/kuM7T5kw3p7bTIhc3Bd9I9SGDkWGCa2F3fHeI7G6BzwhOByB PgPX611MRtCBCWmD/WOZwr977tGMKu/9YdjeTzjgLrWIzHQ5DoFQ8O3evlz7LNiulfMV C8WQ== X-Gm-Message-State: AOJu0YySK3+N21RLlei5LXnqp/Kwi/m4ZXQINOmD5Ihmze5WPGNGK3xj Zg/yzDaaqb7OrJFLEIPmMt4/E5W8+82xucwZTwbZGCiV00Dmvmb/rNjb7A== X-Google-Smtp-Source: AGHT+IF64S4/Xi/oJhQgXH6fWplai9RuABjTLRY3oKXCVmngRrRUof9ljJ+2KiXHIjJ2ezLm2h04KupyzFuwiGBk5zg= X-Received: by 2002:a05:622a:1456:b0:3fa:45ab:22a5 with SMTP id v22-20020a05622a145600b003fa45ab22a5mr550337qtx.27.1691462666077; Mon, 07 Aug 2023 19:44:26 -0700 (PDT) MIME-Version: 1.0 References: <20230808020917.2230692-1-fengwei.yin@intel.com> In-Reply-To: <20230808020917.2230692-1-fengwei.yin@intel.com> From: Yu Zhao Date: Mon, 7 Aug 2023 20:43:49 -0600 Message-ID: Subject: Re: [PATCH v2 0/3] don't use mapcount() to check large folio sharing To: Yin Fengwei , akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org, willy@infradead.org, vishal.moola@gmail.com, wangkefeng.wang@huawei.com, minchan@kernel.org, david@redhat.com, ryan.roberts@arm.com, shy828301@gmail.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: 14hy51dift5tzx1atu7yd8ttawza3gr4 X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 09F6714000D X-Rspam-User: X-HE-Tag: 1691462666-299891 X-HE-Meta: U2FsdGVkX1+GVXBlNJ3JSh1B1iotS2AhFAXXabE6vAQfxaJWA+zrnPTcKdz4O0bpOGWSQV8qToTheoqP7JfWUtSr7feeiEQsAq2AL/TdTKxXipK5vPfVhumzH0l7y0ZzTm7oT9WyQQvbnTHx6fGdAJeXUXi+0P+DeMJ5JK/O3g+U/cGbHQZg3OpaOhwCyL3YS7JG7XkwQstoEa41lqWVRqWdxM0ljh2ZGMfl9XAhgwFc4l48JySourSziFcbL8raaVRfiHtSh63a0CvSb+rLqJsxZq4ftr/z1qazLrTCX+we4RRhvpF0+b+fYKLGe/coGsakyGG1MDtmkvOSJnj5Stj2HUU2xHEj4/SPGG3ajXm8+IdOLblpr6b9DaDKLXAtVx2vsNjBnbEvOLQ/pAU9vO/Id/lXhksjsBoUZ/nicolQBf2CEK8y4R/4yTnujiCToqDDbn5DGWCfEVgiylBbFFVbaEB8V6gap8hN+u1/t2tKZhpMJKjt/FmTx+E9WIFCN1qHv4r/DXyb8UvghmhKKcctkgbSt5cQdjVptyc6iXYb115v0Khop7QjsYuM7kvG94TvV3hGnwUDPkvodByiIiifxHipe8Y3eIq47Gk9asPVWVD2SeFUJPEa65BCLtlu+mxpuJuE457+RuQIBZR0/5MdFl75P/rJqXOToCCiIkgtXMuaoRlKHwNmmLZjMuo4MLo2g4yX0i8K0DekWJAg18Unbi0h74uI9sMZjhnLjxtHHdsCscH5NBIkghS4Kjas4sH1y+CCcfBg6l5GH6ItHmiWhMjSdVDjC8B0+4a354KdNyz9uytp8+rak9RrdpXvkjIp3gPsB5J+N0k7ZK5n5CMEhJFIHsOfU0gusEOiBltfm1nnEHhBo9rS0C8pFxNtk8rxjCreWqr8TBR3gE45Z7vhp4jV1WxmphgpG3DqVKIlNSpADJKWFBFgy1BIa+Re7AecBmRfSwkk+skWxzw 7oEAg76h grWP/WhrmreB/0AmjkTf6Lp9BWOXIH2nPrG3I5JsEnRZ3pVYOK7jjcppye6pTM3fc2jYIKwKhqkzn8vErIuQWvOi5zVuk8N8724VqgewPYwFPCWqqO4KVeFtGgkc42BgzjkUvGuECLhgP53lznjfNhab+SOyWEyS2uD/tGXLaR9smg7nVAOdsgzLRZXKHV1Q7PwpP55dyfS2L/tZHxIfk6fStEry6HfaIiiGVVGfSLPGS8oDY6dqJ7azC7L0rHNNmuFIIIMnOxxH6cUEHtAxoLTszJrXR3hxg1fvHwXIVa2EwllMUVxlJ6a3cytT2viCph8hSmrdAWUyAh7Qjl6Pb2LK1G26gM81T5rEc02erjbc88D6fWCruyIHCRKUeXUMScjB1J5D9wYlnMAQVdYa1ikN78O4HxrTRl2fjOa0ooRTdvoM= 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 Mon, Aug 7, 2023 at 8:10=E2=80=AFPM Yin Fengwei = wrote: > > In madvise_cold_or_pageout_pte_range() and madvise_free_pte_range(), > folio_mapcount() is used to check whether the folio is shared. But it's > not correct as folio_mapcount() returns total mapcount of large folio. > > Use folio_estimated_sharers() here as the estimated number is enough. > > > This patchset will fix the cases: > User space application call madvise() with MADV_FREE, MADV_COLD and > MADV_PAGEOUT for specific address range. There are THP mapped to the > range. Without the patchset, the THP is skipped. With the patch, the > THP will be split and handled accordingly. > > David reported the cow self test skip some cases because of > MADV_PAGEOUT skip THP: > https://lore.kernel.org/linux-mm/9e92e42d-488f-47db-ac9d-75b24cd0d037@int= el.com/T/#mbf0f2ec7fbe45da47526de1d7036183981691e81 > and I confirmed this patchset make it work again. > > > Changelog from v1: > - Avoid two Fixes tags make backport harder. Thank Andrew for pointing > this out. > > - Add note section to mention this is a temporary fix which is fine > to reduce user-visble effects. For long term fix, we should wait for > David's solution. Thank Ryan and David for pointing this out. > > - Spell user-visible effects out. Then people could decide whether > these patches are necessary for stable branch. Thank Andrew for > pointing this out. LGTM, thank you.