diff options
author | Stefan Agner <stefan.agner@toradex.com> | 2017-04-07 18:25:24 -0700 |
---|---|---|
committer | Stefan Agner <stefan.agner@toradex.com> | 2017-04-07 18:28:25 -0700 |
commit | 6f0eaf1814e57d187acf57b3fed6561e26a8a21e (patch) | |
tree | af6571e3ac90bbb4b3469d1752c05f34374ff921 /middleware | |
parent | ec57ed4d8fbbe4285b9105c8e5cd4670f7ee4e80 (diff) |
virtio: Redefine vring_avail_eventColibri-iMX7-M4_FreeRTOS_1.2-20170407
Redefine vring_avail_event to avoid accessing ring.id as
a 16bit integer and breaking the C aliasing rules.
This fixes a build warning:
virtio/virtqueue.c: In function ‘vq_ring_must_notify_host’:
virtio/virtqueue.c:658:9: warning: dereferencing type-punned pointer will break
strict-aliasing rules [-Wstrict-aliasing]
event_idx = vring_avail_event(&vq->vq_ring);
^
No functional change.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Signed-off-by: Wendy Liang <jliang@xilinx.com>
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Diffstat (limited to 'middleware')
-rw-r--r-- | middleware/multicore/open-amp/virtio/virtio_ring.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/middleware/multicore/open-amp/virtio/virtio_ring.h b/middleware/multicore/open-amp/virtio/virtio_ring.h index 3f1cf50..07a2d07 100644 --- a/middleware/multicore/open-amp/virtio/virtio_ring.h +++ b/middleware/multicore/open-amp/virtio/virtio_ring.h @@ -121,7 +121,7 @@ struct vring { * versa. They are at the end for backwards compatibility. */ #define vring_used_event(vr) ((vr)->avail->ring[(vr)->num]) -#define vring_avail_event(vr) (*(uint16_t *)&(vr)->used->ring[(vr)->num]) +#define vring_avail_event(vr) ((vr)->used->ring[(vr)->num].id & 0xFFFF) static inline int vring_size(unsigned int num, unsigned long align) |