git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[pandora-kernel.git]
/
arch
/
sparc
/
mm
/
tsb.c
diff --git
a/arch/sparc/mm/tsb.c
b/arch/sparc/mm/tsb.c
index
101d7c8
..
9484615
100644
(file)
--- a/
arch/sparc/mm/tsb.c
+++ b/
arch/sparc/mm/tsb.c
@@
-47,12
+47,13
@@
void flush_tsb_kernel_range(unsigned long start, unsigned long end)
}
}
}
}
-static void __flush_tsb_one(struct mmu_gather *mp, unsigned long hash_shift, unsigned long tsb, unsigned long nentries)
+static void __flush_tsb_one(struct tlb_batch *tb, unsigned long hash_shift,
+ unsigned long tsb, unsigned long nentries)
{
unsigned long i;
{
unsigned long i;
- for (i = 0; i <
mp
->tlb_nr; i++) {
- unsigned long v =
mp
->vaddrs[i];
+ for (i = 0; i <
tb
->tlb_nr; i++) {
+ unsigned long v =
tb
->vaddrs[i];
unsigned long tag, ent, hash;
v &= ~0x1UL;
unsigned long tag, ent, hash;
v &= ~0x1UL;
@@
-65,9
+66,9
@@
static void __flush_tsb_one(struct mmu_gather *mp, unsigned long hash_shift, uns
}
}
}
}
-void flush_tsb_user(struct
mmu_gather *mp
)
+void flush_tsb_user(struct
tlb_batch *tb
)
{
{
- struct mm_struct *mm =
mp
->mm;
+ struct mm_struct *mm =
tb
->mm;
unsigned long nentries, base, flags;
spin_lock_irqsave(&mm->context.lock, flags);
unsigned long nentries, base, flags;
spin_lock_irqsave(&mm->context.lock, flags);
@@
-76,7
+77,7
@@
void flush_tsb_user(struct mmu_gather *mp)
nentries = mm->context.tsb_block[MM_TSB_BASE].tsb_nentries;
if (tlb_type == cheetah_plus || tlb_type == hypervisor)
base = __pa(base);
nentries = mm->context.tsb_block[MM_TSB_BASE].tsb_nentries;
if (tlb_type == cheetah_plus || tlb_type == hypervisor)
base = __pa(base);
- __flush_tsb_one(
mp
, PAGE_SHIFT, base, nentries);
+ __flush_tsb_one(
tb
, PAGE_SHIFT, base, nentries);
#ifdef CONFIG_HUGETLB_PAGE
if (mm->context.tsb_block[MM_TSB_HUGE].tsb) {
#ifdef CONFIG_HUGETLB_PAGE
if (mm->context.tsb_block[MM_TSB_HUGE].tsb) {
@@
-84,7
+85,7
@@
void flush_tsb_user(struct mmu_gather *mp)
nentries = mm->context.tsb_block[MM_TSB_HUGE].tsb_nentries;
if (tlb_type == cheetah_plus || tlb_type == hypervisor)
base = __pa(base);
nentries = mm->context.tsb_block[MM_TSB_HUGE].tsb_nentries;
if (tlb_type == cheetah_plus || tlb_type == hypervisor)
base = __pa(base);
- __flush_tsb_one(
mp
, HPAGE_SHIFT, base, nentries);
+ __flush_tsb_one(
tb
, HPAGE_SHIFT, base, nentries);
}
#endif
spin_unlock_irqrestore(&mm->context.lock, flags);
}
#endif
spin_unlock_irqrestore(&mm->context.lock, flags);