Skip to contentSkip to conversation

virtio_ring: fix delayed enable cb implementation

RFC PATCH New Michael S. Tsirkin 1 participant 1 message May 19, 2011

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

RFC PATCH 1/1 virtio_ring: fix delayed enable cb implementation

Fix some signed/assigned mistakes in virtqueue_enable_cb_delayed by using u16 math all over.

---

I'll put this on my v1 branch as well

@@ -398,7 +397,7 @@ EXPORT_SYMBOL_GPL(virtqueue_enable_cb);
bool virtqueue_enable_cb_delayed(struct virtqueue *_vq) {
struct vring_virtqueue *vq = to_vvq(_vq);
- int bufs;
+ u16 bufs;

START_USE(vq);

@@ -412,7 +411,7 @@ bool virtqueue_enable_cb_delayed(struct virtqueue *_vq)
bufs = (vq->vring.avail->idx - vq->last_used_idx) * 3 / 4; vring_used_event(&vq->vring) = vq->last_used_idx + bufs; virtio_mb();
- if (unlikely(vq->vring.used->idx - vq->last_used_idx > bufs)) {
+ if (unlikely((u16)(vq->vring.used->idx - vq->last_used_idx) > bufs)) {
END_USE(vq);
return false;
}

Signature · 1 line
1.7.5.53.gc233e