freebsd-nq/sys
Kirk McKusick 4d533db182 When creating a snapshot, create a list of initially allocated blocks.
Whenever doing a copy-on-write check, first look in the list of
initially allocated blocks to see if it is there. If so, no further
check is needed. If not, fall through and do the full check. This
change eliminates one of two known deadlocks caused by snapshots.
Handling the second deadlock will be the subject of another check-in.
This change also reduces the cost of the copy-on-write check by
speeding up the verification of frequently checked blocks.

Sponsored by:	DARPA & NAI Labs.
2002-10-09 06:13:48 +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 Fix some really pedantic GCC warnings. 2002-07-15 13:45:15 +00:00
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 - fixed the order of searching SA table for packets. 2002-07-10 16:39:38 +00:00
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 When creating a snapshot, create a list of initially allocated blocks. 2002-10-09 06:13:48 +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