{
int ret;
u64 nsoff = to_namespace_offset(arena, lba);
- void *mem = kmap_atomic(page);
+ void *mem = kmap_local_page(page);
ret = arena_read_bytes(arena, nsoff, mem + off, len, NVDIMM_IO_ATOMIC);
- kunmap_atomic(mem);
+ kunmap_local(mem);
return ret;
}
{
int ret;
u64 nsoff = to_namespace_offset(arena, lba);
- void *mem = kmap_atomic(page);
+ void *mem = kmap_local_page(page);
ret = arena_write_bytes(arena, nsoff, mem + off, len, NVDIMM_IO_ATOMIC);
- kunmap_atomic(mem);
+ kunmap_local(mem);
return ret;
}
static void zero_fill_data(struct page *page, unsigned int off, u32 len)
{
- void *mem = kmap_atomic(page);
+ void *mem = kmap_local_page(page);
memset(mem + off, 0, len);
- kunmap_atomic(mem);
+ kunmap_local(mem);
}
#ifdef CONFIG_BLK_DEV_INTEGRITY
void *mem;
while (len) {
- mem = kmap_atomic(page);
+ mem = kmap_local_page(page);
chunk = min_t(unsigned int, len, PAGE_SIZE - off);
memcpy_flushcache(pmem_addr, mem + off, chunk);
- kunmap_atomic(mem);
+ kunmap_local(mem);
len -= chunk;
off = 0;
page++;
void *mem;
while (len) {
- mem = kmap_atomic(page);
+ mem = kmap_local_page(page);
chunk = min_t(unsigned int, len, PAGE_SIZE - off);
rem = copy_mc_to_kernel(mem + off, pmem_addr, chunk);
- kunmap_atomic(mem);
+ kunmap_local(mem);
if (rem)
return BLK_STS_IOERR;
len -= chunk;