|
@@ -3,6 +3,7 @@
|
|
|
*
|
|
|
* Since these may be in userspace, we use (inline) accessors.
|
|
|
*/
|
|
|
+#include <linux/compiler.h>
|
|
|
#include <linux/module.h>
|
|
|
#include <linux/vringh.h>
|
|
|
#include <linux/virtio_ring.h>
|
|
@@ -820,13 +821,13 @@ EXPORT_SYMBOL(vringh_need_notify_user);
|
|
|
static inline int getu16_kern(const struct vringh *vrh,
|
|
|
u16 *val, const __virtio16 *p)
|
|
|
{
|
|
|
- *val = vringh16_to_cpu(vrh, ACCESS_ONCE(*p));
|
|
|
+ *val = vringh16_to_cpu(vrh, READ_ONCE(*p));
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
static inline int putu16_kern(const struct vringh *vrh, __virtio16 *p, u16 val)
|
|
|
{
|
|
|
- ACCESS_ONCE(*p) = cpu_to_vringh16(vrh, val);
|
|
|
+ WRITE_ONCE(*p, cpu_to_vringh16(vrh, val));
|
|
|
return 0;
|
|
|
}
|
|
|
|