[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH RFC PKS/PMEM 48/58] drivers/md: Utilize new kmap_thread()
 
- To: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>,	Thomas Gleixner <tglx@xxxxxxxxxxxxx>,	Ingo Molnar <mingo@xxxxxxxxxx>,	Borislav Petkov <bp@xxxxxxxxx>,	Andy Lutomirski <luto@xxxxxxxxxx>,	Peter Zijlstra <peterz@xxxxxxxxxxxxx>
 
- From: ira.weiny@xxxxxxxxx
 
- Date: Fri,  9 Oct 2020 12:50:23 -0700
 
- Cc: Ira Weiny <ira.weiny@xxxxxxxxx>,	Coly Li <colyli@xxxxxxx>,	Kent Overstreet <kent.overstreet@xxxxxxxxx>,	x86@xxxxxxxxxx,	Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>,	Dan Williams <dan.j.williams@xxxxxxxxx>,	Fenghua Yu <fenghua.yu@xxxxxxxxx>,	linux-doc@xxxxxxxxxxxxxxx,	linux-kernel@xxxxxxxxxxxxxxx,	linux-nvdimm@xxxxxxxxxxxx,	linux-fsdevel@xxxxxxxxxxxxxxx,	linux-mm@xxxxxxxxx,	linux-kselftest@xxxxxxxxxxxxxxx,	linuxppc-dev@xxxxxxxxxxxxxxxx,	kvm@xxxxxxxxxxxxxxx,	netdev@xxxxxxxxxxxxxxx,	bpf@xxxxxxxxxxxxxxx,	kexec@xxxxxxxxxxxxxxxxxxx,	linux-bcache@xxxxxxxxxxxxxxx,	linux-mtd@xxxxxxxxxxxxxxxxxxx,	devel@xxxxxxxxxxxxxxxxxxxx,	linux-efi@xxxxxxxxxxxxxxx,	linux-mmc@xxxxxxxxxxxxxxx,	linux-scsi@xxxxxxxxxxxxxxx,	target-devel@xxxxxxxxxxxxxxx,	linux-nfs@xxxxxxxxxxxxxxx,	ceph-devel@xxxxxxxxxxxxxxx,	linux-ext4@xxxxxxxxxxxxxxx,	linux-aio@xxxxxxxxx,	io-uring@xxxxxxxxxxxxxxx,	linux-erofs@xxxxxxxxxxxxxxxx,	linux-um@xxxxxxxxxxxxxxxxxxx,	linux-ntfs-dev@xxxxxxxxxxxxxxxxxxxxx,	reiserfs-devel@xxxxxxxxxxxxxxx,	linux-f2fs-devel@xxxxxxxxxxxxxxxxxxxxx,	linux-nilfs@xxxxxxxxxxxxxxx,	cluster-devel@xxxxxxxxxx,	ecryptfs@xxxxxxxxxxxxxxx,	linux-cifs@xxxxxxxxxxxxxxx,	linux-btrfs@xxxxxxxxxxxxxxx,	linux-afs@xxxxxxxxxxxxxxxxxxx,	linux-rdma@xxxxxxxxxxxxxxx,	amd-gfx@xxxxxxxxxxxxxxxxxxxxx,	dri-devel@xxxxxxxxxxxxxxxxxxxxx,	intel-gfx@xxxxxxxxxxxxxxxxxxxxx,	drbd-dev@xxxxxxxxxxxxxxxx,	linux-block@xxxxxxxxxxxxxxx,	xen-devel@xxxxxxxxxxxxxxxxxxxx,	linux-cachefs@xxxxxxxxxx,	samba-technical@xxxxxxxxxxxxxxx,	intel-wired-lan@xxxxxxxxxxxxxxxx
 
- Delivery-date: Fri, 09 Oct 2020 19:53:43 +0000
 
- Ironport-sdr: vf1kLufGuZvoeyE0bw08HZmdaR4ufp6QnkT9XSJmCbKbXRFNpNwX+/QDTcc6JIksyNbs0aO7Y3 Gm6ahr573jeA==
 
- Ironport-sdr: 77OyjRxsHRqLdlwGyIEmSTWShPVNVQULX7LnGcMeG3NkwcCC4UbesWRkZ9bTTqcjV6t6jmiGf4 lDgqS7BTpvKw==
 
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
 
 
 
From: Ira Weiny <ira.weiny@xxxxxxxxx>
These kmap() calls are localized to a single thread.  To avoid the over
head of global PKRS updates use the new kmap_thread() call.
Cc: Coly Li <colyli@xxxxxxx> (maintainer:BCACHE (BLOCK LAYER CACHE))
Cc: Kent Overstreet <kent.overstreet@xxxxxxxxx> (maintainer:BCACHE (BLOCK LAYER 
CACHE))
Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
---
 drivers/md/bcache/request.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/md/bcache/request.c b/drivers/md/bcache/request.c
index c7cadaafa947..a4571f6d09dd 100644
--- a/drivers/md/bcache/request.c
+++ b/drivers/md/bcache/request.c
@@ -44,10 +44,10 @@ static void bio_csum(struct bio *bio, struct bkey *k)
        uint64_t csum = 0;
 
        bio_for_each_segment(bv, bio, iter) {
-               void *d = kmap(bv.bv_page) + bv.bv_offset;
+               void *d = kmap_thread(bv.bv_page) + bv.bv_offset;
 
                csum = bch_crc64_update(csum, d, bv.bv_len);
-               kunmap(bv.bv_page);
+               kunmap_thread(bv.bv_page);
        }
 
        k->ptr[KEY_PTRS(k)] = csum & (~0ULL >> 1);
-- 
2.28.0.rc0.12.gb6a658bd00c9
 
    
     |