lkml.org 
[lkml]   [2010]   [Oct]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 2/2] MIPS: HIGHMEM DMA on noncoherent MIPS32 processors
On Sat, Oct 09, 2010 at 06:53:42PM -0700, Kevin Cernekee wrote:

> [v3: Patch has been rebased against linux-queue.git, which uses the new
> dma-mapping-common.h API.]
>
> The MIPS DMA coherency functions do not work properly (i.e. kernel oops)
> when HIGHMEM pages are passed in as arguments. This patch uses the PPC
> approach of calling kmap_atomic() with IRQs disabled to temporarily map
> high pages, in order to flush them out to memory.

It's this disabling of interrupts which I don't like. It's easy to get
around it by having one kmap type for each of process, softirq and
interrupt context.

The good news is that Peter Zijlstra has rewritten kmap to make the need
for manually allocated kmap types go away and his patches are queued to
be merged for 2.6.37. So I'd like to put this patch on hold until after
his patches are merged.

Does your system have both highmem and cache aliases?

Ralf


\
 
 \ /
  Last update: 2010-10-13 09:57    [W:1.186 / U:0.140 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site