freebsd-dev/sys
Greg Lehey 2e387f1bd3 vinumstart: If a write request is for a RAID-[45] plex or a volume
with more than one plex, the data will be accessed
            multiple times.  During this time, userland code could
            potentially modify the buffer, thus causing data
            corruption.  In the case of a multi-plexed volume this
            might be cosmetic, but in the case of a RAID-[45] plex it
            can cause severe data corruption which only becomes
            evident after a drive failure.  Avoid this situation by
            making a copy of the data buffer before using it.

	    Note that this solution does not guarantee any particular
	    content of the buffer, just that it remains unchanged for
	    the duration of the request.

Suggested by:	alfred
2001-05-22 02:36:47 +00:00
..
alpha Change pmap_emulate_reference() so that it only touches the vm_page 2001-05-21 16:09:29 +00:00
amd64 Remove a few more spl's I missed earlier. 2001-05-22 00:09:26 +00:00
arm/include Make _BSD_TIME_T_ (time_t) an int' rather than long'. This will help 2001-05-18 01:43:25 +00:00
boot Fix a grammar nit. 2001-05-22 00:29:42 +00:00
cam Remove unneeded includes of sys/ipl.h and machine/ipl.h. 2001-05-15 23:22:29 +00:00
coda Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
compat Sort includes. 2001-05-21 18:52:02 +00:00
compile
conf Separate out isa attachment to its own file. The pci attachment will 2001-05-16 07:32:04 +00:00
contrib/dev Actually biofinish(struct bio *, struct devstat *, int error) is more general 2001-05-06 20:00:03 +00:00
crypto Kernel crypto need binary key material, not symbolic ascii. 2001-03-10 13:02:58 +00:00
ddb Undo part of the tangle of having sys/lock.h and sys/mutex.h included in 2001-05-01 08:13:21 +00:00
dev vinumstart: If a write request is for a RAID-[45] plex or a volume 2001-05-22 02:36:47 +00:00
fs Sort includes from previous commit. 2001-05-21 23:19:50 +00:00
geom Polish error handling with biofinish(). 2001-05-08 09:10:27 +00:00
gnu Change the second argument of vflush() to an integer that specifies 2001-05-16 18:04:37 +00:00
i4b Submitted by: Juha-Matti Liukkonen, Cubical Solutions Ltd (jml@cubical.fi) 2001-05-21 09:24:48 +00:00
i386 Remove a few more spl's I missed earlier. 2001-05-22 00:09:26 +00:00
ia64 Style changes -- revert ordering to mostly two revs ago. 2001-05-18 01:40:40 +00:00
isa Add SmartLink 5634PCV SurfRider 2001-05-20 03:12:55 +00:00
isofs/cd9660 Change the second argument of vflush() to an integer that specifies 2001-05-16 18:04:37 +00:00
kern Remove KASSERT test for sleeping on mv_mtx, instead let WITNESS catch 2001-05-22 00:58:20 +00:00
libkern Add function prototypes and base module for kernel side iconv library. 2001-04-09 09:39:29 +00:00
miscfs Sort includes from previous commit. 2001-05-21 23:19:50 +00:00
modules digiio.h has moved to /usr/include/sys 2001-05-19 09:28:59 +00:00
msdosfs Change the second argument of vflush() to an integer that specifies 2001-05-16 18:04:37 +00:00
net Add a couple more codes for upcoming raylink driver additions. 2001-05-17 21:37:41 +00:00
netatalk Mechanical change to use <sys/queue.h> macro API instead of 2001-02-04 13:13:25 +00:00
netatm Silence some warnings 2001-03-20 10:42:49 +00:00
netgraph Fix a range checking bug in ng_int32_parse which affected 64-bit 2001-05-19 19:36:32 +00:00
netinet In in_ifadown(), differentiate between whether the interface goes 2001-05-11 14:37:34 +00:00
netinet6 Plug memoly leak in overlaps fragment cases. 2001-05-20 15:33:46 +00:00
netipx Undo part of the tangle of having sys/lock.h and sys/mutex.h included in 2001-05-01 08:13:21 +00:00
netkey Remove unneeded includes of sys/ipl.h and machine/ipl.h. 2001-05-15 23:22:29 +00:00
netnatm Change a couple of M_WAITOKs used in M_PREPEND() to M_TRYWAITs, which 2001-04-05 04:20:48 +00:00
netncp Use new kernel_sysctlbyname function. Remove private copy. 2001-05-19 05:48:07 +00:00
netns * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
netsmb Back out scanning file descriptors with holding a process lock. 2001-05-15 10:19:57 +00:00
nfs Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
nfsclient Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
nfsserver Introduce a global lock for the vm subsystem (vm_mtx). 2001-05-19 01:28:09 +00:00
ntfs Change the second argument of vflush() to an integer that specifies 2001-05-16 18:04:37 +00:00
nwfs Change the second argument of vflush() to an integer that specifies 2001-05-16 18:04:37 +00:00
pc98 Update pc98 memory probe functions. 2001-05-21 12:51:44 +00:00
pccard Move allocation of ExCA registers from the base driver into the bus 2001-05-21 07:32:46 +00:00
pci Add description for 82801BA controller. 2001-05-21 01:24:14 +00:00
posix4 o First step in cleaning up authorization code for the posix4 2001-05-06 16:15:42 +00:00
powerpc catch these files up to their i386 neighbors to make alpha boot 2001-05-21 16:04:24 +00:00
rpc Bring in a hybrid of SunSoft's transport-independent RPC (TI-RPC) and 2001-03-19 12:50:13 +00:00
svr4 This patchset fixes a large number of file descriptor race conditions. 2000-11-18 21:01:04 +00:00
sys syslog.h fails to compile with -Wwrite-strings 2001-05-21 17:32:47 +00:00
tools replace calls to non-existant bail() subroutine with calls to 2001-03-23 11:48:50 +00:00
ufs Update softdep_setup_directory_add prototype to reflect changes in 2001-05-20 15:59:55 +00:00
vm Sort includes. 2001-05-22 00:56:25 +00:00
Makefile