| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
gmirror and graid3 in a way that it is not resynchronized after a
power failure or system crash.
It is safe when gjournal is running on top of gmirror/graid3.
|
|
|
|
| |
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
| |
which means that devices will be destroyed on last close.
This fixes destruction order problems when, eg. RAID3 array is build on
top of RAID1 arrays.
Requested, reviewed and tested by: ru
MFC after: 2 weeks
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
requests in parallel.
+ Add kern.geom.mirror.sync_requests tunable which defines how many parallel
I/O requests should be used.
+ Retire kern.geom.mirror.reqs_per_sync and kern.geom.mirror.syncs_per_sec
sysctls.
- Fix race between regular and synchronization requests.
- Reimplement mirror's data synchronization - do not use the topology lock
for this purpose, as it may case deadlocks.
- Stop synchronization from pre-sync hook.
- Fix some other minor issues.
MFC after: 3 days
|
|
|
|
|
|
|
|
| |
means that old problem was triggered (when two providers end at the same
offset, eg. ad0 and ad0s1 and the wrong was is picked up by gmirror/graid3).
Reported by: Michal Suszko <dry@dry.pl>
MFC after: 3 days
|
| |
|
|
|
|
|
|
| |
Before this fix one was able to insert one sector too small provider.
MFC after: 3 days
|
|
|
|
|
| |
Submitted by: sam
Found by: Coverity Prevent analysis tool
|
| |
|
|
|
|
|
|
| |
all the time. Remove unused code then.
MFC after: 4 days
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After this change, when component is disconnected because of an I/O error,
it will not be connected and synchronized automatically, it will be logged
as broken and skipped. Autosynchronization can occur, when component is
disconnected (on orphan event) and connected again - there were no I/O
error, so there is no need to not connected the component, but when there were
writes while it wasn't connected, it will be synchronized.
This fix cases, when component is disconnected because of I/O error and can be
connected again and again.
- Bump version number.
- Add version change history.
- Implement backward compatibility mechanism. After this change when metadata in
old version is detected, it is automatically upgraded to the new (current)
version.
|
| |
|
|
|
|
|
| |
which allow to store provider's name in the metadata and avoid
problems when few providers share the same last sector.
|
|
|
|
|
|
| |
of the new component.
Version number wasn't bumped (it should be), because I think there are
no geom_mirror users yet.
|
|
|
|
| |
- Check if disk isn't already the mirror component.
|
|
features. The gmirror(8) utility should be used for control of this class.
There is no manual page yet, but I'm working on it with keramida@.
Many useful tests provided by: simon (thank you!)
Some ideas from: scottl, simon, phk
|