Hi. Make code more readable with list_for_each_entry* Compile tested. Signed-off-by: Domen Puncer Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer --- kj-domen/arch/i386/mm/pageattr.c | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-) diff -puN arch/i386/mm/pageattr.c~list-for-each-entry-safe-arch_i386_mm_pageattr arch/i386/mm/pageattr.c --- kj/arch/i386/mm/pageattr.c~list-for-each-entry-safe-arch_i386_mm_pageattr 2004-12-25 01:34:30.000000000 +0100 +++ kj-domen/arch/i386/mm/pageattr.c 2004-12-25 01:34:30.000000000 +0100 @@ -178,7 +178,7 @@ int change_page_attr(struct page *page, void global_flush_tlb(void) { LIST_HEAD(l); - struct list_head* n; + struct page *pg, *next; BUG_ON(irqs_disabled()); @@ -186,12 +186,8 @@ void global_flush_tlb(void) list_splice_init(&df_list, &l); spin_unlock_irq(&cpa_lock); flush_map(); - n = l.next; - while (n != &l) { - struct page *pg = list_entry(n, struct page, lru); - n = n->next; + list_for_each_entry_safe(pg, next, &l, lru) __free_page(pg); - } } #ifdef CONFIG_DEBUG_PAGEALLOC _