1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00
freebsd/sys
Ian Dowse 4784a46912 Replace the code for reading and writing the kernel message buffer
with a new implementation that has a mostly reentrant "addchar"
routine, supports multiple message buffers in the kernel, and hides
the implementation details from callers.

The new code uses a kind of sequence number to represend the current
read and write positions in the buffer. This approach (suggested
mainly by bde) permits the read and write pointers to be maintained
separately, which reduces the number of atomic operations that are
required. The "mostly reentrant" above refers to the way that while
it is now always safe to have any number of concurrent writers,
readers could see the message buffer after a writer has advanced
the pointers but before it has witten the new character.

Discussed on:	freebsd-arch
2003-06-22 02:18:31 +00:00
..
alpha Fix a performance bug in all of the various implementations of 2003-06-18 02:57:38 +00:00
amd64 Use direct map in pmap_map(). 2003-06-20 14:09:33 +00:00
arm sys/sys/limits.h: 2003-05-19 20:29:07 +00:00
boot When looking for the ':' separator in the root path, don't go past 2003-06-16 20:48:56 +00:00
cam Merge common XPT_CALC_GEOMETRY functions into a single convenience function. 2003-06-14 22:17:41 +00:00
coda Remove in toto coda_strategy which incorrectly implemented vop_panic(); 2003-06-15 18:45:15 +00:00
compat Rename P_THREADED to P_SA. P_SA means a process is using scheduler 2003-06-15 00:31:24 +00:00
conf Replace the code for reading and writing the kernel message buffer 2003-06-22 02:18:31 +00:00
contrib This commit was generated by cvs2svn to compensate for changes in r115367, 2003-05-28 17:32:31 +00:00
crypto Use __FBSDID(). 2003-06-10 21:44:29 +00:00
ddb Rename P_THREADED to P_SA. P_SA means a process is using scheduler 2003-06-15 00:31:24 +00:00
dev fix another LP64 problem. READ_IVAR takes a pointer to an uintptr_t, not 2003-06-20 07:22:54 +00:00
fs fix grammar in comment 2003-06-20 23:29:04 +00:00
geom Sleep on "-" in our normal state to simplify debugging. 2003-06-18 10:33:09 +00:00
gnu Add the same KASSERT to all VOP_STRATEGY and VOP_SPECSTRATEGY implementations 2003-06-15 18:53:00 +00:00
i4b Use __FBSDID(). 2003-06-11 00:01:05 +00:00
i386 fix another LP64 problem. READ_IVAR takes a pointer to an uintptr_t, not 2003-06-20 07:22:54 +00:00
ia64 Add TLS related relocation. 2003-06-19 06:51:43 +00:00
isa Force media autodetection if the device has lost its parameter table. 2003-06-16 08:42:20 +00:00
isofs/cd9660 Add the same KASSERT to all VOP_STRATEGY and VOP_SPECSTRATEGY implementations 2003-06-15 18:53:00 +00:00
kern Replace the code for reading and writing the kernel message buffer 2003-06-22 02:18:31 +00:00
libkern Use __FBSDID(). 2003-06-11 05:37:42 +00:00
modules Add "GEOM_FOX", a class which detects and selects between multiple 2003-06-18 09:29:28 +00:00
net Now that most of this file is new, stylify the rest and correct the 2003-06-18 10:53:49 +00:00
netatalk
netatm Use __FBSDID(). 2003-06-11 07:22:30 +00:00
netgraph Use the <sys/bitstring.h> rather than <bitstring.h> 2003-06-13 19:40:44 +00:00
netinet Map icmp time exceeded responses to EHOSTUNREACH rather than 0 (no error); 2003-06-17 06:21:08 +00:00
netinet6 Do not attempt to access to inp_socket fields if the socket is in the TIME_WAIT 2003-06-17 00:31:30 +00:00
netipsec Introduce an M_ASSERTPKTHDR() macro which performs the very common task 2003-04-08 14:25:47 +00:00
netipx Use __FBSDID(). 2003-06-11 05:37:42 +00:00
netkey Use __FBSDID(). 2003-06-11 05:37:42 +00:00
netnatm Use __FBSDID(). 2003-06-11 05:37:42 +00:00
netncp Use __FBSDID(). 2003-06-11 05:37:42 +00:00
netsmb Avoid dereferencing the thread pointer in smb_iod_addrq() if it's NULL. 2003-06-14 15:45:34 +00:00
nfs
nfsclient Lock the vm object when freeing a page. 2003-06-17 05:17:00 +00:00
nfsserver Increase the size of the NFS server hash table to improve performance 2003-06-21 21:01:44 +00:00
opencrypto Initialize struct fileops with C99 sparse initialization. 2003-06-18 18:16:40 +00:00
pc98 Replace evil abuse of geteblk() with malloc(9). 2003-06-16 07:41:47 +00:00
pccard OLDCARD is OBSOLETE_IN_6. Tag it as such. 2003-06-12 04:46:43 +00:00
pci Add vm object locking. 2003-06-19 02:01:33 +00:00
posix4 Use __FBSDID(). 2003-06-11 06:34:30 +00:00
powerpc Migrate the thread stack management functions from the machine-dependent 2003-06-14 23:23:55 +00:00
rpc
security Use __FBSDID(). 2003-06-11 00:56:59 +00:00
sparc64 add support for peeking at pci busses on UltraSparc systems. This prevents 2003-06-22 01:26:08 +00:00
sys Replace the code for reading and writing the kernel message buffer 2003-06-22 02:18:31 +00:00
tools The assertions generated to test VFS locking never included checks 2003-06-20 12:15:37 +00:00
ufs Lock the vm object when freeing pages. 2003-06-15 21:50:38 +00:00
vm Make some style and white-space changes to the copy-on-write path through 2003-06-22 00:00:11 +00:00
Makefile Exclude sys/boot for amd64. There are still toolchain issues to deal 2003-05-08 06:35:39 +00:00