From patchwork Tue Feb 4 14:25:06 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kara X-Patchwork-Id: 11364719 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 274AD14B4 for ; Tue, 4 Feb 2020 14:25:31 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 0C0692087E for ; Tue, 4 Feb 2020 14:25:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0C0692087E Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id C0EF16B0007; Tue, 4 Feb 2020 09:25:20 -0500 (EST) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 71F076B0008; Tue, 4 Feb 2020 09:25:20 -0500 (EST) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 547746B0007; Tue, 4 Feb 2020 09:25:20 -0500 (EST) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0243.hostedemail.com [216.40.44.243]) by kanga.kvack.org (Postfix) with ESMTP id 31F896B000C for ; Tue, 4 Feb 2020 09:25:20 -0500 (EST) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id ADEB98248068 for ; Tue, 4 Feb 2020 14:25:19 +0000 (UTC) X-FDA: 76452667158.14.care42_2e77f795a1357 X-Spam-Summary: 1,0,0,,d41d8cd98f00b204,jack@suse.cz,:willy@infradead.org:linux-fsdevel@vger.kernel.org::jack@suse.cz,RULES_HIT:30054:30056:30090,0,RBL:195.135.220.15:@suse.cz:.lbl8.mailshell.net-62.2.6.2 64.100.201.201,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:fp,MSBL:0,DNSBL:neutral,Custom_rules:0:0:0,LFtime:2,LUA_SUMMARY:none X-HE-Tag: care42_2e77f795a1357 X-Filterd-Recvd-Size: 1593 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by imf34.hostedemail.com (Postfix) with ESMTP for ; Tue, 4 Feb 2020 14:25:19 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 94F38AEC5; Tue, 4 Feb 2020 14:25:17 +0000 (UTC) Received: by quack2.suse.cz (Postfix, from userid 1000) id E05CD1E0BAA; Tue, 4 Feb 2020 15:25:15 +0100 (CET) From: Jan Kara To: Matthew Wilcox Cc: , , Jan Kara Subject: [PATCH 0/8] mm: Speedup page cache truncation Date: Tue, 4 Feb 2020 15:25:06 +0100 Message-Id: <20200204142514.15826-1-jack@suse.cz> X-Mailer: git-send-email 2.16.4 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: Hello, conversion of page cache to xarray (commit 69b6c1319b6 "mm: Convert truncate to XArray" in particular) has regressed performance of page cache truncation by about 10% (see my original report here [1]). This patch series aims at improving the truncation to get some of that regression back. The first patch fixes a long standing bug with xas_for_each_marked() that I've uncovered when debugging my patches. The remaining patches then work towards the ability to stop clearing marks in xas_store() which improves truncation performance by about 6%. The patches have passed radix_tree tests in tools/testing and also fstests runs for ext4 & xfs. Honza [1] https://lore.kernel.org/linux-mm/20190226165628.GB24711@quack2.suse.cz