[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnumach ./ChangeLog i386/i386/pcb.c
From: |
Marcus Brinkmann |
Subject: |
gnumach ./ChangeLog i386/i386/pcb.c |
Date: |
Sat, 09 Nov 2002 17:22:21 -0500 |
CVSROOT: /cvsroot/hurd
Module name: gnumach
Changes by: Marcus Brinkmann <address@hidden> 02/11/09 17:22:21
Modified files:
. : ChangeLog
i386/i386 : pcb.c
Log message:
2002-11-09 Marcus Brinkmann <address@hidden>
* i386/i386/pcb.c (switch_context): Update the I/O permission
bitmap from stack_handoff() here (not only in stack_handoff()).
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnumach/gnumach/ChangeLog.diff?tr1=1.149&tr2=1.150&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnumach/gnumach/i386/i386/pcb.c.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
Patches:
Index: gnumach/ChangeLog
diff -u gnumach/ChangeLog:1.149 gnumach/ChangeLog:1.150
--- gnumach/ChangeLog:1.149 Tue Nov 5 19:52:43 2002
+++ gnumach/ChangeLog Sat Nov 9 17:22:21 2002
@@ -1,3 +1,8 @@
+2002-11-09 Marcus Brinkmann <address@hidden>
+
+ * i386/i386/pcb.c (switch_context): Update the I/O permission
+ bitmap from stack_handoff() here (not only in stack_handoff()).
+
2002-11-05 Roland McGrath <address@hidden>
* oskit/pc/osenv_bell.c (direct_cons_bell): Use a private timer
Index: gnumach/i386/i386/pcb.c
diff -u gnumach/i386/i386/pcb.c:1.4 gnumach/i386/i386/pcb.c:1.5
--- gnumach/i386/i386/pcb.c:1.4 Thu Oct 3 22:45:04 2002
+++ gnumach/i386/i386/pcb.c Sat Nov 9 17:22:21 2002
@@ -313,6 +313,19 @@
old, mycpu);
PMAP_ACTIVATE_USER(vm_map_pmap(new_task->map),
new, mycpu);
+
+ simple_lock (&new_task->machine.iopb_lock);
+#if NCPUS>1
+#warning SMP support missing (avoid races with io_perm_modify).
+#else
+ /* This optimization only works on a single processor
+ machine, where old_task's iopb can not change while
+ we are switching. */
+ if (old_task->machine.iopb || new_task->machine.iopb)
+#endif
+ update_ktss_iopb (new_task->machine.iopb,
+ new_task->machine.iopb_size);
+ simple_unlock (&new_task->machine.iopb_lock);
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- gnumach ./ChangeLog i386/i386/pcb.c,
Marcus Brinkmann <=