Go to file
oster 396f9f4598 Re-work some of the guts of the reconstruction code.
Reconmap used to have one pointer for every reconstruction unit.  This
does not scale well in the land of 1TB disks, where some 100MB+ of
"status pointers" are required for typical configurations.  Convert
the reconstruction code to use a "sliding status window" which will
scale nicely regardless of the number of stripes/reconstruction units
in the RAID set.  Convert the main reconstruction loop to rebuild the
array in chunks rather than in one big lump.

As part of these changes, introduce a function to kick any waiters on
the head separation callback list, and use that in the main
reconstruction event queue to wake up the waiters if things have
stalled.  (I believe this may fix a race condition that could occur at
at least at the very end of a disk during reconstruction under heavy
IO load.)

Thanks to Brian Buhrow for all his help, support, and patience in
testing these changes.
2008-05-19 19:49:54 +00:00
bin Normalize TNF license, move to 2 clause. 2008-04-30 13:39:13 +00:00
common In prop_data_create_data(blob, len), if len == 0, allocate no memory 2008-05-15 21:23:33 +00:00
crypto avoid using free_func as an argument because it is already a typedef. 2008-05-10 16:52:05 +00:00
dist Added instructions how I've updated IPF. This should make it easier for anyone 2008-05-18 18:19:05 +00:00
distrib +newfs_udf.debug 2008-05-19 02:50:56 +00:00
doc yamt-pf42-base2 2008-05-19 02:14:45 +00:00
etc copy zbsdmod.o into installation/ and create sums. 2008-05-18 01:45:47 +00:00
games 2-clause my license. 2008-05-08 15:31:07 +00:00
gnu Rename MKPRIVATELIB to LIBISPRIVATE, to make it clearer that this is 2008-05-03 14:48:30 +00:00
include remove the const again - per core. 2008-05-10 22:37:42 +00:00
lib Fix possible memory leak in error path. 2008-05-18 22:36:15 +00:00
libexec Make sure all cached buffers with valid, not yet written data have been 2008-05-16 09:21:59 +00:00
regress Update to libevent 1.4.4-stable. 2008-05-16 20:24:57 +00:00
rescue make all sun2 use -O0 and move most of the hacks out into just 3 files. 2008-02-09 02:37:21 +00:00
sbin Fix two bugs: 2008-05-19 18:00:31 +00:00
share Improve description. Improve markup. Bump date for previous. 2008-05-19 07:53:22 +00:00
sys Re-work some of the guts of the reconstruction code. 2008-05-19 19:49:54 +00:00
tests Fix MKMODULAR=yes builds by resolving installation problems of the k_helper 2008-05-05 19:33:09 +00:00
tools Add rs6000 to the headerlist. Pointed out by Michael Muller 2008-05-14 07:08:40 +00:00
usr.bin The ofmt variable is actually a bit mask (not the character that was 2008-05-16 17:58:33 +00:00
usr.sbin Fix builds with stack protection enabled. 2008-05-18 13:08:58 +00:00
x11 Rename MKPRIVATELIB to LIBISPRIVATE, to make it clearer that this is 2008-05-03 14:48:30 +00:00
build.sh Convert TNF licenses to new 2 clause variant 2008-04-30 13:10:46 +00:00
BUILDING Correct/clarify the default setting of USETOOLS in the previous version. 2008-03-29 05:22:42 +00:00
Makefile Consistently document RELEASEDIR/RELEASEMACHINEDIR. 2008-03-18 04:24:38 +00:00
Makefile.inc
UPDATING mention posix_fadvise lossage. 2008-01-28 03:30:26 +00:00