diff options
author | Dave Jones <davej@redhat.com> | 2005-11-29 12:48:34 -0800 |
---|---|---|
committer | Dave Jones <davej@redhat.com> | 2005-11-29 12:48:34 -0800 |
commit | be37bdbce7ceaacf4f20c6cc759efbe75ebd1196 (patch) | |
tree | f1a42fb5a4a17eea41d47d2c002fa303009f5523 /arch/powerpc/mm/tlb_32.c | |
parent | 019a61b99338d0ac05de25317b85da88e7ec4b35 (diff) | |
parent | d70aa5e4b54aa7e704c886838715ac8a45d5750f (diff) | |
download | linux-rt-be37bdbce7ceaacf4f20c6cc759efbe75ebd1196.tar.gz |
Merge ../linus
Diffstat (limited to 'arch/powerpc/mm/tlb_32.c')
-rw-r--r-- | arch/powerpc/mm/tlb_32.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/mm/tlb_32.c b/arch/powerpc/mm/tlb_32.c index 6c3dc3c44c86..ad580f3742e5 100644 --- a/arch/powerpc/mm/tlb_32.c +++ b/arch/powerpc/mm/tlb_32.c @@ -149,6 +149,12 @@ void flush_tlb_mm(struct mm_struct *mm) return; } + /* + * It is safe to go down the mm's list of vmas when called + * from dup_mmap, holding mmap_sem. It would also be safe from + * unmap_region or exit_mmap, but not from vmtruncate on SMP - + * but it seems dup_mmap is the only SMP case which gets here. + */ for (mp = mm->mmap; mp != NULL; mp = mp->vm_next) flush_range(mp->vm_mm, mp->vm_start, mp->vm_end); FINISH_FLUSH; |