Fixes TLB shootdown bug
authorBarret Rhoden <brho@cs.berkeley.edu>
Sat, 8 Feb 2014 22:00:27 +0000 (14:00 -0800)
committerBarret Rhoden <brho@cs.berkeley.edu>
Sun, 9 Feb 2014 07:22:59 +0000 (23:22 -0800)
Need to fix this crap permanently, soon!

kern/src/process.c

index 24e5bc3..c2e5838 100644 (file)
@@ -1788,6 +1788,11 @@ void proc_tlbshootdown(struct proc *p, uintptr_t start, uintptr_t end)
                                                    0, KMSG_IMMEDIATE);
                        }
                        break;
+               default:
+                       /* TODO: til we fix shootdowns, there are some odd cases where we
+                        * have the address space loaded, but the state is in transition. */
+                       if (p == current)
+                               tlbflush();
        }
        spin_unlock(&p->proc_lock);
 }