DragonFly commits List (threaded) for 2009-10
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
git: vkernel - Fix FP corruption from preemptive thread switch
commit eaaa6d6031b7b67f3b067023af0d99386a1d6d9b
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date: Fri Oct 2 15:53:17 2009 -0700
vkernel - Fix FP corruption from preemptive thread switch
* Recent work on the vkernel enabled preemptive interrupt thread switching.
This introduced a race where the floating point state could change
out from under the vkernel's go_user() function, causing the FP state
in the virtual user process to become corrupt.
* Fixed by introducing a critical section which essentially defers any
preemptive thread switches inside go_user().
Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Test-cases-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Summary of changes:
sys/platform/vkernel/i386/trap.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/eaaa6d6031b7b67f3b067023af0d99386a1d6d9b
--
DragonFly BSD source repository
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]