Messages in this thread | | | Subject | Re: [PATCH] ALSA update [6/10] - 2002/07/20 | From | Alan Cox <> | Date | 30 Sep 2002 13:54:11 +0100 |
| |
On Mon, 2002-09-30 at 01:53, David S. Miller wrote: > From: Jaroslav Kysela <perex@suse.cz> > Date: Sun, 29 Sep 2002 22:34:51 +0200 (CEST) > > - if (hwdev == NULL || ((u32)hwdev->dma_mask != 0xffffffff)) > + if (hwdev == NULL || (u32)hwdev->dma_mask <= 0x00ffffff) > gfp |= GFP_DMA; > > So alan, why is this really broken? > > EISA/ISA DMA is defined as using a hwdev of NULL or requiring > <16MB address, he is preserving GFP_DMA in those cases.
Firstly the DMA mask on x86 can't be below 24bits, we don't support allocation from a smaller zone. Secondly what about PCI for 25-31bits - there we do need to force gfp_dma to have any chance of getting the right pages
Giving the page allocator a mask argument does sound a lot nicer
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |