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 X-Spam-Level: X-Spam-Status: No, score=-11.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8E70FC433FE for ; Wed, 22 Sep 2021 07:06:53 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 246DF60F23 for ; Wed, 22 Sep 2021 07:06:53 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 246DF60F23 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.alibaba.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 400676B0072; Wed, 22 Sep 2021 03:06:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3543E900002; Wed, 22 Sep 2021 03:06:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 226366B006C; Wed, 22 Sep 2021 03:06:52 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0053.hostedemail.com [216.40.44.53]) by kanga.kvack.org (Postfix) with ESMTP id 0EBC76B006C for ; Wed, 22 Sep 2021 03:06:52 -0400 (EDT) Received: from smtpin16.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id B86908249980 for ; Wed, 22 Sep 2021 07:06:51 +0000 (UTC) X-FDA: 78614327022.16.A1C10EB Received: from out30-132.freemail.mail.aliyun.com (out30-132.freemail.mail.aliyun.com [115.124.30.132]) by imf29.hostedemail.com (Postfix) with ESMTP id 39AD99000250 for ; Wed, 22 Sep 2021 07:06:49 +0000 (UTC) X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R141e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=e01e04426;MF=rongwei.wang@linux.alibaba.com;NM=1;PH=DS;RN=8;SR=0;TI=SMTPD_---0UpCSO0C_1632294405; Received: from localhost.localdomain(mailfrom:rongwei.wang@linux.alibaba.com fp:SMTPD_---0UpCSO0C_1632294405) by smtp.aliyun-inc.com(127.0.0.1); Wed, 22 Sep 2021 15:06:46 +0800 From: Rongwei Wang To: linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: akpm@linux-foundation.org, cfijalkovich@google.com, willy@infradead.org, song@kernel.org, william.kucharski@oracle.com, hughd@google.com Subject: [PATCH v2 0/2] mm, thp: fix file-backed THP race in collapse_file and truncate pagecache Date: Wed, 22 Sep 2021 15:06:43 +0800 Message-Id: <20210922070645.47345-1-rongwei.wang@linux.alibaba.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210906121200.57905-1-rongwei.wang@linux.alibaba.com> References: <20210906121200.57905-1-rongwei.wang@linux.alibaba.com> MIME-Version: 1.0 X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 39AD99000250 Authentication-Results: imf29.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=alibaba.com; spf=pass (imf29.hostedemail.com: domain of rongwei.wang@linux.alibaba.com designates 115.124.30.132 as permitted sender) smtp.mailfrom=rongwei.wang@linux.alibaba.com X-Stat-Signature: kxban6adt745r5g5osgw33sfsd87d34x X-HE-Tag: 1632294409-708975 Content-Transfer-Encoding: quoted-printable 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: Hi, We found two bugs related to file-backed THP in our cases, recently. The two bugs rough description as following: 1) in truncate_inode_pages_range, subpage(s) of file-backed THP can be revealed by find_get_entry. 2) 'collapse_file' miss the pages which in writeback but no private. This situation will be triggered in XFS when block size is set to PAGESIZE. These two patchs mainly fix the above mentioned bugs, and have been tested in latest branch. v1 -> v2: - Patch "mm, thp: check page mapping when truncating page cache" move the check of page mapping to behind lock_page - Patch "mm, thp: bail out early in collapse_file for writeback page" check the writeback flag before taking page lock. v1 link: https://patchwork.kernel.org/project/linux-mm/cover/20210906121200.57905-= 1-rongwei.wang@linux.alibaba.com/ Rongwei Wang (2): mm, thp: check page mapping when truncating page cache mm, thp: bail out early in collapse_file for writeback page mm/filemap.c | 7 ++++++- mm/khugepaged.c | 7 ++++++- mm/truncate.c | 17 ++++++++++++++++- 3 files changed, 28 insertions(+), 3 deletions(-) --=20 1.8.3.1