diff options
author | pjd <pjd@FreeBSD.org> | 2004-12-22 23:09:32 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2004-12-22 23:09:32 +0000 |
commit | b58db25ebeed85a1cc3d68bda134815500157aaa (patch) | |
tree | b0d86c753f73582bc08dbd2224d2dc7047934432 /sbin/geom | |
parent | 3a1bb12c828f9bb4b003f8f8fb2a55d3d78b575d (diff) | |
download | FreeBSD-src-b58db25ebeed85a1cc3d68bda134815500157aaa.zip FreeBSD-src-b58db25ebeed85a1cc3d68bda134815500157aaa.tar.gz |
- Add genid field to the metadata which will allow to improve reliability a bit.
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.
Diffstat (limited to 'sbin/geom')
-rw-r--r-- | sbin/geom/class/mirror/geom_mirror.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sbin/geom/class/mirror/geom_mirror.c b/sbin/geom/class/mirror/geom_mirror.c index 9c9facf..40c9a48 100644 --- a/sbin/geom/class/mirror/geom_mirror.c +++ b/sbin/geom/class/mirror/geom_mirror.c @@ -180,6 +180,7 @@ mirror_label(struct gctl_req *req) md.md_all = *nargs - 1; md.md_mflags = 0; md.md_dflags = 0; + md.md_genid = 0; md.md_syncid = 1; md.md_sync_offset = 0; valp = gctl_get_paraml(req, "slice", sizeof(*valp)); |