Displaying 20 results from an estimated 25 matches for "ttm_bo_unref".
2018 Aug 09
0
[PATCH] drm/bochs: Replace ttm_bo_unref with ttm_bo_put
...ers/gpu/drm/bochs/bochs_mm.c
> index 39cd08416773..c9c7097030ca 100644
> --- a/drivers/gpu/drm/bochs/bochs_mm.c
> +++ b/drivers/gpu/drm/bochs/bochs_mm.c
> @@ -430,7 +430,7 @@ static void bochs_bo_unref(struct bochs_bo **bo)
> return;
>
> tbo = &((*bo)->bo);
> - ttm_bo_unref(&tbo);
> + ttm_bo_put(tbo);
fails to build:
CC [M] drivers/gpu/drm/bochs/bochs_mm.o
/home/kraxel/projects/linux/drivers/gpu/drm/bochs/bochs_mm.c: In function ?bochs_bo_unref?:
/home/kraxel/projects/linux/drivers/gpu/drm/bochs/bochs_mm.c:433:2: error: implicit declaration of function ?tt...
2018 Aug 09
0
[PATCH] drm/cirrus: Replace ttm_bo_unref with ttm_bo_put
...rrus/cirrus_main.c
> index 60d54e10a34d..57f8fe6d020b 100644
> --- a/drivers/gpu/drm/cirrus/cirrus_main.c
> +++ b/drivers/gpu/drm/cirrus/cirrus_main.c
> @@ -269,7 +269,7 @@ static void cirrus_bo_unref(struct cirrus_bo **bo)
> return;
>
> tbo = &((*bo)->bo);
> - ttm_bo_unref(&tbo);
> + ttm_bo_put(tbo);
Fails to build too.
cheers,
Gerd
2018 Aug 09
0
[PATCH] drm/qxl: Replace ttm_bo_unref with ttm_bo_put
...em.c
> index f5c1e7872e92..89606c819d82 100644
> --- a/drivers/gpu/drm/qxl/qxl_gem.c
> +++ b/drivers/gpu/drm/qxl/qxl_gem.c
> @@ -40,7 +40,7 @@ void qxl_gem_object_free(struct drm_gem_object *gobj)
> qxl_surface_evict(qdev, qobj, false);
>
> tbo = &qobj->tbo;
> - ttm_bo_unref(&tbo);
> + ttm_bo_put(tbo);
Same here (using drm-misc-next btw).
cheers,
Gerd
2014 Apr 17
0
[PATCH] drm/nouveau: add some basic debugfs dumping for nouveau's clients and vm mappings
...entry, id) {
+ struct nouveau_bo *nvbo = nouveau_gem_object(entry);
+ struct ttm_buffer_object *bo = &nvbo->bo;
+
+ ttm_bo_reference(&nvbo->bo);
+ spin_unlock(&filp->table_lock);
+
+ ret = ww_mutex_lock_interruptible(&nvbo->bo.resv->lock, NULL);
+ if (ret) {
+ ttm_bo_unref(&bo);
+ return ret;
+ }
+
+ vma = nouveau_bo_vma_find(nvbo, cli->base.vm);
+ if (vma)
+ dump_single_bo(m, nvbo, id, vma);
+ else
+ WARN_ON(1);
+ ww_mutex_unlock(&nvbo->bo.resv->lock);
+ ttm_bo_unref(&bo);
+
+ spin_lock(&filp->table_lock);
+ }
+ spin_unlock(&...
2014 Oct 10
1
[Bug 84880] New: [NV94] X freeze on nouveau list_del corruption / unable to handle kernel paging request
...ct 10 10:36:18 adam.happyassassin.net kernel: [<ffffffffa008787f>]
ttm_bo_cleanup_memtype_use+0x3f/0x90 [ttm]
Oct 10 10:36:18 adam.happyassassin.net kernel: [<ffffffffa00886a3>]
ttm_bo_release+0x273/0x2a0 [ttm]
Oct 10 10:36:18 adam.happyassassin.net kernel: [<ffffffffa00886f9>]
ttm_bo_unref+0x29/0x30 [ttm]
Oct 10 10:36:18 adam.happyassassin.net kernel: [<ffffffffa008bd14>]
ttm_bo_vm_close+0x34/0x60 [ttm]
Oct 10 10:36:18 adam.happyassassin.net kernel: [<ffffffff811c6a72>]
remove_vma+0x32/0x70
Oct 10 10:36:18 adam.happyassassin.net kernel: [<ffffffff811c9047>]
do_mu...
2017 Feb 14
1
NVAC: WARN_ON(nvbo->pin_refcnt > 0);
...drm_kms_helper drm wmi ...
CPU: 1 PID: 701 Comm: Xorg Not tainted 4.10.0-0.rc8.git0.1.fc26.x86_64 #1
...
Call Trace:
dump_stack+0x63/0x84
__warn+0xcb/0xf0
warn_slowpath_null+0x1d/0x20
nouveau_bo_del_ttm+0x7f/0x90 [nouveau]
ttm_bo_release_list+0xd7/0x1e0 [ttm]
ttm_bo_release+0x19c/0x250 [ttm]
ttm_bo_unref+0x23/0x30 [ttm]
nouveau_gem_object_del+0x8f/0xe0 [nouveau]
drm_gem_object_free+0x29/0x70 [drm]
drm_gem_object_unreference_unlocked+0x34/0x80 [drm]
drm_gem_object_handle_unreference_unlocked+0x69/0xc0 [drm]
drm_gem_object_release_handle+0x53/0x90 [drm]
? drm_gem_object_handle_unreference_unloc...
2017 Apr 06
0
NVAC - WARN_ON(nvbo->pin_refcnt > 0);
...bit ttm drm_kms_helper drm wmi ...
CPU: 3 PID: 692 Comm: Xorg Not tainted 4.10.8-1002.fc24.x86_64 #1
...
Call Trace:
dump_stack+0x63/0x86
__warn+0xcb/0xf0
warn_slowpath_null+0x1d/0x20
nouveau_bo_del_ttm+0x7f/0x90 [nouveau]
ttm_bo_release_list+0xcb/0x210 [ttm]
ttm_bo_release+0x198/0x240 [ttm]
ttm_bo_unref+0x24/0x30 [ttm]
nouveau_gem_object_del+0x94/0xf0 [nouveau]
drm_gem_object_free+0x29/0x70 [drm]
drm_gem_object_unreference_unlocked+0x3a/0xa0 [drm]
drm_gem_object_handle_unreference_unlocked+0x65/0xb0 [drm]
drm_gem_object_release_handle+0x53/0x90 [drm]
idr_for_each+0xb0/0x110
? drm_gem_object...
2018 Apr 15
0
[RFC] Rewrite page fault interception in TTM drivers
...truct vm_area_struct *vma)
(void)ttm_bo_reference(bo);
}
+EXPORT_SYMBOL_GPL(ttm_bo_vm_open);
-static void ttm_bo_vm_close(struct vm_area_struct *vma)
+void ttm_bo_vm_close(struct vm_area_struct *vma)
{
struct ttm_buffer_object *bo = (struct ttm_buffer_object *)vma->vm_private_data;
ttm_bo_unref(&bo);
vma->vm_private_data = NULL;
}
+EXPORT_SYMBOL_GPL(ttm_bo_vm_close);
static int ttm_bo_vm_access_kmap(struct ttm_buffer_object *bo,
unsigned long offset,
@@ -352,7 +355,7 @@ static int ttm_bo_vm_access_kmap(struct ttm_buffer_object *bo,
return len;
}
-static int ttm_bo_...
2010 Mar 10
34
[Patch RFC] nouveau accelerated on Xen pv-ops kernel
...+ vma->vm_flags |= VM_RESERVED | VM_MIXEDMAP | VM_DONTEXPAND;
+ if (!((bo->mem.placement & TTM_PL_MASK_MEM) & TTM_PL_FLAG_TT))
+ vma->vm_flags |= VM_IO;
+ vma->vm_page_prot = vma_get_vm_prot(vma->vm_flags);
return 0;
out_unref:
ttm_bo_unref(&bo);
This patch is necessary because, in Xen, PFN of a page is virtualised.
So physical addresses
for DMA programming needs to use the MFN. Xen transparently does the
correct translation
using the _PAGE_IOMEM prot-bit in the PTE. If the bit is set, then Xen
assumes that the backing
memory is...
2010 Mar 10
34
[Patch RFC] nouveau accelerated on Xen pv-ops kernel
...+ vma->vm_flags |= VM_RESERVED | VM_MIXEDMAP | VM_DONTEXPAND;
+ if (!((bo->mem.placement & TTM_PL_MASK_MEM) & TTM_PL_FLAG_TT))
+ vma->vm_flags |= VM_IO;
+ vma->vm_page_prot = vma_get_vm_prot(vma->vm_flags);
return 0;
out_unref:
ttm_bo_unref(&bo);
This patch is necessary because, in Xen, PFN of a page is virtualised.
So physical addresses
for DMA programming needs to use the MFN. Xen transparently does the
correct translation
using the _PAGE_IOMEM prot-bit in the PTE. If the bit is set, then Xen
assumes that the backing
memory is...
2010 May 16
0
[PATCH v3 1/3] fbdev: allow passing more than one aperture for handoff
...vmw_priv->vram_start;
+ info->apertures->ranges[0].size = vmw_priv->vram_size;
/*
* Dirty & Deferred IO
@@ -580,6 +585,7 @@ int vmw_fb_init(struct vmw_private *vmw_priv)
err_defio:
fb_deferred_io_cleanup(info);
+err_aper:
ttm_bo_kunmap(&par->map);
err_unref:
ttm_bo_unref((struct ttm_buffer_object **)&par->vmw_bo);
diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
index ecf4055..4a56f46 100644
--- a/drivers/video/efifb.c
+++ b/drivers/video/efifb.c
@@ -168,7 +168,7 @@ static void efifb_destroy(struct fb_info *info)
{
if (info->screen_base)
i...
2014 Jul 18
22
[Bug 81485] New: dmesg spam on startup
https://bugs.freedesktop.org/show_bug.cgi?id=81485
Priority: medium
Bug ID: 81485
Assignee: nouveau at lists.freedesktop.org
Summary: dmesg spam on startup
QA Contact: xorg-team at lists.x.org
Severity: normal
Classification: Unclassified
OS: All
Reporter: fry.kun at gmail.com
Hardware: Other
2017 Sep 14
7
[Bug 102722] New: [regression] changing resolution hangs the display on Lenovo Thinkpad p51
https://bugs.freedesktop.org/show_bug.cgi?id=102722
Bug ID: 102722
Summary: [regression] changing resolution hangs the display on
Lenovo Thinkpad p51
Product: xorg
Version: unspecified
Hardware: x86-64 (AMD64)
OS: Linux (All)
Status: NEW
Severity: critical
Priority: medium
2010 Apr 12
1
[PATCHv2 1/2] fbdev: allow passing more than one aperture for handoff
...vmw_priv->vram_start;
+ info->apertures->ranges[0].size = vmw_priv->vram_size;
/*
* Dirty & Deferred IO
@@ -580,6 +585,7 @@ int vmw_fb_init(struct vmw_private *vmw_priv)
err_defio:
fb_deferred_io_cleanup(info);
+err_aper:
ttm_bo_kunmap(&par->map);
err_unref:
ttm_bo_unref((struct ttm_buffer_object **)&par->vmw_bo);
diff --git a/drivers/video/efifb.c b/drivers/video/efifb.c
index 581d2db..3b98656 100644
--- a/drivers/video/efifb.c
+++ b/drivers/video/efifb.c
@@ -165,7 +165,7 @@ static void efifb_destroy(struct fb_info *info)
{
if (info->screen_base)
i...
2010 Apr 10
3
[PATCH 1/3] fbmem: fix aperture overlapping check
fb_do_apertures_overlap is returning wrong value when one aperture
is completely whithin the other. Add generic ranges_overlap macro
(probably kernel.h candidate) and use it here.
Signed-off-by: Marcin Slusarz <marcin.slusarz at gmail.com>
Cc: Dave Airlie <airlied at redhat.com>
Cc: Peter Jones <pjones at redhat.com>
Cc: Andrew Morton <akpm at linux-foundation.org>
---
2009 Feb 27
28
[Bug 20341] New: NV31 lockup
http://bugs.freedesktop.org/show_bug.cgi?id=20341
Summary: NV31 lockup
Product: xorg
Version: git
Platform: x86 (IA32)
OS/Version: Linux (All)
Status: NEW
Severity: normal
Priority: medium
Component: Driver/nouveau
AssignedTo: nouveau at lists.freedesktop.org
ReportedBy: detringj at
2015 Mar 24
10
[PATCH] Add virtio gpu driver.
...gpu_object*
+virtio_gpu_object_ref(struct virtio_gpu_object *bo)
+{
+ ttm_bo_reference(&bo->tbo);
+ return bo;
+}
+
+static inline void virtio_gpu_object_unref(struct virtio_gpu_object **bo)
+{
+ struct ttm_buffer_object *tbo;
+
+ if ((*bo) == NULL)
+ return;
+ tbo = &((*bo)->tbo);
+ ttm_bo_unref(&tbo);
+ if (tbo == NULL)
+ *bo = NULL;
+}
+
+static inline u64 virtio_gpu_object_mmap_offset(struct virtio_gpu_object *bo)
+{
+ return drm_vma_node_offset_addr(&bo->tbo.vma_node);
+}
+
+static inline int virtio_gpu_object_reserve(struct virtio_gpu_object *bo,
+ bool no_wait)
+{
+...
2015 Mar 24
10
[PATCH] Add virtio gpu driver.
...gpu_object*
+virtio_gpu_object_ref(struct virtio_gpu_object *bo)
+{
+ ttm_bo_reference(&bo->tbo);
+ return bo;
+}
+
+static inline void virtio_gpu_object_unref(struct virtio_gpu_object **bo)
+{
+ struct ttm_buffer_object *tbo;
+
+ if ((*bo) == NULL)
+ return;
+ tbo = &((*bo)->tbo);
+ ttm_bo_unref(&tbo);
+ if (tbo == NULL)
+ *bo = NULL;
+}
+
+static inline u64 virtio_gpu_object_mmap_offset(struct virtio_gpu_object *bo)
+{
+ return drm_vma_node_offset_addr(&bo->tbo.vma_node);
+}
+
+static inline int virtio_gpu_object_reserve(struct virtio_gpu_object *bo,
+ bool no_wait)
+{
+...
2015 Mar 24
0
[PATCH] Add virtio gpu driver.
...> +{
> + ttm_bo_reference(&bo->tbo);
> + return bo;
> +}
> +
> +static inline void virtio_gpu_object_unref(struct virtio_gpu_object **bo)
> +{
> + struct ttm_buffer_object *tbo;
> +
> + if ((*bo) == NULL)
> + return;
> + tbo = &((*bo)->tbo);
> + ttm_bo_unref(&tbo);
> + if (tbo == NULL)
> + *bo = NULL;
> +}
> +
> +static inline u64 virtio_gpu_object_mmap_offset(struct virtio_gpu_object *bo)
> +{
> + return drm_vma_node_offset_addr(&bo->tbo.vma_node);
> +}
> +
> +static inline int virtio_gpu_object_reserve(struct...
2015 Mar 24
0
[PATCH] Add virtio gpu driver.
...> +{
> + ttm_bo_reference(&bo->tbo);
> + return bo;
> +}
> +
> +static inline void virtio_gpu_object_unref(struct virtio_gpu_object **bo)
> +{
> + struct ttm_buffer_object *tbo;
> +
> + if ((*bo) == NULL)
> + return;
> + tbo = &((*bo)->tbo);
> + ttm_bo_unref(&tbo);
> + if (tbo == NULL)
> + *bo = NULL;
> +}
> +
> +static inline u64 virtio_gpu_object_mmap_offset(struct virtio_gpu_object *bo)
> +{
> + return drm_vma_node_offset_addr(&bo->tbo.vma_node);
> +}
> +
> +static inline int virtio_gpu_object_reserve(struct...