diff options
| author | David S. Miller <davem@davemloft.net> | 2009-12-03 15:51:21 -0500 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2009-12-03 15:51:21 -0500 |
| commit | a6c872afb2536f47285e6643f4629dec7520041d (patch) | |
| tree | 4b54e69fc6594f9afc1277520a350db04e578e77 /arch/mips/mm/init.c | |
| parent | 9fe02668fe48a1d546196bc1392330ff28d9bd57 (diff) | |
| parent | 22763c5cf3690a681551162c15d34d935308c8d7 (diff) | |
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Diffstat (limited to 'arch/mips/mm/init.c')
| -rw-r--r-- | arch/mips/mm/init.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c index 15aa1902a788..8d1f4f363049 100644 --- a/arch/mips/mm/init.c +++ b/arch/mips/mm/init.c | |||
| @@ -27,6 +27,7 @@ | |||
| 27 | #include <linux/swap.h> | 27 | #include <linux/swap.h> |
| 28 | #include <linux/proc_fs.h> | 28 | #include <linux/proc_fs.h> |
| 29 | #include <linux/pfn.h> | 29 | #include <linux/pfn.h> |
| 30 | #include <linux/hardirq.h> | ||
| 30 | 31 | ||
| 31 | #include <asm/asm-offsets.h> | 32 | #include <asm/asm-offsets.h> |
| 32 | #include <asm/bootinfo.h> | 33 | #include <asm/bootinfo.h> |
| @@ -132,7 +133,10 @@ void *kmap_coherent(struct page *page, unsigned long addr) | |||
| 132 | inc_preempt_count(); | 133 | inc_preempt_count(); |
| 133 | idx = (addr >> PAGE_SHIFT) & (FIX_N_COLOURS - 1); | 134 | idx = (addr >> PAGE_SHIFT) & (FIX_N_COLOURS - 1); |
| 134 | #ifdef CONFIG_MIPS_MT_SMTC | 135 | #ifdef CONFIG_MIPS_MT_SMTC |
| 135 | idx += FIX_N_COLOURS * smp_processor_id(); | 136 | idx += FIX_N_COLOURS * smp_processor_id() + |
| 137 | (in_interrupt() ? (FIX_N_COLOURS * NR_CPUS) : 0); | ||
| 138 | #else | ||
| 139 | idx += in_interrupt() ? FIX_N_COLOURS : 0; | ||
| 136 | #endif | 140 | #endif |
| 137 | vaddr = __fix_to_virt(FIX_CMAP_END - idx); | 141 | vaddr = __fix_to_virt(FIX_CMAP_END - idx); |
| 138 | pte = mk_pte(page, PAGE_KERNEL); | 142 | pte = mk_pte(page, PAGE_KERNEL); |
