async syscall work: The async syscall code got dated by recent LWKT
authorMatthew Dillon <dillon@dragonflybsd.org>
Fri, 4 Jun 2004 20:35:39 +0000 (20:35 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Fri, 4 Jun 2004 20:35:39 +0000 (20:35 +0000)
commit1fa2b4b4b8b8a5a6131cf534d9fa8a6de41f5835
tree42cf2d6b2a1f93024d6bb529a94f6a7d43ad66d6
parent1425c68a179d4f23cc0fb1534eab573b18d7eeb7
async syscall work: The async syscall code got dated by recent LWKT
changes, set mp_abort_port and clear MSGF_DONE as appropriate.

If a system call returns EASYNC, record the message in p->p_sysmsgq so we
can run them down in exit1().

In exit1(), run down any asynch system calls that are still running.  Note
that this commit does not implement abort support (yet).

Get rid of lwkt_port->mp_refs, it was not being used and it is likely never
going to be used (reference counting LWKT is hazzardous anyway since it
doesn't really fit the access model).

Add lwkt_checkmsg() to support some of the rearranged async syscall code.
14 files changed:
sys/conf/files
sys/i386/i386/trap.c
sys/kern/init_main.c
sys/kern/kern_exit.c
sys/kern/kern_fork.c
sys/kern/kern_sysmsg.c [new file with mode: 0644]
sys/kern/kern_time.c
sys/kern/lwkt_msgport.c
sys/platform/pc32/i386/trap.c
sys/sys/msgport.h
sys/sys/msgport2.h
sys/sys/proc.h
sys/sys/sysent.h
sys/sys/sysmsg.h