SMP - fixed IPI livelock

- two CPUs can issue IPI to each other now without any hazzard

- we must be able to handle synchronous scheduling IPIs from
  other CPUs when we are waiting for attention from another one.
  Otherwise we might livelock.

- necessary barriers to prevent reordering
This commit is contained in:
Tomas Hruby
2011-10-26 15:43:36 +00:00
committed by Tomas Hruby
parent 0468fca72b
commit 0a55e63413
4 changed files with 74 additions and 20 deletions

View File

@@ -33,9 +33,12 @@ PUBLIC void panic(const char *fmt, ...)
printf("\n");
}
printf("kernel: ");
printf("kernel on CPU %d: ", cpuid);
util_stacktrace();
printf("current process : ");
proc_stacktrace(get_cpulocal_var(proc_ptr));
/* Abort MINIX. */
minix_shutdown(NULL);
}