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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 63720C433F5 for ; Wed, 13 Oct 2021 21:44:40 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id E54C3611C2 for ; Wed, 13 Oct 2021 21:44:39 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org E54C3611C2 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 6D057900003; Wed, 13 Oct 2021 17:44:39 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 65820900002; Wed, 13 Oct 2021 17:44:39 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4AAE3900003; Wed, 13 Oct 2021 17:44:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0246.hostedemail.com [216.40.44.246]) by kanga.kvack.org (Postfix) with ESMTP id 33C8A900002 for ; Wed, 13 Oct 2021 17:44:39 -0400 (EDT) Received: from smtpin37.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id DAFE1180275C4 for ; Wed, 13 Oct 2021 21:44:38 +0000 (UTC) X-FDA: 78692743836.37.7BAA0DD Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) by imf20.hostedemail.com (Postfix) with ESMTP id 82737D0000AA for ; Wed, 13 Oct 2021 21:44:37 +0000 (UTC) Received: by mail-ed1-f52.google.com with SMTP id d9so15805496edh.5 for ; Wed, 13 Oct 2021 14:44:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=tk8GKkcOqsh8NbVVxDMP6EmYX30y4RorCwUqRpcQJZw=; b=jGNy5AfFzluinxS/yvYE78vK+Bygmcpe8TdHgSVyd0+EuwnNnGz0RYDW5HoYBP6Qo7 pQblATlsYSOMLbFHsr0WqaR9x3CuYlmRd1gR9nQeUOW0aRhp5Nv35Jn7yOqA6j0ISNrB z4XeghKVlwIqnBIztpqOgz1aEfYZHoGELYL5+FQyV1Fd5KYK1XjnqOQBgemmb5SlejEZ 0snlhhbgJGGXWaVn3eN1wDvmHyeEGiyqodIZpcVT3EXVkdm5OczwxpfJrRXV1NW7t/aN pQ0gl1BU+AKLFz4e9NU+Nvf6kx7vGgHkoj9WSXgh68cvmfbL/tP0164WHltLyAd5Jqdn xvBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=tk8GKkcOqsh8NbVVxDMP6EmYX30y4RorCwUqRpcQJZw=; b=4K/Vm6NnBljLVj/1h52goV1/hzMJSXg4/KvNkjodRUe6vaYruOctJmt4EyY7apYCfL e8jmMHEF52xZvriGILMRuZcj/FUiDPjuW6URR/sthHQCAJ4EfDIq0Xq7jHHloRmnS4U3 RqCRB7Sg9LTE0Y80ibFxtza6eJmN/UwgL82Jloyet7mq6exEE/YFR+sryx2rFk9gR/NV c3D2Etp5vV7gyf8R5vulGMfgXT/Zi0k5NbidLGBEQ2KUmqFd++qqMFW55OcYf5b7fL+4 eZJb9SBZUGLTPpVi8Dm5BQNaNzdgLYFQ0U49I2ly0mhmP8NFCaCukzZUOaLxiL0agG3k 6sfQ== X-Gm-Message-State: AOAM532LS7G0D6Qt+Rv5xa0xoMdcs6Ff3WJibvX6JHOeTHXaCU4rA7ZH 9OGzoaO/l6qWyYoTgHptKeQXGLKXtSQijRHWctE= X-Google-Smtp-Source: ABdhPJxCcYL2+MSwx6a/45e05xAfocinRDO0byZIknVz5MhYeq+wQFc+mm+OF4OPgY7Pz5GtyzRrsV03Ub7MvvfuR+4= X-Received: by 2002:a17:906:3f83:: with SMTP id b3mr2091456ejj.233.1634161477394; Wed, 13 Oct 2021 14:44:37 -0700 (PDT) MIME-Version: 1.0 References: <20211012120237.2600-1-m.szyprowski@samsung.com> In-Reply-To: <20211012120237.2600-1-m.szyprowski@samsung.com> From: Yang Shi Date: Wed, 13 Oct 2021 14:44:25 -0700 Message-ID: Subject: Re: [PATCH] mm/thp: decrease nr_thps in file's mapping on THP split To: Marek Szyprowski Cc: Linux MM , Linux Kernel Mailing List , Andrew Morton , =?UTF-8?B?6rmA7ISx7ZuI?= , Song Liu , Rik van Riel , "Kirill A . Shutemov" , Johannes Weiner , Hillf Danton , Hugh Dickins , William Kucharski , Oleg Nesterov , Yang Shi Content-Type: text/plain; charset="UTF-8" X-Stat-Signature: qizc9qw1ou1ggwk3ch8sj8c61qdmrs5b Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=jGNy5AfF; spf=pass (imf20.hostedemail.com: domain of shy828301@gmail.com designates 209.85.208.52 as permitted sender) smtp.mailfrom=shy828301@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 82737D0000AA X-HE-Tag: 1634161477-708959 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, Oct 12, 2021 at 5:03 AM Marek Szyprowski wrote: > > Decrease nr_thps counter in file's mapping to ensure that the page cache > won't be dropped excessively on file write access if page has been > already splitted. > > Signed-off-by: Marek Szyprowski > Fixes: 09d91cda0e82 ("mm,thp: avoid writes to file with THP in pagecache") > Fixes: 06d3eff62d9d ("mm/thp: fix node page state in split_huge_page_to_list()") Reviewed-by: Yang Shi > --- > I've analyzed the code a few times but either I missed something or the > nr_thps counter is not decremented during the THP split on non-shmem file > pages. > --- > mm/huge_memory.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/mm/huge_memory.c b/mm/huge_memory.c > index ec2bb93f7431..a6c2ba59abcd 100644 > --- a/mm/huge_memory.c > +++ b/mm/huge_memory.c > @@ -2709,10 +2709,12 @@ int split_huge_page_to_list(struct page *page, struct list_head *list) > } > spin_unlock(&ds_queue->split_queue_lock); > if (mapping) { > - if (PageSwapBacked(head)) > + if (PageSwapBacked(head)) { > __dec_node_page_state(head, NR_SHMEM_THPS); > - else > + } else { > __dec_node_page_state(head, NR_FILE_THPS); > + filemap_nr_thps_dec(mapping); > + } > } > > __split_huge_page(page, list, end, flags); > -- > 2.17.1 > >