search for: vhost_vdpa_ida

Displaying 15 results from an estimated 15 matches for "vhost_vdpa_ida".

2020 Jul 20
1
[PATCH] vhost: vdpa: remove per device feature whitelist
...; VIRTIO_NET_F_HOST_UFO) | - (1ULL << VIRTIO_NET_F_MRG_RXBUF) | - (1ULL << VIRTIO_NET_F_STATUS) | - (1ULL << VIRTIO_NET_F_SPEED_DUPLEX), -}; - /* Currently, only network backend w/o multiqueue is supported. */ #define VHOST_VDPA_VQ_MAX 2 @@ -79,10 +50,6 @@ static DEFINE_IDA(vhost_vdpa_ida); static dev_t vhost_vdpa_major; -static const u64 vhost_vdpa_features[] = { - [VIRTIO_ID_NET] = VHOST_VDPA_NET_FEATURES, -}; - static void handle_vq_kick(struct vhost_work *work) { struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue, @@ -255,7 +222,6 @@ static long vhos...
2020 Apr 26
1
[PATCH 1/2] vdpa: Support config interrupt in vhost_vdpa
...t;linux/virtio_net.h> > +#include <linux/kernel.h> > > #include "vhost.h" > > @@ -70,6 +71,7 @@ struct vhost_vdpa { > int nvqs; > int virtio_id; > int minor; > + struct eventfd_ctx *config_ctx; > }; > > static DEFINE_IDA(vhost_vdpa_ida); > @@ -101,6 +103,17 @@ static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > return IRQ_HANDLED; > } > > +static irqreturn_t vhost_vdpa_config_cb(void *private) > +{ > + struct vhost_vdpa *v = private; > + struct eventfd_ctx *config_ctx = v->config_ctx; &g...
2020 Jun 28
2
[PATCH RFC 4/5] vhost-vdpa: support IOTLB batching hints
...OST_BACKEND_F_IOTLB_BATCH), > }; > > /* Currently, only network backend w/o multiqueue is supported. */ > @@ -77,6 +79,7 @@ struct vhost_vdpa { > int virtio_id; > int minor; > struct eventfd_ctx *config_ctx; > + int in_batch; > }; > > static DEFINE_IDA(vhost_vdpa_ida); > @@ -125,6 +128,7 @@ static void vhost_vdpa_reset(struct vhost_vdpa *v) > const struct vdpa_config_ops *ops = vdpa->config; > > ops->set_status(vdpa, 0); > + v->in_batch = 0; > } > > static long vhost_vdpa_get_device_id(struct vhost_vdpa *v, u8 __user *...
2020 Jun 28
2
[PATCH RFC 4/5] vhost-vdpa: support IOTLB batching hints
...OST_BACKEND_F_IOTLB_BATCH), > }; > > /* Currently, only network backend w/o multiqueue is supported. */ > @@ -77,6 +79,7 @@ struct vhost_vdpa { > int virtio_id; > int minor; > struct eventfd_ctx *config_ctx; > + int in_batch; > }; > > static DEFINE_IDA(vhost_vdpa_ida); > @@ -125,6 +128,7 @@ static void vhost_vdpa_reset(struct vhost_vdpa *v) > const struct vdpa_config_ops *ops = vdpa->config; > > ops->set_status(vdpa, 0); > + v->in_batch = 0; > } > > static long vhost_vdpa_get_device_id(struct vhost_vdpa *v, u8 __user *...
2020 Apr 26
3
[PATCH V2 1/2] vdpa: Support config interrupt in vhost_vdpa
...t;linux/virtio_net.h> > +#include <linux/kernel.h> > > #include "vhost.h" > > @@ -70,6 +71,7 @@ struct vhost_vdpa { > int nvqs; > int virtio_id; > int minor; > + struct eventfd_ctx *config_ctx; > }; > > static DEFINE_IDA(vhost_vdpa_ida); > @@ -101,6 +103,17 @@ static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > return IRQ_HANDLED; > } > > +static irqreturn_t vhost_vdpa_config_cb(void *private) > +{ > + struct vhost_vdpa *v = private; > + struct eventfd_ctx *config_ctx = v->config_ctx; &g...
2020 Apr 26
3
[PATCH V2 1/2] vdpa: Support config interrupt in vhost_vdpa
...t;linux/virtio_net.h> > +#include <linux/kernel.h> > > #include "vhost.h" > > @@ -70,6 +71,7 @@ struct vhost_vdpa { > int nvqs; > int virtio_id; > int minor; > + struct eventfd_ctx *config_ctx; > }; > > static DEFINE_IDA(vhost_vdpa_ida); > @@ -101,6 +103,17 @@ static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > return IRQ_HANDLED; > } > > +static irqreturn_t vhost_vdpa_config_cb(void *private) > +{ > + struct vhost_vdpa *v = private; > + struct eventfd_ctx *config_ctx = v->config_ctx; &g...
2020 Jun 29
1
[PATCH RFC 4/5] vhost-vdpa: support IOTLB batching hints
...network backend w/o multiqueue is supported. */ > > > @@ -77,6 +79,7 @@ struct vhost_vdpa { > > > int virtio_id; > > > int minor; > > > struct eventfd_ctx *config_ctx; > > > + int in_batch; > > > }; > > > static DEFINE_IDA(vhost_vdpa_ida); > > > @@ -125,6 +128,7 @@ static void vhost_vdpa_reset(struct vhost_vdpa *v) > > > const struct vdpa_config_ops *ops = vdpa->config; > > > ops->set_status(vdpa, 0); > > > + v->in_batch = 0; > > > } > > > static long vhost_vd...
2020 Apr 26
0
[PATCH V3 1/2] vdpa: Support config interrupt in vhost_vdpa
...t;linux/virtio_net.h> > +#include <linux/kernel.h> > > #include "vhost.h" > > @@ -70,6 +71,7 @@ struct vhost_vdpa { > int nvqs; > int virtio_id; > int minor; > + struct eventfd_ctx *config_ctx; > }; > > static DEFINE_IDA(vhost_vdpa_ida); > @@ -101,6 +103,17 @@ static irqreturn_t vhost_vdpa_virtqueue_cb(void *private) > return IRQ_HANDLED; > } > > +static irqreturn_t vhost_vdpa_config_cb(void *private) > +{ > + struct vhost_vdpa *v = private; > + struct eventfd_ctx *config_ctx = v->config_ctx; &g...
2020 Jun 18
0
[PATCH RFC 4/5] vhost-vdpa: support IOTLB batching hints
...lt; VHOST_BACKEND_F_IOTLB_MSG_V2) | + (1ULL << VHOST_BACKEND_F_IOTLB_BATCH), }; /* Currently, only network backend w/o multiqueue is supported. */ @@ -77,6 +79,7 @@ struct vhost_vdpa { int virtio_id; int minor; struct eventfd_ctx *config_ctx; + int in_batch; }; static DEFINE_IDA(vhost_vdpa_ida); @@ -125,6 +128,7 @@ static void vhost_vdpa_reset(struct vhost_vdpa *v) const struct vdpa_config_ops *ops = vdpa->config; ops->set_status(vdpa, 0); + v->in_batch = 0; } static long vhost_vdpa_get_device_id(struct vhost_vdpa *v, u8 __user *argp) @@ -540,9 +544,10 @@ static int vh...
2020 Jun 29
0
[PATCH RFC 4/5] vhost-vdpa: support IOTLB batching hints
...>> /* Currently, only network backend w/o multiqueue is supported. */ >> @@ -77,6 +79,7 @@ struct vhost_vdpa { >> int virtio_id; >> int minor; >> struct eventfd_ctx *config_ctx; >> + int in_batch; >> }; >> >> static DEFINE_IDA(vhost_vdpa_ida); >> @@ -125,6 +128,7 @@ static void vhost_vdpa_reset(struct vhost_vdpa *v) >> const struct vdpa_config_ops *ops = vdpa->config; >> >> ops->set_status(vdpa, 0); >> + v->in_batch = 0; >> } >> >> static long vhost_vdpa_get_devic...
2020 Jun 18
6
[PATCH RFC 0/5] support batched IOTLB updating in vhost-vdpa
Hi all: This series tries to support batched IOTLB updating vhost-vdpa. Currently vhost-vdpa accepts userspace mapping via IOTLB API, and it can only forward one mapping to IOMMU or device through IOMMU API or dma_map(). Though set_map() is deisgend to have the capability to pass an rbtree based mapping to vDPA device, it's still be called at least once for each VHOST_IOTLB_UPDATE or
2020 Jul 01
5
[PATCH 0/5]
Hi all: This series tries to support batched IOTLB updating vhost-vdpa. Currently vhost-vdpa accepts userspace mapping via IOTLB API, and it can only forward one mapping to IOMMU or device through IOMMU API or dma_map(). Though set_map() is designed to have the capability to pass an rbtree based mapping to vDPA device, it's still be called at least once for each VHOST_IOTLB_UPDATE or
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