On Mon, May 01, 2006 at 03:27:11PM -0500, Rick C. Petty wrote: > When rebuilding a degraded plex with "gvinum start volume" on a mounted > filesystem, gvinum reports "errno: 16" (EBUSY). In the CVS: > > src/sys/geom/vinum/geom_vinum_init.c, lines 363-364 (of MAIN, added > 2005-Oct-09, rev 1.10.2.1) has the check: > > if (gv_is_open(p->geom)) > return (EBUSY); > > Why is this the case? The log for that change suggests this is to prevent > sync operations from starting when they are already in progress, but that > really refers to lines 366-367: > > if (p->flags & GV_PLEX_SYNCING) > return (EINPROGRESS); > > It seems to me that lines 363-364 should be deleted. If you have a > degraded volume but need to keep it mounted (such as /usr or /home, etc.), > I can't see any reason why you should be forced to unmount the volume > before rebuilding (if the volume is RAID5). Maybe this restriction is > useful for non-RAID5 configurations, but gv_rebuild_plex is only called > in the context of GV_PLEX_RAID5 on degraded plexes. > > Maybe I'm misunderstanding something. Feel free to enlighten me! :-)
While regular vinum allowed rebuilding plexes that were mounted, I have seen resulting filesystem corruption afterwards. Unfortunately I don't know whether Lukas has implemented & tested rebuilding online plexes for gvinum yet. --Stijn _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"