Re: [PATCH] kvm tools: Support virtio indirect buffers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2011-11-29 at 10:31 +0400, Cyrill Gorcunov wrote:
> On Mon, Nov 28, 2011 at 07:54:27PM +0200, Sasha Levin wrote:
> >  
> > +/*
> > + * Each buffer in the virtqueues is actually a chain of descriptors.  This
> > + * function returns the next descriptor in the chain, or vq->vring.num if we're
> > + * at the end.
> > + */
> > +static unsigned next_desc(struct vring_desc *desc,
> > +			  unsigned int i, unsigned int max)
> > +{
> > +	unsigned int next;
> > +
> > +	/* If this descriptor says it doesn't chain, we're done. */
> > +	if (!(desc[i].flags & VRING_DESC_F_NEXT))
> > +		return max;
> > +
> > +	/* Check they're not leading us off end of descriptors. */
> > +	next = desc[i].next;
> > +	/* Make sure compiler knows to grab that: we don't want it changing! */
> > +	wmb();
> > +
> > +	return next;
> > +}
> > +
> 
> Hi Sasha, where the rmb() then? Or maybe you wanted plain barrier() here?

On the kernel side.
Theres a mb there which happens there during the kick.

-- 

Sasha.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux