|
@@ -263,8 +263,9 @@ static __always_inline void __write_once_size(volatile void *p, void *res, int s
|
|
|
* In contrast to ACCESS_ONCE these two macros will also work on aggregate
|
|
|
* data types like structs or unions. If the size of the accessed data
|
|
|
* type exceeds the word size of the machine (e.g., 32 bits or 64 bits)
|
|
|
- * READ_ONCE() and WRITE_ONCE() will fall back to memcpy and print a
|
|
|
- * compile-time warning.
|
|
|
+ * READ_ONCE() and WRITE_ONCE() will fall back to memcpy(). There's at
|
|
|
+ * least two memcpy()s: one for the __builtin_memcpy() and then one for
|
|
|
+ * the macro doing the copy of variable - '__u' allocated on the stack.
|
|
|
*
|
|
|
* Their two major use cases are: (1) Mediating communication between
|
|
|
* process-level code and irq/NMI handlers, all running on the same CPU,
|