Received: by 2002:a05:6a10:6744:0:0:0:0 with SMTP id w4csp2299962pxu; Fri, 9 Oct 2020 13:03:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyW6mvH+q0PItfRnkcaPmPnqa9emZO01Cqzef4r7nyL/dVQCAvPBWJX0tqY0+3cQiE++I4i X-Received: by 2002:a50:f613:: with SMTP id c19mr942656edn.81.1602273818661; Fri, 09 Oct 2020 13:03:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1602273818; cv=none; d=google.com; s=arc-20160816; b=ciKy8QUP0741kVnR/ilGtEvniSUfZ1p2Ryg7msTtrolormvEruQsqjyO2Rtvg8xsPK yi5o5JtT6RopaxwX+2rKMFyPHcynUr+ZMslVkWuXT0lttyDLqqlmc7/jBdHXoyDZVN9a bxXfn2nZvWotw+Q7wm0OPBIVGQClvBP7Z6HZSsIwMCa0GwQrN8sgPQK78zKGYw8f9seT SS2JlnnRUzJf+o6fNlUev7t2hZ7nRGRC1pfSN2tlw8qEso2hAwssVE2DXxDAbanrUC2j BGH0huGMx4ymgh4I7/O13vQ83rd2jAAXJ8UGHR05BZBgMQ8bmvWEfUGKQzOdTw+itupt 4fuw== 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 :ironport-sdr:ironport-sdr; bh=xhVbOy4rxKksciu3/941fMSmqeHo+GcYjZNFp3B/dZ8=; b=NLngsCHXP+lrtg2FItBW8C+Lj4MSjxINhUjIBRTMSir2HyQulWFgY9EOH8DoMHtj/R z4/FlTNARCor34D1gLEA7NjP/LR8aj7jY9zpcBEgD1hDYVf6FxUxIp1YwkKdNsOiHrRb cxqH+pJyO64Ik1zGsAKyDuUJGqXrOL9EBIUp5HAl1NbCEX7F0/gW1ha28W2zzeopXgGG VQmWSkxNpdsCGpKON4cmdBggDhvoM0B8CCB5zDfHMIeg49JoWCdg+1ZK/PELVwSrzwzH xT/u6npIwdIkqybYgeJNsU75We3M/nuMTA9VZGvqagVJpUD0jPAvkDM66ag3cISM1wau UYZQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m17si1422066edv.250.2020.10.09.13.03.14; Fri, 09 Oct 2020 13:03:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388809AbgJIUDA (ORCPT + 99 others); Fri, 9 Oct 2020 16:03:00 -0400 Received: from mga17.intel.com ([192.55.52.151]:34052 "EHLO mga17.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389162AbgJITwv (ORCPT ); Fri, 9 Oct 2020 15:52:51 -0400 IronPort-SDR: YF/EO16ey1BoGX9EfmY18dpvftNC1jwDP6F/OKfn0sJmKNFlwp1n+LvAkxE2IbEVHHXLfsBbxO siqEsOiiqWAw== X-IronPort-AV: E=McAfee;i="6000,8403,9769"; a="145397508" X-IronPort-AV: E=Sophos;i="5.77,355,1596524400"; d="scan'208";a="145397508" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2020 12:52:50 -0700 IronPort-SDR: 0rzHuL4N+KM4WVW+vmL+eEj1y192PC4ThPKt2jdycOAoxaq6uEUOpoOJAuFDFbsfnCMTEcEeiF lMErav9d18Iw== X-IronPort-AV: E=Sophos;i="5.77,355,1596524400"; d="scan'208";a="419537108" Received: from iweiny-desk2.sc.intel.com (HELO localhost) ([10.3.52.147]) by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Oct 2020 12:52:47 -0700 From: ira.weiny@intel.com To: Andrew Morton , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Andy Lutomirski , Peter Zijlstra Cc: Ira Weiny , Nicolas Pitre , x86@kernel.org, Dave Hansen , Dan Williams , Fenghua Yu , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-nvdimm@lists.01.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, kvm@vger.kernel.org, netdev@vger.kernel.org, bpf@vger.kernel.org, kexec@lists.infradead.org, linux-bcache@vger.kernel.org, linux-mtd@lists.infradead.org, devel@driverdev.osuosl.org, linux-efi@vger.kernel.org, linux-mmc@vger.kernel.org, linux-scsi@vger.kernel.org, target-devel@vger.kernel.org, linux-nfs@vger.kernel.org, ceph-devel@vger.kernel.org, linux-ext4@vger.kernel.org, linux-aio@kvack.org, io-uring@vger.kernel.org, linux-erofs@lists.ozlabs.org, linux-um@lists.infradead.org, linux-ntfs-dev@lists.sourceforge.net, reiserfs-devel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, linux-nilfs@vger.kernel.org, cluster-devel@redhat.com, ecryptfs@vger.kernel.org, linux-cifs@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-afs@lists.infradead.org, linux-rdma@vger.kernel.org, amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, drbd-dev@lists.linbit.com, linux-block@vger.kernel.org, xen-devel@lists.xenproject.org, linux-cachefs@redhat.com, samba-technical@lists.samba.org, intel-wired-lan@lists.osuosl.org Subject: [PATCH RFC PKS/PMEM 33/58] fs/cramfs: Utilize new kmap_thread() Date: Fri, 9 Oct 2020 12:50:08 -0700 Message-Id: <20201009195033.3208459-34-ira.weiny@intel.com> X-Mailer: git-send-email 2.28.0.rc0.12.gb6a658bd00c9 In-Reply-To: <20201009195033.3208459-1-ira.weiny@intel.com> References: <20201009195033.3208459-1-ira.weiny@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org From: Ira Weiny The kmap() calls in this FS are localized to a single thread. To avoid the over head of global PKRS updates use the new kmap_thread() call. Cc: Nicolas Pitre Signed-off-by: Ira Weiny --- fs/cramfs/inode.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c index 912308600d39..003c014a42ed 100644 --- a/fs/cramfs/inode.c +++ b/fs/cramfs/inode.c @@ -247,8 +247,8 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset, struct page *page = pages[i]; if (page) { - memcpy(data, kmap(page), PAGE_SIZE); - kunmap(page); + memcpy(data, kmap_thread(page), PAGE_SIZE); + kunmap_thread(page); put_page(page); } else memset(data, 0, PAGE_SIZE); @@ -826,7 +826,7 @@ static int cramfs_readpage(struct file *file, struct page *page) maxblock = (inode->i_size + PAGE_SIZE - 1) >> PAGE_SHIFT; bytes_filled = 0; - pgdata = kmap(page); + pgdata = kmap_thread(page); if (page->index < maxblock) { struct super_block *sb = inode->i_sb; @@ -914,13 +914,13 @@ static int cramfs_readpage(struct file *file, struct page *page) memset(pgdata + bytes_filled, 0, PAGE_SIZE - bytes_filled); flush_dcache_page(page); - kunmap(page); + kunmap_thread(page); SetPageUptodate(page); unlock_page(page); return 0; err: - kunmap(page); + kunmap_thread(page); ClearPageUptodate(page); SetPageError(page); unlock_page(page); -- 2.28.0.rc0.12.gb6a658bd00c9