summaryrefslogtreecommitdiffstats
path: root/sys/dev/softraid.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Force chunks into correct order once metadata is attached. This preventsjsing2010-02-131-2/+25
| | | | | | chunks from being reordered on an existing volume. ok marco@
* Unbreak automatic rebuilds from hotspares.jsing2010-02-131-6/+7
| | | | ok marco@
* Removed unused variable sml_vn.jsing2010-02-131-3/+1
| | | | ok @marco
* Pass the number of chunks to sr_meta_attach() rather than recalculating.jsing2010-02-131-8/+5
| | | | ok marco@
* Use character raw device to read disklabel during bootprobe, as allkrw2010-02-081-2/+8
| | | | | | | other devices do. Silences complaints about missing media on removable media devices. ok marco@ jsing@
* Zap all setting of ITSDONE in drivers that don't look at it. Nobodykrw2010-01-091-2/+1
| | | | | | | else cares so it's just noise. Drivers that actually look at ITSDONE are unchanged. ok marco@ (for his files) dlg@ beck@
* Add support for key disks. This allows a crypto volume to be constructedjsing2009-12-311-15/+53
| | | | | | | | without using a passphrase - instead the encryption mask key is stored on the specified key disk partition (ideally being one on a removable device). This also enables automatic assembly of crypto volumes at boot time. ok marco@
* Allow auto assemble flag to be toggled for disciplines that support it.jsing2009-12-151-1/+11
| | | | "Love it!" marco@
* Factor out discipline specific create/assemble code.jsing2009-12-151-140/+31
| | | | "in, in, in!" marco@
* Explicitly lock the vnode when deleting a volume. This avoids a potentialjsing2009-12-151-1/+7
| | | | | | | | panic that is caused by vnode aliasing, where checkalias() switches the vnode ops for our vnode. This means that we end up using ufs unlocking rather than specfs unlocking (which is a no-op). ok marco@
* Cleanup discipline initialisation.jsing2009-12-071-7/+4
| | | | ok marco@
* Define discipline capabilities using a set of flags.jsing2009-12-071-4/+4
| | | | "shiny!!" marco@
* Allow the passphrase to be changed on softraid crypto volumes. Ensure thatjsing2009-11-241-4/+1
| | | | | | | | you backup your data and lock up your pets prior to using this. Tested by todd@ ok marco@
* Improve discipline specific ioctl framework and attach to softraid ioctl.jsing2009-11-231-6/+11
| | | | ok marco@
* Add a framework for discipline specific ioctls.jsing2009-11-221-1/+30
| | | | ok marco@
* Ensure that chunks are not already in use when creating a volume.jsing2009-11-221-1/+12
| | | | ok marco@
* Fix memory leak in error case. Found by Parfait.jsing2009-11-151-7/+9
| | | | ok marco@ deraadt@
* When probing devices at boot, compare against the full device driver namejsing2009-10-291-5/+4
| | | | | | | | | | rather than the start of the device name. Also, be inclusive with devices probed rather than exclusive - this means we now only look for RAID partitions on sd(4) and wd(4) devices. prodded by deraadt@ ok marco@ deraadt@
* Remove FWRITE from closes that aren't opened with FWRITE.marco2009-10-281-3/+3
| | | | spotted and ok jsing
* Get rid of devact enum, substitute it with an int and coresponding defines.pirofti2009-10-131-3/+3
| | | | | | This is needed for the addition of further suspend/resume actions. Okay deraadt@, marco@.
* Fix use before init on wu.marco2009-09-211-3/+2
| | | | Found by jsing, tested and ok jsing.
* Check the return value of copyin().jsing2009-09-031-4/+5
| | | | ok marco@
* Don't call VOP_CLOSE() with a null pointer, if the VOP_OPEN() call failed.jsing2009-09-031-5/+2
| | | | ok marco@
* the null check makes more sense when it's done before derefmartynas2009-08-171-2/+4
| | | | ok marco@, jsing@
* Switch softraid to vnodes to prevent bad things from happening when usingmarco2009-08-091-60/+122
| | | | | | d_open/d_close. tested by many, ok jsing, thib, krw
* Factor out code for checking if a chunk is already in use.jsing2009-07-311-37/+44
| | | | ok marco@
* Adding disabled framework for RAID6jordan2009-07-231-1/+22
| | | | ok marco@
* Assert copyright.jsing2009-07-121-2/+3
| | | | suggested by and ok marco@
* Fix rebuild percentage so that it ranges from 0-99% rather than 1-100%.jsing2009-07-121-4/+14
| | | | ok marco@
* Add support for global hotspares to softraid.jsing2009-07-121-10/+413
| | | | ok marco@
* If devices have roamed, complain once then update the metadata, just likejsing2009-07-121-3/+43
| | | | | | we do for roaming volumes. ok marco@
* Ensure that we hold the appropriate lock before callingjsing2009-07-111-1/+4
| | | | | | sr_ioctl_createraid(). ok marco@
* Be sure we don't hit a NULL deref. Pointed out bymglocker2009-07-091-2/+2
| | | | | | remco at d-compu dot dyndns dot org. OK marco@
* Overhaul sr_boot_assembly(). The original code had a number of problems,jsing2009-06-261-46/+148
| | | | | | | | | | | | including a "chunk id already in use" bug that occurred when assembling more than one volume at boot. Volumes are now kept in order, as are the chunks which they are assembled from. Duplicated chunk IDs are now handled appropriately, with the chunk that has the most recent ondisk metadata being used. Also tested by nicm@ who got bitten by the "chunk id already in use" bug. ok marco@
* Reset the rebuild counter when initiating a rebuild.jsing2009-06-241-1/+4
| | | | ok marco@
* Abort the current rebuild if the rebuild chunk disappears. Whilst here alsojsing2009-06-241-3/+4
| | | | | | rename the abort flag so that it is more generalised. ok marco@
* Make sure that the metadata level matches the requested assembly level whenjsing2009-06-231-2/+9
| | | | | | creating a volume. ok marco@
* Fix some more whitespace issues.jsing2009-06-231-10/+10
|
* Either jordan or jsing left some debug prints behind. tsk tsk.marco2009-06-191-3/+1
| | | | pointed out by todd.
* Check the set state status rather than always assuming a rebuild has beenjsing2009-06-181-11/+45
| | | | | | | requested. Also move the rebuild initialisation code into a separate function whilst here. ok marco@
* Fix some typos and whitespace issues.jsing2009-06-181-6/+6
| | | | ok marco@
* Enabled EXPERIMENTAL RAID4/5 disciplinejordan2009-06-171-3/+1
| | | | ok marco@
* Make openings variable instead of maxwu; needed for more exotic raid sets.marco2009-06-171-2/+5
| | | | ok jordan
* Force Raid0/4/5 volume size to multiple of stripe sizejordan2009-06-171-4/+6
| | | | ok marco@
* KNF and wrap at 80 columns.jsing2009-06-121-5/+7
| | | | ok marco@
* Allow chunks marked as offline to be used for rebuild (ie. once disk hasjsing2009-06-121-2/+4
| | | | | | been replaced). ok marco@
* Create a hotplug callback mechanism.marco2009-06-111-17/+72
|
* Typomarco2009-06-101-2/+2
|
* Add framework for raid 4 & 5 so that we can work in tree.marco2009-06-101-1/+29
|
* Slay the running out of wu during rebuild dragon and some cleanupmarco2009-06-031-23/+55
|