Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp1366103pxb; Fri, 21 Jan 2022 16:39:00 -0800 (PST) X-Google-Smtp-Source: ABdhPJztX7tIIPOtDgf/nGzB62YHpCWVVtid4IggSSskP/RGG6rK5q/zM00Ch6YY/hE9roMKsP9O X-Received: by 2002:a63:68c6:: with SMTP id d189mr4581025pgc.32.1642811940741; Fri, 21 Jan 2022 16:39:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1642811940; cv=none; d=google.com; s=arc-20160816; b=PY+aHRzzMQDUCFfhhTfk+1u93QkXU1NEByGWWbzH0qgk3s9IGVAxWX7TaiNs/+i9gT UVDUu4yu1kxgtNYWi/z5aXld/OJXUaJPaVuYSmirnW6w2P1ayfFD7k+tu57oUAwEdt6w Nemkz1xxYBV1OaFwutLR3CAZEcpWh5rpNQcP1zKTJLjwBrSIDDtdHGKdoCEQosW2NPqx GYRbH/iC6qtgglQrxwniz5MZKEoZUJz134kLHcdl4eow1DMrzFfPuOtgYRoCmnUCrKGt R7Qcv1UJ0GX7B3mbCYRF9viAAyj3GvyQoGeQ7WpaxlPk5hqOnXYCNcm1lMjN7627CzD2 5MBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=g85iyBrbQfGIa6oI3cy0UnhFSe/ynzyb0z74yUFTllk=; b=fkSuI7YUurDHKKH3T/GGSX3UR37jXCCrSjztt1H0aO4Y22VzdKpqw1Y8+WdYGGAnWg 8zP6WmBUOhnousCOw+5WBZb7YUsanKs/lMNx/NUZzemWCwTZqd7b2Qapbso5PkPdJ1ad WFiN+iL216OiySS0tflG7D57/p3XnhX0Vzq2mags8htLrh76t6AA/DWueF+vimWwgXxg SlL5vuKwcIs3SiF279pe3Uo61r1otxglr5u1OQpnuw2seRXY+qvg15c62cNw9Qt3l64u WFEAt75K+QzRihYudHDQ3ABR/2qNQCttruGk7DJLZsZYZk3z00jZ0mvUH5gWzem+OeGz NYuA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b="W4ZdDO/S"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id d7si7982920pfj.221.2022.01.21.16.38.49; Fri, 21 Jan 2022 16:39:00 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b="W4ZdDO/S"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1379235AbiAUH5b (ORCPT + 99 others); Fri, 21 Jan 2022 02:57:31 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40098 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1379277AbiAUH4g (ORCPT ); Fri, 21 Jan 2022 02:56:36 -0500 Received: from mail-pl1-x636.google.com (mail-pl1-x636.google.com [IPv6:2607:f8b0:4864:20::636]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF5B0C061747 for ; Thu, 20 Jan 2022 23:56:35 -0800 (PST) Received: by mail-pl1-x636.google.com with SMTP id f13so7723975plg.0 for ; Thu, 20 Jan 2022 23:56:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=g85iyBrbQfGIa6oI3cy0UnhFSe/ynzyb0z74yUFTllk=; b=W4ZdDO/SKqbmtzYR/fK+Rrxosm61hwItSMOkaFU/2YX7icv3gLM22PlkNp8St7zagA UoHLQimZ796bnmN3njyvgHwul7SoNkSBEdJ9IG/MbFpKSoA2CAaUyjBax2geIygUt1g9 5ndWslIKU0n0WHiQQDf0T3KGUCK5lyBYsNRJj5bZ5/Hk/R8x7Des5mPQavrM+bQFF06Q yKfhRzFP1c0jCTWn8WNdLEm/dtLo6ZXu5MP+c19NS1mQPYcIl83IWtXuJrZLPJyFofHE oKTVP4jynRsJO4b7OajRDhEO6MGTZJHDYgYjZu38f6inX6lzKJNTofnei2qpVdCJ6XfQ /YKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=g85iyBrbQfGIa6oI3cy0UnhFSe/ynzyb0z74yUFTllk=; b=p4ljXFppoDN5QyCDhpvzZqMRQUIGxKhk9Gb9p3izfgcB+7nszJt0CvNo7wKlZiNhgd qUYDUaBg8uOcpRdyUQNA+5V3Zmas8aDqHGv2O8KFxKVo5jMMCYpSCXPUXGkQLrVLFHWy tW8UcKVWxo4OKBd9Is2Ig/mJYVKgunb5PIpWS+f5CDSNFXQVhqG28KRqavdEl3RD+/qO F6nJjRVv+X65J3+4dme0Ogwkcok6L/Alci6e4WuVoao47ym1ALW/zuETwILF90CryCW0 f1yr7i1zWgxFjg42Lz6Z5U5IXdNLkX5CYjc2eMiP6LECRG634PM2httSvAEKgV5LszGX AnYg== X-Gm-Message-State: AOAM5325nKokzuAr0vF04doAvb9Otl9+W4oQnqkIya4xtCXyCa9nCvVB 7qaJb176u1JW0ComWSmNpmB5bA== X-Received: by 2002:a17:902:9894:b0:149:8a72:98ae with SMTP id s20-20020a170902989400b001498a7298aemr2720829plp.132.1642751795469; Thu, 20 Jan 2022 23:56:35 -0800 (PST) Received: from FVFYT0MHHV2J.tiktokcdn.com ([139.177.225.230]) by smtp.gmail.com with ESMTPSA id t15sm10778178pjy.17.2022.01.20.23.56.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 20 Jan 2022 23:56:35 -0800 (PST) From: Muchun Song To: dan.j.williams@intel.com, willy@infradead.org, jack@suse.cz, viro@zeniv.linux.org.uk, akpm@linux-foundation.org, apopple@nvidia.com, shy828301@gmail.com, rcampbell@nvidia.com, hughd@google.com, xiyuyang19@fudan.edu.cn, kirill.shutemov@linux.intel.com, zwisler@kernel.org Cc: linux-fsdevel@vger.kernel.org, nvdimm@lists.linux.dev, linux-kernel@vger.kernel.org, linux-mm@kvack.org, Muchun Song Subject: [PATCH 2/5] dax: fix cache flush on PMD-mapped pages Date: Fri, 21 Jan 2022 15:55:12 +0800 Message-Id: <20220121075515.79311-2-songmuchun@bytedance.com> X-Mailer: git-send-email 2.32.0 (Apple Git-132) In-Reply-To: <20220121075515.79311-1-songmuchun@bytedance.com> References: <20220121075515.79311-1-songmuchun@bytedance.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The flush_cache_page() only remove a PAGE_SIZE sized range from the cache. However, it does not cover the full pages in a THP except a head page. Replace it with flush_cache_range() to fix this issue. Fixes: f729c8c9b24f ("dax: wrprotect pmd_t in dax_mapping_entry_mkclean") Signed-off-by: Muchun Song --- fs/dax.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/dax.c b/fs/dax.c index 88be1c02a151..2955ec65eb65 100644 --- a/fs/dax.c +++ b/fs/dax.c @@ -857,7 +857,7 @@ static void dax_entry_mkclean(struct address_space *mapping, pgoff_t index, if (!pmd_dirty(*pmdp) && !pmd_write(*pmdp)) goto unlock_pmd; - flush_cache_page(vma, address, pfn); + flush_cache_range(vma, address, address + HPAGE_PMD_SIZE); pmd = pmdp_invalidate(vma, address, pmdp); pmd = pmd_wrprotect(pmd); pmd = pmd_mkclean(pmd); -- 2.11.0