[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090114174804.GB31983@elte.hu>
Date: Wed, 14 Jan 2009 18:48:04 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Joerg Roedel <joerg.roedel@....com>, linux-kernel@...r.kernel.org,
mingo@...hat.com, dwmw2@...radead.org,
fujita.tomonori@....ntt.co.jp, netdev@...r.kernel.org,
iommu@...ts.linux-foundation.org
Subject: Re: [PATCH 03/16] dma-debug: add hash functions for
dma_debug_entries
* Andrew Morton <akpm@...ux-foundation.org> wrote:
> On Wed, 14 Jan 2009 12:43:47 +0100 Ingo Molnar <mingo@...e.hu> wrote:
>
> >
> > * Andrew Morton <akpm@...ux-foundation.org> wrote:
> >
> > > On Fri, 9 Jan 2009 17:19:17 +0100 Joerg Roedel <joerg.roedel@....com> wrote:
> > >
> > > > +struct hash_bucket {
> > > > + struct list_head list;
> > > > + spinlock_t lock;
> > > > +} ____cacheline_aligned;
> > >
> > > __cacheline_aligned_in_smp.
> > >
> > > This all looks like an exotically large amount of code for a debug
> > > thingy?
> >
> > this code checks the DMA usage of ~1 million lines of kernel code - all
> > the DMA using drivers. I think Joerg's feature is hugely relevant as DMA
> > scribbles are one of the hardest to debug kernel bugs: they can end up in
> > permanent data corruption or other hard to find bugs. In fact i think his
> > patchset is rather simple and even having 10 times as much debug code
> > would pay for its existence in the long run.
> >
>
> Have we previously found bugs by other means which this facility would
> have detected? I don't recall any...
btw., during the past decade we have had countless very ugly driver DMA
bugs in the past that took vendors months and specialized equipment to
track down.
I cannot give you a number breakdown, only an impression: storage drivers
tended to be the hardest hit (due to the severity of the bugs and due to
their inherent complexity) - but DMA bugs in networking drivers can be
hard to track down too.
Plus there's another benefit: if a driver passes this checking and there's
still DMA related corruption observed, then the hardware / firmware
becomes a stronger suspect. This helps debugging too.
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists