| From | David Howells <> | Subject | Re: [PATCH v2 00/10] Rework READ_ONCE() to improve codegen | Date | Fri, 31 Jan 2020 10:20:21 +0000 |
| |
Of course, if you're feeling adventurous and willing to at least entertain the mere speculation of switching the kernel source to C++, we could then use inline template functions:
template <typename T> static inline T __READ_ONCE(T &var) { T val = *(const volatile T *)&var; return val; }
template <typename T> static inline T READ_ONCE(T &var) { T val; compiletime_assert_rwonce_type(var); val = __READ_ONCE(var); smp_read_barrier_depends(); return val; }
Of course, that would mean using C++...
David
|