search for: vhost_vdpa_config

Displaying 16 results from an estimated 16 matches for "vhost_vdpa_config".

2020 Feb 05
0
[PATCH] vhost: introduce vDPA based backend
...e > > + * status to 0. > > + */ > > + if (status != 0 && (ops->get_status(vdpa) & ~status) != 0) > > + return -EINVAL; > > + > > + ops->set_status(vdpa, status); > > + > > + return 0; > > +} > > + > > +static int vhost_vdpa_config_validate(struct vhost_vdpa *v, > > + struct vhost_vdpa_config *c) > > +{ > > + long size = 0; > > + > > + switch (v->virtio_id) { > > + case VIRTIO_ID_NET: > > + size = sizeof(struct virtio_net_config); > > + break; > > + } > &g...
2020 Aug 05
0
[PATCH v3 20/38] vhost/vdpa: switch to new helpers
...st at redhat.com> --- drivers/vhost/vdpa.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c index 18869a35d408..3674404688f5 100644 --- a/drivers/vhost/vdpa.c +++ b/drivers/vhost/vdpa.c @@ -118,9 +118,8 @@ static irqreturn_t vhost_vdpa_config_cb(void *private) static void vhost_vdpa_reset(struct vhost_vdpa *v) { struct vdpa_device *vdpa = v->vdpa; - const struct vdpa_config_ops *ops = vdpa->config; - ops->set_status(vdpa, 0); + vdpa_reset(vdpa); } static long vhost_vdpa_get_device_id(struct vhost_vdpa *v, u8 __user *a...
2020 Feb 04
10
[PATCH] vhost: introduce vDPA based backend
...rspace shouldn't remove status bits unless reset the > + * status to 0. > + */ > + if (status != 0 && (ops->get_status(vdpa) & ~status) != 0) > + return -EINVAL; > + > + ops->set_status(vdpa, status); > + > + return 0; > +} > + > +static int vhost_vdpa_config_validate(struct vhost_vdpa *v, > + struct vhost_vdpa_config *c) > +{ > + long size = 0; > + > + switch (v->virtio_id) { > + case VIRTIO_ID_NET: > + size = sizeof(struct virtio_net_config); > + break; > + } > + > + if (c->len == 0) > + return -EI...
2020 Feb 04
10
[PATCH] vhost: introduce vDPA based backend
...rspace shouldn't remove status bits unless reset the > + * status to 0. > + */ > + if (status != 0 && (ops->get_status(vdpa) & ~status) != 0) > + return -EINVAL; > + > + ops->set_status(vdpa, status); > + > + return 0; > +} > + > +static int vhost_vdpa_config_validate(struct vhost_vdpa *v, > + struct vhost_vdpa_config *c) > +{ > + long size = 0; > + > + switch (v->virtio_id) { > + case VIRTIO_ID_NET: > + size = sizeof(struct virtio_net_config); > + break; > + } > + > + if (c->len == 0) > + return -EI...
2020 Aug 05
2
[PATCH 4/4] vhost: vdpa: report iova range
...struct vhost_vdpa_iova_range) > #endif > diff --git a/include/uapi/linux/vhost_types.h b/include/uapi/linux/vhost_types.h > index 669457ce5c48..4025b5a36177 100644 > --- a/include/uapi/linux/vhost_types.h > +++ b/include/uapi/linux/vhost_types.h > @@ -127,6 +127,11 @@ struct vhost_vdpa_config { > __u8 buf[0]; > }; > > +struct vhost_vdpa_iova_range { > + __u64 start; > + __u64 end; > +}; > + Pls document fields. And I think first/last is a better API ... > /* Feature bits */ > /* Log all write descriptors. Can be changed while device is active. */...
2020 Aug 05
2
[PATCH 4/4] vhost: vdpa: report iova range
...struct vhost_vdpa_iova_range) > #endif > diff --git a/include/uapi/linux/vhost_types.h b/include/uapi/linux/vhost_types.h > index 669457ce5c48..4025b5a36177 100644 > --- a/include/uapi/linux/vhost_types.h > +++ b/include/uapi/linux/vhost_types.h > @@ -127,6 +127,11 @@ struct vhost_vdpa_config { > __u8 buf[0]; > }; > > +struct vhost_vdpa_iova_range { > + __u64 start; > + __u64 end; > +}; > + Pls document fields. And I think first/last is a better API ... > /* Feature bits */ > /* Log all write descriptors. Can be changed while device is active. */...
2020 Jun 17
0
[PATCH 4/4] vhost: vdpa: report iova range
...W(VHOST_VIRTIO, 0x78, \ + struct vhost_vdpa_iova_range) #endif diff --git a/include/uapi/linux/vhost_types.h b/include/uapi/linux/vhost_types.h index 669457ce5c48..4025b5a36177 100644 --- a/include/uapi/linux/vhost_types.h +++ b/include/uapi/linux/vhost_types.h @@ -127,6 +127,11 @@ struct vhost_vdpa_config { __u8 buf[0]; }; +struct vhost_vdpa_iova_range { + __u64 start; + __u64 end; +}; + /* Feature bits */ /* Log all write descriptors. Can be changed while device is active. */ #define VHOST_F_LOG_ALL 26 -- 2.20.1
2020 Aug 06
0
[PATCH 4/4] vhost: vdpa: report iova range
...va_range) >> #endif >> diff --git a/include/uapi/linux/vhost_types.h b/include/uapi/linux/vhost_types.h >> index 669457ce5c48..4025b5a36177 100644 >> --- a/include/uapi/linux/vhost_types.h >> +++ b/include/uapi/linux/vhost_types.h >> @@ -127,6 +127,11 @@ struct vhost_vdpa_config { >> __u8 buf[0]; >> }; >> >> +struct vhost_vdpa_iova_range { >> + __u64 start; >> + __u64 end; >> +}; >> + > > Pls document fields. And I think first/last is a better API ... > >> /* Feature bits */ >> /* Log all writ...
2020 Jun 17
12
[PATCH 0/4] vDPA: API for reporting IOVA range
Hi All: This series introduces API for reporing IOVA range. This is a must for userspace to work correclty: - for the process that uses vhost-vDPA directly to properly allocate IOVA - for VM(qemu), when vIOMMU is not enabled, fail early if GPA is out of range - for VM(qemu), when vIOMMU is enabled, determine a valid guest address width Please review. Thanks Jason Wang (4): vdpa:
2020 Jun 17
12
[PATCH 0/4] vDPA: API for reporting IOVA range
Hi All: This series introduces API for reporing IOVA range. This is a must for userspace to work correclty: - for the process that uses vhost-vDPA directly to properly allocate IOVA - for VM(qemu), when vIOMMU is not enabled, fail early if GPA is out of range - for VM(qemu), when vIOMMU is enabled, determine a valid guest address width Please review. Thanks Jason Wang (4): vdpa:
2020 Aug 03
51
[PATCH v2 00/24] virtio: config space endian-ness cleanup
Config space endian-ness is currently a mess: fields are not tagged with the correct endian-ness so it's easy to make mistakes like instanciating config space in native endian-ness. The following patches adding sparse tagging are currently in my tree. Lightly tested. As a follow-up, I plan to add new APIs that handle modern config space in a more efficient way (bypassing the version check).
2020 Aug 21
9
[PATCH V2 0/3] vDPA: API for reporting IOVA range
Hi All: This series introduces API for reporing IOVA range. This is a must for userspace to work correclty: - for the process that uses vhost-vDPA directly to properly allocate IOVA - for VM(qemu), when vIOMMU is not enabled, fail early if GPA is out of range - for VM(qemu), when vIOMMU is enabled, determine a valid guest address width Please review. Changes from V1: - do not mandate
2020 Sep 24
30
[RFC PATCH 00/24] Control VQ support in vDPA
Hi All: This series tries to add the support for control virtqueue in vDPA. Control virtqueue is used by networking device for accepting various commands from the driver. It's a must to support multiqueue and other configurations. When used by vhost-vDPA bus driver for VM, the control virtqueue should be shadowed via userspace VMM (Qemu) instead of being assigned directly to Guest. This is
2020 Sep 24
30
[RFC PATCH 00/24] Control VQ support in vDPA
Hi All: This series tries to add the support for control virtqueue in vDPA. Control virtqueue is used by networking device for accepting various commands from the driver. It's a must to support multiqueue and other configurations. When used by vhost-vDPA bus driver for VM, the control virtqueue should be shadowed via userspace VMM (Qemu) instead of being assigned directly to Guest. This is
2020 May 29
15
[RFC 00/12] Audio DSP VirtIO and vhost drivers
This patch set is a follow up to "Add a vhost RPMsg API" [1], it is marked as an RFC because firstly it depends on the RPMsg API series and secondly it is currently being reviewed on ALSA and SOF mailing lists, but any early comments from virtualisation developers would be highly appreciated too! Thanks Guennadi [1]
2020 May 29
15
[RFC 00/12] Audio DSP VirtIO and vhost drivers
This patch set is a follow up to "Add a vhost RPMsg API" [1], it is marked as an RFC because firstly it depends on the RPMsg API series and secondly it is currently being reviewed on ALSA and SOF mailing lists, but any early comments from virtualisation developers would be highly appreciated too! Thanks Guennadi [1]