Displaying 20 results from an estimated 40 matches for "get_vq_notification".
2020 May 29
1
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...+ struct vdpa_device *vdpa = v->vdpa;
> + const struct vdpa_config_ops *ops = vdpa->config;
> + struct vdpa_notification_area notify;
> + struct vm_area_struct *vma = vmf->vma;
> + u16 index = vma->vm_pgoff;
> +
> + notify = ops->get_vq_notification(vdpa, index);
> +
> + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
> + if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
> + notify.addr >> PAGE_SHIFT, PAGE_SIZE,
> + vma->vm_page_prot)...
2020 May 29
0
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...+ struct vhost_vdpa *v = vmf->vma->vm_file->private_data;
+ struct vdpa_device *vdpa = v->vdpa;
+ const struct vdpa_config_ops *ops = vdpa->config;
+ struct vdpa_notification_area notify;
+ struct vm_area_struct *vma = vmf->vma;
+ u16 index = vma->vm_pgoff;
+
+ notify = ops->get_vq_notification(vdpa, index);
+
+ vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
+ if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
+ notify.addr >> PAGE_SHIFT, PAGE_SIZE,
+ vma->vm_page_prot))
+ return VM_FAULT_SIGBUS;
+
+ return VM_FAULT_NOPAGE;
+}
+
+static const s...
2020 May 29
0
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...struct vdpa_device *vdpa = v->vdpa;
>> +??? const struct vdpa_config_ops *ops = vdpa->config;
>> +??? struct vdpa_notification_area notify;
>> +??? struct vm_area_struct *vma = vmf->vma;
>> +??? u16 index = vma->vm_pgoff;
>> +
>> +??? notify = ops->get_vq_notification(vdpa, index);
>> +
>> +??? vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
>> +??? if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
>> +??????????????? notify.addr >> PAGE_SHIFT, PAGE_SIZE,
>> +??????????????? vma->vm_page_prot))
>&g...
2020 May 29
12
[PATCH 0/6] vDPA: doorbell mapping
...driver for
vDPA bus is introduced, and I verify this with page-per-vq=on with a
userspace vhost-vdpa driver in guest.
Please review.
Thanks
Jason Wang (6):
vhost: allow device that does not depend on vhost worker
vhost: use mmgrab() instead of mmget() for non worker device
vdpa: introduce get_vq_notification method
vhost_vdpa: support doorbell mapping via mmap
vdpa: introduce virtio pci driver
vdpa: vp_vdpa: report doorbell location
drivers/vdpa/Kconfig | 6 +
drivers/vdpa/Makefile | 1 +
drivers/vdpa/vp_vdpa/Makefile | 2 +
drivers/vdpa/vp_vdpa/vp_vdpa.c | 604 +++++++...
2020 May 29
12
[PATCH 0/6] vDPA: doorbell mapping
...driver for
vDPA bus is introduced, and I verify this with page-per-vq=on with a
userspace vhost-vdpa driver in guest.
Please review.
Thanks
Jason Wang (6):
vhost: allow device that does not depend on vhost worker
vhost: use mmgrab() instead of mmget() for non worker device
vdpa: introduce get_vq_notification method
vhost_vdpa: support doorbell mapping via mmap
vdpa: introduce virtio pci driver
vdpa: vp_vdpa: report doorbell location
drivers/vdpa/Kconfig | 6 +
drivers/vdpa/Makefile | 1 +
drivers/vdpa/vp_vdpa/Makefile | 2 +
drivers/vdpa/vp_vdpa/vp_vdpa.c | 604 +++++++...
2023 Jan 29
0
[PATCH v3 1/2] vdpa: support specify the pgprot of vq notification area
On Sun, Jan 29, 2023 at 10:51 AM Longpeng(Mike) <longpeng2 at huawei.com> wrote:
>
> From: Longpeng <longpeng2 at huawei.com>
>
> Adds get_vq_notification_pgprot operation to vdpa_config_ops to support
> specify the pgprot of vq norification area. It's an optional operation,
> the vdpa framework will treat the pgprot of vq notification area as
> noncached as default as usual.
Missing sob.
Other than this.
Acked-by: Jason Wang <jaso...
2020 Jun 01
2
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...m_file->private_data;
746 struct vdpa_device *vdpa = v->vdpa;
747 const struct vdpa_config_ops *ops = vdpa->config;
748 struct vdpa_notification_area notify;
749 struct vm_area_struct *vma = vmf->vma;
750 u16 index = vma->vm_pgoff;
751
752 notify = ops->get_vq_notification(vdpa, index);
753
> 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
757 vma->vm_page_prot))
758 return VM_FAULT_SIGBUS;
759...
2020 Jun 01
2
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...m_file->private_data;
746 struct vdpa_device *vdpa = v->vdpa;
747 const struct vdpa_config_ops *ops = vdpa->config;
748 struct vdpa_notification_area notify;
749 struct vm_area_struct *vma = vmf->vma;
750 u16 index = vma->vm_pgoff;
751
752 notify = ops->get_vq_notification(vdpa, index);
753
> 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
757 vma->vm_page_prot))
758 return VM_FAULT_SIGBUS;
759...
2020 Jun 02
2
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...v->vdpa;
>> 747 const struct vdpa_config_ops *ops = vdpa->config;
>> 748 struct vdpa_notification_area notify;
>> 749 struct vm_area_struct *vma = vmf->vma;
>> 750 u16 index = vma->vm_pgoff;
>> 751
>> 752 notify = ops->get_vq_notification(vdpa, index);
>> 753
>> > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
>> 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
>> 756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
>> 757 vma->vm_page...
2020 Jun 02
2
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...v->vdpa;
>> 747 const struct vdpa_config_ops *ops = vdpa->config;
>> 748 struct vdpa_notification_area notify;
>> 749 struct vm_area_struct *vma = vmf->vma;
>> 750 u16 index = vma->vm_pgoff;
>> 751
>> 752 notify = ops->get_vq_notification(vdpa, index);
>> 753
>> > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
>> 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
>> 756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
>> 757 vma->vm_page...
2023 Jan 29
1
[PATCH v3 2/2] vdpasim: support doorbell mapping
...Thanks
> spin_lock(&vdpasim->lock);
> vdpasim->status = 0;
> vdpasim_do_reset(vdpasim);
> @@ -672,11 +708,34 @@ static int vdpasim_dma_unmap(struct vdpa_device *vdpa, unsigned int asid,
> return 0;
> }
>
> +static pgprot_t vdpasim_get_vq_notification_pgprot(struct vdpa_device *vdpa,
> + u16 qid, pgprot_t prot)
> +{
> + /*
> + * We use normal RAM pages to emulate the vq notification area, so
> + * just keep the pgprot as it mmaped.
> + */
> + r...
2020 Jun 03
2
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...pa_config_ops *ops = vdpa->config;
>>>> 748 struct vdpa_notification_area notify;
>>>> 749 struct vm_area_struct *vma = vmf->vma;
>>>> 750 u16 index = vma->vm_pgoff;
>>>> 751
>>>> 752 notify = ops->get_vq_notification(vdpa, index);
>>>> 753
>>>> > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
>>>> 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
>>>> 756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
>...
2020 Jun 03
2
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...pa_config_ops *ops = vdpa->config;
>>>> 748 struct vdpa_notification_area notify;
>>>> 749 struct vm_area_struct *vma = vmf->vma;
>>>> 750 u16 index = vma->vm_pgoff;
>>>> 751
>>>> 752 notify = ops->get_vq_notification(vdpa, index);
>>>> 753
>>>> > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
>>>> 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
>>>> 756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
>...
2020 Jul 28
0
[PATCH V4 3/6] vDPA: add get_vq_irq() in vdpa_config_ops
...u32.
Thanks
> * @get_vq_align: Get the virtqueue align requirement
> * for the device
> * @vdev: vdpa device
> @@ -178,6 +183,7 @@ struct vdpa_config_ops {
> u64 (*get_vq_state)(struct vdpa_device *vdev, u16 idx);
> struct vdpa_notification_area
> (*get_vq_notification)(struct vdpa_device *vdev, u16 idx);
> + u32 (*get_vq_irq)(struct vdpa_device *vdv, u16 idx);
>
> /* Device ops */
> u32 (*get_vq_align)(struct vdpa_device *vdev);
2020 Jun 02
0
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...6 struct vdpa_device *vdpa = v->vdpa;
> 747 const struct vdpa_config_ops *ops = vdpa->config;
> 748 struct vdpa_notification_area notify;
> 749 struct vm_area_struct *vma = vmf->vma;
> 750 u16 index = vma->vm_pgoff;
> 751
> 752 notify = ops->get_vq_notification(vdpa, index);
> 753
> > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
> 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
> 756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
> 757 vma->vm_page_prot))
> 758 ret...
2020 Jul 21
0
[PATCH V2 vhost next 06/10] vdpa: Modify get_vq_state() to return error code
...const struct vdpa_vq_state *state);
> - void (*get_vq_state)(struct vdpa_device *vdev, u16 idx,
> - struct vdpa_vq_state *state);
> + int (*get_vq_state)(struct vdpa_device *vdev, u16 idx,
> + struct vdpa_vq_state *state);
> struct vdpa_notification_area
> (*get_vq_notification)(struct vdpa_device *vdev, u16 idx);
>
2020 Jun 02
0
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...const struct vdpa_config_ops *ops = vdpa->config;
> > > 748 struct vdpa_notification_area notify;
> > > 749 struct vm_area_struct *vma = vmf->vma;
> > > 750 u16 index = vma->vm_pgoff;
> > > 751
> > > 752 notify = ops->get_vq_notification(vdpa, index);
> > > 753
> > > > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
> > > 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
> > > 756 notify.addr >> PAGE_SHIFT, PAGE_SIZE,
> > >...
2020 Aug 05
0
[PATCH V4 linux-next 08/12] vdpa: Modify get_vq_state() to return error code
...const struct vdpa_vq_state *state);
> - void (*get_vq_state)(struct vdpa_device *vdev, u16 idx,
> - struct vdpa_vq_state *state);
> + int (*get_vq_state)(struct vdpa_device *vdev, u16 idx,
> + struct vdpa_vq_state *state);
> struct vdpa_notification_area
> (*get_vq_notification)(struct vdpa_device *vdev, u16 idx);
> int (*get_vq_irq)(struct vdpa_device *vdv, u16 idx);
2020 Jun 03
0
[PATCH 4/6] vhost_vdpa: support doorbell mapping via mmap
...t; > > > > 748 struct vdpa_notification_area notify;
> > > > > 749 struct vm_area_struct *vma = vmf->vma;
> > > > > 750 u16 index = vma->vm_pgoff;
> > > > > 751
> > > > > 752 notify = ops->get_vq_notification(vdpa, index);
> > > > > 753
> > > > > > 754 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
> > > > > 755 if (remap_pfn_range(vma, vmf->address & PAGE_MASK,
> > > > > 756 notify.addr >...
2020 Aug 04
0
[PATCH V4 linux-next 00/12] VDPA support for Mellanox ConnectX devices
...oot of the kernel
>
> V3-V4
> Rebase Jason's patches on linux-next branch
> Fix krobot error on mips arch
> Make use of the free callback to destroy resoruces on unload
> Use VIRTIO_F_ACCESS_PLATFORM instead of legacy VIRTIO_F_IOMMU_PLATFORM
> Add empty implementations for get_vq_notification() and get_vq_irq()
>
>
> Eli Cohen (6):
> net/vdpa: Use struct for set/get vq state
> vdpa: Modify get_vq_state() to return error code
> vdpa/mlx5: Add hardware descriptive header file
> vdpa/mlx5: Add support library for mlx5 VDPA implementation
> vdpa/mlx5: Add...