aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2005-10-11 01:03:39 +0200
committerLinus Torvalds <torvalds@g5.osdl.org>2005-10-10 16:10:33 -0700
commit094804c5a132f04c12dd4902ee15c64362e5c1af (patch)
tree44a146301f43a7ba9db72308585122218ccafe6f
parentf96c3bbe91117402f13119ce9e609db9087ed58f (diff)
downloadlinux-094804c5a132f04c12dd4902ee15c64362e5c1af.tar.gz
[PATCH] x86_64: Fix change_page_attr cache flushing
Noticed by Terence Ripperda Undo wrong change in global_flush_tlb. We need to flush the caches in all cases, not just when pages were reverted. This was a bogus optimization added earlier, but it was wrong. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--arch/x86_64/mm/pageattr.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/arch/x86_64/mm/pageattr.c b/arch/x86_64/mm/pageattr.c
index 94862e1ec032d2..b90e8fe9eeb005 100644
--- a/arch/x86_64/mm/pageattr.c
+++ b/arch/x86_64/mm/pageattr.c
@@ -220,8 +220,6 @@ void global_flush_tlb(void)
down_read(&init_mm.mmap_sem);
df = xchg(&df_list, NULL);
up_read(&init_mm.mmap_sem);
- if (!df)
- return;
flush_map((df && !df->next) ? df->address : 0);
for (; df; df = next_df) {
next_df = df->next;