Message ID | 1257782958.19234314.1371520167209.JavaMail.root@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Jun 17, 2013 at 09:49:27PM -0400, David Airlie wrote: > > > Reading /proc/dri/0/vma causes bad things to happen on a box with nouveau > > loaded. > > (Note, no X running on that box) > > > > Trace below shows trinity, but I can reproduce it with just cat > > /proc/dri/0/vma > > How about this, lets just rip it all out. That's one way to deal with it :) If no programs use it, then yeah, sure, why not. Dave
On Mon, Jun 17, 2013 at 09:49:27PM -0400, David Airlie wrote: > > > Reading /proc/dri/0/vma causes bad things to happen on a box with nouveau > > loaded. > > (Note, no X running on that box) > > > > Trace below shows trinity, but I can reproduce it with just cat > > /proc/dri/0/vma > > How about this, lets just rip it all out. No-one objected, and this is still around in 3.11-rc3 in the same easily oopsable state.. I vote we kill it with fire. Dave
On Mon, Jul 29, 2013 at 08:53:35PM -0400, Dave Jones wrote: > On Mon, Jun 17, 2013 at 09:49:27PM -0400, David Airlie wrote: > > > > > Reading /proc/dri/0/vma causes bad things to happen on a box with nouveau > > > loaded. > > > (Note, no X running on that box) > > > > > > Trace below shows trinity, but I can reproduce it with just cat > > > /proc/dri/0/vma > > > > How about this, lets just rip it all out. > > No-one objected, and this is still around in 3.11-rc3 in the same > easily oopsable state.. I vote we kill it with fire. Can we make it burn brighter while at it? http://cgit.freedesktop.org/~danvet/drm/commit/?h=for-dvdhrm&id=151591c2828e18fde1eb8447874704f3422168b0 Cheers, Daniel
On Mon, Aug 05, 2013 at 09:40:33AM +0200, Daniel Vetter wrote: > On Mon, Jul 29, 2013 at 08:53:35PM -0400, Dave Jones wrote: > > On Mon, Jun 17, 2013 at 09:49:27PM -0400, David Airlie wrote: > > > > > > > Reading /proc/dri/0/vma causes bad things to happen on a box with nouveau > > > > loaded. > > > > (Note, no X running on that box) > > > > > > > > Trace below shows trinity, but I can reproduce it with just cat > > > > /proc/dri/0/vma > > > > > > How about this, lets just rip it all out. > > > > No-one objected, and this is still around in 3.11-rc3 in the same > > easily oopsable state.. I vote we kill it with fire. > > Can we make it burn brighter while at it? > > http://cgit.freedesktop.org/~danvet/drm/commit/?h=for-dvdhrm&id=151591c2828e18fde1eb8447874704f3422168b0 This went kinda quiet, what's the plan here ? Dave
On Thu, Aug 29, 2013 at 6:30 AM, Dave Jones <davej@redhat.com> wrote: > On Mon, Aug 05, 2013 at 09:40:33AM +0200, Daniel Vetter wrote: > > On Mon, Jul 29, 2013 at 08:53:35PM -0400, Dave Jones wrote: > > > On Mon, Jun 17, 2013 at 09:49:27PM -0400, David Airlie wrote: > > > > > > > > > Reading /proc/dri/0/vma causes bad things to happen on a box with nouveau > > > > > loaded. > > > > > (Note, no X running on that box) > > > > > > > > > > Trace below shows trinity, but I can reproduce it with just cat > > > > > /proc/dri/0/vma > > > > > > > > How about this, lets just rip it all out. > > > > > > No-one objected, and this is still around in 3.11-rc3 in the same > > > easily oopsable state.. I vote we kill it with fire. > > > > Can we make it burn brighter while at it? > > > > http://cgit.freedesktop.org/~danvet/drm/commit/?h=for-dvdhrm&id=151591c2828e18fde1eb8447874704f3422168b0 > > This went kinda quiet, what's the plan here ? We nuked it from orbit in drm-next. Dave.
On Thu, Aug 29, 2013 at 06:35:22AM +1000, Dave Airlie wrote: > On Thu, Aug 29, 2013 at 6:30 AM, Dave Jones <davej@redhat.com> wrote: > > On Mon, Aug 05, 2013 at 09:40:33AM +0200, Daniel Vetter wrote: > > > On Mon, Jul 29, 2013 at 08:53:35PM -0400, Dave Jones wrote: > > > > On Mon, Jun 17, 2013 at 09:49:27PM -0400, David Airlie wrote: > > > > > > > > > > > Reading /proc/dri/0/vma causes bad things to happen on a box with nouveau > > > > > > loaded. > > > > > > (Note, no X running on that box) > > > > > > > > > > > > Trace below shows trinity, but I can reproduce it with just cat > > > > > > /proc/dri/0/vma > > > > > > > > > > How about this, lets just rip it all out. > > > > > > > > No-one objected, and this is still around in 3.11-rc3 in the same > > > > easily oopsable state.. I vote we kill it with fire. > > > > > > Can we make it burn brighter while at it? > > > > > > http://cgit.freedesktop.org/~danvet/drm/commit/?h=for-dvdhrm&id=151591c2828e18fde1eb8447874704f3422168b0 > > > > This went kinda quiet, what's the plan here ? > > We nuked it from orbit in drm-next. Awesome. Looks like that missed a Cc: -stable tag btw. Dave
From 54f9605737437272f440bbc6cc4adf805334884b Mon Sep 17 00:00:00 2001 From: Dave Airlie <airlied@redhat.com> Date: Tue, 18 Jun 2013 11:38:10 +1000 Subject: [PATCH] drm: remove vma debug code This lists vma in /proc and is both crash prone and quite possible horribly racy. Just nuke it I don't think I've used it in years and years. Signed-off-by: Dave Airlie <airlied@redhat.com> --- drivers/gpu/drm/drm_debugfs.c | 3 --- drivers/gpu/drm/drm_info.c | 54 ------------------------------------------- drivers/gpu/drm/drm_proc.c | 3 --- include/drm/drmP.h | 4 ---- 4 files changed, 64 deletions(-) diff --git a/drivers/gpu/drm/drm_debugfs.c b/drivers/gpu/drm/drm_debugfs.c index a05087c..595c8c1 100644 --- a/drivers/gpu/drm/drm_debugfs.c +++ b/drivers/gpu/drm/drm_debugfs.c @@ -48,9 +48,6 @@ static struct drm_info_list drm_debugfs_list[] = { {"clients", drm_clients_info, 0}, {"bufs", drm_bufs_info, 0}, {"gem_names", drm_gem_name_info, DRIVER_GEM}, -#if DRM_DEBUG_CODE - {"vma", drm_vma_info, 0}, -#endif }; #define DRM_DEBUGFS_ENTRIES ARRAY_SIZE(drm_debugfs_list) diff --git a/drivers/gpu/drm/drm_info.c b/drivers/gpu/drm/drm_info.c index d4b20ce..0d25f8d 100644 --- a/drivers/gpu/drm/drm_info.c +++ b/drivers/gpu/drm/drm_info.c @@ -222,57 +222,3 @@ int drm_gem_name_info(struct seq_file *m, void *data) return 0; } -#if DRM_DEBUG_CODE - -int drm_vma_info(struct seq_file *m, void *data) -{ - struct drm_info_node *node = (struct drm_info_node *) m->private; - struct drm_device *dev = node->minor->dev; - struct drm_vma_entry *pt; - struct vm_area_struct *vma; -#if defined(__i386__) - unsigned int pgprot; -#endif - - mutex_lock(&dev->struct_mutex); - seq_printf(m, "vma use count: %d, high_memory = %pK, 0x%pK\n", - atomic_read(&dev->vma_count), - high_memory, (void *)(unsigned long)virt_to_phys(high_memory)); - - list_for_each_entry(pt, &dev->vmalist, head) { - vma = pt->vma; - if (!vma) - continue; - seq_printf(m, - "\n%5d 0x%pK-0x%pK %c%c%c%c%c%c 0x%08lx000", - pt->pid, - (void *)vma->vm_start, (void *)vma->vm_end, - vma->vm_flags & VM_READ ? 'r' : '-', - vma->vm_flags & VM_WRITE ? 'w' : '-', - vma->vm_flags & VM_EXEC ? 'x' : '-', - vma->vm_flags & VM_MAYSHARE ? 's' : 'p', - vma->vm_flags & VM_LOCKED ? 'l' : '-', - vma->vm_flags & VM_IO ? 'i' : '-', - vma->vm_pgoff); - -#if defined(__i386__) - pgprot = pgprot_val(vma->vm_page_prot); - seq_printf(m, " %c%c%c%c%c%c%c%c%c", - pgprot & _PAGE_PRESENT ? 'p' : '-', - pgprot & _PAGE_RW ? 'w' : 'r', - pgprot & _PAGE_USER ? 'u' : 's', - pgprot & _PAGE_PWT ? 't' : 'b', - pgprot & _PAGE_PCD ? 'u' : 'c', - pgprot & _PAGE_ACCESSED ? 'a' : '-', - pgprot & _PAGE_DIRTY ? 'd' : '-', - pgprot & _PAGE_PSE ? 'm' : 'k', - pgprot & _PAGE_GLOBAL ? 'g' : 'l'); -#endif - seq_printf(m, "\n"); - } - mutex_unlock(&dev->struct_mutex); - return 0; -} - -#endif - diff --git a/drivers/gpu/drm/drm_proc.c b/drivers/gpu/drm/drm_proc.c index d7f2324..92e9abd 100644 --- a/drivers/gpu/drm/drm_proc.c +++ b/drivers/gpu/drm/drm_proc.c @@ -55,9 +55,6 @@ static const struct drm_info_list drm_proc_list[] = { {"clients", drm_clients_info, 0}, {"bufs", drm_bufs_info, 0}, {"gem_names", drm_gem_name_info, DRIVER_GEM}, -#if DRM_DEBUG_CODE - {"vma", drm_vma_info, 0}, -#endif }; #define DRM_PROC_ENTRIES ARRAY_SIZE(drm_proc_list) diff --git a/include/drm/drmP.h b/include/drm/drmP.h index 63d17ee..849523d 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h @@ -1600,10 +1600,6 @@ int drm_prime_add_dma_buf(struct drm_device *dev, struct drm_gem_object *obj); int drm_prime_lookup_obj(struct drm_device *dev, struct dma_buf *buf, struct drm_gem_object **obj); -#if DRM_DEBUG_CODE -extern int drm_vma_info(struct seq_file *m, void *data); -#endif - /* Scatter Gather Support (drm_scatter.h) */ extern void drm_sg_cleanup(struct drm_sg_mem * entry); extern int drm_sg_alloc_ioctl(struct drm_device *dev, void *data, -- 1.8.1.2