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=-6.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=no 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 91A89C433E0 for ; Tue, 4 Aug 2020 16:18:18 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 5D38B2177B for ; Tue, 4 Aug 2020 16:18:18 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="mpVj2g/h" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5D38B2177B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=infradead.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id C2AEC8D0174; Tue, 4 Aug 2020 12:18:17 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BDBA08D0081; Tue, 4 Aug 2020 12:18:17 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B17B38D0174; Tue, 4 Aug 2020 12:18:17 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0135.hostedemail.com [216.40.44.135]) by kanga.kvack.org (Postfix) with ESMTP id 9B4558D0081 for ; Tue, 4 Aug 2020 12:18:17 -0400 (EDT) Received: from smtpin26.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 0095C3627 for ; Tue, 4 Aug 2020 16:18:16 +0000 (UTC) X-FDA: 77113393434.26.sock36_1f13b2826fa7 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin26.hostedemail.com (Postfix) with ESMTP id 933921804A314 for ; Tue, 4 Aug 2020 16:18:10 +0000 (UTC) X-HE-Tag: sock36_1f13b2826fa7 X-Filterd-Recvd-Size: 2828 Received: from casper.infradead.org (casper.infradead.org [90.155.50.34]) by imf08.hostedemail.com (Postfix) with ESMTP for ; Tue, 4 Aug 2020 16:18:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Transfer-Encoding:MIME-Version: Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:In-Reply-To:References; bh=KiHlXYS4cF7DbYKmhvpQJucCJKOOEpy6PdUPrjFSFcU=; b=mpVj2g/h7OLKGHc/P8PtqZSCwY JwFqnxG75JALlCY9NeAC3OGGbHXe4B5iN4snjrWt8zUx4pLU2uIOd/uuy0uU28ddRaQ8svacINH+z zZVaSleGpmpBhP6PxeQb8NUaNIEXi/eU46KSlms0Hw05G1Fe8y2zJAmhCR7oRilU2DNX1fHgTkV3A 6Th/ybwF4TUC6PflViuoiuHdsy4lKnVlaKFL2qbeSEwnTJV+SJqGs2aS4zwMPV7yzpM2HLZ+Opn+J 3QvbOT9w6uccaH6iBfWzgLDUXIP2agGAM2/hw4lXUp2qXUM/vvlRXiwIwNvKf1yBa21ZexQ0csOd2 CH7DzTQg==; Received: from willy by casper.infradead.org with local (Exim 4.92.3 #3 (Red Hat Linux)) id 1k2zdV-0002dy-B6; Tue, 04 Aug 2020 16:17:57 +0000 From: "Matthew Wilcox (Oracle)" To: linux-mm@kvack.org, linux-fsdevel@vger.kernel.org Cc: "Matthew Wilcox (Oracle)" , linux-nvdimm@lists.01.org Subject: [PATCH 0/4] Remove nrexceptional tracking Date: Tue, 4 Aug 2020 17:17:51 +0100 Message-Id: <20200804161755.10100-1-willy@infradead.org> X-Mailer: git-send-email 2.21.3 MIME-Version: 1.0 X-Rspamd-Queue-Id: 933921804A314 X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam03 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: We actually use nrexceptional for very little these days. It's a constan= t source of pain with the THP patches because we don't know how large a shadow entry is, so either we have to ask the xarray how many indices it covers, or store that information in the shadow entry (and reduce the amount of other information in the shadow entry proportionally). While tracking down the most recent case of "evict tells me I've got the accounting wrong again", I wondered if it might not be simpler to just remove it. So here's a patch set to do just that. I think each of these patches is an improvement in isolation, but the combination of all four is larger than the sum of its parts. I'm running xfstests on this patchset right now. If one of the DAX people could try it out, that'd be fantastic. Matthew Wilcox (Oracle) (4): mm: Introduce and use page_cache_empty mm: Stop accounting shadow entries dax: Account DAX entries as nrpages mm: Remove nrexceptional from inode fs/block_dev.c | 2 +- fs/dax.c | 8 ++++---- fs/inode.c | 2 +- include/linux/fs.h | 2 -- include/linux/pagemap.h | 5 +++++ mm/filemap.c | 15 --------------- mm/truncate.c | 19 +++---------------- mm/workingset.c | 1 - 8 files changed, 14 insertions(+), 40 deletions(-) --=20 2.27.0