freebsd-skq/sys
mckusick acc66855bf This patch corrects the first round of panics and hangs reported
with the new snapshot code.

Update addaliasu to correctly implement the semantics of the old
checkalias function. When a device vnode first comes into existence,
check to see if an anonymous vnode for the same device was created
at boot time by bdevvp(). If so, adopt the bdevvp vnode rather than
creating a new vnode for the device. This corrects a problem which
caused the kernel to panic when taking a snapshot of the root
filesystem.

Change the calling convention of vn_write_suspend_wait() to be the
same as vn_start_write().

Split out softdep_flushworklist() from softdep_flushfiles() so that
it can be used to clear the work queue when suspending filesystem
operations.

Access to buffers becomes recursive so that snapshots can recursively
traverse their indirect blocks using ffs_copyonwrite() when checking
for the need for copy on write when flushing one of their own indirect
blocks. This eliminates a deadlock between the syncer daemon and a
process taking a snapshot.

Ensure that softdep_process_worklist() can never block because of a
snapshot being taken. This eliminates a problem with buffer starvation.

Cleanup change in ffs_sync() which did not synchronously wait when
MNT_WAIT was specified. The result was an unclean filesystem panic
when doing forcible unmount with heavy filesystem I/O in progress.

Return a zero'ed block when reading a block that was not in use at
the time that a snapshot was taken. Normally, these blocks should
never be read. However, the readahead code will occationally read
them which can cause unexpected behavior.

Clean up the debugging code that ensures that no blocks be written
on a filesystem while it is suspended. Snapshots must explicitly
label the blocks that they are writing during the suspension so that
they do not cause a `write on suspended filesystem' panic.

Reorganize ffs_copyonwrite() to eliminate a deadlock and also to
prevent a race condition that would permit the same block to be
copied twice. This change eliminates an unexpected soft updates
inconsistency in fsck caused by the double allocation.

Use bqrelse rather than brelse for buffers that will be needed
soon again by the snapshot code. This improves snapshot performance.
2000-07-24 05:28:33 +00:00
..
alpha Revert implementation of setfsuid and setfsgid due to security 2000-07-20 05:37:41 +00:00
amd64 Default the pcic to polling. Some laptops need to have polling mode 2000-07-19 16:32:38 +00:00
boot Remove an unnecessary .PATH entry. 2000-07-21 22:36:42 +00:00
cam scsi_all.c: 2000-07-18 19:48:58 +00:00
coda Remove 42 unneeded #include <sys/ioccom.h>. 2000-05-03 07:31:38 +00:00
compat Add bounds checking to stackgap_alloc. Previously it was possible 2000-07-23 16:54:18 +00:00
compile
conf Add the tap driver. 2000-07-20 17:01:10 +00:00
contrib fix conflicts 2000-07-19 14:02:09 +00:00
crypto sync with kame tree as of july00. tons of bug fixes/improvements. 2000-07-04 16:35:15 +00:00
ddb Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
dev MFPAO: Add support for AX88190, equipped in MELCO LPC3-TX. 2000-07-23 15:15:43 +00:00
fs This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
geom Move the truncation code out of vn_open and into the open system call 2000-07-04 03:34:11 +00:00
gnu This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
i4b Borrow phk's axe and apply the next stage of config(8)'s evolution. 2000-06-13 22:28:50 +00:00
i386 Add bounds checking to stackgap_alloc. Previously it was possible 2000-07-23 16:54:18 +00:00
isa This is yet another attempt to fix "psmintr out of sync.." problems. 2000-07-22 04:08:12 +00:00
isofs/cd9660 This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
kern This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
libkern Comment out unavailable call. This needs to be revisited when the entropy 2000-06-25 10:15:58 +00:00
miscfs This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
modules Somehow the module makefile got missed in the big commit. 2000-07-21 15:09:25 +00:00
msdosfs Certain error contitions cause msdosfs_rename() to decrement the 2000-07-14 11:52:56 +00:00
net When a connection is being dropped due to a listen queue overflow, 2000-07-21 23:26:37 +00:00
netatalk Just need to pass the address family to if_simloop(), not the whole sockaddr. 2000-05-24 21:16:56 +00:00
netatm Just need to pass the address family to if_simloop(), not the whole sockaddr. 2000-05-24 21:16:56 +00:00
netgraph Allocate memory with M_NOWAIT instead of M_WAITOK, because it's possible 2000-07-20 17:23:49 +00:00
netinet When a connection is being dropped due to a listen queue overflow, 2000-07-21 23:26:37 +00:00
netinet6 s/IPSEC_IPV6FWD/IPSEC/. this avoids unexpected behavior on ipv6 fowarding. 2000-07-16 07:56:54 +00:00
netipx Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
netkey Add missing #include to unbreak IPSEC_DEBUG builds 2000-07-07 08:36:00 +00:00
netnatm Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
netncp Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
netns Clean up some loose ends in the network code, including the X.25 and ISO 2000-02-13 03:32:07 +00:00
nfs This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
nfsclient This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
nfsserver This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
ntfs Back out the previous change to the queue(3) interface. 2000-05-26 02:09:24 +00:00
nwfs Previous commit changing SYSCTL_HANDLER_ARGS violated KNF. 2000-07-04 11:25:35 +00:00
pc98 Make all Ethernet drivers attach using ether_ifattach() and detach using 2000-07-13 22:54:34 +00:00
pccard There is no atdevbase on the alpha. Hide this case statement on alpha until 2000-06-23 22:47:17 +00:00
pci Tweak probe message so that 1000baseSX and 1000baseT cards are 2000-07-20 23:43:45 +00:00
posix4 Add $FreeBSD$ 2000-05-01 20:32:07 +00:00
powerpc Support bounce buffers for ISA DMA on the alpha. This is required for the 2000-06-19 18:41:27 +00:00
rpc
svr4 Add snapshots to the fast filesystem. Most of the changes support 2000-07-11 22:07:57 +00:00
sys This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
tools remove crufty exec stuff, perl is in the base system 2000-06-27 19:09:55 +00:00
ufs This patch corrects the first round of panics and hangs reported 2000-07-24 05:28:33 +00:00
vm Add snapshots to the fast filesystem. Most of the changes support 2000-07-11 22:07:57 +00:00
Makefile If "MODULES_WITH_WORLD" is defined, sys/modules will be built with the 2000-06-17 10:51:56 +00:00