All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Williams <dan.j.williams@intel.com>
To: Russell King <rmk@arm.linux.org.uk>
Cc: Qin Dehua <qindehua@gmail.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"santosh.shilimkar@ti.com" <santosh.shilimkar@ti.com>,
	"neilb@suse.de" <neilb@suse.de>,
	"Jiang, Dave" <dave.jiang@intel.com>
Subject: Re: PROBLEM: ARM-dma-mapping-fix-for-speculative-prefetching cause OOPS
Date: Fri, 08 Jul 2011 13:13:27 -0700	[thread overview]
Message-ID: <4E1764E7.7090804@intel.com> (raw)
In-Reply-To: <20110708173251.GA9561@flint.arm.linux.org.uk>

On 7/8/2011 10:32 AM, Russell King wrote:
> On Fri, Jul 08, 2011 at 09:07:51AM +0100, Russell King wrote:
>> On Fri, Jul 08, 2011 at 12:38:38PM +0800, Qin Dehua wrote:
>>> After doing the above changes, the kernel just report  BUG_ON(dir ==
>>> DMA_BIDIRECTIONAL):
>>
>> That's really unfortunate.
>>
>> The only other thing I can think which may help is to enable all the
>> raid5, async_tx and dmaengine debug code.  And I hope you have
>> DMA_API_DEBUG enabled in your .config ?
>
> I'm really grasping at straws here...
>
> I'll add to this that I'm out of ideas at the moment (I don't know the
> RAID5 nor the async offload code), and the only way I can think of
> resolving this is to revert the commit.
>
> While that sounds like a good thing to do, it means people using ARMv6
> and later CPUs will be risking data corruption, which I don't think is
> that desirable either - and will in itself cause a regression there.

Not much of a choice but crashing is better than data corruption. 
Disabling CONFIG_ASYNC_TX_DMA until the mapping violations can be 
resolved is probably the better course of action.  Something like.

diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
index 1c28816..cb254a1 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -247,6 +247,7 @@ config NET_DMA
  config ASYNC_TX_DMA
         bool "Async_tx: Offload support for the async_tx api"
         depends on DMA_ENGINE
+       depends on !ARM
         help
           This allows the async_tx api to take advantage of offload 
engines for
           memcpy, memset, xor, and raid6 p+q operations.  If your 
platform has


>
> So we really need to the bottom of what's going on (which I suspect
> may be due to DMA API abuse by the async offload stuff - mapping the
> same buffer multiple times with differing attributes.)  Why that would
> impact sh->count I've no idea.
>

This is concerning, I'll see about dusting off my iop34x and 
reproducing.  Might not be for a week or so...

--
Dan

      reply	other threads:[~2011-07-08 20:13 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-30  4:09 PROBLEM: ARM-dma-mapping-fix-for-speculative-prefetching cause OOPS Qin Dehua
2011-06-30  7:43 ` Russell King
2011-06-30 11:16   ` Qin Dehua
2011-06-30 11:28     ` Russell King
2011-06-30 18:02       ` Dan Williams
2011-07-01  4:54         ` Qin Dehua
2011-07-07  9:39           ` Russell King
2011-07-08  4:38             ` Qin Dehua
2011-07-08  8:07               ` Russell King
2011-07-08 17:32                 ` Russell King
2011-07-08 20:13                   ` Dan Williams [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E1764E7.7090804@intel.com \
    --to=dan.j.williams@intel.com \
    --cc=dave.jiang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=neilb@suse.de \
    --cc=qindehua@gmail.com \
    --cc=rmk@arm.linux.org.uk \
    --cc=santosh.shilimkar@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.