search for: vp_vdpa_get_vq_ready

Displaying 17 results from an estimated 17 matches for "vp_vdpa_get_vq_ready".

2020 Jun 02
2
[PATCH 5/6] vdpa: introduce virtio pci driver
...vdpa_to_vp(vdpa); > + > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); > +} > + Looks like this needs to check and just skip the write if ready == 0, right? Of course vdpa core then insists on calling vp_vdpa_get_vq_ready which will warn. Maybe just drop the check from core, move it to drivers which need it? ... > +static const struct pci_device_id vp_vdpa_id_table[] = { > + { PCI_DEVICE(PCI_VENDOR_ID_REDHAT_QUMRANET, PCI_ANY_ID) }, > + { 0 } > +}; This looks like it'll create a mess with either...
2020 Jun 02
2
[PATCH 5/6] vdpa: introduce virtio pci driver
...vdpa_to_vp(vdpa); > + > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); > +} > + Looks like this needs to check and just skip the write if ready == 0, right? Of course vdpa core then insists on calling vp_vdpa_get_vq_ready which will warn. Maybe just drop the check from core, move it to drivers which need it? ... > +static const struct pci_device_id vp_vdpa_id_table[] = { > + { PCI_DEVICE(PCI_VENDOR_ID_REDHAT_QUMRANET, PCI_ANY_ID) }, > + { 0 } > +}; This looks like it'll create a mess with either...
2020 Jun 10
2
[PATCH V3] vdpa: introduce virtio pci driver
...gt; + u16 qid, bool ready) >> +{ >> + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); >> + >> + vp_iowrite16(qid, &vp_vdpa->common->queue_select); >> + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); >> +} >> + >> +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) >> +{ >> + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); >> + >> + vp_iowrite16(qid, &vp_vdpa->common->queue_select); >> + >> + return vp_ioread16(&vp_vdpa->common->queue_enable); >> +} >> + >&gt...
2020 Jun 10
2
[PATCH V3] vdpa: introduce virtio pci driver
...gt; + u16 qid, bool ready) >> +{ >> + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); >> + >> + vp_iowrite16(qid, &vp_vdpa->common->queue_select); >> + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); >> +} >> + >> +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) >> +{ >> + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); >> + >> + vp_iowrite16(qid, &vp_vdpa->common->queue_select); >> + >> + return vp_ioread16(&vp_vdpa->common->queue_enable); >> +} >> + >&gt...
2020 Jun 02
0
[PATCH 5/6] vdpa: introduce virtio pci driver
...gt; + vp_iowrite16(qid, &vp_vdpa->common->queue_select); >> + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); >> +} >> + > Looks like this needs to check and just skip the write if > ready == 0, right? Of course vdpa core then insists on calling > vp_vdpa_get_vq_ready which will warn. Maybe just drop the > check from core, move it to drivers which need it? > > ... That may work, but it may cause inconsistent semantic for set_vq_ready if we leave it to the driver. > > >> +static const struct pci_device_id vp_vdpa_id_table[] = { >>...
2020 Jun 10
2
[PATCH V3] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 Jun 10
2
[PATCH V3] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 Jun 10
2
[PATCH RESEND V2] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 Jun 10
2
[PATCH RESEND V2] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 Jun 10
0
[PATCH V3] vdpa: introduce virtio pci driver
...> > > + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); > > > + > > > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > > > + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); > > > +} > > > + > > > +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) > > > +{ > > > + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); > > > + > > > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > > > + > > > + return vp_ioread16(&vp_vdpa->common->queue_ena...
2020 May 29
0
[PATCH 5/6] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 Jun 10
0
[PATCH RESEND V2] vdpa: introduce virtio pci driver
...eady(struct vdpa_device *vdpa, > + u16 qid, bool ready) > +{ > + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); > + > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); > +} > + > +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) > +{ > + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); > + > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > + > + return vp_ioread16(&vp_vdpa->common->queue_enable); > +} > + > +static void vp_vdpa_set_vq_num(st...
2020 Jun 10
0
[PATCH V3] vdpa: introduce virtio pci driver
...eady(struct vdpa_device *vdpa, > + u16 qid, bool ready) > +{ > + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); > + > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); > +} > + > +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) > +{ > + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); > + > + vp_iowrite16(qid, &vp_vdpa->common->queue_select); > + > + return vp_ioread16(&vp_vdpa->common->queue_enable); > +} > + > +static void vp_vdpa_set_vq_num(st...
2020 Jun 10
2
[PATCH V2] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 Jun 10
2
[PATCH V2] vdpa: introduce virtio pci driver
....cb = *cb; +} + +static void vp_vdpa_set_vq_ready(struct vdpa_device *vdpa, + u16 qid, bool ready) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + vp_iowrite16(ready, &vp_vdpa->common->queue_enable); +} + +static bool vp_vdpa_get_vq_ready(struct vdpa_device *vdpa, u16 qid) +{ + struct vp_vdpa *vp_vdpa = vdpa_to_vp(vdpa); + + vp_iowrite16(qid, &vp_vdpa->common->queue_select); + + return vp_ioread16(&vp_vdpa->common->queue_enable); +} + +static void vp_vdpa_set_vq_num(struct vdpa_device *vdpa, u16 qid, + u...
2020 May 29
12
[PATCH 0/6] vDPA: doorbell mapping
Hi all: This series introduce basic functionality of doorbell mapping support for vhost-vDPA. Userspace program may use mmap() to map a the doorbell of a specific virtqueue into its address space. This is help to reudce the syscall or vmexit overhead. A new vdpa_config_ops was introduced to report the location of the doorbell, vhost_vdpa may then choose to map the doorbell when: - The doorbell
2020 May 29
12
[PATCH 0/6] vDPA: doorbell mapping
Hi all: This series introduce basic functionality of doorbell mapping support for vhost-vDPA. Userspace program may use mmap() to map a the doorbell of a specific virtqueue into its address space. This is help to reudce the syscall or vmexit overhead. A new vdpa_config_ops was introduced to report the location of the doorbell, vhost_vdpa may then choose to map the doorbell when: - The doorbell