Re: [PATCH] x86: adjust GFP mask handling for coherent allocations

From: Jan Beulich
Date: Tue Oct 27 2009 - 04:58:23 EST


>>> FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx> 27.10.09 02:38 >>>
>On Mon, 26 Oct 2009 21:19:17 +0100
>Ingo Molnar <mingo@xxxxxxx> wrote:
>> Well, can ISA_BIT_MASK fall back to DMA_BIT_MASK(32) on !CONFIG_ISA? If
>> we have ISA support disabled we might as well pretend the whole world is
>> PCI, right?
>
>I don't think that it works. At least, you can't do that with
>the DMA_BIT_MASK(24) in arch/x86/kernl/pci-dma.c; it must be
>DMA_BIT_MASK(24) even with !CONFIG_ISA.

This one I too was about to point out, which is why I think
DMA_ISA_BIT_MASK should only be an alias of DMA_BIT_MASK(24), with
no fallback to DMA_BIT_MASK(32).

>> That way we'd get rid of that #ifdef in the .c code too.
>
>Well, in the first place, we don't need the #ifdef in Jan's patch. We
>can always use DMA_BIT_MASK(24) for the fallback device.

But this one I don't agree with - the purpose of the patch is to not have
a 24-bit (or 32-bit) mask here unconditionally: It would result in GFP_DMA
to be forced on for the allocation (which the patch specifically eliminates),
and for x86-64 this wasn't the case up to .25, which is the behavior I'm
trying to restore (and extend to the !CONFIG_ISA case for ix86).

Jan

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/