search for: get_vq_notif

Displaying 20 results from an estimated 40 matches for "get_vq_notif".

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_pag...
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...
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))...
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 &...
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;...
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;...
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->...
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->...
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. > + */ > +...
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_SI...
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_SI...
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)) > 75...
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, > &gt...
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.a...
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/ml...