]> git.ipfire.org Git - thirdparty/linux.git/commit
drivers/nvdimm: Use local kmaps
authorDavidlohr Bueso <dave@stgolabs.net>
Fri, 28 Nov 2025 21:23:03 +0000 (13:23 -0800)
committerIra Weiny <ira.weiny@intel.com>
Mon, 26 Jan 2026 18:04:55 +0000 (12:04 -0600)
commit9c0fc1d37f531fd33abc9b3a009b818ff1bddc22
treeb38e55cc488c9eef7bc4f20ee7c808e7c40e2f47
parent63804fed149a6750ffd28610c5c1c98cce6bd377
drivers/nvdimm: Use local kmaps

Replace the now deprecated kmap_atomic() with kmap_local_page().

Optimizing nvdimm/pmem for highmem makes no sense as this is always
64bit, and the mapped regions for both btt and pmem do not require
disabling preemption and pagefaults. Specifically, kmap does not care
about the caller's atomic context (such as reads holding the btt arena
spinlock) or NVDIMM_IO_ATOMIC semantics to avoid error handling when
accessing the btt arena in general. Same for the memcpy cases. kmap
local temporary mappings will hold valid across any context switches.

Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>> ---
Link: https://patch.msgid.link/20251128212303.2170933-1-dave@stgolabs.net
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
drivers/nvdimm/btt.c
drivers/nvdimm/pmem.c