freebsd-dev/sys
Julian Elischer 48bfcddd94 Round out the facilty for a 'bound' thread to loan out its KSE
in specific situations. The owner thread must be blocked, and the
borrower can not proceed back to user space with the borrowed KSE.
The borrower will return the KSE on the next context switch where
teh owner wants it back. This removes a lot of possible
race conditions and deadlocks. It is consceivable that the
borrower should inherit the priority of the owner too.
that's another discussion and would be simple to do.

Also, as part of this, the "preallocatd spare thread" is attached to the
thread doing a syscall rather than the KSE. This removes the need to lock
the scheduler when we want to access it, as it's now "at hand".

DDB now shows a lot mor info for threaded proceses though it may need
some optimisation to squeeze it all back into 80 chars again.
(possible JKH project)

Upcalls are now "bound" threads, but "KSE Lending" now means that
other completing syscalls can be completed using that KSE before the upcall
finally makes it back to the UTS. (getting threads OUT OF THE KERNEL is
one of the highest priorities in the KSE system.) The upcall when it happens
will present all the completed syscalls to the KSE for selection.
2002-10-09 02:33:36 +00:00
..
alpha Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
amd64 Round out the facilty for a 'bound' thread to loan out its KSE 2002-10-09 02:33:36 +00:00
arm Initiate deorbit burn for the i386-only a.out related support. Moves are 2002-09-17 01:49:00 +00:00
boot Revert MEM_USR back to 0xa000 for BTX clients. Instead, adjust boot2 2002-10-08 18:19:02 +00:00
cam Fix the location of the length bytes in the 12-byte read/write CDB 2002-10-08 17:12:44 +00:00
coda Back our kernel support for reliable signal queues. 2002-10-01 17:15:53 +00:00
compat Integrate mac_check_socket_send() and mac_check_socket_receive() 2002-10-06 14:39:15 +00:00
conf Import the libc fnmatch() into the kernel. This will be used by, 2002-10-08 04:15:55 +00:00
contrib Resolve conflicts arising from the ACPI CA 20021002 import. 2002-10-04 20:09:19 +00:00
crypto
ddb Round out the facilty for a 'bound' thread to loan out its KSE 2002-10-09 02:33:36 +00:00
dev Fix for the panic when using a Promise TX2. 2002-10-08 18:25:10 +00:00
fs Treat the pathptrn field as a real pattern with the aid of fnmatch(). 2002-10-08 04:21:54 +00:00
geom For now, don't wait for drives to stop returning EBUSY. There is too 2002-10-08 07:03:58 +00:00
gnu - Lock access to the buf lists. 2002-09-25 02:34:56 +00:00
i4b It's bad enough people can't figure out to use the same code, or in 2002-09-11 12:44:58 +00:00
i386 Round out the facilty for a 'bound' thread to loan out its KSE 2002-10-09 02:33:36 +00:00
ia64 Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
isa Fix a probably rare and inconsequential memory leak. 2002-10-02 20:29:54 +00:00
isofs/cd9660 Be consistent about "static" functions: if the function is marked 2002-09-28 17:15:38 +00:00
kern Round out the facilty for a 'bound' thread to loan out its KSE 2002-10-09 02:33:36 +00:00
libkern Allow for multiple #includes of this file. 2002-10-08 07:24:19 +00:00
modules Disconnect "sem" module from the build. 2002-10-07 04:08:07 +00:00
net When reusing a pointer as a number, at least cast it 2002-10-06 14:02:35 +00:00
netatalk Add more ethernet types and move AppleTalk types into proper location. 2002-09-06 17:02:29 +00:00
netatm Add a field to struct cmn_unit to hold a pointer to the driver's softc. 2002-10-01 22:04:31 +00:00
netgraph use __packed. 2002-09-23 18:54:32 +00:00
netinet Since bpf is no longer an optional component, remove associated ifdef's. 2002-10-02 09:38:17 +00:00
netinet6 s/__attribute__((__packed__))/__packed/g 2002-09-23 06:25:08 +00:00
netipx Replace various spelling with FALLTHROUGH which is lint()able 2002-08-25 13:23:09 +00:00
netkey
netnatm
netncp Back our kernel support for reliable signal queues. 2002-10-01 17:15:53 +00:00
netns Use m_length() instead of home-rolled versions. 2002-09-18 19:44:14 +00:00
netsmb Some kernel threads try to do significant work, and the default KSTACK_PAGES 2002-10-02 07:44:29 +00:00
nfs nfsnode.h was moved to ../nfsclient ages ago. I forgot to remove it here. 2002-09-06 05:47:33 +00:00
nfsclient Some kernel threads try to do significant work, and the default KSTACK_PAGES 2002-10-02 07:44:29 +00:00
nfsserver Correct a problem wherein NFS servers running NFSv2 would not return 2002-10-03 21:50:37 +00:00
opencrypto o split crypto_proc into two threads: one for processing requests and one 2002-10-07 18:46:38 +00:00
pc98 MFi386: revision 1.67. 2002-10-08 12:54:56 +00:00
pccard MFp4: Comment about not assuming INTA# for 6729 2002-10-07 07:02:48 +00:00
pci Ooops. Need to free dc_srom on detach to not leak memory. 2002-10-07 05:29:13 +00:00
posix4 Remove duplicate uninstalled aio.h header. 2002-10-07 21:18:30 +00:00
powerpc Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
rpc
security Integrate mac_check_socket_send() and mac_check_socket_receive() 2002-10-06 14:39:15 +00:00
sparc64 Add conditionals to allow va_list to be defined in other headers. 2002-10-06 22:02:06 +00:00
sys Round out the facilty for a 'bound' thread to loan out its KSE 2002-10-09 02:33:36 +00:00
tools - Move ASSERT_VOP_*LOCK* functionality into functions in vfs_subr.c 2002-09-26 04:48:44 +00:00
ufs - Remove LK_INTERLOCK from the vn_lock() in ffs_snapshot(). 2002-10-08 21:00:52 +00:00
vm Rename the mutex thread and process states to use a more generic 'LOCK' 2002-10-02 20:31:47 +00:00
Makefile