lkml.org 
[lkml]   [2008]   [Nov]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 04/10] x86: add helper functions for consistency checks

* Joerg Roedel <joerg.roedel@amd.com> wrote:

> +static bool check_unmap(struct dma_debug_entry *ref,
> + struct dma_debug_entry *entry)
> +{
> + bool errors = false;
> +
> + if (!entry) {
> + dev_printk(KERN_ERR, ref->dev, "PCI-DMA: device driver tries "
> + "to free DMA memory it has not allocated "
> + "[device address=0x%016llx] [size=%llu bytes]\n",
> + ref->dev_addr, ref->size);
> + dump_stack();
> +
> + return false;

okay, the warnings need to be one-shot. It will be enabled by distros
in debug kernels to test a wide range of drivers, and the output will
be collected by kerneloops.org. Distros will disable the debug feature
fast if it spams the logs.

So please make it WARN_ONCE() type of warnings. Dont use dump_stack()
directly but use the WARN() signature so that it's picked up by
automated bug collection mechanisms.

This holds true for all the other warnings as well. Plus probably the
whole mechanism should self-deactivate like lockdep does, when it
notices the first error. That guarantees that even if it has a false
positive or some other bug it wont break more stuff.

> + struct dma_debug_entry ref = {
> + .dev = dev,
> + .dev_addr = addr,
> + .size = size,
> + .direction = direction,
> + };

(align the field init vertically please.)

Ingo


\
 
 \ /
  Last update: 2008-11-21 18:11    [W:0.204 / U:0.132 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site