diff -Naurp -X /home/jbarnes/dontdiff 210-nr-free-pages-fix.patch/mm/memory.c 230-tlb-global-flush-fix.patch/mm/memory.c
--- 210-nr-free-pages-fix.patch/mm/memory.c	Thu Feb 12 10:23:10 2004
+++ 230-tlb-global-flush-fix.patch/mm/memory.c	Thu Feb 12 10:27:58 2004
@@ -581,9 +581,10 @@ int unmap_vmas(struct mmu_gather **tlbp,
 			if ((long)zap_bytes > 0)
 				continue;
 			if (need_resched()) {
+				int fullmm = (*tlbp)->fullmm;
 				tlb_finish_mmu(*tlbp, tlb_start, start);
 				cond_resched_lock(&mm->page_table_lock);
-				*tlbp = tlb_gather_mmu(mm, 0);
+				*tlbp = tlb_gather_mmu(mm, fullmm);
 				tlb_start_valid = 0;
 			}
 			zap_bytes = ZAP_BLOCK_SIZE;
