summaryrefslogtreecommitdiffstats
path: root/include/linux/vringh.h
Commit message (Collapse)AuthorAgeFilesLines
* virtio: add explicit big-endian support to memory accessorsGreg Kurz2015-06-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | The current memory accessors logic is: - little endian if little_endian - native endian (i.e. no byteswap) if !little_endian If we want to fully support cross-endian vhost, we also need to be able to convert to big endian. Instead of changing the little_endian argument to some 3-value enum, this patch changes the logic to: - little endian if little_endian - big endian if !little_endian The native endian case is handled by all users with a trivial helper. This patch doesn't change any functionality, nor it does add overhead. Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
* vringh: introduce vringh_is_little_endian() helperGreg Kurz2015-06-011-6/+11
| | | | | | | | Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
* vringh: update for virtio 1.0 APIsMichael S. Tsirkin2014-12-151-0/+33
| | | | | | | | When switching everything over to virtio 1.0 memory access APIs, I missed converting vringh. Fortunately, it's straight-forward. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
* vringh: 64 bit featuresMichael S. Tsirkin2014-12-151-2/+2
| | | | | | Pass u64 everywhere. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
* virtio: Introduce vringh wrappers in virtio_configSjur Brændeland2013-03-201-0/+29
| | | | | | | | | | | | | | | | | | | Add wrappers for the host vrings to support loose coupling between the virtio device and driver. A new struct vringh_config_ops with the functions find_vrhs() and del_vrhs() is added to the virtio_device struct. This enables virtio drivers to manage virtio host rings without detailed knowledge of how the vrings are created and deleted. The function vringh_notify() is added so vringh clients can notify the other side that buffers are added to the used-ring. Cc: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> (constified vringh_config)
* vringh: host-side implementation of virtio rings.Rusty Russell2013-03-201-0/+196
Getting use of virtio rings correct is tricky, and a recent patch saw an implementation of in-kernel rings (as separate from userspace). This abstracts the business of dealing with the virtio ring layout from the access (userspace or direct); to do this, we use function pointers, which gcc inlines correctly. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Acked-by: Michael S. Tsirkin <mst@redhat.com>
OpenPOWER on IntegriCloud