search for: ttm_bo_vm_open

Displaying 18 results from an estimated 18 matches for "ttm_bo_vm_open".

2018 Apr 15
0
[RFC] Rewrite page fault interception in TTM drivers
...int r; bo = (struct ttm_buffer_object *)vmf->vma->vm_private_data; if (bo == NULL) return VM_FAULT_NOPAGE; - r = ttm_vm_ops->fault(vmf); - return r; + return ttm_bo_vm_fault(vmf); } +static const struct vm_operations_struct qxl_ttm_vm_ops = { + .fault = qxl_ttm_fault, + .open = ttm_bo_vm_open, + .close = ttm_bo_vm_close, + .access = ttm_bo_vm_access, +}; + int qxl_mmap(struct file *filp, struct vm_area_struct *vma) { struct drm_file *file_priv; @@ -139,11 +141,6 @@ int qxl_mmap(struct file *filp, struct vm_area_struct *vma) r = ttm_bo_mmap(filp, vma, &qdev->mman.bdev); if...
2014 Jun 11
6
[Bug 79912] New: Nouveau unuseable with 3 monitors and a geforce GTX 670
...Product: xorg If i connect a third monitor on HDMI , on that one i get a purple vertical line on the left , DVI-D one does not work, and framerate of gnome-shell is very very low On the kernel logs at boot i get [ 25.163082] WARNING: CPU: 1 PID: 1188 at drivers/gpu/drm/ttm/ttm_bo_vm.c:269 ttm_bo_vm_open+0x52/0x80 [ttm]() [ 25.163084] Modules linked in: ccm xt_CHECKSUM iptable_mangle ipt_MASQUERADE iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack tun bnep bridge stp llc snd_hda_codec_hdmi x86_pkg_temp_thermal coretemp snd_hda_codec_realtek snd_hda_codec_ge...
2020 Jan 24
1
[PATCH 1/2] drm/nouveau: move io_reserve_lru handling into the driver v2
...FAULT_FLAG_RETRY_NOWAIT)) > + return ret; > + > + nouveau_bo_add_io_reserve_lru(bo); > + > + dma_resv_unlock(bo->base.resv); > + > + return ret; > +} > + > +static struct vm_operations_struct nouveau_ttm_vm_ops = { > + .fault = nouveau_ttm_fault, > + .open = ttm_bo_vm_open, > + .close = ttm_bo_vm_close, > + .access = ttm_bo_vm_access > +}; > + > int > nouveau_ttm_mmap(struct file *filp, struct vm_area_struct *vma) > { > struct drm_file *file_priv = filp->private_data; > struct nouveau_drm *drm = nouveau_drm(file_priv->mino...
2020 Jan 28
1
[PATCH 1/2] drm/nouveau: move io_reserve_lru handling into the driver v2
...return ret; > + > + nouveau_bo_add_io_reserve_lru(bo); > + > + dma_resv_unlock(bo->base.resv); > + > + return ret; > +} > + > +static struct vm_operations_struct nouveau_ttm_vm_ops = { > + .fault = nouveau_ttm_fault, > + .open = ttm_bo_vm_open, > + .close = ttm_bo_vm_close, > + .access = ttm_bo_vm_access > +}; > + > int > nouveau_ttm_mmap(struct file *filp, struct vm_area_struct *vma) > { > struct drm_file *file_priv = filp->private_data; > struct nouveau_drm *drm = nouveau_drm...
2020 Jan 24
4
TTM/Nouveau cleanups
Hi guys, I've already send this out in September last year, but only got a response from Daniel. Could you guys please test this and tell me what you think about it? Basically I'm trying to remove all driver specific features from TTM which don't need to be inside the framework. Thanks, Christian.
2020 Jan 24
0
[PATCH 1/2] drm/nouveau: move io_reserve_lru handling into the driver v2
...+ if (ret == VM_FAULT_RETRY && !(vmf->flags & FAULT_FLAG_RETRY_NOWAIT)) + return ret; + + nouveau_bo_add_io_reserve_lru(bo); + + dma_resv_unlock(bo->base.resv); + + return ret; +} + +static struct vm_operations_struct nouveau_ttm_vm_ops = { + .fault = nouveau_ttm_fault, + .open = ttm_bo_vm_open, + .close = ttm_bo_vm_close, + .access = ttm_bo_vm_access +}; + int nouveau_ttm_mmap(struct file *filp, struct vm_area_struct *vma) { struct drm_file *file_priv = filp->private_data; struct nouveau_drm *drm = nouveau_drm(file_priv->minor->dev); + int ret; - return ttm_bo_mmap(filp...
2020 Aug 21
0
[PATCH 2/3] drm/nouveau: move io_reserve_lru handling into the driver v4
...+ if (ret == VM_FAULT_RETRY && !(vmf->flags & FAULT_FLAG_RETRY_NOWAIT)) + return ret; + + nouveau_bo_add_io_reserve_lru(bo); + + dma_resv_unlock(bo->base.resv); + + return ret; +} + +static struct vm_operations_struct nouveau_ttm_vm_ops = { + .fault = nouveau_ttm_fault, + .open = ttm_bo_vm_open, + .close = ttm_bo_vm_close, + .access = ttm_bo_vm_access +}; + int nouveau_ttm_mmap(struct file *filp, struct vm_area_struct *vma) { struct drm_file *file_priv = filp->private_data; struct nouveau_drm *drm = nouveau_drm(file_priv->minor->dev); + int ret; - return ttm_bo_mmap(filp...
2019 Oct 09
0
[PATCH 1/2] drm/nouveau: move io_reserve_lru handling into the driver
...FAULT_FLAG_RETRY_NOWAIT)) > + return ret; > + > + nouveau_bo_add_io_reserve_lru(bo); > + > + dma_resv_unlock(bo->base.resv); > + > + return ret; > +} > + > +static struct vm_operations_struct nouveau_ttm_vm_ops = { > + .fault = nouveau_ttm_fault, > + .open = ttm_bo_vm_open, > + .close = ttm_bo_vm_close, > + .access = ttm_bo_vm_access > +}; > + > int > nouveau_ttm_mmap(struct file *filp, struct vm_area_struct *vma) > { > struct drm_file *file_priv = filp->private_data; > struct nouveau_drm *drm = nouveau_drm(file_priv->minor-&gt...
2018 Sep 05
0
[PATCH] bochs: convert to drm_fb_helper_fbdev_setup/teardown
...uch. drm_fb_helper_fbdev_teardown > is now used and calls drm_framebuffer_remove which does a bit more work. > > Tested with 'echo 0 > /sys/class/vtconsole/vtcon1/bind; rmmod bochs_drm' > and also with Xorg + fbdev (startx -> xterm). The latter triggered a > warning in ttm_bo_vm_open that existed before, see > https://lkml.kernel.org/r/1464000533-13140-4-git-send-email-mstaudt at suse.de You can probably get rid of this one if you're refactoring even more. The generic fb_probe implementation (already merged) plus gem-shmem support for it (still in flight) from Noralf sh...
2024 Jan 22
2
[PATCH] mm: Remove double faults once write a device pfn
...struct vm_fault *vmf); > vm_fault_t ttm_bo_vm_fault_reserved(struct vm_fault *vmf, > pgprot_t prot, > - pgoff_t num_prefault); > + pgoff_t num_prefault, > + bool mkwrite); > vm_fault_t ttm_bo_vm_fault(struct vm_fault *vmf); > void ttm_bo_vm_open(struct vm_area_struct *vma); > void ttm_bo_vm_close(struct vm_area_struct *vma); > diff --git a/include/linux/mm.h b/include/linux/mm.h > index f5a97dec5169..f8868e28ea04 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -3553,7 +3553,7 @@ int vm_map_pages_zero(s...
2024 Jan 24
1
[PATCH] mm: Remove double faults once write a device pfn
...num_prefault); >> >>>>> + pgoff_t num_prefault, >> >>>>> + bool mkwrite); >> >>>>> vm_fault_t ttm_bo_vm_fault(struct vm_fault *vmf); >> >>>>> void ttm_bo_vm_open(struct vm_area_struct *vma); >> >>>>> void ttm_bo_vm_close(struct vm_area_struct *vma); diff --git >> >>>>> a/include/linux/mm.h b/include/linux/mm.h index >> >>>>> f5a97dec5169..f8868e28ea04 100644 >> >>>>> ---...
2024 Jan 23
2
[PATCH] mm: Remove double faults once write a device pfn
...pgprot_t prot, >>> - pgoff_t num_prefault); >>> + pgoff_t num_prefault, >>> + bool mkwrite); >>> vm_fault_t ttm_bo_vm_fault(struct vm_fault *vmf); >>> void ttm_bo_vm_open(struct vm_area_struct *vma); >>> void ttm_bo_vm_close(struct vm_area_struct *vma); diff --git >>> a/include/linux/mm.h b/include/linux/mm.h index >>> f5a97dec5169..f8868e28ea04 100644 >>> --- a/include/linux/mm.h >>> +++ b/include/linux/mm.h >>&...
2024 Jan 24
2
[PATCH] mm: Remove double faults once write a device pfn
...pgoff_t num_prefault); >>>>> + pgoff_t num_prefault, >>>>> + bool mkwrite); >>>>> vm_fault_t ttm_bo_vm_fault(struct vm_fault *vmf); >>>>> void ttm_bo_vm_open(struct vm_area_struct *vma); >>>>> void ttm_bo_vm_close(struct vm_area_struct *vma); diff --git >>>>> a/include/linux/mm.h b/include/linux/mm.h index >>>>> f5a97dec5169..f8868e28ea04 100644 >>>>> --- a/include/linux/mm.h >>>&g...
2019 Sep 30
3
[PATCH 1/2] drm/nouveau: move io_reserve_lru handling into the driver
...+ if (ret == VM_FAULT_RETRY && !(vmf->flags & FAULT_FLAG_RETRY_NOWAIT)) + return ret; + + nouveau_bo_add_io_reserve_lru(bo); + + dma_resv_unlock(bo->base.resv); + + return ret; +} + +static struct vm_operations_struct nouveau_ttm_vm_ops = { + .fault = nouveau_ttm_fault, + .open = ttm_bo_vm_open, + .close = ttm_bo_vm_close, + .access = ttm_bo_vm_access +}; + int nouveau_ttm_mmap(struct file *filp, struct vm_area_struct *vma) { struct drm_file *file_priv = filp->private_data; struct nouveau_drm *drm = nouveau_drm(file_priv->minor->dev); + int ret; - return ttm_bo_mmap(filp...
2020 Aug 20
3
Moving LRU handling into Nouveau v2
Hi guys, I already tried this a few month ago, but since I don't have NVidia hardware its rather hard to test for me (need to get some ordered). Dave brought up the topic that we should probably try to move the handling into Nouveau once more, so I tried to fix the problem Ben reported and rebased on top of current drm-misc-next. Dave can you test this? At least in theory the approach
2019 Nov 20
2
Move io_reserve_lru handling into the driver
Just a gentle ping on this. Already got the Acked-by from Daniel, but I need some of the nouveau guys to test this since I can only compile test it. Regards, Christian.
2020 Sep 01
4
[PATCH 1/3] drm/ttm: make sure that we always zero init mem.bus v2
We are trying to remove the io_lru handling and depend on zero init base, offset and addr here. v2: init addr as well Signed-off-by: Christian K?nig <christian.koenig at amd.com> --- drivers/gpu/drm/ttm/ttm_bo.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c index e3931e515906..772c640a6046 100644 ---
2020 Aug 21
5
Moving LRU handling into Nouveau v3
Hi guys, so I got some hardware and tested this and after hammering out tons of typos it now seems to work fine. Could you give it more testing? Thanks in advance, Christian