diff -Naurp -X /home/jbarnes/dontdiff 230-tlb-global-flush-fix.patch/kernel/sched.c 240-node-history-migration.patch/kernel/sched.c --- 230-tlb-global-flush-fix.patch/kernel/sched.c Thu Feb 12 10:23:10 2004 +++ 240-node-history-migration.patch/kernel/sched.c Thu Feb 12 11:17:17 2004 @@ -25,6 +25,7 @@ #include #include #include +#include #include #include #include @@ -1141,6 +1142,14 @@ void migrate_to_cpu(int dest_cpu) task_rq_unlock(rq, &flags); wake_up_process(rq->migration_thread); wait_for_completion(&req.done); + + /* + * we want a new context here. This eliminates TLB + * flushes on the cpus where the process executed prior to + * the migration. + */ + flush_tlb_mm(current->mm); + return; } out: