I think that I have found a repeatable assertion failure, in
libc/hurd/intr-msg.c That is I have had two hangs with this assertion
printed on the console.
ext2fs.static: intr-msg.c:304:_hurd_intr_rpc_mach_msg:Assertion
`m->header.msgh_id == msgid + 100` failed.
I have a question about this assertion, which seems to only be hit if
both in interrupt mode, and when the interrupt wasn't serviced, so the
second attempt to receive.
This assignment is prior to the assertion.
msgid = m->request.msgh_id
The assertion is testing for msgid+100 == m->header.msgh_id
Is there a protocol that defines why this value should be 100 > than
the assigned value?
This comment mentions that option can be modified, but will msg be altered?
/* Note that the signal trampoline code might modify our OPTION! */
err = INTR_MSG_TRAP (msg, option, send_size,
rcv_size, rcv_name, timeout, notify);
Sorry as far as I have gotten with it so far.
--
Hope springs eternal!
/^\
\ / ASCII RIBBON CAMPAIGN
X AGAINST HTML MAIL
/ \
_______________________________________________
Bug-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-hurd