Blob Blame History Raw
From 522239b445a2de988edb81672963708a6aaf9046 Mon Sep 17 00:00:00 2001
From: Dan Williams <dan.j.williams@intel.com>
Date: Tue, 22 May 2018 23:17:03 -0700
Subject: [PATCH] uio, lib: Fix CONFIG_ARCH_HAS_UACCESS_MCSAFE compilation
Git-commit: 522239b445a2de988edb81672963708a6aaf9046
Patch-mainline: v4.18-rc1
References: bsc#1098782

Add a common Kconfig CONFIG_ARCH_HAS_UACCESS_MCSAFE that archs can
optionally select, and fixup the declaration of _copy_to_iter_mcsafe().

Fixes: 8780356ef630 ("x86/asm/memcpy_mcsafe: Define copy_to_iter_mcsafe()")
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Acked-by: Jan Kara <jack@suse.cz>

---
 include/linux/uio.h |    4 ++--
 lib/Kconfig         |    3 +++
 2 files changed, 5 insertions(+), 2 deletions(-)

--- a/include/linux/uio.h
+++ b/include/linux/uio.h
@@ -113,10 +113,10 @@ static inline size_t copy_from_iter_flus
 bool copy_from_iter_full_nocache(void *addr, size_t bytes, struct iov_iter *i);
 
 #ifdef CONFIG_ARCH_HAS_UACCESS_MCSAFE
-size_t copy_to_iter_mcsafe(void *addr, size_t bytes, struct iov_iter *i);
+size_t copy_to_iter_mcsafe(const void *addr, size_t bytes, struct iov_iter *i);
 #else
 static inline
-size_t copy_to_iter_mcsafe(void *addr, size_t bytes, struct iov_iter *i)
+size_t copy_to_iter_mcsafe(const void *addr, size_t bytes, struct iov_iter *i)
 {
 	return copy_to_iter(addr, bytes, i);
 }
--- a/lib/Kconfig
+++ b/lib/Kconfig
@@ -551,6 +551,9 @@ config ARCH_HAS_PMEM_API
 config ARCH_HAS_UACCESS_FLUSHCACHE
 	bool
 
+config ARCH_HAS_UACCESS_MCSAFE
+	bool
+
 config STACKDEPOT
 	bool
 	select STACKTRACE