The NetBSD Project

CVS log for src/sys/dev/raidframe/rf_reconstruct.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / dev / raidframe

Request diff between arbitrary revisions


Keyword substitution: kv
Default branch: MAIN


Revision 1.127.10.2: download - view: text, markup, annotated - select for diffs
Sun Apr 28 12:09:08 2024 UTC (7 months, 1 week ago) by martin
Branches: netbsd-10
Diff to: previous 1.127.10.1: preferred, colored; branchpoint 1.127: preferred, colored; next MAIN 1.128: preferred, colored
Changes since revision 1.127.10.1: +32 -12 lines
Pull up following revision(s) (requested by oster in ticket #674):

	sys/dev/raidframe/rf_raid.h: revision 1.52
	sbin/raidctl/raidctl.8: revision 1.80
	sys/dev/raidframe/rf_driver.c: revision 1.141
	sys/dev/raidframe/rf_disks.c: revision 1.94
	sys/dev/raidframe/rf_diskqueue.c: revision 1.64
	sys/dev/raidframe/rf_diskqueue.h: revision 1.30
	sys/dev/raidframe/rf_disks.h: revision 1.15
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.414
	sys/dev/raidframe/rf_reconstruct.c: revision 1.129
	sys/dev/raidframe/raidframeio.h: revision 1.12
	sbin/raidctl/raidctl.c: revision 1.79

Implement hot removal of spares and components. From manu@.

Implement a long desired feature of automatically incorporating
a used spare into the array after a reconstruct.

Given the configuration:

Components:
 /dev/wd0e: failed
 /dev/wd1e: optimal
 /dev/wd2e: optimal
Spares:
 /dev/wd3e: spare

Running 'raidctl -F /dev/wd0e raid0' will now result in the
following configuration after a successful rebuild:

Components:
 /dev/wd3e: optimal
 /dev/wd1e: optimal
 /dev/wd2e: optimal
No spares.

Thanks to manu@ for the development of the initial set of changes
which allowed the changes to automatically incorporate a used spare
to come to fruition. Thanks also to manu@ for useful discussions
about and additional testing of these changes.

Revision 1.129: download - view: text, markup, annotated - select for diffs
Sun Sep 17 20:07:39 2023 UTC (14 months, 3 weeks ago) by oster
Branches: MAIN
CVS tags: thorpej-ifq-base, thorpej-ifq, thorpej-altq-separation-base, thorpej-altq-separation, perseant-exfatfs-base-20240630, perseant-exfatfs-base, perseant-exfatfs, HEAD
Diff to: previous 1.128: preferred, colored
Changes since revision 1.128: +32 -12 lines


Implement hot removal of spares and components.  From manu@.

Implement a long desired feature of automatically incorporating
a used spare into the array after a reconstruct.

Given the configuration:
Components:
           /dev/wd0e: failed
           /dev/wd1e: optimal
           /dev/wd2e: optimal
Spares:
           /dev/wd3e: spare

Running 'raidctl -F /dev/wd0e raid0' will now result in the
following configuration after a successful rebuild:
Components:
           /dev/wd3e: optimal
           /dev/wd1e: optimal
           /dev/wd2e: optimal
No spares.

Thanks to manu@ for the development of the initial set of changes
which allowed the changes to automatically incorporate a used spare
to come to fruition.  Thanks also to manu@ for useful discussions
about and additional testing of these changes.

Revision 1.122.4.2: download - view: text, markup, annotated - select for diffs
Sat Sep 9 14:56:10 2023 UTC (15 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-4-RELEASE
Diff to: previous 1.122.4.1: preferred, colored; branchpoint 1.122: preferred, colored; next MAIN 1.123: preferred, colored
Changes since revision 1.122.4.1: +2 -15 lines
Pull up following revision(s) (requested by oster in ticket #1729):

	sys/dev/raidframe/rf_reconstruct.c: revision 1.128

Revision 1.104 actually fixed the issues that were preventing
us from freeing the ReconControl structures.  So free them
and thus also prevent a panic on shutdown due to items not
being correctly returned to the pool.

Thanks to manu@ for report of the panic, and for initial testing
of the changes.

Revision 1.127.10.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 14:54:38 2023 UTC (15 months ago) by martin
Branches: netbsd-10
CVS tags: netbsd-10-0-RELEASE, netbsd-10-0-RC6, netbsd-10-0-RC5, netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Diff to: previous 1.127: preferred, colored
Changes since revision 1.127: +2 -15 lines
Pull up following revision(s) (requested by oster in ticket #359):

	sys/dev/raidframe/rf_reconstruct.c: revision 1.128

Revision 1.104 actually fixed the issues that were preventing
us from freeing the ReconControl structures.  So free them
and thus also prevent a panic on shutdown due to items not
being correctly returned to the pool.

Thanks to manu@ for report of the panic, and for initial testing
of the changes.

Revision 1.128: download - view: text, markup, annotated - select for diffs
Fri Sep 8 22:55:32 2023 UTC (15 months ago) by oster
Branches: MAIN
Diff to: previous 1.127: preferred, colored
Changes since revision 1.127: +2 -15 lines


Revision 1.104 actually fixed the issues that were preventing
us from freeing the ReconControl structures.  So free them
and thus also prevent a panic on shutdown due to items not
being correctly returned to the pool.

Thanks to manu@ for report of the panic, and for initial testing
of the changes.

XXX pullup-9
XXX pullup-10

Revision 1.125.4.1: download - view: text, markup, annotated - select for diffs
Sun Aug 1 22:42:31 2021 UTC (3 years, 4 months ago) by thorpej
Branches: thorpej-i2c-spi-conf
Diff to: previous 1.125: preferred, colored; next MAIN 1.126: preferred, colored
Changes since revision 1.125: +25 -20 lines
Sync with HEAD.

Revision 1.127: download - view: text, markup, annotated - select for diffs
Tue Jul 27 03:01:48 2021 UTC (3 years, 4 months ago) by oster
Branches: MAIN
CVS tags: thorpej-i2c-spi-conf2-base, thorpej-i2c-spi-conf2, thorpej-i2c-spi-conf-base, thorpej-futex2-base, thorpej-futex2, thorpej-cfargs2-base, thorpej-cfargs2, netbsd-10-base, bouyer-sunxi-drm-base, bouyer-sunxi-drm
Branch point for: netbsd-10
Diff to: previous 1.126: preferred, colored
Changes since revision 1.126: +5 -5 lines
rf_CreateDiskQueueData() no longer uses waitflag, and will always succeed.
Cleanup the error path for the (no longer needed) PR_NOWAIT cases.

Revision 1.126: download - view: text, markup, annotated - select for diffs
Fri Jul 23 00:54:45 2021 UTC (3 years, 4 months ago) by oster
Branches: MAIN
Diff to: previous 1.125: preferred, colored
Changes since revision 1.125: +22 -17 lines

Extensive mechanical changes to the pools used in RAIDframe.

Alloclist remains not per-RAID, so initialize that pool
separately/differently than the rest.

The remainder of pools in RF_Pools_s are now per-RAID pools.  Mostly
mechanical changes to functions to allocate/destroy per-RAID pools.
Needed to make raidPtr available in certain cases to be able to find
the per-RAID pools.

Extend rf_pool_init() to now populate a per-RAID wchan value that is
unique to each pool for a given RAID device.

TODO: Complete the analysis of the minimum number of items that are
required for each pool to allow IO to progress (i.e. so that a request
for pool resources can always be satisfied), and dynamically scale
minimum pool sizes based on RAID configuration.

Revision 1.124.8.1: download - view: text, markup, annotated - select for diffs
Sat Apr 3 22:28:49 2021 UTC (3 years, 8 months ago) by thorpej
Branches: thorpej-futex
Diff to: previous 1.124: preferred, colored; next MAIN 1.125: preferred, colored
Changes since revision 1.124: +4 -5 lines
Sync with HEAD.

Revision 1.121.12.1: download - view: text, markup, annotated - select for diffs
Wed Feb 17 09:36:10 2021 UTC (3 years, 9 months ago) by martin
Branches: netbsd-8
CVS tags: netbsd-8-3-RELEASE
Diff to: previous 1.121: preferred, colored; next MAIN 1.122: preferred, colored
Changes since revision 1.121: +4 -5 lines
Pull up following revision(s) (requested by oster in ticket #1655):

	sys/dev/raidframe/rf_reconstruct.c: revision 1.125

Fix a long long-standing off-by-one error in computing lastPSID.

SUsPerPU is only really supported for a value of 1, and since the
first PSID is 0, the last will be numStripe-1.  Also update the
setting of pending_writes to reflect the change to lastPSID.

Needs pullups to -8 and -9.

Revision 1.122.4.1: download - view: text, markup, annotated - select for diffs
Wed Feb 17 09:34:20 2021 UTC (3 years, 9 months ago) by martin
Branches: netbsd-9
CVS tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE
Diff to: previous 1.122: preferred, colored
Changes since revision 1.122: +4 -5 lines
Pull up following revision(s) (requested by oster in ticket #1206):

	sys/dev/raidframe/rf_reconstruct.c: revision 1.125

Fix a long long-standing off-by-one error in computing lastPSID.

SUsPerPU is only really supported for a value of 1, and since the
first PSID is 0, the last will be numStripe-1.  Also update the
setting of pending_writes to reflect the change to lastPSID.

Needs pullups to -8 and -9.

Revision 1.125: download - view: text, markup, annotated - select for diffs
Mon Feb 15 23:27:03 2021 UTC (3 years, 9 months ago) by oster
Branches: MAIN
CVS tags: thorpej-futex-base, thorpej-cfargs-base, thorpej-cfargs, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Branch point for: thorpej-i2c-spi-conf
Diff to: previous 1.124: preferred, colored
Changes since revision 1.124: +4 -5 lines
Fix a long long-standing off-by-one error in computing lastPSID.

SUsPerPU is only really supported for a value of 1, and since the
first PSID is 0, the last will be numStripe-1.  Also update the
setting of pending_writes to reflect the change to lastPSID.

Needs pullups to -8 and -9.

Revision 1.121.20.3: download - view: text, markup, annotated - select for diffs
Mon Apr 13 08:04:47 2020 UTC (4 years, 7 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.121.20.2: preferred, colored; branchpoint 1.121: preferred, colored; next MAIN 1.122: preferred, colored
Changes since revision 1.121.20.2: +31 -32 lines
Mostly merge changes from HEAD upto 20200411

Revision 1.121.20.2: download - view: text, markup, annotated - select for diffs
Wed Apr 8 14:08:12 2020 UTC (4 years, 8 months ago) by martin
Branches: phil-wifi
Diff to: previous 1.121.20.1: preferred, colored; branchpoint 1.121: preferred, colored
Changes since revision 1.121.20.1: +4 -4 lines
Merge changes from current as of 20200406

Revision 1.124: download - view: text, markup, annotated - select for diffs
Sun Dec 8 12:14:40 2019 UTC (5 years ago) by mlelstv
Branches: MAIN
CVS tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Branch point for: thorpej-futex
Diff to: previous 1.123: preferred, colored
Changes since revision 1.123: +4 -4 lines
Switch to vn_bdev_open* functions.

Revision 1.123: download - view: text, markup, annotated - select for diffs
Thu Oct 10 03:43:59 2019 UTC (5 years, 2 months ago) by christos
Branches: MAIN
CVS tags: phil-wifi-20191119
Diff to: previous 1.122: preferred, colored
Changes since revision 1.122: +33 -34 lines
fix the function pointer and callback mess:
- callback functions return 0 and their result is not checked; make them void.
- there are two types of callbacks and they used to overload their parameters
  and the callback structure; separate them into "function" and "value"
  callbacks.
- make the wait function signature consistent.

Revision 1.121.20.1: download - view: text, markup, annotated - select for diffs
Mon Jun 10 22:07:31 2019 UTC (5 years, 6 months ago) by christos
Branches: phil-wifi
Diff to: previous 1.121: preferred, colored
Changes since revision 1.121: +6 -6 lines
Sync with HEAD

Revision 1.122: download - view: text, markup, annotated - select for diffs
Sat Feb 9 03:34:00 2019 UTC (5 years, 10 months ago) by christos
Branches: MAIN
CVS tags: phil-wifi-20190609, netbsd-9-base, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, isaki-audio2-base, isaki-audio2
Branch point for: netbsd-9
Diff to: previous 1.121: preferred, colored
Changes since revision 1.121: +6 -6 lines
- Change the allocation macros to be more like function calls
- Change sizeof(type) -> sizeof(*variable)
- Use macros for the long buffer length allocations
- Remove "bit polishing" memsets() -- do them only once
- Remove unnecessary casts

Thanks to oster@ for finding bugs and testing.

Revision 1.118.2.3: download - view: text, markup, annotated - select for diffs
Sun Dec 3 11:37:31 2017 UTC (7 years ago) by jdolecek
Branches: tls-maxphys
Diff to: previous 1.118.2.2: preferred, colored; branchpoint 1.118: preferred, colored; next MAIN 1.119: preferred, colored
Changes since revision 1.118.2.2: +9 -2 lines
update from HEAD

Revision 1.117.8.1.6.1: download - view: text, markup, annotated - select for diffs
Tue Dec 2 22:08:01 2014 UTC (10 years ago) by snj
Branches: netbsd-6-1
Diff to: previous 1.117.8.1: preferred, colored; next MAIN 1.117.8.2: preferred, colored
Changes since revision 1.117.8.1: +11 -4 lines
Pull up following revision(s) (requested by oster in ticket #1194):
	sys/dev/raidframe/raidframevar.h: revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.316
	sys/dev/raidframe/rf_reconstruct.c: revision 1.121
Fix a long-standing bug related to rebooting while a
reconstruct-to-spare is underway but not yet complete.
The issue was that a component was being marked as a used_spare when
the rebuild started, not when the rebuild was actually finished.
Marking it as a used_spare meant that the component label on the spare
was being updated such that after a reboot the component would be
considered up-to-date, regardless of whether the rebuild actually
completed!
This fix includes:
 1) Add an additional state "rf_ds_rebuilding_spare" which is used
    to denote that a spare is currently being rebuilt from the live
    components.
 2) Update the comments on the disk states, which were out-of-sync
    with reality.
 3) When rebuilding to a spare component, that spare now enters the
    state rf_ds_rebuilding_spare instead of the state rf_ds_used_spare.
 4) When the rebuild is actually complete then the spare component
    enters the rf_ds_used_spare state.  rf_ds_used_spare is now used
    exclusively for the case where the rebuilding to the spare has
    completed successfully.
XXX: Someday we need to teach raidctl(8) about this new state, and
take out the backwards compatibility code in rf_netbsdkintf.c (see
RAIDFRAME_GET_INFO in raidioctl()).  For today, this fix needs to be
generic enough that it can get backported without major grief.
XXX: Needs pullup to netbsd-5*, netbsd-6*, and netbsd-7
Fixes PR#49244.

Revision 1.117.8.1.4.1: download - view: text, markup, annotated - select for diffs
Tue Dec 2 22:06:58 2014 UTC (10 years ago) by snj
Branches: netbsd-6-0
Diff to: previous 1.117.8.1: preferred, colored; next MAIN 1.117.8.2: preferred, colored
Changes since revision 1.117.8.1: +11 -4 lines
Pull up following revision(s) (requested by oster in ticket #1194):
	sys/dev/raidframe/raidframevar.h: revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.316
	sys/dev/raidframe/rf_reconstruct.c: revision 1.121
Fix a long-standing bug related to rebooting while a
reconstruct-to-spare is underway but not yet complete.
The issue was that a component was being marked as a used_spare when
the rebuild started, not when the rebuild was actually finished.
Marking it as a used_spare meant that the component label on the spare
was being updated such that after a reboot the component would be
considered up-to-date, regardless of whether the rebuild actually
completed!
This fix includes:
 1) Add an additional state "rf_ds_rebuilding_spare" which is used
    to denote that a spare is currently being rebuilt from the live
    components.
 2) Update the comments on the disk states, which were out-of-sync
    with reality.
 3) When rebuilding to a spare component, that spare now enters the
    state rf_ds_rebuilding_spare instead of the state rf_ds_used_spare.
 4) When the rebuild is actually complete then the spare component
    enters the rf_ds_used_spare state.  rf_ds_used_spare is now used
    exclusively for the case where the rebuilding to the spare has
    completed successfully.
XXX: Someday we need to teach raidctl(8) about this new state, and
take out the backwards compatibility code in rf_netbsdkintf.c (see
RAIDFRAME_GET_INFO in raidioctl()).  For today, this fix needs to be
generic enough that it can get backported without major grief.
XXX: Needs pullup to netbsd-5*, netbsd-6*, and netbsd-7
Fixes PR#49244.

Revision 1.117.8.2: download - view: text, markup, annotated - select for diffs
Tue Dec 2 22:05:14 2014 UTC (10 years ago) by snj
Branches: netbsd-6
Diff to: previous 1.117.8.1: preferred, colored; branchpoint 1.117: preferred, colored; next MAIN 1.118: preferred, colored
Changes since revision 1.117.8.1: +11 -4 lines
Pull up following revision(s) (requested by oster in ticket #1194):
	sys/dev/raidframe/raidframevar.h: revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.316
	sys/dev/raidframe/rf_reconstruct.c: revision 1.121
Fix a long-standing bug related to rebooting while a
reconstruct-to-spare is underway but not yet complete.
The issue was that a component was being marked as a used_spare when
the rebuild started, not when the rebuild was actually finished.
Marking it as a used_spare meant that the component label on the spare
was being updated such that after a reboot the component would be
considered up-to-date, regardless of whether the rebuild actually
completed!
This fix includes:
 1) Add an additional state "rf_ds_rebuilding_spare" which is used
    to denote that a spare is currently being rebuilt from the live
    components.
 2) Update the comments on the disk states, which were out-of-sync
    with reality.
 3) When rebuilding to a spare component, that spare now enters the
    state rf_ds_rebuilding_spare instead of the state rf_ds_used_spare.
 4) When the rebuild is actually complete then the spare component
    enters the rf_ds_used_spare state.  rf_ds_used_spare is now used
    exclusively for the case where the rebuilding to the spare has
    completed successfully.
XXX: Someday we need to teach raidctl(8) about this new state, and
take out the backwards compatibility code in rf_netbsdkintf.c (see
RAIDFRAME_GET_INFO in raidioctl()).  For today, this fix needs to be
generic enough that it can get backported without major grief.
XXX: Needs pullup to netbsd-5*, netbsd-6*, and netbsd-7
Fixes PR#49244.

Revision 1.105.4.3.2.1: download - view: text, markup, annotated - select for diffs
Thu Nov 20 15:52:10 2014 UTC (10 years ago) by sborrill
Branches: netbsd-5-1
Diff to: previous 1.105.4.3: preferred, colored; next MAIN 1.105.4.4: preferred, colored
Changes since revision 1.105.4.3: +11 -4 lines
Pull up the following revisions(s) (requested by oster in ticket #1933):
	sys/dev/raidframe/raidframevar.h:	revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c:	revision 1.316
	sys/dev/raidframe/rf_reconstruct.c:	revision 1.121 via patch

Fix a long-standing bug related to rebooting while a reconstruct-to-spare
is underway but not yet complete. Fixes PR kern/49244.

Revision 1.105.4.6.2.1: download - view: text, markup, annotated - select for diffs
Thu Nov 20 12:25:10 2014 UTC (10 years ago) by sborrill
Branches: netbsd-5-2
Diff to: previous 1.105.4.6: preferred, colored; next MAIN 1.105.4.7: preferred, colored
Changes since revision 1.105.4.6: +11 -4 lines
Pull up the following revisions(s) (requested by oster in ticket #1933):
	sys/dev/raidframe/raidframevar.h:	revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c:	revision 1.316
	sys/dev/raidframe/rf_reconstruct.c:	revision 1.121 via patch

Fix a long-standing bug related to rebooting while a reconstruct-to-spare
is underway but not yet complete. Fixes PR kern/49244.

Revision 1.105.4.7: download - view: text, markup, annotated - select for diffs
Thu Nov 20 09:38:56 2014 UTC (10 years ago) by sborrill
Branches: netbsd-5
Diff to: previous 1.105.4.6: preferred, colored; branchpoint 1.105: preferred, colored; next MAIN 1.106: preferred, colored
Changes since revision 1.105.4.6: +11 -4 lines
Pull up the following revisions(s) (requested by oster in ticket #1933):
	sys/dev/raidframe/raidframevar.h:	revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c:	revision 1.316
	sys/dev/raidframe/rf_reconstruct.c:	revision 1.121 via patch

Fix a long-standing bug related to rebooting while a reconstruct-to-spare
is underway but not yet complete. Fixes PR kern/49244.

Revision 1.120.2.1: download - view: text, markup, annotated - select for diffs
Tue Nov 18 18:03:10 2014 UTC (10 years ago) by snj
Branches: netbsd-7
CVS tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Diff to: previous 1.120: preferred, colored; next MAIN 1.121: preferred, colored
Changes since revision 1.120: +11 -4 lines
Pull up following revision(s) (requested by oster in ticket #243):
	sys/dev/raidframe/raidframevar.h: revision 1.17
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.316
	sys/dev/raidframe/rf_reconstruct.c: revision 1.121
Fix a long-standing bug related to rebooting while a
reconstruct-to-spare is underway but not yet complete.
The issue was that a component was being marked as a used_spare when
the rebuild started, not when the rebuild was actually finished.
Marking it as a used_spare meant that the component label on the spare
was being updated such that after a reboot the component would be
considered up-to-date, regardless of whether the rebuild actually
completed!
This fix includes:
 1) Add an additional state "rf_ds_rebuilding_spare" which is used
    to denote that a spare is currently being rebuilt from the live
    components.
 2) Update the comments on the disk states, which were out-of-sync
    with reality.
 3) When rebuilding to a spare component, that spare now enters the
    state rf_ds_rebuilding_spare instead of the state rf_ds_used_spare.
 4) When the rebuild is actually complete then the spare component
    enters the rf_ds_used_spare state.  rf_ds_used_spare is now used
    exclusively for the case where the rebuilding to the spare has
    completed successfully.
XXX: Someday we need to teach raidctl(8) about this new state, and
take out the backwards compatibility code in rf_netbsdkintf.c (see
RAIDFRAME_GET_INFO in raidioctl()).  For today, this fix needs to be
generic enough that it can get backported without major grief.
XXX: Needs pullup to netbsd-5*, netbsd-6*, and netbsd-7
Fixes PR#49244.

Revision 1.121: download - view: text, markup, annotated - select for diffs
Fri Nov 14 14:29:16 2014 UTC (10 years ago) by oster
Branches: MAIN
CVS tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, phil-wifi-base, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, pgoyette-compat-merge-20190127, pgoyette-compat-base, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, pgoyette-compat, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, nick-nhusb-base-20170204, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, nick-nhusb, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek, localcount-20160914, jdolecek-ncqfixes-base, jdolecek-ncqfixes, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: phil-wifi, netbsd-8
Diff to: previous 1.120: preferred, colored
Changes since revision 1.120: +11 -4 lines


Fix a long-standing bug related to rebooting while a
reconstruct-to-spare is underway but not yet complete.

The issue was that a component was being marked as a used_spare when
the rebuild started, not when the rebuild was actually finished.
Marking it as a used_spare meant that the component label on the spare
was being updated such that after a reboot the component would be
considered up-to-date, regardless of whether the rebuild actually
completed!

This fix includes:
 1) Add an additional state "rf_ds_rebuilding_spare" which is used
    to denote that a spare is currently being rebuilt from the live
    components.
 2) Update the comments on the disk states, which were out-of-sync
    with reality.
 3) When rebuilding to a spare component, that spare now enters the
    state rf_ds_rebuilding_spare instead of the state rf_ds_used_spare.
 4) When the rebuild is actually complete then the spare component
    enters the rf_ds_used_spare state.  rf_ds_used_spare is now used
    exclusively for the case where the rebuilding to the spare has
    completed successfully.

XXX: Someday we need to teach raidctl(8) about this new state, and
take out the backwards compatibility code in rf_netbsdkintf.c (see
RAIDFRAME_GET_INFO in raidioctl()).  For today, this fix needs to be
generic enough that it can get backported without major grief.

XXX: Needs pullup to netbsd-5*, netbsd-6*, and netbsd-7

Fixes PR#49244.

Revision 1.118.2.2: download - view: text, markup, annotated - select for diffs
Wed Aug 20 00:03:49 2014 UTC (10 years, 3 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.118.2.1: preferred, colored; branchpoint 1.118: preferred, colored
Changes since revision 1.118.2.1: +4 -15 lines
Rebase to HEAD as of a few days ago.

Revision 1.119.10.1: download - view: text, markup, annotated - select for diffs
Sun Aug 10 06:54:57 2014 UTC (10 years, 4 months ago) by tls
Branches: tls-earlyentropy
Diff to: previous 1.119: preferred, colored; next MAIN 1.120: preferred, colored
Changes since revision 1.119: +6 -17 lines
Rebase.

Revision 1.120: download - view: text, markup, annotated - select for diffs
Sat Jun 14 07:39:00 2014 UTC (10 years, 5 months ago) by hannken
Branches: MAIN
CVS tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base
Branch point for: netbsd-7
Diff to: previous 1.119: preferred, colored
Changes since revision 1.119: +6 -17 lines
Change dk_lookup() to return an anonymous vnode not associated with
any file system.  Change all consumers of dk_lookup() to get the
device from "v_rdev" instead of VOP_GETATTR() as specfs does not
support VOP_GETATTR().  Devices obtained with dk_lookup() will no
longer disappear on forced unmounts.

Fix for PR kern/48849 (root mirror raid fails on shutdown)

Welcome to 6.99.44

Revision 1.117.2.2: download - view: text, markup, annotated - select for diffs
Thu May 22 11:40:35 2014 UTC (10 years, 6 months ago) by yamt
Branches: yamt-pagecache
Diff to: previous 1.117.2.1: preferred, colored; branchpoint 1.117: preferred, colored; next MAIN 1.118: preferred, colored
Changes since revision 1.117.2.1: +3 -3 lines
sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.118.2.1: download - view: text, markup, annotated - select for diffs
Sun Jun 23 06:20:21 2013 UTC (11 years, 5 months ago) by tls
Branches: tls-maxphys
Diff to: previous 1.118: preferred, colored
Changes since revision 1.118: +3 -3 lines
resync from head

Revision 1.119: download - view: text, markup, annotated - select for diffs
Wed Mar 6 11:38:15 2013 UTC (11 years, 9 months ago) by yamt
Branches: MAIN
CVS tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, rmind-smpnet, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: tls-earlyentropy
Diff to: previous 1.118: preferred, colored
Changes since revision 1.118: +3 -3 lines
fix parens in a message

Revision 1.105.4.6: download - view: text, markup, annotated - select for diffs
Wed Jun 13 14:00:49 2012 UTC (12 years, 6 months ago) by sborrill
Branches: netbsd-5
CVS tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE
Branch point for: netbsd-5-2
Diff to: previous 1.105.4.5: preferred, colored; branchpoint 1.105: preferred, colored
Changes since revision 1.105.4.5: +4 -5 lines
Pull up the following revisions(s) (requested by mrg in ticket #1774):
	sbin/raidctl/raidctl.c:			revision 1.52
	sys/dev/raidframe/raidframevar.h:	revision 1.15
	sys/dev/raidframe/rf_copyback.c:	revision 1.45
	sys/dev/raidframe/rf_disks.c:		revision 1.78
	sys/dev/raidframe/rf_netbsdkintf.c:	revision 1.282,1.284
	sys/dev/raidframe/rf_reconstruct.c:	revision 1.111

Fix garbage values in partitionSizeHi with RAID array > 2TB. Stops the check against
rf_component_label_partitionsize() failing and stopping auto-configure.

Revision 1.117.2.1: download - view: text, markup, annotated - select for diffs
Tue Apr 17 00:08:00 2012 UTC (12 years, 7 months ago) by yamt
Branches: yamt-pagecache
CVS tags: yamt-pagecache-tag8
Diff to: previous 1.117: preferred, colored
Changes since revision 1.117: +61 -5 lines
sync with head

Revision 1.105.4.5: download - view: text, markup, annotated - select for diffs
Fri Feb 24 17:58:44 2012 UTC (12 years, 9 months ago) by sborrill
Branches: netbsd-5
Diff to: previous 1.105.4.4: preferred, colored; branchpoint 1.105: preferred, colored
Changes since revision 1.105.4.4: +61 -5 lines
Pull up the following revisions(s) (requested by oster in ticket #1728):
	sys/dev/raidframe/rf_reconmap.c:	revision 1.34
	sys/dev/raidframe/rf_reconstruct.c:	revision 1.118

Remove a DIAGNOSTIC check that is invalid for RAID5_RS.
Add logic to the main reconstruction loop to handle RAID5 with rotated
spares. Correct issue where we were doing one more stripe than necessary.

Revision 1.117.6.1: download - view: text, markup, annotated - select for diffs
Fri Feb 24 09:11:42 2012 UTC (12 years, 9 months ago) by mrg
Branches: jmcneill-usbmp
Diff to: previous 1.117: preferred, colored; next MAIN 1.118: preferred, colored
Changes since revision 1.117: +61 -5 lines
sync to -current.

Revision 1.117.8.1: download - view: text, markup, annotated - select for diffs
Thu Feb 23 02:22:05 2012 UTC (12 years, 9 months ago) by riz
Branches: netbsd-6
CVS tags: netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus
Branch point for: netbsd-6-1, netbsd-6-0
Diff to: previous 1.117: preferred, colored
Changes since revision 1.117: +61 -5 lines
Pull up following revision(s) (requested by oster in ticket #23):
	sys/dev/raidframe/rf_reconstruct.c: revision 1.118
	sys/dev/raidframe/rf_reconmap.c: revision 1.34
comment, and effectively remove, a DIAGNOSTIC check that
is invalid for RAID5_RS.
Add logic to the main reconstruction loop to handle RAID5 with rotated
spares.  While here, observe that we were actually doing one more
stripe than we thought we were, and correct that too (it didn't matter
for non-RAID5_RS, but it definitely does for RAID5_RS).  Add some
bounds-checking at the beginning to handle the case where the number
of stripes in the set is smaller than the sliding reconstruction window.
XXX: this problem likely needs to be fixed for PARITY_DECLUSTERING too.

Revision 1.118: download - view: text, markup, annotated - select for diffs
Mon Feb 20 22:42:52 2012 UTC (12 years, 9 months ago) by oster
Branches: MAIN
CVS tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base10
Branch point for: tls-maxphys
Diff to: previous 1.117: preferred, colored
Changes since revision 1.117: +61 -5 lines
Add logic to the main reconstruction loop to handle RAID5 with rotated
spares.  While here, observe that we were actually doing one more
stripe than we thought we were, and correct that too (it didn't matter
for non-RAID5_RS, but it definitely does for RAID5_RS).  Add some
bounds-checking at the beginning to handle the case where the number
of stripes in the set is smaller than the sliding reconstruction window.

XXX: this problem likely needs to be fixed for PARITY_DECLUSTERING too.

Revision 1.117: download - view: text, markup, annotated - select for diffs
Fri Oct 14 09:23:30 2011 UTC (13 years, 2 months ago) by hannken
Branches: MAIN
CVS tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, netbsd-6-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, netbsd-6, jmcneill-usbmp
Diff to: previous 1.116: preferred, colored
Changes since revision 1.116: +6 -3 lines
Change the vnode locking protocol of VOP_GETATTR() to request at least
a shared lock.  Make all calls outside of file systems respect it.

The calls from file systems need review.

No objections from tech-kern.

Revision 1.116: download - view: text, markup, annotated - select for diffs
Wed Aug 3 15:00:29 2011 UTC (13 years, 4 months ago) by oster
Branches: MAIN
Diff to: previous 1.115: preferred, colored
Changes since revision 1.115: +7 -8 lines

Address part of PR kern/44972.  From YAMAMOTO Takashi.  Thanks!

Revision 1.110.2.1: download - view: text, markup, annotated - select for diffs
Mon Jun 6 09:08:34 2011 UTC (13 years, 6 months ago) by jruoho
Branches: jruoho-x86intr
Diff to: previous 1.110: preferred, colored; next MAIN 1.111: preferred, colored
Changes since revision 1.110: +91 -88 lines
Sync with HEAD.

Revision 1.108.4.2: download - view: text, markup, annotated - select for diffs
Tue May 31 03:04:54 2011 UTC (13 years, 6 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.108.4.1: preferred, colored; branchpoint 1.108: preferred, colored; next MAIN 1.109: preferred, colored
Changes since revision 1.108.4.1: +87 -83 lines
sync with head

Revision 1.115: download - view: text, markup, annotated - select for diffs
Sat May 28 00:53:04 2011 UTC (13 years, 6 months ago) by yamt
Branches: MAIN
CVS tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base, cherry-xenmp
Diff to: previous 1.114: preferred, colored
Changes since revision 1.114: +4 -2 lines
rf_ReconstructInPlace: don't leave a vnode open on errors.
fixes a part of PR/44972.

Revision 1.114: download - view: text, markup, annotated - select for diffs
Tue May 24 07:33:41 2011 UTC (13 years, 6 months ago) by buhrow
Branches: MAIN
Diff to: previous 1.113: preferred, colored
Changes since revision 1.113: +3 -3 lines
Suggested to oster@ and approved via private e-mail as a help to
people who are getting reconstruction failures.

Revision 1.113: download - view: text, markup, annotated - select for diffs
Wed May 11 18:13:12 2011 UTC (13 years, 7 months ago) by mrg
Branches: MAIN
Diff to: previous 1.112: preferred, colored
Changes since revision 1.112: +54 -52 lines
convert the main raidPtr mutex to a kmutex, and add a couple of cv's to
cover the old sleep/wakeup points for adding_hot_spare and waitForReconCond.
convert all remaining simple_lock's to kmutexes (they're not used or compiled
right now... even with all options enabled) and remove the support for them.

this leaves just a pair of tsleep()/wakeup() calls using old scheduling APIs.

Revision 1.112: download - view: text, markup, annotated - select for diffs
Mon May 2 07:29:18 2011 UTC (13 years, 7 months ago) by mrg
Branches: MAIN
Diff to: previous 1.111: preferred, colored
Changes since revision 1.111: +34 -34 lines
convert rb_mutex to a kmutex/cv.

Revision 1.108.4.1: download - view: text, markup, annotated - select for diffs
Sat Mar 5 20:54:03 2011 UTC (13 years, 9 months ago) by rmind
Branches: rmind-uvmplock
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +13 -4 lines
sync with head

Revision 1.110.4.1: download - view: text, markup, annotated - select for diffs
Sat Mar 5 15:10:29 2011 UTC (13 years, 9 months ago) by bouyer
Branches: bouyer-quota2
Diff to: previous 1.110: preferred, colored; next MAIN 1.111: preferred, colored
Changes since revision 1.110: +4 -5 lines
Sync with HEAD

Revision 1.111: download - view: text, markup, annotated - select for diffs
Sat Feb 19 07:11:09 2011 UTC (13 years, 9 months ago) by enami
Branches: MAIN
CVS tags: bouyer-quota2-nbase
Diff to: previous 1.110: preferred, colored
Changes since revision 1.110: +4 -5 lines
Define accessors for number of blocks and partition size in the
component label and use them where appropriate.  Disscussed on tech-kern.

Revision 1.105.4.4: download - view: text, markup, annotated - select for diffs
Sun Nov 21 22:06:53 2010 UTC (14 years ago) by riz
Branches: netbsd-5
CVS tags: matt-nb5-pq3-base, matt-nb5-pq3
Diff to: previous 1.105.4.3: preferred, colored; branchpoint 1.105: preferred, colored
Changes since revision 1.105.4.3: +4 -2 lines
Pull up following revision(s) (requested by mrg in ticket #1468):
	sys/dev/raidframe/rf_disks.c: revision 1.74
	sys/dev/raidframe/raidframevar.h: revision 1.14
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.275
	sys/dev/raidframe/rf_copyback.c: revision 1.43
	sys/dev/raidframe/rf_reconstruct.c: revision 1.109
add support for >2TB raid devices.
- - add two new members to the component label:
     u_int numBlocksHi
     u_int partitionSizeHi
  and store the top 32 bits of the real number of blocks and
  partition size.  modify rf_print_component_label(),
  rf_does_it_fit(), rf_AutoConfigureDisks() and
  rf_ReconstructFailedDiskBasic().
- - call disk_blocksize() after disk_attach() [ from mlelstv ]
- - shift the block number relative to DEV_BSHIFT in raidstart()
  and InitBP() so that accesses work for non 512-byte devices.
  [ from mlelstv ]
- - update rf_getdisksize() to use the new getdisksize() [ from
  mlelstv.  this part needs a separate change for netbsd-5. ]
reviewed by: oster, christos and darrenr

Revision 1.110: download - view: text, markup, annotated - select for diffs
Fri Nov 19 06:44:40 2010 UTC (14 years ago) by dholland
Branches: MAIN
CVS tags: matt-mips64-premerge-20101231, jruoho-x86intr-base, bouyer-quota2-base
Branch point for: jruoho-x86intr, bouyer-quota2
Diff to: previous 1.109: preferred, colored
Changes since revision 1.109: +11 -3 lines
Introduce struct pathbuf. This is an abstraction to hold a pathname
and the metadata required to interpret it. Callers of namei must now
create a pathbuf and pass it to NDINIT (instead of a string and a
uio_seg), then destroy the pathbuf after the namei session is
complete.

Update all namei call sites accordingly. Add a pathbuf(9) man page and
update namei(9).

The pathbuf interface also now appears in a couple of related
additional places that were passing string/uio_seg pairs that were
later fed into NDINIT. Update other call sites accordingly.

Revision 1.108.2.1: download - view: text, markup, annotated - select for diffs
Sat Nov 6 08:08:33 2010 UTC (14 years, 1 month ago) by uebayasi
Branches: uebayasi-xip
Diff to: previous 1.108: preferred, colored; next MAIN 1.109: preferred, colored
Changes since revision 1.108: +4 -2 lines
Sync with HEAD.

Revision 1.109: download - view: text, markup, annotated - select for diffs
Mon Nov 1 02:35:25 2010 UTC (14 years, 1 month ago) by mrg
Branches: MAIN
CVS tags: uebayasi-xip-base4
Diff to: previous 1.108: preferred, colored
Changes since revision 1.108: +4 -2 lines
add support for >2TB raid devices.

- add two new members to the component label:
     u_int numBlocksHi
     u_int partitionSizeHi
  and store the top 32 bits of the real number of blocks and
  partition size.  modify rf_print_component_label(),
  rf_does_it_fit(), rf_AutoConfigureDisks() and
  rf_ReconstructFailedDiskBasic().

- call disk_blocksize() after disk_attach() [ from mlelstv ]

- shift the block number relative to DEV_BSHIFT in raidstart()
  and InitBP() so that accesses work for non 512-byte devices.
  [ from mlelstv ]

- update rf_getdisksize() to use the new getdisksize() [ from
  mlelstv.  this part needs a separate change for netbsd-5. ]


reviewed by: oster, christos and darrenr

Revision 1.105.4.2.4.1: download - view: text, markup, annotated - select for diffs
Wed Apr 21 00:27:51 2010 UTC (14 years, 7 months ago) by matt
Branches: matt-nb5-mips64
CVS tags: matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-k15
Diff to: previous 1.105.4.2: preferred, colored; next MAIN 1.105.4.3: preferred, colored
Changes since revision 1.105.4.2: +18 -30 lines
sync to netbsd-5

Revision 1.103.4.2: download - view: text, markup, annotated - select for diffs
Thu Mar 11 15:04:01 2010 UTC (14 years, 9 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.103.4.1: preferred, colored; branchpoint 1.103: preferred, colored; next MAIN 1.104: preferred, colored
Changes since revision 1.103.4.1: +18 -30 lines
sync with head

Revision 1.105.4.3: download - view: text, markup, annotated - select for diffs
Thu Dec 10 22:59:17 2009 UTC (15 years ago) by snj
Branches: netbsd-5
CVS tags: netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE
Branch point for: netbsd-5-1
Diff to: previous 1.105.4.2: preferred, colored; branchpoint 1.105: preferred, colored
Changes since revision 1.105.4.2: +18 -30 lines
Pull up following revision(s) (requested by tron in ticket #1187):
	sbin/raidctl/raidctl.8: revisions 1.57-1.59 via patch
	sbin/raidctl/raidctl.c: revision 1.42 via patch
	sys/dev/raidframe/files.raidframe: revision 1.8 via patch
	sys/dev/raidframe/rf_copyback.c: revision 1.42 via patch
	sys/dev/raidframe/rf_disks.c: revision 1.72 via patch
	sys/dev/raidframe/rf_driver.c: revision 1.122 via patch
	sys/dev/raidframe/rf_engine.c: revision 1.40 via patch
	sys/dev/raidframe/rf_kintf.h: revision 1.21 via patch
	sys/dev/raidframe/rf_netbsdkintf.c: revision 1.269 via patch
	sys/dev/raidframe/rf_paritymap.c: revisions 1.1-1.3 via patch
	sys/dev/raidframe/rf_paritymap.h: revision 1.1 via patch
	sys/dev/raidframe/rf_parityscan.c: revision 1.33 via patch
	sys/dev/raidframe/rf_parityscan.h: revision 1.8 via patch
	sys/dev/raidframe/rf_raid.h: revision 1.38 via patch
	sys/dev/raidframe/rf_reconstruct.c: revision 1.108 via patch
	sys/dev/raidframe/rf_states.c: revision 1.44 via patch
	sys/dev/raidframe/raidframeio.h: revision 1.6 via patch
	sys/dev/raidframe/raidframevar.h: revision 1.13 via patch
Pull up the RAIDframe parity map Summer Of Code project.
Drastically reduces the amount of time spent rewriting parity after an
unclean shutdown by keeping better track of which regions might have had
outstanding writes.  Enabled by default; can be disabled on a per-set
basis, or tuned, with the new raidctl(8) commands.

Revision 1.108: download - view: text, markup, annotated - select for diffs
Tue Nov 17 18:54:26 2009 UTC (15 years ago) by jld
Branches: MAIN
CVS tags: yamt-nfs-mp-base9, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, matt-premerge-20091211
Branch point for: uebayasi-xip, rmind-uvmplock
Diff to: previous 1.107: preferred, colored
Changes since revision 1.107: +18 -30 lines
Finally commit the RAIDframe parity map Summer Of Code project.

Drastically reduces the amount of time spent rewriting parity after an
unclean shutdown by keeping better track of which regions might have had
outstanding writes.  Enabled by default; can be disabled on a per-set
basis, or tuned, with the new raidctl(8) commands.

Discussed on tech-kern@ to a general air of approval; exhortations to
commit from mrg@, christos@, and others.

Thanks to Google for their sponsorship, oster@ for mentoring the
project, assorted developers for trying very hard to break it, and
probably more I'm forgetting.

Revision 1.106.2.1: download - view: text, markup, annotated - select for diffs
Wed May 13 17:21:16 2009 UTC (15 years, 7 months ago) by jym
Branches: jym-xensuspend
Diff to: previous 1.106: preferred, colored; next MAIN 1.107: preferred, colored
Changes since revision 1.106: +13 -4 lines
Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.

Revision 1.103.4.1: download - view: text, markup, annotated - select for diffs
Mon May 4 08:13:16 2009 UTC (15 years, 7 months ago) by yamt
Branches: yamt-nfs-mp
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +167 -76 lines
sync with head.

Revision 1.105.2.2: download - view: text, markup, annotated - select for diffs
Tue Mar 3 18:31:52 2009 UTC (15 years, 9 months ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.105.2.1: preferred, colored; branchpoint 1.105: preferred, colored; next MAIN 1.106: preferred, colored
Changes since revision 1.105.2.1: +13 -4 lines
Sync with HEAD.

Revision 1.95.2.5: download - view: text, markup, annotated - select for diffs
Thu Feb 26 08:07:06 2009 UTC (15 years, 9 months ago) by snj
Branches: netbsd-4
Diff to: previous 1.95.2.4: preferred, colored; branchpoint 1.95: preferred, colored; next MAIN 1.96: preferred, colored
Changes since revision 1.95.2.4: +13 -4 lines
Pull up following revision(s) (requested by oster in ticket #1276):
	sys/dev/raidframe/rf_reconstruct.c: revision 1.107
If we see a RF_RECON_WRITE_ERROR event we know a write has finished and
we need to account for that.  Failure to do so means we can end up
waiting forever for writes we think are outstanding, but which have
already completed.
Addresses the RAIDframe part of PR#40569.  Thanks to Matthias Scheler
for reporting the issue and verifying the fix.

Revision 1.105.4.2: download - view: text, markup, annotated - select for diffs
Thu Feb 19 20:27:08 2009 UTC (15 years, 9 months ago) by snj
Branches: netbsd-5
CVS tags: netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20091211, matt-nb4-mips64-k7-u2a-k9b
Branch point for: matt-nb5-mips64
Diff to: previous 1.105.4.1: preferred, colored; branchpoint 1.105: preferred, colored
Changes since revision 1.105.4.1: +13 -4 lines
Pull up following revision(s) (requested by oster in ticket #454):
	sys/dev/raidframe/rf_reconstruct.c: revision 1.107
If we see a RF_RECON_WRITE_ERROR event we know a write has finished and
we need to account for that.  Failure to do so means we can end up
waiting forever for writes we think are outstanding, but which have
already completed.
Addresses the RAIDframe part of PR#40569.  Thanks to Matthias Scheler
for reporting the issue and verifying the fix.

Revision 1.107: download - view: text, markup, annotated - select for diffs
Wed Feb 11 23:54:10 2009 UTC (15 years, 10 months ago) by oster
Branches: MAIN
CVS tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base
Diff to: previous 1.106: preferred, colored
Changes since revision 1.106: +13 -4 lines
If we see a RF_RECON_WRITE_ERROR event we know a write has finished and
we need to account for that.  Failure to do so means we can end up
waiting forever for writes we think are outstanding, but which have
already completed.

Addresses the RAIDframe part of PR#40569.  Thanks to Matthias Scheler
for reporting the issue and verifying the fix.

Revision 1.105.2.1: download - view: text, markup, annotated - select for diffs
Mon Jan 19 13:19:02 2009 UTC (15 years, 10 months ago) by skrll
Branches: nick-hppapmap
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +8 -2 lines
Sync with HEAD.

Revision 1.101.6.3: download - view: text, markup, annotated - select for diffs
Sat Jan 17 13:29:08 2009 UTC (15 years, 10 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.101.6.2: preferred, colored; branchpoint 1.101: preferred, colored; next MAIN 1.102: preferred, colored
Changes since revision 1.101.6.2: +6 -0 lines
Sync with HEAD.

Revision 1.95.2.4: download - view: text, markup, annotated - select for diffs
Sat Dec 27 19:32:58 2008 UTC (15 years, 11 months ago) by bouyer
Branches: netbsd-4
Diff to: previous 1.95.2.3: preferred, colored; branchpoint 1.95: preferred, colored
Changes since revision 1.95.2.3: +6 -0 lines
Pull up following revision(s) (requested by oster in ticket #1249):
	sys/dev/raidframe/rf_driver.c: revision 1.120
	sys/dev/raidframe/rf_reconstruct.c: revision 1.106
When unconfiguring an array where a reconstruct is in progress, abort
the reconstruct and wait for IOs to drain before pulling the plug.
Should fix the panic reported by der Mouse on tech-kern.

Revision 1.105.4.1: download - view: text, markup, annotated - select for diffs
Tue Dec 23 04:03:00 2008 UTC (15 years, 11 months ago) by snj
Branches: netbsd-5
CVS tags: netbsd-5-0-RC2, netbsd-5-0-RC1
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +8 -2 lines
Pull up following revision(s) (requested by oster in ticket #203):
	sys/dev/raidframe/rf_driver.c: revision 1.120
	sys/dev/raidframe/rf_reconstruct.c: revision 1.106
When unconfiguring an array where a reconstruct is in progress, abort
the reconstruct and wait for IOs to drain before pulling the plug.
Should fix the panic reported by der Mouse on tech-kern.

Revision 1.106: download - view: text, markup, annotated - select for diffs
Sat Dec 20 17:04:51 2008 UTC (15 years, 11 months ago) by oster
Branches: MAIN
CVS tags: mjf-devfs2-base
Branch point for: jym-xensuspend
Diff to: previous 1.105: preferred, colored
Changes since revision 1.105: +8 -2 lines
When unconfiguring an array where a reconstruct is in progress, abort
the reconstruct and wait for IOs to drain before pulling the plug.

Should fix the panic reported by der Mouse on tech-kern.

Revision 1.104.4.1: download - view: text, markup, annotated - select for diffs
Sun Oct 19 22:17:04 2008 UTC (16 years, 1 month ago) by haad
Branches: haad-dm
Diff to: previous 1.104: preferred, colored; next MAIN 1.105: preferred, colored
Changes since revision 1.104: +2 -5 lines
Sync with HEAD.

Revision 1.103.6.2: download - view: text, markup, annotated - select for diffs
Fri Oct 10 22:33:10 2008 UTC (16 years, 2 months ago) by skrll
Branches: wrstuden-revivesa
Diff to: previous 1.103.6.1: preferred, colored; branchpoint 1.103: preferred, colored; next MAIN 1.104: preferred, colored
Changes since revision 1.103.6.1: +2 -5 lines
Sync with HEAD.

Revision 1.101.6.2: download - view: text, markup, annotated - select for diffs
Sun Sep 28 10:40:31 2008 UTC (16 years, 2 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.101.6.1: preferred, colored; branchpoint 1.101: preferred, colored
Changes since revision 1.101.6.1: +0 -3 lines
Sync with HEAD.

Revision 1.105: download - view: text, markup, annotated - select for diffs
Tue Sep 23 21:36:35 2008 UTC (16 years, 2 months ago) by oster
Branches: MAIN
CVS tags: wrstuden-revivesa-base-4, netbsd-5-base, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap, netbsd-5
Diff to: previous 1.104: preferred, colored
Changes since revision 1.104: +2 -5 lines
Nuke unneeded printf().  Spotted by pooka@.

Revision 1.103.6.1: download - view: text, markup, annotated - select for diffs
Mon Jun 23 04:31:26 2008 UTC (16 years, 5 months ago) by wrstuden
Branches: wrstuden-revivesa
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +152 -73 lines
Sync w/ -current. 34 merge conflicts to follow.

Revision 1.103.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 4 02:05:19 2008 UTC (16 years, 6 months ago) by yamt
Branches: yamt-pf42
Diff to: previous 1.103: preferred, colored; next MAIN 1.104: preferred, colored
Changes since revision 1.103: +152 -73 lines
sync with head

Revision 1.95.16.2: download - view: text, markup, annotated - select for diffs
Tue Jun 3 20:47:33 2008 UTC (16 years, 6 months ago) by skrll
Branches: wrstuden-fixsa
Diff to: previous 1.95.16.1: preferred, colored; branchpoint 1.95: preferred, colored; next MAIN 1.96: preferred, colored
Changes since revision 1.95.16.1: +153 -73 lines
Sync with netbsd-4.

Revision 1.101.6.1: download - view: text, markup, annotated - select for diffs
Mon Jun 2 13:23:49 2008 UTC (16 years, 6 months ago) by mjf
Branches: mjf-devfs2
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +157 -76 lines
Sync with HEAD.

Revision 1.95.2.3: download - view: text, markup, annotated - select for diffs
Sun May 25 19:09:24 2008 UTC (16 years, 6 months ago) by bouyer
Branches: netbsd-4
CVS tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base
Diff to: previous 1.95.2.2: preferred, colored; branchpoint 1.95: preferred, colored
Changes since revision 1.95.2.2: +150 -71 lines
Pull up following revision(s) (requested by oster in ticket #1153):
	sys/dev/raidframe/rf_reconmap.h: revision 1.11
	sys/dev/raidframe/rf_reconmap.c: revision 1.31
	sys/dev/raidframe/rf_reconstruct.h: revision 1.24
	sys/dev/raidframe/rf_reconstruct.c: revision 1.104
	sys/dev/raidframe/rf_revent.c: revision 1.25
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. May fix bin/38471.

Revision 1.87.2.4: download - view: text, markup, annotated - select for diffs
Sun May 25 18:42:18 2008 UTC (16 years, 6 months ago) by bouyer
Branches: netbsd-3
Diff to: previous 1.87.2.3: preferred, colored; branchpoint 1.87: preferred, colored; next MAIN 1.88: preferred, colored
Changes since revision 1.87.2.3: +150 -71 lines
Pull up following revision(s) (requested by oster in ticket #1933):
	sys/dev/raidframe/rf_reconmap.h: revision 1.11
	sys/dev/raidframe/rf_reconmap.c: revision 1.31
	sys/dev/raidframe/rf_reconstruct.h: revision 1.24
	sys/dev/raidframe/rf_reconstruct.c: revision 1.104
	sys/dev/raidframe/rf_revent.c: revision 1.25
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. May fix bin/38471.

Revision 1.104: download - view: text, markup, annotated - select for diffs
Mon May 19 19:49:54 2008 UTC (16 years, 6 months ago) by oster
Branches: MAIN
CVS tags: yamt-pf42-base4, yamt-pf42-base3, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, hpcarm-cleanup-nbase
Branch point for: haad-dm
Diff to: previous 1.103: preferred, colored
Changes since revision 1.103: +152 -73 lines
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.

Revision 1.95.2.2: download - view: text, markup, annotated - select for diffs
Sat Apr 19 15:52:11 2008 UTC (16 years, 7 months ago) by bouyer
Branches: netbsd-4
Diff to: previous 1.95.2.1: preferred, colored; branchpoint 1.95: preferred, colored
Changes since revision 1.95.2.1: +1 -0 lines
Pull up following revision(s) (requested by oster in ticket #1127):
	sys/dev/raidframe/rf_reconstruct.c: revision 1.103
A forced recon read should not default to indicating that the reads
for that disk have stopped, since this will bump us out of the normal
reconstruction loop prematurely.
Fixes the (mostly cosmetic) bug where the reconstruction
status values stop updating, and from raidctl it appears that
reconstruction has totally stalled (which it actually hasn't -- the
reconstruction does complete properly, but not in the normal way).

Revision 1.87.2.3: download - view: text, markup, annotated - select for diffs
Sat Apr 19 15:36:28 2008 UTC (16 years, 7 months ago) by bouyer
Branches: netbsd-3
Diff to: previous 1.87.2.2: preferred, colored; branchpoint 1.87: preferred, colored
Changes since revision 1.87.2.2: +1 -0 lines
Pull up following revision(s) (requested by oster in ticket #1923):
	sys/dev/raidframe/rf_reconstruct.c: revision 1.103
A forced recon read should not default to indicating that the reads
for that disk have stopped, since this will bump us out of the normal
reconstruction loop prematurely.
Fixes the (mostly cosmetic) bug where the reconstruction
status values stop updating, and from raidctl it appears that
reconstruction has totally stalled (which it actually hasn't -- the
reconstruction does complete properly, but not in the normal way).

Revision 1.103: download - view: text, markup, annotated - select for diffs
Tue Apr 15 16:05:43 2008 UTC (16 years, 7 months ago) by oster
Branches: MAIN
CVS tags: yamt-pf42-baseX, yamt-pf42-base2, yamt-pf42-base, yamt-nfs-mp-base2, yamt-nfs-mp-base
Branch point for: yamt-pf42, yamt-nfs-mp, wrstuden-revivesa
Diff to: previous 1.102: preferred, colored
Changes since revision 1.102: +3 -2 lines
A forced recon read should not default to indicating that the reads
for that disk have stopped, since this will bump us out of the normal
reconstruction loop prematurely.

Fixes the (mostly cosmetic) bug where the reconstruction
status values stop updating, and from raidctl it appears that
reconstruction has totally stalled (which it actually hasn't -- the
reconstruction does complete properly, but not in the normal way).

Revision 1.102: download - view: text, markup, annotated - select for diffs
Mon Apr 14 17:24:50 2008 UTC (16 years, 8 months ago) by oster
Branches: MAIN
Diff to: previous 1.101: preferred, colored
Changes since revision 1.101: +6 -5 lines
Print out the status value if a reconstruction read fails.
Don't print out write promotions during reconstruct unless
we are debugging reconstructs.

Revision 1.98.6.3: download - view: text, markup, annotated - select for diffs
Sun Mar 23 02:04:52 2008 UTC (16 years, 8 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.98.6.2: preferred, colored; branchpoint 1.98: preferred, colored; next MAIN 1.99: preferred, colored
Changes since revision 1.98.6.2: +5 -7 lines
sync with HEAD

Revision 1.99.6.2: download - view: text, markup, annotated - select for diffs
Mon Feb 18 21:06:20 2008 UTC (16 years, 9 months ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.99.6.1: preferred, colored; branchpoint 1.99: preferred, colored; next MAIN 1.100: preferred, colored
Changes since revision 1.99.6.1: +5 -7 lines
Sync with HEAD.

Revision 1.88.2.6: download - view: text, markup, annotated - select for diffs
Mon Feb 4 09:23:34 2008 UTC (16 years, 10 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.88.2.5: preferred, colored; next MAIN 1.89: preferred, colored
Changes since revision 1.88.2.5: +5 -7 lines
sync with head.

Revision 1.101: download - view: text, markup, annotated - select for diffs
Sat Jan 26 20:45:06 2008 UTC (16 years, 10 months ago) by oster
Branches: MAIN
CVS tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-base, ad-socklock-base1
Branch point for: mjf-devfs2
Diff to: previous 1.100: preferred, colored
Changes since revision 1.100: +5 -7 lines
In a land before time, when kernel processes roamed the system, we
needed to keep track of the kernel process that opened a device in
order to close it with the right credentials.  Flash forward to today
where curlwp is now quite sufficient.

Revision 1.98.6.2: download - view: text, markup, annotated - select for diffs
Wed Jan 9 01:54:25 2008 UTC (16 years, 11 months ago) by matt
Branches: matt-armv6
Diff to: previous 1.98.6.1: preferred, colored; branchpoint 1.98: preferred, colored
Changes since revision 1.98.6.1: +4 -4 lines
sync with HEAD

Revision 1.99.6.1: download - view: text, markup, annotated - select for diffs
Sat Dec 8 18:19:54 2007 UTC (17 years ago) by mjf
Branches: mjf-devfs
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +4 -4 lines
Sync with HEAD.

Revision 1.88.2.5: download - view: text, markup, annotated - select for diffs
Fri Dec 7 17:31:05 2007 UTC (17 years ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.88.2.4: preferred, colored
Changes since revision 1.88.2.4: +4 -4 lines
sync with head

Revision 1.98.4.2: download - view: text, markup, annotated - select for diffs
Tue Nov 27 19:37:27 2007 UTC (17 years ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.98.4.1: preferred, colored; branchpoint 1.98: preferred, colored; next MAIN 1.99: preferred, colored
Changes since revision 1.98.4.1: +4 -4 lines
Sync with HEAD. amd64 Xen support needs testing.

Revision 1.100: download - view: text, markup, annotated - select for diffs
Mon Nov 26 19:01:40 2007 UTC (17 years ago) by pooka
Branches: MAIN
CVS tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, matt-armv6-base, jmcneill-pm-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386
Diff to: previous 1.99: preferred, colored
Changes since revision 1.99: +4 -4 lines
Remove the "struct lwp *" argument from all VFS and VOP interfaces.
The general trend is to remove it from all kernel interfaces and
this is a start.  In case the calling lwp is desired, curlwp should
be used.

quick consensus on tech-kern

Revision 1.98.6.1: download - view: text, markup, annotated - select for diffs
Tue Nov 6 23:30:04 2007 UTC (17 years, 1 month ago) by matt
Branches: matt-armv6
CVS tags: matt-armv6-prevmlocking
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +4 -4 lines
sync with HEAD

Revision 1.88.2.4: download - view: text, markup, annotated - select for diffs
Sat Oct 27 11:34:04 2007 UTC (17 years, 1 month ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.88.2.3: preferred, colored
Changes since revision 1.88.2.3: +4 -4 lines
sync with head.

Revision 1.95.8.3: download - view: text, markup, annotated - select for diffs
Tue Oct 9 13:42:02 2007 UTC (17 years, 2 months ago) by ad
Branches: vmlocking
Diff to: previous 1.95.8.2: preferred, colored; branchpoint 1.95: preferred, colored; next MAIN 1.96: preferred, colored
Changes since revision 1.95.8.2: +4 -4 lines
Sync with head.

Revision 1.98.4.1: download - view: text, markup, annotated - select for diffs
Tue Oct 2 18:28:38 2007 UTC (17 years, 2 months ago) by joerg
Branches: jmcneill-pm
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +4 -4 lines
Sync with HEAD.

Revision 1.99: download - view: text, markup, annotated - select for diffs
Fri Sep 21 17:14:47 2007 UTC (17 years, 2 months ago) by oster
Branches: MAIN
CVS tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking-base, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: mjf-devfs
Diff to: previous 1.98: preferred, colored
Changes since revision 1.98: +4 -4 lines
Fix wording in a comment and correct a debug line.  From Olivier Cherrier
(via private mail).  Thanks!

Revision 1.88.2.3: download - view: text, markup, annotated - select for diffs
Mon Sep 3 14:38:22 2007 UTC (17 years, 3 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.88.2.2: preferred, colored
Changes since revision 1.88.2.2: +5 -6 lines
sync with head.

Revision 1.95.16.1: download - view: text, markup, annotated - select for diffs
Mon Sep 3 07:04:42 2007 UTC (17 years, 3 months ago) by wrstuden
Branches: wrstuden-fixsa
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +3 -3 lines
Sync w/ NetBSD-4-RC_1

Revision 1.95.8.2: download - view: text, markup, annotated - select for diffs
Mon Aug 20 18:37:40 2007 UTC (17 years, 3 months ago) by ad
Branches: vmlocking
Diff to: previous 1.95.8.1: preferred, colored; branchpoint 1.95: preferred, colored
Changes since revision 1.95.8.1: +3 -3 lines
Sync with HEAD.

Revision 1.97.2.1: download - view: text, markup, annotated - select for diffs
Wed Aug 15 13:48:40 2007 UTC (17 years, 4 months ago) by skrll
Branches: nick-csl-alignment
Diff to: previous 1.97: preferred, colored; next MAIN 1.98: preferred, colored
Changes since revision 1.97: +3 -3 lines
Sync with HEAD.

Revision 1.98.8.2: download - view: text, markup, annotated - select for diffs
Wed Jul 18 19:04:59 2007 UTC (17 years, 4 months ago) by ad
Branches: matt-mips64
Diff to: previous 1.98.8.1: preferred, colored; branchpoint 1.98: preferred, colored; next MAIN 1.99: preferred, colored
Changes since revision 1.98.8.1: +1815 -0 lines
Fix fallout from recent kthread changes.

Revision 1.98.8.1
Wed Jul 18 19:04:58 2007 UTC (17 years, 4 months ago) by ad
Branches: matt-mips64
FILE REMOVED
Changes since revision 1.98: +0 -1815 lines
file rf_reconstruct.c was added on branch matt-mips64 on 2007-07-18 19:04:59 +0000

Revision 1.98: download - view: text, markup, annotated - select for diffs
Wed Jul 18 19:04:58 2007 UTC (17 years, 4 months ago) by ad
Branches: MAIN
CVS tags: nick-csl-alignment-base5, matt-mips64-base, hpcarm-cleanup
Branch point for: matt-mips64, matt-armv6, jmcneill-pm
Diff to: previous 1.97: preferred, colored
Changes since revision 1.97: +3 -3 lines
Fix fallout from recent kthread changes.

Revision 1.95.8.1: download - view: text, markup, annotated - select for diffs
Sun Jul 15 13:21:42 2007 UTC (17 years, 5 months ago) by ad
Branches: vmlocking
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +4 -5 lines
Sync with head.

Revision 1.95.10.1: download - view: text, markup, annotated - select for diffs
Wed Jul 11 20:08:10 2007 UTC (17 years, 5 months ago) by mjf
Branches: mjf-ufs-trans
Diff to: previous 1.95: preferred, colored; next MAIN 1.96: preferred, colored
Changes since revision 1.95: +4 -5 lines
Sync with head.

Revision 1.97: download - view: text, markup, annotated - select for diffs
Mon Jul 9 21:01:20 2007 UTC (17 years, 5 months ago) by ad
Branches: MAIN
CVS tags: nick-csl-alignment-base, mjf-ufs-trans-base
Branch point for: nick-csl-alignment
Diff to: previous 1.96: preferred, colored
Changes since revision 1.96: +3 -4 lines
Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.95.2.1: download - view: text, markup, annotated - select for diffs
Sun Jul 1 17:09:25 2007 UTC (17 years, 5 months ago) by bouyer
Branches: netbsd-4
CVS tags: wrstuden-fixsa-base-1, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, matt-nb4-arm-base, matt-nb4-arm
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +3 -3 lines
Pull up following revision(s) (requested by cube in ticket #748):
	sys/dev/dksubr.c: revision 1.29
	sys/dev/ccd.c: revision 1.120
	sys/dev/raidframe/rf_disks.c: revision 1.66
	sys/dev/raidframe/rf_reconstruct.c: revision 1.96
	sys/dev/cgd.c: revision 1.45
	sys/dev/dkvar.h: revision 1.11
	sys/dev/raidframe/rf_copyback.c: revision 1.38
Change dk_lookup() to accept an additional argument of the type enum uio_seg
that tells whether the given path is in user space or kernel space, so it
can tell NDINIT().
While the raidframe calls were ok, both ccd(4) and cgd(4) were passing
pointers to user space data, which leads to strange error on i386, as
reported by Jukka Salmi on current-users.

Revision 1.96: download - view: text, markup, annotated - select for diffs
Tue Jun 26 15:22:24 2007 UTC (17 years, 5 months ago) by cube
Branches: MAIN
Diff to: previous 1.95: preferred, colored
Changes since revision 1.95: +3 -3 lines
Change dk_lookup() to accept an additional argument of the type enum uio_seg
that tells whether the given path is in user space or kernel space, so it
can tell NDINIT().

While the raidframe calls were ok, both ccd(4) and cgd(4) were passing
pointers to user space data, which leads to strange error on i386, as
reported by Jukka Salmi on current-users.

The issue has been there since last august, I'm actually a bit surprised
that no one in the meantime has used ccd(4) or cgd(4) on an arch where it
would have simply faulted.

Revision 1.88.2.2: download - view: text, markup, annotated - select for diffs
Sat Dec 30 20:49:30 2006 UTC (17 years, 11 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.88.2.1: preferred, colored
Changes since revision 1.88.2.1: +8 -7 lines
sync with head.

Revision 1.93.4.2: download - view: text, markup, annotated - select for diffs
Sun Dec 10 07:18:13 2006 UTC (18 years ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.93.4.1: preferred, colored; branchpoint 1.93: preferred, colored; next MAIN 1.94: preferred, colored
Changes since revision 1.93.4.1: +10 -10 lines
sync with head.

Revision 1.93.2.1: download - view: text, markup, annotated - select for diffs
Sat Nov 18 21:34:47 2006 UTC (18 years ago) by ad
Branches: newlock2
Diff to: previous 1.93: preferred, colored; next MAIN 1.94: preferred, colored
Changes since revision 1.93: +4 -3 lines
Sync with head.

Revision 1.95: download - view: text, markup, annotated - select for diffs
Thu Nov 16 01:33:23 2006 UTC (18 years ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, yamt-idlelwp-base8, yamt-idlelwp, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, post-newlock2-merge, newlock2-nbase, newlock2-base, netbsd-4-base, ad-audiomp-base, ad-audiomp
Branch point for: wrstuden-fixsa, vmlocking, netbsd-4, mjf-ufs-trans
Diff to: previous 1.94: preferred, colored
Changes since revision 1.94: +10 -10 lines
__unused removal on arguments; approved by core.

Revision 1.93.4.1: download - view: text, markup, annotated - select for diffs
Sun Oct 22 06:06:44 2006 UTC (18 years, 1 month ago) by yamt
Branches: yamt-splraiseipl
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +11 -10 lines
sync with head

Revision 1.94: download - view: text, markup, annotated - select for diffs
Thu Oct 12 01:31:52 2006 UTC (18 years, 2 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base2
Diff to: previous 1.93: preferred, colored
Changes since revision 1.93: +11 -10 lines
- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.90.4.1: download - view: text, markup, annotated - select for diffs
Sat Sep 9 02:54:06 2006 UTC (18 years, 3 months ago) by rpaulo
Branches: rpaulo-netinet-merge-pcb
Diff to: previous 1.90: preferred, colored; next MAIN 1.91: preferred, colored
Changes since revision 1.90: +6 -6 lines
sync with head

Revision 1.90.8.3: download - view: text, markup, annotated - select for diffs
Sun Sep 3 15:24:48 2006 UTC (18 years, 3 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.90.8.2: preferred, colored; branchpoint 1.90: preferred, colored; next MAIN 1.91: preferred, colored
Changes since revision 1.90.8.2: +4 -4 lines
sync with head.

Revision 1.93: download - view: text, markup, annotated - select for diffs
Sun Aug 27 05:07:13 2006 UTC (18 years, 3 months ago) by christos
Branches: MAIN
CVS tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Diff to: previous 1.92: preferred, colored
Changes since revision 1.92: +4 -4 lines
- use dk_lookup instead of our home-spun version.
- allow raid to be configured in a wedge
- allow wedges to be configured in a raid
- add autoconfiguration of wedges in a raid

Revision 1.90.8.2: download - view: text, markup, annotated - select for diffs
Fri Aug 11 15:45:08 2006 UTC (18 years, 4 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.90.8.1: preferred, colored; branchpoint 1.90: preferred, colored
Changes since revision 1.90.8.1: +4 -4 lines
sync with head

Revision 1.92: download - view: text, markup, annotated - select for diffs
Fri Jul 21 16:48:52 2006 UTC (18 years, 4 months ago) by ad
Branches: MAIN
CVS tags: yamt-pdpolicy-base7, abandoned-netbsd-4-base, abandoned-netbsd-4
Diff to: previous 1.91: preferred, colored
Changes since revision 1.91: +4 -4 lines
- Use the LWP cached credentials where sane.
- Minor cosmetic changes.

Revision 1.88.2.1: download - view: text, markup, annotated - select for diffs
Wed Jun 21 15:06:28 2006 UTC (18 years, 5 months ago) by yamt
Branches: yamt-lazymbuf
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +9 -7 lines
sync with head.

Revision 1.90.6.1: download - view: text, markup, annotated - select for diffs
Thu Jun 1 22:37:33 2006 UTC (18 years, 6 months ago) by kardel
Branches: simonb-timecounters
CVS tags: simonb-timcounters-final
Diff to: previous 1.90: preferred, colored; next MAIN 1.91: preferred, colored
Changes since revision 1.90: +4 -4 lines
Sync with head.

Revision 1.90.12.1: download - view: text, markup, annotated - select for diffs
Wed May 24 15:50:29 2006 UTC (18 years, 6 months ago) by tron
Branches: peter-altq
Diff to: previous 1.90: preferred, colored; next MAIN 1.91: preferred, colored
Changes since revision 1.90: +4 -4 lines
Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.

Revision 1.90.8.1: download - view: text, markup, annotated - select for diffs
Wed May 24 10:58:14 2006 UTC (18 years, 6 months ago) by yamt
Branches: yamt-pdpolicy
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +4 -4 lines
sync with head.

Revision 1.91: download - view: text, markup, annotated - select for diffs
Sun May 14 21:45:00 2006 UTC (18 years, 7 months ago) by elad
Branches: MAIN
CVS tags: yamt-pdpolicy-base6, yamt-pdpolicy-base5, simonb-timecounters-base, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base, chap-midi
Diff to: previous 1.90: preferred, colored
Changes since revision 1.90: +4 -4 lines
integrate kauth.

Revision 1.90.10.1: download - view: text, markup, annotated - select for diffs
Wed Mar 8 01:44:49 2006 UTC (18 years, 9 months ago) by elad
Branches: elad-kernelauth
Diff to: previous 1.90: preferred, colored; next MAIN 1.91: preferred, colored
Changes since revision 1.90: +4 -4 lines
Adapt to kernel authorization KPI.

Revision 1.90: download - view: text, markup, annotated - select for diffs
Sun Dec 11 12:23:37 2005 UTC (19 years ago) by christos
Branches: MAIN
CVS tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, yamt-pdpolicy-base, peter-altq-base, elad-kernelauth-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb, peter-altq, elad-kernelauth
Diff to: previous 1.89: preferred, colored
Changes since revision 1.89: +7 -7 lines
merge ktrace-lwp.

Revision 1.56.2.11: download - view: text, markup, annotated - select for diffs
Thu Nov 10 14:07:40 2005 UTC (19 years, 1 month ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.10: preferred, colored; next MAIN 1.57: preferred, colored
Changes since revision 1.56.2.10: +6 -2 lines
Sync with HEAD. Here we go again...

Revision 1.87.2.2: download - view: text, markup, annotated - select for diffs
Wed Jul 20 12:33:43 2005 UTC (19 years, 4 months ago) by tron
Branches: netbsd-3
CVS tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Diff to: previous 1.87.2.1: preferred, colored; branchpoint 1.87: preferred, colored
Changes since revision 1.87.2.1: +2 -0 lines
Pull up revision 1.89 (requested by oster in ticket #602):
If rf_SubmitReconBuffer indicates the submission was blocked (for
whatever reason), return 0 instead of the default
RF_RECON_READ_STOPPED.  Returning RF_RECON_READ_STOPPED would result
in rf_ContinueReconstructFailedDisk() thinking that the given
component was "done" and breaking out of the main reconstruction loop
far too early.  Reconstruction still worked correctly as long as there
were no errors, but RAIDframe wouldn't be in a position to properly
handle read/write errors during reconstruction.
This fixes the "raidctl's progress bar spins at 0% until
reconstruction finishes" problem.

Revision 1.89: download - view: text, markup, annotated - select for diffs
Mon Jul 18 15:32:01 2005 UTC (19 years, 4 months ago) by oster
Branches: MAIN
CVS tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Diff to: previous 1.88: preferred, colored
Changes since revision 1.88: +4 -2 lines
If rf_SubmitReconBuffer indicates the submission was blocked (for
whatever reason), return 0 instead of the default
RF_RECON_READ_STOPPED.  Returning RF_RECON_READ_STOPPED would result
in rf_ContinueReconstructFailedDisk() thinking that the given
component was "done" and breaking out of the main reconstruction loop
far too early.  Reconstruction still worked correctly as long as there
were no errors, but RAIDframe wouldn't be in a position to properly
handle read/write errors during reconstruction.

This fixes the "raidctl's progress bar spins at 0% until
reconstruction finishes" problem.

Revision 1.87.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 9 16:51:09 2005 UTC (19 years, 6 months ago) by tron
Branches: netbsd-3
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +4 -2 lines
Pull up revision 1.88 (requested by oster in ticket #435):
- initialize numRUsTotal before we indicate that we are doing a reconstruct.
- make numRUsComplete and numRUsTotal 64-bit quantities like
everything else that records this information.

Revision 1.88: download - view: text, markup, annotated - select for diffs
Wed Jun 8 02:00:53 2005 UTC (19 years, 6 months ago) by oster
Branches: MAIN
Branch point for: yamt-lazymbuf
Diff to: previous 1.87: preferred, colored
Changes since revision 1.87: +4 -2 lines
- initialize numRUsTotal before we indicate that we are doing a reconstruct.

- make numRUsComplete and numRUsTotal 64-bit quantities like
everything else that records this information.

Revision 1.78.2.1: download - view: text, markup, annotated - select for diffs
Fri Apr 29 11:29:15 2005 UTC (19 years, 7 months ago) by kent
Branches: kent-audio2
Diff to: previous 1.78: preferred, colored; next MAIN 1.79: preferred, colored
Changes since revision 1.78: +372 -172 lines
sync with -current

Revision 1.76.4.1: download - view: text, markup, annotated - select for diffs
Sat Apr 16 10:56:37 2005 UTC (19 years, 7 months ago) by tron
Branches: netbsd-2
CVS tags: netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1
Diff to: previous 1.76: preferred, colored; next MAIN 1.77: preferred, colored
Changes since revision 1.76: +3 -2 lines
Pull up revision 1.79 (requested by oster in ticket #1104):
ForceReconReadDoneProc() needs a return after doing the first
rf_CauseReconEvent().

Revision 1.81.2.2: download - view: text, markup, annotated - select for diffs
Sat Mar 19 08:35:41 2005 UTC (19 years, 8 months ago) by yamt
Branches: yamt-km
Diff to: previous 1.81.2.1: preferred, colored; branchpoint 1.81: preferred, colored; next MAIN 1.82: preferred, colored
Changes since revision 1.81.2.1: +116 -116 lines
sync with head.  xen and whitespace.  xen part is not finished.

Revision 1.56.2.10: download - view: text, markup, annotated - select for diffs
Fri Mar 4 16:50:08 2005 UTC (19 years, 9 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.9: preferred, colored
Changes since revision 1.56.2.9: +116 -116 lines
Sync with HEAD.

Hi Perry!

Revision 1.87: download - view: text, markup, annotated - select for diffs
Sun Feb 27 00:27:45 2005 UTC (19 years, 9 months ago) by perry
Branches: MAIN
CVS tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, kent-audio2-base
Branch point for: netbsd-3
Diff to: previous 1.86: preferred, colored
Changes since revision 1.86: +116 -116 lines
nuke trailing whitespace

Revision 1.56.2.9: download - view: text, markup, annotated - select for diffs
Tue Feb 15 21:33:29 2005 UTC (19 years, 9 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.8: preferred, colored
Changes since revision 1.56.2.8: +8 -15 lines
Sync with HEAD.

Revision 1.81.2.1: download - view: text, markup, annotated - select for diffs
Sat Feb 12 18:17:50 2005 UTC (19 years, 10 months ago) by yamt
Branches: yamt-km
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +271 -66 lines
sync with head.

Revision 1.86: download - view: text, markup, annotated - select for diffs
Sat Feb 12 03:44:41 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
CVS tags: yamt-km-base2
Diff to: previous 1.85: preferred, colored
Changes since revision 1.85: +5 -5 lines
The 'next' argument to rf_CreateDiskQueueData is always NULL.  Since
there is no particular reason to pass an extra NULL argument, turf it,
and initialize p->next to NULL within the function.

Revision 1.85: download - view: text, markup, annotated - select for diffs
Sat Feb 12 03:27:33 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.84: preferred, colored
Changes since revision 1.84: +5 -12 lines
Add a 'waitflag' argument to rf_CreateDiskQueueData() and use it to
determine if we are willing to wait for memory to come from the
diskqueuedata (dqd) and bufpool pools.  Cleanup the mess related to
code calling rf_CreateDiskQueueData() with different expectations
(and/or blatent disregard) of what might happen if there were
insufficient pool resources.

Revision 1.56.2.8: download - view: text, markup, annotated - select for diffs
Sun Feb 6 08:59:23 2005 UTC (19 years, 10 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.7: preferred, colored
Changes since revision 1.56.2.7: +265 -53 lines
Sync with HEAD.

Revision 1.84: download - view: text, markup, annotated - select for diffs
Sun Feb 6 02:29:36 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.83: preferred, colored
Changes since revision 1.83: +6 -8 lines
It's not a bad idea to update the component labels whether or not the
reconstruction was successful.

Revision 1.83: download - view: text, markup, annotated - select for diffs
Sat Feb 5 23:39:12 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.82: preferred, colored
Changes since revision 1.82: +4 -6 lines
rf_GetNextReconEvent() *will* return a valid event, so no need for
the assert.  (we'd have panic'ed in there long before this assert
if that wasn't the case).

Minor whitespace changes.

Revision 1.82: download - view: text, markup, annotated - select for diffs
Sat Feb 5 23:32:43 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.81: preferred, colored
Changes since revision 1.81: +262 -46 lines
Vastly improve the error handling in the case of a read/write error
that occurs during a reconstruction.  We go from zero error handling
and likely panicing if something goes amiss, to gracefully bailing and
leaving the system in the best, usable state possible.

- introduce rf_DrainReconEventQueue() to allow easy cleaning of the
reconstruction event queue

- change how we cleanup the floating recon buffers in
rf_FreeReconControl().  Detect the end of the list rather
than traversing according to a count.

- keep track of the number of pending reconstruction writes.  In the
event of a read error, use this to wait long enough for the pending
writes to (hopefully) drain.

- more cleanup is still needed on this code, but I didn't want to
start mixing major functional changes with minor cleanups.

XXX: There is a known issue with pool items left outstanding due to
the IO failure, and this can show up in the form of a panic at the
tail end of a shutdown.  This problem is much less severe than before
these changes, and the hope/plan is that this problem will go away
once this code gets overhauled again.

Revision 1.56.2.7: download - view: text, markup, annotated - select for diffs
Mon Jan 24 08:35:36 2005 UTC (19 years, 10 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.6: preferred, colored
Changes since revision 1.56.2.6: +6 -11 lines
Sync with HEAD.

Revision 1.81: download - view: text, markup, annotated - select for diffs
Sat Jan 22 02:24:31 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
CVS tags: yamt-km-base
Branch point for: yamt-km
Diff to: previous 1.80: preferred, colored
Changes since revision 1.80: +2 -6 lines
Torch some #define's missed in last commit.

Revision 1.80: download - view: text, markup, annotated - select for diffs
Sat Jan 22 02:22:44 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.79: preferred, colored
Changes since revision 1.79: +5 -7 lines
Reconstruction Descriptors are only allocated once per reconstruction,
and don't need their own pool or freelist or anything fancier than a
malloc/free.

Revision 1.79: download - view: text, markup, annotated - select for diffs
Tue Jan 18 03:29:51 2005 UTC (19 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.78: preferred, colored
Changes since revision 1.78: +3 -2 lines
ForceReconReadDoneProc() needs a return after doing the first
rf_CauseReconEvent().

Revision 1.56.2.6: download - view: text, markup, annotated - select for diffs
Sat Dec 18 09:32:10 2004 UTC (19 years, 11 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.5: preferred, colored
Changes since revision 1.56.2.5: +125 -167 lines
Sync with HEAD.

Revision 1.78: download - view: text, markup, annotated - select for diffs
Sun Dec 12 20:53:15 2004 UTC (20 years ago) by oster
Branches: MAIN
CVS tags: kent-audio1-beforemerge
Branch point for: kent-audio2
Diff to: previous 1.77: preferred, colored
Changes since revision 1.77: +125 -167 lines
The switch() in rf_ContinueReconstructFailedDisk() is never actually
used in non-simulation code, and thus is just wasting space (and
making the code more confusing to read!).  Turf the switch, left-shift
the indentation of code, and nuke 'state' field of struct RF_RaidReconDesc_s.

No real functional changes.

Revision 1.56.2.5: download - view: text, markup, annotated - select for diffs
Mon Nov 29 07:24:32 2004 UTC (20 years ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.4: preferred, colored
Changes since revision 1.56.2.4: +4 -4 lines
Sync with HEAD.

Revision 1.77: download - view: text, markup, annotated - select for diffs
Mon Nov 15 17:16:28 2004 UTC (20 years ago) by oster
Branches: MAIN
CVS tags: kent-audio1-base, kent-audio1
Diff to: previous 1.76: preferred, colored
Changes since revision 1.76: +4 -4 lines
continueFunc and continueArg arn't used.  Turf.  Simplify calls to
rf_GetNextReconEvent().

Revision 1.56.2.4: download - view: text, markup, annotated - select for diffs
Tue Sep 21 13:32:54 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.3: preferred, colored
Changes since revision 1.56.2.3: +7 -7 lines
Fix the sync with head I botched.

Revision 1.56.2.3: download - view: text, markup, annotated - select for diffs
Sat Sep 18 14:50:54 2004 UTC (20 years, 2 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.2: preferred, colored
Changes since revision 1.56.2.2: +7 -7 lines
Sync with HEAD.

Revision 1.56.2.2: download - view: text, markup, annotated - select for diffs
Tue Aug 3 10:50:48 2004 UTC (20 years, 4 months ago) by skrll
Branches: ktrace-lwp
Diff to: previous 1.56.2.1: preferred, colored
Changes since revision 1.56.2.1: +465 -512 lines
Sync with HEAD

Revision 1.76: download - view: text, markup, annotated - select for diffs
Thu Mar 18 16:54:54 2004 UTC (20 years, 8 months ago) by oster
Branches: MAIN
CVS tags: netbsd-2-base, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0
Branch point for: netbsd-2
Diff to: previous 1.75: preferred, colored
Changes since revision 1.75: +29 -2 lines
Re-work the locking mechanisms for reconstruct and PSS structures
such that we don't actually hold a simplelock while we are doing
a pool_get(), but that we still effectively protecting critical code.

This should fix all of the outstanding LOCKDEBUG warnings related to
rebuilding RAID sets.

Revision 1.75: download - view: text, markup, annotated - select for diffs
Sat Mar 13 02:00:15 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.74: preferred, colored
Changes since revision 1.74: +2 -8 lines
 - don't use rf_PrintUserStats() for recon statistics.
rf_PrintUserStats() was mean for the simulator, and doesn't provide
any real info in kernel-space, especially for reconstructs.
Reconstructing actually renders the stats even more useless, since it
resets them all to zero before the reconstruct starts!

 - since rf_PrintUserStats() is no longer used, nuke it along with the
routines that feed it.  Nothing was using this code, and if we ever
need it again, we know where to find it.

Revision 1.74: download - view: text, markup, annotated - select for diffs
Sun Mar 7 22:15:19 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.73: preferred, colored
Changes since revision 1.73: +10 -20 lines
- Introduce rf_pools which contains all of the various global pools used
by RAIDframe.  Convert all other RAIDframe global pools to use pools
defined within this new structure.
- Introduce rf_pool_init(), used for initializing a single pool in
RAIDframe.  Teach each of the configuration routines to use
rf_pool_init().
- Cleanup a few pool-related comments.
- Cleanup revent initialization and #defines.
- Add a missing pool_destroy() for the reconbuffer pool.

(Saves another 1K off of an i386 GENERIC kernel, and makes
stuff a lot more readable)

Revision 1.73: download - view: text, markup, annotated - select for diffs
Sun Mar 7 02:46:58 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.72: preferred, colored
Changes since revision 1.72: +18 -4 lines
- fix up initialization of rf_recond_pool
- introduce rf_reconbuffer_pool and teach rf_MakeReconBuffer() to use it

Revision 1.72: download - view: text, markup, annotated - select for diffs
Fri Mar 5 03:58:21 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.71: preferred, colored
Changes since revision 1.71: +12 -5 lines
Use RF_INCLUDE_PARITY_DECLUSTERING_DS to #if-out more unneeded bits.
(We can't do RF_DISTRIBUTE_SPARE bits without the parity declustering stuff.)

Revision 1.71: download - view: text, markup, annotated - select for diffs
Wed Mar 3 17:14:46 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.70: preferred, colored
Changes since revision 1.70: +6 -6 lines
Nuke some unnecessary casts.  No functional changes.

Revision 1.70: download - view: text, markup, annotated - select for diffs
Wed Mar 3 16:59:54 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.69: preferred, colored
Changes since revision 1.69: +22 -14 lines
Introduce RF_REVENT_READ_FAILED, RF_REVENT_WRITE_FAILED and RF_REVENT_FORCEREAD_FAILED.
This removes 3 more RF_PANIC()'s (but we'll currently still panic if any of these cases occur).
fix up a few printf's.
XXX: still needs more cleanup and testing (and be taught to not panic).

Revision 1.69: download - view: text, markup, annotated - select for diffs
Wed Mar 3 16:12:28 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.68: preferred, colored
Changes since revision 1.68: +24 -33 lines
Cleanup function prototypes.

Revision 1.68: download - view: text, markup, annotated - select for diffs
Wed Mar 3 00:45:20 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.67: preferred, colored
Changes since revision 1.67: +25 -11 lines
- cleanup memory allocation in rf_AllocPSStatus()
- change function signature of rf_LookupRUStatus().  The last argument
is now a pointer to a new PSS, in case one is needed.  Rather than
having rf_LookupRUStatus() allocate a new PSS, we pre-allocate one
beforehand, where necessary, just in case.
- change callers of rf_lookupRUStatus() to deal with the new way of
calling rf_lookupRUStatus().

[no improvement or worsening of parity rebuild/initialization performance.]

Revision 1.67: download - view: text, markup, annotated - select for diffs
Mon Mar 1 23:30:58 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.66: preferred, colored
Changes since revision 1.66: +25 -6 lines
Use RF_ACC_TRACE to #if out more chunks of code related only
to access tracing.  (not turned on yet)

Revision 1.66: download - view: text, markup, annotated - select for diffs
Sun Feb 29 04:03:50 2004 UTC (20 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.65: preferred, colored
Changes since revision 1.65: +4 -9 lines
Adjust _rf_ShutdownCreate() so that it is willing to wait for more
memory.  Since we only now ever "return(0)", just return (void)
instead.

Cleanup all uses of rf_ShutdownCreate() to not worry about
it ever failing.  Shaves another 600 bytes off of an i386 GENERIC kernel.

Revision 1.65: download - view: text, markup, annotated - select for diffs
Sun Jan 4 21:06:04 2004 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.64: preferred, colored
Changes since revision 1.64: +4 -5 lines
raidPtr->reconControl->percentCompleted only gets used in one
debugging printf, and in rf_netbsdkintf.c.  We can do the calculations
inside of RF_DEBUG_RECON for the one debugging printf, and only
perform the percentCompleted calculation "on demand" in the
rf_netbsdkintf.c case.  Shaves a few more bytes off an i386 GENERIC
kernel, and ever-so-slightly decreases the amount of work performed
during a reconstruct.

Revision 1.64: download - view: text, markup, annotated - select for diffs
Wed Dec 31 04:13:52 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.63: preferred, colored
Changes since revision 1.63: +9 -8 lines
Add in a bunch of RF_SIGNAL_COND()'s that were missing.  Tidy up
a few lines.

Revision 1.63: download - view: text, markup, annotated - select for diffs
Wed Dec 31 04:00:01 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.62: preferred, colored
Changes since revision 1.62: +34 -36 lines
Left-shift another else{} chunk.  No functional changes.

Revision 1.62: download - view: text, markup, annotated - select for diffs
Wed Dec 31 03:51:28 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.61: preferred, colored
Changes since revision 1.61: +127 -134 lines
left-shift the "else" part of the if(!lp_SubmitReconBuffer) condition.
Cleanup.  No real functional changes, just more readable.

Revision 1.61: download - view: text, markup, annotated - select for diffs
Wed Dec 31 03:29:11 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.60: preferred, colored
Changes since revision 1.60: +9 -7 lines
Negate a condition, and flip if/else parts.  Preparation for left-shifting
the (now) else part.  No real functional change.

Revision 1.60: download - view: text, markup, annotated - select for diffs
Tue Dec 30 21:59:03 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.59: preferred, colored
Changes since revision 1.59: +45 -79 lines
Some days you wonder if some of the function declaration consistency
was just an accident in the first place.  Cleanup function decls and
a few comments.  [ok.. so I wasn't going to fix this many.. but once
you're on a roll....]

Revision 1.59: download - view: text, markup, annotated - select for diffs
Mon Dec 29 05:58:34 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.58: preferred, colored
Changes since revision 1.58: +2 -15 lines
Let's see...  raidPtr->recon_done_procs is never set to anything
(other than NULL when raidPtr is initialized).  That means
SignalReconDone() never does anything useful.  Bye-bye!

Say good-bye to recon_done_procs and recon_done_procs_mutex (and its
initializer) as well.

Revision 1.58: download - view: text, markup, annotated - select for diffs
Mon Dec 29 03:33:48 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.57: preferred, colored
Changes since revision 1.57: +8 -22 lines
- first kick at a major reworking of RAIDframe's memory allocation code:
  - all freelists converted to pools
  - initialization of structure members in certain cases where
	code was relying on specific allocation and usage properties
	to keep structures in a "known state" (that doesn't work with
	pools!).
  - make most pool_get() be "PR_WAITOK" until they can be analyzed
	further, and/or have proper error handling added.
  - all RF_Mallocs zero the space returned, so there is no difference
	between RF_Calloc and RF_Malloc.  In fact, all the RF_Calloc()'s
	do is tend to do is get things horribly confused.
	Make RF_Malloc() the "general memory allocator", with
	RF_MallocAndAdd() the "general memory allocator with
	allocation list".
  - some of these RF_Malloc's et al. are destined to disappear.
  - remove rf_rdp_freelist entirely (it's not used anywhere!)
  - remove: #include "rf_freelist.h"
  - to the files that were relying on the above, add: #include "rf_general.h"
  - add: #include "rf_debugMem.h" to rf_shutdown.h to make it happy
	about the loss of: #include "rf_freelist.h".

This shrinks an i386 GENERIC kernel by approx 5K.  RAIDframe now
weighs in at about 162K on i386.

Revision 1.57: download - view: text, markup, annotated - select for diffs
Mon Dec 29 02:38:18 2003 UTC (20 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +199 -237 lines
[Having received a definite lack of strenuous objection, a small amount
of strenuous agreement, and some general agreement, this commit is
going ahead because it's now starting to block some other changes I
wish to make.]

Remove most of the support for the concept of "rows" from RAIDframe.
While the "row" interface has been exported to the world, RAIDframe
internals have really only supported a single row, even though they
have feigned support of multiple rows.

Nothing changes in configuration land -- config files still need to
specify a single row, etc.  All auto-config structures remain fully
forward/backwards compatible.

The only visible difference to the average user should be a
reduction in the size of a GENERIC kernel (i386) by 4.5K.  For those
of us trolling through RAIDframe kernel code, a lot of the driver
configuration code has become a LOT easier to read.

Revision 1.56.2.1: download - view: text, markup, annotated - select for diffs
Wed Jul 2 15:26:16 2003 UTC (21 years, 5 months ago) by darrenr
Branches: ktrace-lwp
Diff to: previous 1.56: preferred, colored
Changes since revision 1.56: +8 -8 lines
Apply the aborted ktrace-lwp changes to a specific branch.  This is just for
others to review, I'm concerned that patch fuziness may have resulted in some
errant code being generated but I'll look at that later by comparing the diff
from the base to the branch with the file I attempt to apply to it.  This will,
at the very least, put the changes in a better context for others to review
them and attempt to tinker with removing passing of 'struct lwp' through
the kernel.

Revision 1.56: download - view: text, markup, annotated - select for diffs
Sun Jun 29 22:30:34 2003 UTC (21 years, 5 months ago) by fvdl
Branches: MAIN
Branch point for: ktrace-lwp
Diff to: previous 1.55: preferred, colored
Changes since revision 1.55: +6 -6 lines
Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.

Revision 1.55: download - view: text, markup, annotated - select for diffs
Sat Jun 28 14:21:42 2003 UTC (21 years, 5 months ago) by darrenr
Branches: MAIN
Diff to: previous 1.54: preferred, colored
Changes since revision 1.54: +8 -8 lines
Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V

Revision 1.54: download - view: text, markup, annotated - select for diffs
Thu Apr 10 04:11:50 2003 UTC (21 years, 8 months ago) by simonb
Branches: MAIN
Diff to: previous 1.53: preferred, colored
Changes since revision 1.53: +5 -5 lines
Remove an assigned-to but unused variable.

Revision 1.53: download - view: text, markup, annotated - select for diffs
Fri Mar 21 23:11:23 2003 UTC (21 years, 8 months ago) by dsl
Branches: MAIN
Diff to: previous 1.52: preferred, colored
Changes since revision 1.52: +3 -3 lines
Use 'void *' instead of 'caddr_t' in prototypes of VOP_IOCTL, VOP_FCNTL
and VOP_ADVLOCK, delete casts from callers (and some to copyin/out).

Revision 1.52: download - view: text, markup, annotated - select for diffs
Sun Feb 9 10:04:34 2003 UTC (21 years, 10 months ago) by jdolecek
Branches: MAIN
Diff to: previous 1.51: preferred, colored
Changes since revision 1.51: +4 -4 lines
constify some

Revision 1.27.2.12: download - view: text, markup, annotated - select for diffs
Wed Dec 11 06:38:36 2002 UTC (22 years ago) by thorpej
Branches: nathanw_sa
CVS tags: nathanw_sa_end
Diff to: previous 1.27.2.11: preferred, colored; branchpoint 1.27: preferred, colored; next MAIN 1.28: preferred, colored
Changes since revision 1.27.2.11: +14 -29 lines
Sync with HEAD.

Revision 1.51: download - view: text, markup, annotated - select for diffs
Tue Nov 19 01:45:29 2002 UTC (22 years ago) by oster
Branches: MAIN
CVS tags: nathanw_sa_before_merge, nathanw_sa_base, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Diff to: previous 1.50: preferred, colored
Changes since revision 1.50: +2 -27 lines
For reconstructs, move checks for failed components to before the
kernel threads are created.

Revision 1.50: download - view: text, markup, annotated - select for diffs
Sat Nov 16 16:59:58 2002 UTC (22 years ago) by oster
Branches: MAIN
Diff to: previous 1.49: preferred, colored
Changes since revision 1.49: +9 -6 lines
Cleanup more printfs.

Revision 1.49: download - view: text, markup, annotated - select for diffs
Fri Nov 15 03:57:48 2002 UTC (22 years, 1 month ago) by oster
Branches: MAIN
Diff to: previous 1.48: preferred, colored
Changes since revision 1.48: +9 -2 lines
After a rebuild-in-place, a reconstruct, or a copyback, we should
really be updating the component labels.

Revision 1.27.2.11: download - view: text, markup, annotated - select for diffs
Mon Nov 11 22:12:00 2002 UTC (22 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.10: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.10: +17 -6 lines
Catch up to -current

Revision 1.48: download - view: text, markup, annotated - select for diffs
Fri Oct 18 02:46:37 2002 UTC (22 years, 1 month ago) by oster
Branches: MAIN
CVS tags: kqueue-beforemerge, kqueue-aftermerge
Diff to: previous 1.47: preferred, colored
Changes since revision 1.47: +19 -8 lines
Improve and/or re-arrange a number of locks.  While much of the locking is
still a mess, and there are a number of unresolved issues here, this
gets us closer to being happier in LOCKDEBUG land.

Revision 1.27.2.10: download - view: text, markup, annotated - select for diffs
Fri Oct 18 02:43:56 2002 UTC (22 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.9: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.9: +17 -33 lines
Catch up to -current.

Revision 1.28.2.4: download - view: text, markup, annotated - select for diffs
Thu Oct 10 18:41:57 2002 UTC (22 years, 2 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.28.2.3: preferred, colored; next MAIN 1.29: preferred, colored
Changes since revision 1.28.2.3: +49 -59 lines
sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work

Revision 1.47: download - view: text, markup, annotated - select for diffs
Sun Oct 6 05:32:59 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.46: preferred, colored
Changes since revision 1.46: +3 -2 lines
Add a missing RF_LOCK_MUTEX().

Revision 1.46: download - view: text, markup, annotated - select for diffs
Sun Oct 6 05:23:55 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.45: preferred, colored
Changes since revision 1.45: +7 -4 lines
Introduce a temp variable, and allocate the ReconCtrl structure before
we protect raidPtr.  One less thing for LOCKDEBUG to complain about.

Revision 1.45: download - view: text, markup, annotated - select for diffs
Mon Sep 23 03:40:28 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
CVS tags: kqueue-base
Diff to: previous 1.44: preferred, colored
Changes since revision 1.44: +2 -5 lines
Nuke "baddisk". Thanks to Simon B.

Revision 1.44: download - view: text, markup, annotated - select for diffs
Sat Sep 21 01:25:10 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.43: preferred, colored
Changes since revision 1.43: +2 -24 lines
rf_RegisterReconDoneProc() isn't needed.

This is the last of the 'easy' ones that Krister made me aware of.
Total savings on i386 GENERIC kernel: 13151 bytes
RAIDframe in GENERIC is now at: 179033
Thanks again Krister!

Revision 1.43: download - view: text, markup, annotated - select for diffs
Thu Sep 19 22:52:52 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.42: preferred, colored
Changes since revision 1.42: +4 -2 lines
Introduce and use RF_DEBUG_PSS, and save a few more bytes.

Revision 1.42: download - view: text, markup, annotated - select for diffs
Thu Sep 19 22:41:51 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.41: preferred, colored
Changes since revision 1.41: +2 -3 lines
One signal will do, thanks.

Revision 1.27.2.9: download - view: text, markup, annotated - select for diffs
Tue Sep 17 21:20:57 2002 UTC (22 years, 2 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.8: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.8: +38 -28 lines
Catch up to -current.

Revision 1.41: download - view: text, markup, annotated - select for diffs
Tue Sep 17 03:30:33 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.40: preferred, colored
Changes since revision 1.40: +9 -5 lines
Cast the RF_DEBUG_RECON net a little wider.

Revision 1.40: download - view: text, markup, annotated - select for diffs
Tue Sep 17 03:21:41 2002 UTC (22 years, 2 months ago) by oster
Branches: MAIN
Diff to: previous 1.39: preferred, colored
Changes since revision 1.39: +4 -4 lines
Rename RF_DEBUG_RECONBUFFER to RF_DEBUG_RECON in order to facilitate
disabling other stuff without having to introduce another #define.

Revision 1.39: download - view: text, markup, annotated - select for diffs
Mon Sep 16 02:48:34 2002 UTC (22 years, 3 months ago) by oster
Branches: MAIN
Diff to: previous 1.38: preferred, colored
Changes since revision 1.38: +3 -8 lines
Cleanup some comments.

Revision 1.38: download - view: text, markup, annotated - select for diffs
Mon Sep 16 02:35:17 2002 UTC (22 years, 3 months ago) by oster
Branches: MAIN
Diff to: previous 1.37: preferred, colored
Changes since revision 1.37: +6 -2 lines
rf_CheckFloatingRbufCount() is only really useful when debugging the
reconstruct buffer stuff.  #if it out in the general case.

Revision 1.37: download - view: text, markup, annotated - select for diffs
Mon Sep 16 02:25:08 2002 UTC (22 years, 3 months ago) by oster
Branches: MAIN
Diff to: previous 1.36: preferred, colored
Changes since revision 1.36: +30 -20 lines
Cleanup some printf's, and disable some (debugging) output.

Revision 1.36: download - view: text, markup, annotated - select for diffs
Sat Sep 14 17:53:59 2002 UTC (22 years, 3 months ago) by oster
Branches: MAIN
Diff to: previous 1.35: preferred, colored
Changes since revision 1.35: +4 -5 lines
Everyone and their dog was using RF_ERRORMSG3 to print out the same
sort of error message, over and over again, in different files.
Rather than having the same text repeated in multiple .o files,
create a couple of little functions to do the printing, and save a
bundle of space.  Also improves readability of code.

Revision 1.35: download - view: text, markup, annotated - select for diffs
Mon Sep 9 02:44:17 2002 UTC (22 years, 3 months ago) by oster
Branches: MAIN
Diff to: previous 1.34: preferred, colored
Changes since revision 1.34: +5 -3 lines
Disallow 'reconstruct-in-place' on a component that has failed
and has already been reconstructed to a hot spare.

Revision 1.28.2.3: download - view: text, markup, annotated - select for diffs
Fri Sep 6 08:46:08 2002 UTC (22 years, 3 months ago) by jdolecek
Branches: kqueue
Diff to: previous 1.28.2.2: preferred, colored
Changes since revision 1.28.2.2: +2 -4 lines
sync kqueue branch with HEAD

Revision 1.27.2.8: download - view: text, markup, annotated - select for diffs
Thu Aug 1 02:45:38 2002 UTC (22 years, 4 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.7: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.7: +2 -4 lines
Catch up to -current.

Revision 1.33.8.1: download - view: text, markup, annotated - select for diffs
Mon Jul 15 10:35:52 2002 UTC (22 years, 5 months ago) by gehenna
Branches: gehenna-devsw
Diff to: previous 1.33: preferred, colored; next MAIN 1.34: preferred, colored
Changes since revision 1.33: +2 -4 lines
catch up with -current.

Revision 1.34: download - view: text, markup, annotated - select for diffs
Sat Jul 13 20:54:57 2002 UTC (22 years, 5 months ago) by oster
Branches: MAIN
CVS tags: gehenna-devsw-base
Diff to: previous 1.33: preferred, colored
Changes since revision 1.33: +2 -4 lines
Nuke a redundant wakeup().

Revision 1.27.2.7: download - view: text, markup, annotated - select for diffs
Thu Feb 28 04:14:18 2002 UTC (22 years, 9 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.6: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.6: +2 -2 lines
Catch up to -current.

Revision 1.27.2.6: download - view: text, markup, annotated - select for diffs
Fri Jan 11 23:39:32 2002 UTC (22 years, 11 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.5: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.5: +20 -2 lines
More catchup.

Revision 1.28.2.2: download - view: text, markup, annotated - select for diffs
Thu Jan 10 19:57:58 2002 UTC (22 years, 11 months ago) by thorpej
Branches: kqueue
Diff to: previous 1.28.2.1: preferred, colored
Changes since revision 1.28.2.1: +23 -4 lines
Sync kqueue branch with -current.

Revision 1.33: download - view: text, markup, annotated - select for diffs
Wed Jan 9 03:10:19 2002 UTC (22 years, 11 months ago) by oster
Branches: MAIN
CVS tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: gehenna-devsw
Diff to: previous 1.32: preferred, colored
Changes since revision 1.32: +20 -2 lines
Move a bunch of debugging stuff to be only used if DEBUG is turned on.

Revision 1.27.2.5: download - view: text, markup, annotated - select for diffs
Tue Jan 8 00:31:36 2002 UTC (22 years, 11 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.4: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.4: +2 -3 lines
Catch up to -current.

Revision 1.32: download - view: text, markup, annotated - select for diffs
Thu Nov 15 09:48:14 2001 UTC (23 years, 1 month ago) by lukem
Branches: MAIN
Diff to: previous 1.31: preferred, colored
Changes since revision 1.31: +2 -3 lines
don't need <sys/types.h> when including <sys/param.h>

Revision 1.27.2.4: download - view: text, markup, annotated - select for diffs
Wed Nov 14 19:15:52 2001 UTC (23 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.3: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.3: +4 -1 lines
Catch up to -current.

Revision 1.31: download - view: text, markup, annotated - select for diffs
Tue Nov 13 07:11:16 2001 UTC (23 years, 1 month ago) by lukem
Branches: MAIN
Diff to: previous 1.30: preferred, colored
Changes since revision 1.30: +4 -1 lines
add RCSIDs

Revision 1.27.2.3: download - view: text, markup, annotated - select for diffs
Mon Oct 22 20:41:39 2001 UTC (23 years, 1 month ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.2: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.2: +2 -3 lines
Catch up to -current.

Revision 1.29.2.2: download - view: text, markup, annotated - select for diffs
Thu Oct 11 00:02:24 2001 UTC (23 years, 2 months ago) by fvdl
Branches: thorpej-devvp
Diff to: previous 1.29.2.1: preferred, colored; branchpoint 1.29: preferred, colored; next MAIN 1.30: preferred, colored
Changes since revision 1.29.2.1: +2 -3 lines
Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.

Revision 1.30: download - view: text, markup, annotated - select for diffs
Thu Oct 4 15:58:55 2001 UTC (23 years, 2 months ago) by oster
Branches: MAIN
CVS tags: thorpej-mips-cache-base, thorpej-mips-cache, thorpej-devvp-base3
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +2 -3 lines
Step 2 of the disentanglement.  We now look to <dev/raidframe/*> for
the stuff that used to live in rf_types.h, rf_raidframe.h, rf_layout.h,
rf_netbsd.h, rf_raid.h, rf_decluster,h, and a few other places.
Believe it or not, when this is all done, things will be cleaner.

No functional changes to RAIDframe.

Revision 1.29.2.1: download - view: text, markup, annotated - select for diffs
Fri Sep 7 04:45:30 2001 UTC (23 years, 3 months ago) by thorpej
Branches: thorpej-devvp
Diff to: previous 1.29: preferred, colored
Changes since revision 1.29: +3 -10 lines
Commit my "devvp" changes to the thorpej-devvp branch.  This
replaces the use of dev_t in most places with a struct vnode *.

This will form the basic infrastructure for real cloning device
support (besides being architecurally cleaner -- it'll be good
to get away from using numbers to represent objects).

Revision 1.27.2.2: download - view: text, markup, annotated - select for diffs
Fri Aug 24 00:10:39 2001 UTC (23 years, 3 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27.2.1: preferred, colored; branchpoint 1.27: preferred, colored
Changes since revision 1.27.2.1: +3 -2 lines
Catch up with -current.

Revision 1.28.2.1: download - view: text, markup, annotated - select for diffs
Fri Aug 3 04:13:28 2001 UTC (23 years, 4 months ago) by lukem
Branches: kqueue
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -2 lines
update to -current

Revision 1.29: download - view: text, markup, annotated - select for diffs
Wed Jul 18 06:45:34 2001 UTC (23 years, 4 months ago) by thorpej
Branches: MAIN
CVS tags: thorpej-devvp-base2, thorpej-devvp-base, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: thorpej-devvp
Diff to: previous 1.28: preferred, colored
Changes since revision 1.28: +3 -2 lines
bzero -> memset

Revision 1.27.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 21 20:05:34 2001 UTC (23 years, 5 months ago) by nathanw
Branches: nathanw_sa
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +18 -2 lines
Catch up to -current.

Revision 1.28: download - view: text, markup, annotated - select for diffs
Thu Jun 14 02:35:56 2001 UTC (23 years, 6 months ago) by oster
Branches: MAIN
Branch point for: kqueue
Diff to: previous 1.27: preferred, colored
Changes since revision 1.27: +18 -2 lines
It's silly to need a parity rebuild after a reconstruction has completed.
If we've just reconstructed a disk, then the parity is known to
be correct.  (XXX doesn't hold for RAID 6!)

Revision 1.8.2.2: download - view: text, markup, annotated - select for diffs
Sun Feb 11 19:16:17 2001 UTC (23 years, 10 months ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.8.2.1: preferred, colored; branchpoint 1.8: preferred, colored; next MAIN 1.9: preferred, colored
Changes since revision 1.8.2.1: +2 -1 lines
Sync with HEAD.

Revision 1.26.2.1: download - view: text, markup, annotated - select for diffs
Sat Feb 3 19:12:40 2001 UTC (23 years, 10 months ago) by he
Branches: netbsd-1-5
CVS tags: netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001
Diff to: previous 1.26: preferred, colored; next MAIN 1.27: preferred, colored
Changes since revision 1.26: +2 -1 lines
Pull up revision 1.27 (requested by oster):
  Make sure we update the ``partitionSize'' field of the component
  labels when doing a reconstruct or copyback, instead of leaving
  behind possibly uninitialized junk, which could cause autoconfig
  failure on reboot.

Revision 1.27: download - view: text, markup, annotated - select for diffs
Fri Jan 26 02:16:24 2001 UTC (23 years, 10 months ago) by oster
Branches: MAIN
CVS tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Branch point for: nathanw_sa
Diff to: previous 1.26: preferred, colored
Changes since revision 1.26: +2 -1 lines
Ensure we update the 'partitionSize' field of the component labels
when doing a reconstruct or a copyback.  If we don't, junk might be
there, and that could cause the component to be not correctly
autoconfigured on reboot.  Thanks to Simon Burge for helping track this down.

Revision 1.8.2.1: download - view: text, markup, annotated - select for diffs
Mon Nov 20 11:42:59 2000 UTC (24 years ago) by bouyer
Branches: thorpej_scsipi
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +139 -132 lines
Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.

Revision 1.22.2.1: download - view: text, markup, annotated - select for diffs
Thu Jun 22 17:07:57 2000 UTC (24 years, 5 months ago) by minoura
Branches: minoura-xpg4dl
Diff to: previous 1.22: preferred, colored; next MAIN 1.23: preferred, colored
Changes since revision 1.22: +11 -3 lines
Sync w/ netbsd-1-5-base.

Revision 1.26: download - view: text, markup, annotated - select for diffs
Sun Jun 4 02:05:13 2000 UTC (24 years, 6 months ago) by oster
Branches: MAIN
CVS tags: netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2
Branch point for: netbsd-1-5
Diff to: previous 1.25: preferred, colored
Changes since revision 1.25: +3 -2 lines
Merge rf_update_component_labels() and rf_final_update_component_labels().

Revision 1.25: download - view: text, markup, annotated - select for diffs
Wed May 31 00:52:36 2000 UTC (24 years, 6 months ago) by oster
Branches: MAIN
Diff to: previous 1.24: preferred, colored
Changes since revision 1.24: +2 -2 lines
Oops.. reconstruction percentages were being reported incorrectly.
Thanks to Manuel Bouyer for noting this.

Revision 1.24: download - view: text, markup, annotated - select for diffs
Sun May 28 03:42:23 2000 UTC (24 years, 6 months ago) by oster
Branches: MAIN
Diff to: previous 1.23: preferred, colored
Changes since revision 1.23: +4 -3 lines
Umm.. Complete is not equal to 'left to do'.  Fix the math.

Revision 1.23: download - view: text, markup, annotated - select for diffs
Sun May 28 00:48:30 2000 UTC (24 years, 6 months ago) by oster
Branches: MAIN
Diff to: previous 1.22: preferred, colored
Changes since revision 1.22: +8 -2 lines
- Add a mechanism for obtaining finer-grained 'progress' information
regarding reconstructs, copybacks, etc.

- RAID 0 doesn't do copybacks, but don't make raidctl sweat about it.

Revision 1.22: download - view: text, markup, annotated - select for diffs
Mon Mar 13 23:52:36 2000 UTC (24 years, 9 months ago) by soren
Branches: MAIN
CVS tags: minoura-xpg4dl-base
Branch point for: minoura-xpg4dl
Diff to: previous 1.21: preferred, colored
Changes since revision 1.21: +2 -2 lines
Fix doubled 'the's in comments.

Revision 1.21: download - view: text, markup, annotated - select for diffs
Tue Mar 7 02:59:50 2000 UTC (24 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.20: preferred, colored
Changes since revision 1.20: +5 -11 lines
Create a new rf_close_component() to handle vnode operations for closing
components.  Teach rf_UnconfigureVnodes() how to use it, and tell
the copyback and reconstruction code about it too.

Revision 1.20: download - view: text, markup, annotated - select for diffs
Fri Feb 25 17:14:18 2000 UTC (24 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.19: preferred, colored
Changes since revision 1.19: +4 -1 lines
When we close autoconfigured components, we need to note that they
are no longer in 'autoconfigured' status.

Revision 1.19: download - view: text, markup, annotated - select for diffs
Fri Feb 25 02:06:34 2000 UTC (24 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.18: preferred, colored
Changes since revision 1.18: +3 -2 lines
Fix a (slightly) bogus status message.

Revision 1.18: download - view: text, markup, annotated - select for diffs
Thu Feb 24 04:39:41 2000 UTC (24 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.17: preferred, colored
Changes since revision 1.17: +10 -3 lines
Make sure we close auto-configured components appropriately when
attempting a rebuild-in-place.

Revision 1.17: download - view: text, markup, annotated - select for diffs
Wed Feb 23 03:44:03 2000 UTC (24 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.16: preferred, colored
Changes since revision 1.16: +2 -1 lines
Be more aggressive about updating component labels in the event
of a real component failure (or a simulated failure):
- add 'numNewFailures' to keep track of the number of disk failures
since mod_counter was last updated for each component label.
- make sure we call rf_update_component_labels() upon any component failure,
real or simulated.

Revision 1.16: download - view: text, markup, annotated - select for diffs
Wed Feb 23 02:03:03 2000 UTC (24 years, 9 months ago) by oster
Branches: MAIN
Diff to: previous 1.15: preferred, colored
Changes since revision 1.15: +4 -9 lines
Do a better job of (re)initializing the component labels after
a reconstruct or a copyback.

Revision 1.15: download - view: text, markup, annotated - select for diffs
Sun Feb 13 04:53:57 2000 UTC (24 years, 10 months ago) by oster
Branches: MAIN
CVS tags: chs-ubc2-newbase
Diff to: previous 1.14: preferred, colored
Changes since revision 1.14: +4 -6 lines
Get recent changes into the tree:
- make component_label variables more consistent (==> clabel)
- re-work incorrect component configuration code
- re-work disk configuration code
- cleanup initial configuration of raidPtr info
- add auto-detection of components and RAID sets (Disabled, for now)
- allow / on RAID sets (Disabled, for now)
- rename "config_disk_queue" to "rf_ConfigureDiskQueue" and properly prototype
in rf_diskqueue.h
- protect some headers with #if _KERNEL  (XXX this needs to be fixed properly)
  and cleanup header formatting.
- expand the component labels (yes, they should be backward/forward compatible)
- other bits and pieces (some function names are still bogus, and will get
changed soon)

Revision 1.14: download - view: text, markup, annotated - select for diffs
Sun Jan 9 03:14:33 2000 UTC (24 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.13: preferred, colored
Changes since revision 1.13: +3 -8 lines
Nuke dependencies on rf_cpuutils.h.

Revision 1.13: download - view: text, markup, annotated - select for diffs
Sun Jan 9 01:45:58 2000 UTC (24 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.12: preferred, colored
Changes since revision 1.12: +98 -81 lines
Nuke unused debugging stuff.  Clean up a whole bunch of comments.

Revision 1.12: download - view: text, markup, annotated - select for diffs
Sun Jan 9 01:29:28 2000 UTC (24 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.11: preferred, colored
Changes since revision 1.11: +1 -6 lines
- move a bunch of function prototypes to rf_kintf.h
- general cleanup of a number of prototypes that were scattered around.

Revision 1.11: download - view: text, markup, annotated - select for diffs
Sun Jan 9 01:12:05 2000 UTC (24 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.10: preferred, colored
Changes since revision 1.10: +1 -12 lines
Nuke #if 0'ed code.

Revision 1.10: download - view: text, markup, annotated - select for diffs
Sat Jan 8 22:57:31 2000 UTC (24 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.9: preferred, colored
Changes since revision 1.9: +15 -15 lines
- nuke calls to rf_get_threadid() and associated #include
- change a bunch of debugging printfs from
  "[%d] ...", tid   (where tid is the "thread id")
to
  "raid%d: ...", raidPtr->raidid
- other minor rototillage

Revision 1.9: download - view: text, markup, annotated - select for diffs
Wed Jan 5 02:57:29 2000 UTC (24 years, 11 months ago) by oster
Branches: MAIN
Diff to: previous 1.8: preferred, colored
Changes since revision 1.8: +6 -2 lines
- update RF_CREATE_THREAD to handle a 'process name' argument.
- fire up a new thread for parity re-writes, copybacks, and reconstructs.
  The ioctl's which trigger these actions now return immediately.
- add progress accounting for the above actions.
- minor rototillage of rf_netbsdkintf.c to deal with all of the above.

Revision 1.5.2.1: download - view: text, markup, annotated - select for diffs
Tue Sep 28 04:47:27 1999 UTC (25 years, 2 months ago) by cgd
Branches: netbsd-1-4
CVS tags: netbsd-1-4-PATCH003, netbsd-1-4-PATCH002
Diff to: previous 1.5: preferred, colored; next MAIN 1.6: preferred, colored
Changes since revision 1.5: +16 -9 lines
pull up rev 1.6 from trunk (requested by oster):
  Clean up reconstruction accounting a bit.  While it worked before, it
  was slightly broken in the case where the RAID set did not support
  reconstruction.

Revision 1.8: download - view: text, markup, annotated - select for diffs
Sat Aug 14 03:10:04 1999 UTC (25 years, 4 months ago) by oster
Branches: MAIN
CVS tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, wrstuden-devbsize, fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999
Branch point for: thorpej_scsipi
Diff to: previous 1.7: preferred, colored
Changes since revision 1.7: +2 -2 lines
Remove a 'struct proc *'-passing abomination that's been bugging me
for quite some time.

Revision 1.7: download - view: text, markup, annotated - select for diffs
Fri Aug 13 03:41:57 1999 UTC (25 years, 4 months ago) by oster
Branches: MAIN
Diff to: previous 1.6: preferred, colored
Changes since revision 1.6: +1 -2 lines
rf_sys.h does not need to be #included in any of these files, and, actually,
is no longer needed at all.

Revision 1.6: download - view: text, markup, annotated - select for diffs
Fri Aug 13 01:43:33 1999 UTC (25 years, 4 months ago) by oster
Branches: MAIN
Diff to: previous 1.5: preferred, colored
Changes since revision 1.5: +16 -9 lines
Clean up reconstruction accounting a bit.  While it worked before, it was
slightly broken in the case where the RAID set did not support reconstruction.

Revision 1.5: download - view: text, markup, annotated - select for diffs
Tue Mar 2 03:18:49 1999 UTC (25 years, 9 months ago) by oster
Branches: MAIN
CVS tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH001, kame_14_19990705, kame_14_19990628, kame_141_19991130, kame, chs-ubc2-base, chs-ubc2
Branch point for: netbsd-1-4
Diff to: previous 1.4: preferred, colored
Changes since revision 1.4: +266 -1 lines
Update for recent changes including component label support, clean
bits, rebuilding components in-place, adding hot spares, shutdownhooks, etc.

Revision 1.4: download - view: text, markup, annotated - select for diffs
Fri Feb 5 00:06:16 1999 UTC (25 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.3: preferred, colored
Changes since revision 1.3: +1152 -1064 lines
Phase 2 of the RAIDframe cleanup.  The source is now closer to KNF
and is much easier to read.  No functionality changes.

Revision 1.3: download - view: text, markup, annotated - select for diffs
Tue Jan 26 04:40:03 1999 UTC (25 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.2: preferred, colored
Changes since revision 1.2: +1 -42 lines
Nuke more bits of RAIDframe "demo" code.  We're not "demoing" here,
we're doing the Real Thing!

Revision 1.2: download - view: text, markup, annotated - select for diffs
Tue Jan 26 02:34:01 1999 UTC (25 years, 10 months ago) by oster
Branches: MAIN
Diff to: previous 1.1: preferred, colored
Changes since revision 1.1: +1 -245 lines
RAIDframe cleanup, phase 1.  Nuke simulator support, user-land driver,
out-dated comments, and other unneeded stuff.  This helps prepare
for cleaning up the rest of the code, and adding new functionality.

No functional changes to the kernel code in this commit.

Revision 1.1: download - view: text, markup, annotated - select for diffs
Fri Nov 13 04:20:33 1998 UTC (26 years, 1 month ago) by oster
Branches: MAIN
CVS tags: kenh-if-detach-base, kenh-if-detach
RAIDframe, version 1.1, from the Parallel Data Laboratory at
Carnegie Mellon University.  Full RAID implementation, including
levels 0, 1, 4, 5, 6, parity logging, and a few other goodies.
Ported to NetBSD by Greg Oster.

Diff request

This form allows you to request diffs between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

Log view options

CVSweb <webmaster@jp.NetBSD.org>