summaryrefslogtreecommitdiffstats
path: root/sys/dev/softraid.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* whitespace. "Sure" marco@ckuethe2009-06-031-4/+4
|
* Oops need to kill the XXX comment that we are not enabling softraid rebuildmarco2009-06-031-4/+1
|
* Start using the shiny new function pointer to determine if we have diskmarco2009-06-031-1/+20
| | | | arrivals or departures.
* Make sure we don't stomp on a RAID partition that is already in use.marco2009-06-031-93/+108
| | | | Code is now enabled and ready for general testing.
* Abuse bio layer a little less by marking fake buffers with B_PHYS.marco2009-06-021-4/+4
| | | | | | | From beck with lots of squealing and ear bleeds. Issue originally reported by todd. ok beck
* spacemarco2009-06-021-2/+1
|
* Make rebuilds restartable over reboots.marco2009-06-021-9/+46
| | | | Abort rebuild and drain IO when shutting down.
* Fix some minor format string problems found in a maze of false positivesderaadt2009-06-021-2/+2
| | | | | provided by Parfait ok oga
* Add an identifier that tells us if we can rebuild this discipline.marco2009-06-021-5/+9
| | | | KNF & spelling too
* First bits for rebuild. Disabled for now.marco2009-06-021-34/+250
|
* Bring up raid sets that have missing memebers.marco2009-05-301-30/+46
|
* When probing for softraid chunks, ensure that a chunk has a valid metadatajsing2009-05-111-2/+9
| | | | | | | | signature, rather than just assuming that a partition of type RAID always has metadata. Add a similar test when validating native metadata. Whilst here, make sure that the metadata version is printed correctly. ok marco@
* Move the discipline initialisation code into discipline specific functions,jsing2009-05-111-98/+8
| | | | | | | | rather than initialising everything in softraid.c. This makes a discipline more self-contained and reduces the number of function declarations needed in softraidvar.h. ok marco@
* Use NO_CCB when we run out of work units. This way we don't have to caremarco2009-04-291-2/+2
| | | | | about having enough WU + CCB during rebuilds. This also brings softraid closer to behaving like the other SCSI devices.
* Move discipline pointer init into its own functionmarco2009-04-281-114/+130
|
* Part one of partial bringup volumes. Plenty of rope to kill your datamarco2009-04-281-31/+86
| | | | use with caution...
* KNF, typo and an uninteresting if(&=) instead of if(&) bug in debug codemarco2009-04-261-6/+7
|
* Extend the scsi_adapter minphys() callback to take a struct scsi_link *miod2009-02-161-3/+3
| | | | | | as additional argument. This will allow intermediate layers between scsi devices such as sd and scsi host adapters to take appropriate action if necessary.
* This creates the notion of a non-disk softraid device. The aoe targetmarco2008-12-241-92/+110
| | | | | | | | | | is such a beast because it doesn't physically add a device to the OS but exports a RAID partition. It creates a kernel thread for each exported aoe target. Since it reuses all the goodies in softraid upon reboot the metadata is discovered and therefore the partition is exported at boot time. ok tedu dlg
* Add generic sr_scsi_done function that does the spl dancemarco2008-11-251-4/+14
|
* Halt scanning by returning proper sense for illegal LUN.marco2008-11-251-1/+14
|
* softraid support for ata over ethernet (aoe). this includes a client andtedu2008-11-231-1/+66
| | | | | | part of a server. there's no configuration yet, and several other drawbacks, but it can be hammered into shape. i haven't moved the code forward in a year, and marco wants it in the tree to hack on.
* missing newline in printf; Thomas Pfaffderaadt2008-11-231-2/+2
|
* Fix various printf constructs either missing arguments or format specifiers.miod2008-10-111-7/+7
|