Another fix for oskit without SMP support. It still doesn't work however,
It displays while probing the IRQ of my ide drives and hangs. I'm making
progress at least. :)
The patch is below, the gs register must be pushed because it's part of the
trap_state stuct passed to user_trap() and it is already popped when
returning to the interrupted thread. The syscall_trace things doesn't exist
since debug_i386.c is removed from oskit-mach and should by removed.
If you're trying to compile oskit-mach, do "make kernel-ide" or something like
that, else it doesn't build. :)
Index: locore.S
===================================================================
RCS file: /cvsroot/hurd/gnumach/i386/i386/locore.S,v
retrieving revision 1.3.2.4
diff -u -r1.3.2.4 locore.S
--- locore.S 2001/04/05 06:52:46 1.3.2.4
+++ locore.S 2001/06/02 23:16:02
@@ -456,9 +456,7 @@
pushl %ds /* and the segment registers */
pushl %es
pushl %fs
-#if MULTIPROCESSOR
pushl %gs
-#endif
/* Note that we have to load the segment registers
even if this is a trap from the kernel,
@@ -1095,17 +1093,6 @@
loop 0b /* loop for all arguments */
mach_call_call:
-
-#ifdef DEBUG
- testb $0xff,EXT(syscall_trace)
- jz 0f
- pushl %eax
- call EXT(syscall_trace_print)
- /* will return with syscallofs still (or again) in eax */
- addl $4,%esp
-0:
-#endif /* DEBUG */
-
call *EXT(mach_trap_table)+4(%eax)
/* call procedure */
movl %esp,%ecx /* get kernel stack */
_______________________________________________
Bug-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-hurd