public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Muli Ben-Yehuda <muli@il.ibm.com>,
	James Bottomley <James.Bottomley@steeleye.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	patches@x86-64.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	James Bottomley <James.Bottomley@steeleye.com>,
	Takashi Iwai <tiwai@suse.de>
Subject: Re: [PATCH] [1/4] x86_64: Fail dma_alloc_coherent on dma less devices
Date: Sat, 18 Aug 2007 21:03:25 +0200	[thread overview]
Message-ID: <200708182103.25461.ak@suse.de> (raw)
In-Reply-To: <alpine.LFD.0.999.0708181003430.30176@woody.linux-foundation.org>

On Saturday 18 August 2007 19:22:18 Linus Torvalds wrote:
> 
> Hmm. I think this is wrong. 
> 
> Why? Because the regular 32-bit x86 code does this all completely 
> differently, and doesn't use dma_mask at all. Instead, it _only_ uses 
> dev->coherent_dma_mask (which, considering the name of the function, 
> would seem to make sense).

Yes, see my discussion with Alan. Likely this needs to be handled
in the caller to really fix the problem (pata_pcmcia oopsing when
it passes a DMA incapable pcmcia device to dma_alloc_coherent) 

Another possible fix proposed by James was to give the pcmcia
devices a dma_mask of 0 which would also work.

> Considering that the oops comes from this:
> 
>         /* Kludge to make it bug-to-bug compatible with i386. i386
>            uses the normal dma_mask for alloc_coherent. */
>         dma_mask &= *dev->dma_mask;

> 
> and that that code is *old*, and comes from when this file was called 
> arch/x86_64/kernel/pci-gart.c, and the comment doesn't seem to even be 

It might be outdated or it might now. The kludge was needed for Alsa because old
i386 ignored the consistent mask and they didn't always set it correctly, but that 
should be obsolete now? I'm not quite sure because sound devices
are not always well tested on large memory systems which are the only
ones who show this problem. Takashi, do you know if all alsa drivers
set consistent mask correctly now?

But I didn't want to touch that that late -- can do it for .24.

Still failing is probably correct in this case so I included the patch.

-Andi

  reply	other threads:[~2007-08-18 19:04 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-15  0:40 [PATCH] [0/4] More late merge bug fixes for 2.6.23 Andi Kleen
2007-08-15  0:40 ` [PATCH] [1/4] x86_64: Fail dma_alloc_coherent on dma less devices Andi Kleen
2007-08-18 17:22   ` Linus Torvalds
2007-08-18 19:03     ` Andi Kleen [this message]
2007-08-20  9:46       ` Takashi Iwai
2007-08-15  0:40 ` [PATCH] [2/4] x86_64: Fix to keep watchdog disabled by default for i386/x86_64 Andi Kleen
2007-08-15  0:40 ` [PATCH] [3/4] x86_64: Change PMDS invocation to single macro Andi Kleen
2007-08-15 12:29   ` Clemens Koller
2007-08-15 13:57     ` Andi Kleen
2007-08-15  0:40 ` [PATCH] [4/4] x86_64: Check for .cfi_rel_offset in CFI probe Andi Kleen

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=200708182103.25461.ak@suse.de \
    --to=ak@suse.de \
    --cc=James.Bottomley@steeleye.com \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=muli@il.ibm.com \
    --cc=patches@x86-64.org \
    --cc=tiwai@suse.de \
    --cc=torvalds@linux-foundation.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox