History log of /src/sys/dev/raidframe/rf_kintf.h |
Revision | | Date | Author | Comments |
1.26 |
| 27-Sep-2020 |
christos | DIOCCACHESYNC takes an int argument, pass it through.
|
1.25 |
| 18-Jan-2018 |
mrg | implement 32-bit compat support for raidframe.
convert several raidframe ioctls to be bitsize idempotent so that they work the same in 32 and 64 bit worlds, allowing netbsd32 to configure and query raid properly. remove useless 'row' in a few places. add COMPAT_80 and put the old ioctls there.
raidframeio.h: RAIDFRAME_TEST_ACC - remove, unused RAIDFRAME_GET_COMPONENT_LABEL - convert to label not pointer to label RAIDFRAME_CHECK_RECON_STATUS_EXT RAIDFRAME_CHECK_PARITYREWRITE_STATUS_EXT RAIDFRAME_CHECK_COPYBACK_STATUS_EXT - convert to progress info not pointer to info RAIDFRAME_GET_INFO - version entirely. raidframevar.h: - rf_recon_req{} has row, flags and raidPtr removed (they're not a useful part of this interface.) - RF_Config_s{} and RF_DeviceConfig_s{} have numRow/rows removed. - RF_RaidDisk_s{} is re-ordered slightly to fix alignment padding - the actual data was already OK. - InstallSpareTable() loses row argument
rf_compat32.c has code for RF_Config_s{} in 32 bit mode, used by RAIDFRAME_CONFIGURE and RAIDFRAME_GET_INFO32.
rf_compat80.c has code for rf_recon_req{}, RF_RaidDisk_s{} and RF_DeviceConfig_s{} to handle RAIDFRAME_FAIL_DISK, RAIDFRAME_GET_COMPONENT_LABEL, RAIDFRAME_CHECK_RECON_STATUS_EXT, RAIDFRAME_CHECK_PARITYREWRITE_STATUS_EXT, RAIDFRAME_CHECK_COPYBACK_STATUS_EXT, RAIDFRAME_GET_INFO.
move several of the per-ioctl code blocks into separate functions.
add rf_recon_req_internal{} to replace old usage of global rf_recon_req{} that had unused void * in the structure, ruining it's 32/64 bit ABI.
add missing case for RAIDFRAME_GET_INFO50.
adjust raid tests to use the new .conf format, and add a case to test the old method as well.
raidctl: deal with lack of 'row' members in a couple of places. fail request no longer takes row. handle "START array" sections with just "numCol numSpare", ie no "numRow" specified. for now, generate old-style configuration but update raidctl.8 to specify the new style (keeping reference to the old style.)
note that: RF_ComponentLabel_s::{row,num_rows} and RF_SingleComponent_s::row are obsolete but not removed yet.
|
1.24 |
| 03-Jan-2016 |
mlelstv | refactor driver to use common code in dksubr.
|
1.23 |
| 03-Aug-2011 |
oster | branches: 1.23.12; 1.23.30;
Remove unused 'struct lwp *' from rf_getdisksize. No functional changes.
|
1.22 |
| 29-Jul-2011 |
oster | In rf_disks.c make sure ser_values and ser_count arrays are initialized before use.
Validate the component label before considering a component for use, and make sure we only consider components that are optimal.
Fixes PR#44251. All atf RAIDframe tests now pass.
|
1.21 |
| 17-Nov-2009 |
jld | 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.
|
1.20 |
| 27-Aug-2006 |
christos | branches: 1.20.56; 1.20.68; 1.20.76; - 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
|
1.19 |
| 11-Dec-2005 |
christos | branches: 1.19.4; 1.19.8; merge ktrace-lwp.
|
1.18 |
| 29-Jun-2003 |
fvdl | branches: 1.18.2; 1.18.18; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.17 |
| 28-Jun-2003 |
darrenr | 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
|
1.16 |
| 04-Oct-2001 |
oster | 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.
|
1.15 |
| 20-Oct-2000 |
oster | branches: 1.15.2; 1.15.4; 1.15.6; Move disk_busy() and disk_unbusy() to more sane locations. Values reported by 'systat iostat' and friends are now much more correct for RAIDframe devices. Thanks to Andrew Doran for poking me about this, and for suggestions on and review of the changes.
|
1.14 |
| 04-Jun-2000 |
oster | branches: 1.14.2; Merge rf_update_component_labels() and rf_final_update_component_labels().
|
1.13 |
| 04-Jun-2000 |
oster | Minor prototype cleanup.
|
1.12 |
| 07-Mar-2000 |
oster | branches: 1.12.2; 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.
|
1.11 |
| 07-Mar-2000 |
oster | Move rf_UnconfigureVnodes to rf_netbsdkintf.c where it will be more at home. Add prototype to rf_kintf.h, and nuke old prototypes from rf_disks.c and rf_driver.c .
|
1.10 |
| 07-Mar-2000 |
oster | rf_ protect the component label print routine, and make it more easily available to the rest of RAIDframe.
|
1.9 |
| 29-Feb-2000 |
oster | Oops.. Need to note the parity status when we unconfigure. Noted by Aaron J. Grier. (Thanks!)
|
1.8 |
| 13-Feb-2000 |
oster | 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)
|
1.7 |
| 09-Jan-2000 |
oster | - move a bunch of function prototypes to rf_kintf.h - general cleanup of a number of prototypes that were scattered around.
|
1.6 |
| 05-Jan-2000 |
oster | - 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.
|
1.5 |
| 12-Dec-1999 |
oster | Rename rf_DoAccessKernel() to raidstart() and cleanup arguments.
|
1.4 |
| 09-Mar-1999 |
oster | branches: 1.4.2; 1.4.8; 1.4.14; Cleanup unused cruft.
|
1.3 |
| 05-Feb-1999 |
oster | Phase 2 of the RAIDframe cleanup. The source is now closer to KNF and is much easier to read. No functionality changes.
|
1.2 |
| 26-Jan-1999 |
oster | 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.
|
1.1 |
| 13-Nov-1998 |
oster | 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.
|
1.4.14.1 |
| 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
1.4.8.1 |
| 20-Nov-2000 |
bouyer | 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.
|
1.4.2.1 |
| 20-Dec-1999 |
he | Pull up revision 1.5 (requested by oster): Re-work the IO throttle code. Fixes potential panics under high loads under FFS.
|
1.12.2.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.14.2.1 |
| 20-Oct-2000 |
tv | Pullup 1.15 [oster]: Move disk_busy() and disk_unbusy() to more sane locations. Values reported by 'systat iostat' and friends are now much more correct for RAIDframe devices. Thanks to Andrew Doran for poking me about this, and for suggestions on and review of the changes.
|
1.15.6.2 |
| 11-Oct-2001 |
fvdl | Catch up with -current. Fix some bogons in the sparc64 kbd/ms attach code. cd18xx conversion provided by mrg.
|
1.15.6.1 |
| 07-Sep-2001 |
thorpej | 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).
|
1.15.4.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.15.2.1 |
| 22-Oct-2001 |
nathanw | Catch up to -current.
|
1.18.18.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.18.18.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.18.2.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.18.2.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.18.2.1 |
| 02-Jul-2003 |
darrenr | 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.
|
1.19.8.1 |
| 03-Sep-2006 |
yamt | sync with head.
|
1.19.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.20.76.1 |
| 21-Apr-2010 |
matt | sync to netbsd-5
|
1.20.68.1 |
| 10-Dec-2009 |
snj | 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.
|
1.20.56.1 |
| 11-Mar-2010 |
yamt | sync with head
|
1.23.30.1 |
| 19-Mar-2016 |
skrll | Sync with HEAD
|
1.23.12.1 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|