[PATCH 2/3] x86: add some better documentation for probe_kernel_address()
From: Dave Hansen
Date: Fri Jul 22 2016 - 14:03:22 EST
From: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
probe_kernel_address() has an unfortunate name since it is used
to probe kernel *and* userspace addresses. Add a comment
explaining some of the situation to help the next developer who
might make the silly assumption that it is for probing kernel
addresses.
Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
---
b/include/linux/uaccess.h | 8 ++++++++
1 file changed, 8 insertions(+)
diff -puN include/linux/uaccess.h~pkeys-902-document-probe_kernel_address include/linux/uaccess.h
--- a/include/linux/uaccess.h~pkeys-902-document-probe_kernel_address 2016-07-22 10:52:32.909347999 -0700
+++ b/include/linux/uaccess.h 2016-07-22 10:52:32.912348134 -0700
@@ -106,6 +106,14 @@ extern long strncpy_from_unsafe(char *ds
* @addr: address to read from
* @retval: read into this variable
*
+ * This is safe to call on both userspace and kernel addresses.
+ * Kernel faults (like vmalloc faults) may be handled but do not
+ * sleep.
+ *
+ * If access to @addr is a userspace address and faults, we will
+ * enter the page fault handler, not *handling* the fault in any
+ * way and returning -EFAULT.
+ *
* Returns 0 on success, or -EFAULT.
*/
#define probe_kernel_address(addr, retval) \
_