Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Sep 2012 00:36:47 +0000 (UTC)
From:      Peter Grehan <grehan@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r240427 - head/sys/dev/virtio
Message-ID:  <201209130036.q8D0aleB080371@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: grehan
Date: Thu Sep 13 00:36:46 2012
New Revision: 240427
URL: http://svn.freebsd.org/changeset/base/240427

Log:
  Relax requirement of certain mb()s
  
  Submitted by:	Bryan Venteicher bryanv at daemoninthecloset org

Modified:
  head/sys/dev/virtio/virtqueue.c

Modified: head/sys/dev/virtio/virtqueue.c
==============================================================================
--- head/sys/dev/virtio/virtqueue.c	Wed Sep 12 22:54:11 2012	(r240426)
+++ head/sys/dev/virtio/virtqueue.c	Thu Sep 13 00:36:46 2012	(r240427)
@@ -525,7 +525,7 @@ virtqueue_dequeue(struct virtqueue *vq, 
 	used_idx = vq->vq_used_cons_idx++ & (vq->vq_nentries - 1);
 	uep = &vq->vq_ring.used->ring[used_idx];
 
-	mb();
+	rmb();
 	desc_idx = (uint16_t) uep->id;
 	if (len != NULL)
 		*len = uep->len;
@@ -623,7 +623,7 @@ vq_ring_update_avail(struct virtqueue *v
 	avail_idx = vq->vq_ring.avail->idx & (vq->vq_nentries - 1);
 	vq->vq_ring.avail->ring[avail_idx] = desc_idx;
 
-	mb();
+	wmb();
 	vq->vq_ring.avail->idx++;
 
 	/* Keep pending count until virtqueue_notify(). */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201209130036.q8D0aleB080371>