I guess that I see something that is 'normal', because I observerd the same
thing without my program running. As you can see, I setted a breackpoint on
ds_device_write and letted the kernel continue. After some time the
breakpoint was hit with the result: kmsg != kmsg->ikm_next->ikm_prev.
wagi
(gdb) target remote /dev/ttyS1
Remote debugging using /dev/ttyS1
0x0012bfdc in main (argc=166432, argv=0x1)
at ../../oskit-mach/oskit/x86/main.c:88
88 }
(gdb) b panic
Breakpoint 1 at 0x1f9bc6: file ../../../oskit-20010214/libc/gen/panic.c, line 31.
(gdb) b gdb_break_stub
Breakpoint 2 at 0x118f4b: file ../../oskit-mach/kern/syscall_sw.c, line 296.
(gdb) c
Continuing.
[...]
Breakpoint 2, gdb_break_stub (addr=0x8048670)
at ../../oskit-mach/kern/syscall_sw.c:296
296 return 0;
(gdb) b enable b 3
(gdb) c
Continuing.
Breakpoint 3, ds_device_write (dev=0x40799b4, reply_port=0x40986e4,
reply_port_type=18, mode=8, recnum=0, data=0x4088634 "\003", count=109,
bytes_written=0x412e034) at ../../oskit-mach/oskit/ds_routines.c:686
686 {
(gdb) bt
#0 ds_device_write (dev=0x40799b4, reply_port=0x40986e4, reply_port_type=18,
mode=8, recnum=0, data=0x4088634 "\003", count=109,
bytes_written=0x412e034) at ../../oskit-mach/oskit/ds_routines.c:686
#1 0x0013417b in _Xdevice_write (InHeadP=0x4035164, OutHeadP=0x412e010)
at device_server.c:250
#2 0x0011314e in ipc_kobject_server (request=0x4035154)
at ../../oskit-mach/kern/ipc_kobject.c:192
#3 0x0010d800 in mach_msg_trap (msg=0x12dbaf0, option=3, send_size=56,
rcv_size=40, rcv_name=110, time_out=0, notify=0)
at ../../oskit-mach/ipc/mach_msg.c:1419
#4 0x0013e253 in mach_call_call ()
(gdb) f 3
#3 0x0010d800 in mach_msg_trap (msg=0x12dbaf0, option=3, send_size=56,
rcv_size=40, rcv_name=110, time_out=0, notify=0)
at ../../oskit-mach/ipc/mach_msg.c:1419
1419 kmsg = ipc_kobject_server(kmsg);
(gdb) p/x *kmsg
$52 = {ikm_next = 0x4088f04, ikm_prev = 0xffffff10, ikm_size = 0x100,
ikm_marequest = 0x0, ikm_header = {msgh_bits = 0x80001211, msgh_size = 0x38,
msgh_remote_port = 0x40799f8, msgh_local_port = 0x40986e4,
msgh_seqno = 0x0, msgh_id = 0xaf2}}
(gdb) p/x *kmsg->ikm_next
$53 = {ikm_next = 0x408920c, ikm_prev = 0xffffff10, ikm_size = 0x100,
ikm_marequest = 0x0, ikm_header = {msgh_bits = 0x1111, msgh_size = 0x20,
msgh_remote_port = 0x34, msgh_local_port = 0x28, msgh_seqno = 0x3ec,
msgh_id = 0x5214}}
(gdb) p/x kmsg
$54 = 0x4035154
(gdb) p/x kmsg->ikm_next
$55 = 0x4088f04
(gdb) p/x kmsg->ikm_next->ikm_prev
$56 = 0xffffff10
_______________________________________________
Bug-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-hurd