summaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/pmem.h
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-04-11 09:30:50 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-04-11 09:30:50 -0700
commit5f47992491ffe2d5b2b4ea3556bc0f3c0ec9bc8b (patch)
treef43f81ab67d152c148bd3dfc1a0683d2c8306014 /arch/x86/include/asm/pmem.h
parent148e45dc87cb76ba89e80da264bc692cc91a5149 (diff)
parentbf16200689118d19de1b8d2a3c314fc21f5dc7bb (diff)
downloadop-kernel-dev-5f47992491ffe2d5b2b4ea3556bc0f3c0ec9bc8b.zip
op-kernel-dev-5f47992491ffe2d5b2b4ea3556bc0f3c0ec9bc8b.tar.gz
Merge 4.6-rc3 into staging-next
This resolves a lot of merge issues with PAGE_CACHE_* changes, and an iio driver merge issue. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch/x86/include/asm/pmem.h')
-rw-r--r--arch/x86/include/asm/pmem.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/x86/include/asm/pmem.h b/arch/x86/include/asm/pmem.h
index bf8b35d..fbc5e92 100644
--- a/arch/x86/include/asm/pmem.h
+++ b/arch/x86/include/asm/pmem.h
@@ -47,6 +47,15 @@ static inline void arch_memcpy_to_pmem(void __pmem *dst, const void *src,
BUG();
}
+static inline int arch_memcpy_from_pmem(void *dst, const void __pmem *src,
+ size_t n)
+{
+ if (static_cpu_has(X86_FEATURE_MCE_RECOVERY))
+ return memcpy_mcsafe(dst, (void __force *) src, n);
+ memcpy(dst, (void __force *) src, n);
+ return 0;
+}
+
/**
* arch_wmb_pmem - synchronize writes to persistent memory
*
OpenPOWER on IntegriCloud