Date: Fri, 13 Jan 2006 22:31:51 +0100 From: Joan Picanyol i Puig <lists-freebsd@biaix.org> To: freebsd-geom@freebsd.org Cc: le@freebsd.org Subject: sorely missing gvinum start or attach Message-ID: <20060113213151.GA49805@grummit.biaix.org>
next in thread | raw e-mail | index | archive | help
--Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi there, I'm setting up a system (STABLE from around Jan 11th) with gvinum, and I'm wondering how to add my second drive to the setup. I've can boot from gvinum, and knowing that 'attach' is not yet implemented, I've tried zeroing the gvinum on-disk configuration and recreating it with the second disk. This works, but (a) gvinum marks both disks as up, which I know is not true, so I (b) 'setstate stale' my second drive. Trying to 'start' it doesn't work, but what's worse, (c) upon rebooting (hoping that gvinum will start to rebuild the stale drive) gvinum marks everything as stale!! I figure I can just dd the whole vinum slice, but I'd like to see gvinum rebuilding a drive... Attached are two script files (*.out), the vinum config files used and the detailed vinum versions used. gvinum's messages in stderr (not recorded in the script) were: a) on creating the configuration: gvinum: size of sd scratch.p0.s0 is not a multiple of plex stripesize, taking off 314368 bytes gvinum: size of sd scratch.p0.s1 is not a multiple of plex stripesize, taking off 314368 bytes GEOM_VINUM: subdisk swap.p1.s0 state change: stale -> up GEOM_VINUM: plex swap.p1 state change: down -> up GEOM_VINUM: subdisk std-root.p1.s0 state change: stale -> up GEOM_VINUM: plex std-root.p1 state change: down -> up GEOM_VINUM: subdisk base.p1.s0 state change: stale -> up GEOM_VINUM: plex base.p1 state change: down -> up GEOM_VINUM: subdisk apps.p1.s0 state change: stale -> up GEOM_VINUM: plex apps.p1 state change: down -> up GEOM_VINUM: subdisk package.p1.s0 state change: stale -> up GEOM_VINUM: plex package.p1 state change: down -> up GEOM_VINUM: subdisk std-var.p1.s0 state change: stale -> up GEOM_VINUM: plex std-var.p1 state change: down -> up GEOM_VINUM: subdisk scratch.p0.s1 state change: down -> up GEOM_VINUM: subdisk home.p1.s0 state change: stale -> up GEOM_VINUM: plex home.p1 state change: down -> up GEOM_VINUM: subdisk swap.p0.s0 state change: down -> up GEOM_VINUM: plex swap.p0 state change: down -> up GEOM_VINUM: subdisk std-root.p0.s0 state change: down -> up GEOM_VINUM: plex std-root.p0 state change: down -> up GEOM_VINUM: subdisk base.p0.s0 state change: down -> up GEOM_VINUM: plex base.p0 state change: down -> up GEOM_VINUM: subdisk apps.p0.s0 state change: down -> up GEOM_VINUM: plex apps.p0 state change: down -> up GEOM_VINUM: subdisk package.p0.s0 state change: down -> up GEOM_VINUM: plex package.p0 state change: down -> up GEOM_VINUM: subdisk std-var.p0.s0 state change: down -> up GEOM_VINUM: plex std-var.p0 state change: down -> up GEOM_VINUM: subdisk scratch.p0.s0 state change: down -> up GEOM_VINUM: plex scratch.p0 state change: down -> up GEOM_VINUM: subdisk home.p0.s0 state change: down -> up GEOM_VINUM: plex home.p0 state change: down -> up b) on setstate stale estribor GEOM_VINUM: subdisk swap.p1.s0 state change: up -> down GEOM_VINUM: plex swap.p1 state change: up -> down GEOM_VINUM: subdisk std-root.p1.s0 state change: up -> down GEOM_VINUM: plex std-root.p1 state change: up -> down GEOM_VINUM: subdisk base.p1.s0 state change: up -> down GEOM_VINUM: plex base.p1 state change: up -> down GEOM_VINUM: subdisk apps.p1.s0 state change: up -> down GEOM_VINUM: plex apps.p1 state change: up -> down GEOM_VINUM: subdisk package.p1.s0 state change: up -> down GEOM_VINUM: plex package.p1 state change: up -> down GEOM_VINUM: subdisk std-var.p1.s0 state change: up -> down GEOM_VINUM: plex std-var.p1 state change: up -> down GEOM_VINUM: subdisk scratch.p0.s1 state change: up -> down GEOM_VINUM: plex scratch.p0 state change: up -> down GEOM_VINUM: subdisk home.p1.s0 state change: up -> down GEOM_VINUM: plex home.p1 state change: up -> down c) on rebooting GEOM_VINUM: subdisk scratch.p0.s1 state change: down -> stale GEOM_VINUM: subdisk swap.p0.s0 state change: down -> stale GEOM_VINUM: subdisk std-root.p0.s0 state change: down -> stale GEOM_VINUM: subdisk base.p0.s0 state change: down -> stale GEOM_VINUM: subdisk apps.p0.s0 state change: down -> stale GEOM_VINUM: subdisk package.p0.s0 state change: down -> stale GEOM_VINUM: subdisk std-var.p0.s0 state change: down -> stale GEOM_VINUM: subdisk scratch.p0.s0 state change: down -> stale GEOM_VINUM: subdisk home.p0.s0 state change: down -> stale How can I workaround this lack of gvinum functionality? -- pica --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="adding_second_drive.out" Content-Transfer-Encoding: quoted-printable Script started on Sat Jan 14 23:12:18 2006 gromit# dd if=3D/dev/zero of=3D/dev/ad4s1d count=3D9 9+0 records in 9+0 records out 4608 bytes transferred in 0.001490 secs (3092376 bytes/sec)=0D gromit# dd if=3D/dev/zero of=3D/dev/ad4s1d count=3D9 9+0 records in=0D 9+0 records out=0D 4608 bytes transferred in 0.001460 secs (3156001 bytes/sec)=0D gromit# kldload geom_vinum gromit# gvinum create ./both-drives.vinum 2 drives:=0D D estribor State: up /dev/ad6s1d A: 214405/237444 MB= (90%)=0D D babor State: up /dev/ad4s1d A: 214405/237444 MB= (90%)=0D =0D 8 volumes:=0D V home State: up Plexes: 2 Size: 10 GB= =0D V scratch State: up Plexes: 1 Size: 3071 MB= =0D V std-var State: up Plexes: 2 Size: 2048 MB= =0D V package State: up Plexes: 2 Size: 1024 MB= =0D V apps State: up Plexes: 2 Size: 5120 MB= =0D V base State: up Plexes: 2 Size: 512 MB= =0D V swap State: up Plexes: 2 Size: 2047 MB= =0D V std-root State: up Plexes: 2 Size: 512 MB= =0D =0D 15 plexes:=0D P home.p1 C State: up Subdisks: 1 Size: 10 GB= =0D P home.p0 C State: up Subdisks: 1 Size: 10 GB= =0D P scratch.p0 S State: up Subdisks: 2 Size: 3071 MB= =0D P std-var.p1 C State: up Subdisks: 1 Size: 2048 MB= =0D P std-var.p0 C State: up Subdisks: 1 Size: 2048 MB= =0D P package.p1 C State: up Subdisks: 1 Size: 1024 MB= =0D P package.p0 C State: up Subdisks: 1 Size: 1024 MB= =0D P apps.p1 C State: up Subdisks: 1 Size: 5120 MB= =0D P apps.p0 C State: up Subdisks: 1 Size: 5120 MB= =0D P base.p1 C State: up Subdisks: 1 Size: 512 MB= =0D P base.p0 C State: up Subdisks: 1 Size: 512 MB= =0D P swap.p1 C State: up Subdisks: 1 Size: 2047 MB= =0D P swap.p0 C State: up Subdisks: 1 Size: 2047 MB= =0D P std-root.p1 C State: up Subdisks: 1 Size: 512 MB= =0D P std-root.p0 C State: up Subdisks: 1 Size: 512 MB= =0D =0D 16 subdisks:=0D S home.p1.s0 State: up D: estribor Size: 10 GB= =0D S home.p0.s0 State: up D: babor Size: 10 GB= =0D S scratch.p0.s1 State: up D: estribor Size: 1535 MB= =0D S scratch.p0.s0 State: up D: babor Size: 1535 MB= =0D S std-var.p1.s0 State: up D: estribor Size: 2048 MB= =0D S std-var.p0.s0 State: up D: babor Size: 2048 MB= =0D S package.p1.s0 State: up D: estribor Size: 1024 MB= =0D S package.p0.s0 State: up D: babor Size: 1024 MB= =0D S apps.p1.s0 State: up D: estribor Size: 5120 MB= =0D S apps.p0.s0 State: up D: babor Size: 5120 MB= =0D S base.p1.s0 State: up D: estribor Size: 512 MB= =0D S base.p0.s0 State: up D: babor Size: 512 MB= =0D S swap.p1.s0 State: up D: estribor Size: 2047 MB= =0D S swap.p0.s0 State: up D: babor Size: 2047 MB= =0D S std-root.p1.s0 State: up D: estribor Size: 512 MB= =0D S std-root.p0.s0 State: up D: babor Size: 512 MB= =0D gromit# gvinum setstate stale estribor=0D=0D gromit# gvinum start estribor=0D=0D gvinum: can't start: cannot start 'estribor' - not yet supported=0D gromit# D=0D=0D =0D=0D gromit# ^D=08=08exit=0D Script done on Sat Jan 14 23:13:13 2006 --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="after_reboot.out" Content-Transfer-Encoding: quoted-printable Script started on Sat Jan 14 23:17:49 2006 gromit# kldload geom_vinum=0D=0D gromit# gvinum l=0D=0D 2 drives:=0D D babor State: up /dev/ad4s1d A: 214405/237444 MB= (90%)=0D D estribor State: up /dev/ad6s1d A: 214405/237444 MB= (90%)=0D =0D 8 volumes:=0D V std-root State: down Plexes: 2 Size: 512 MB= =0D V swap State: down Plexes: 2 Size: 2047 MB= =0D V base State: down Plexes: 2 Size: 512 MB= =0D V apps State: down Plexes: 2 Size: 5120 MB= =0D V package State: down Plexes: 2 Size: 1024 MB= =0D V std-var State: down Plexes: 2 Size: 2048 MB= =0D V scratch State: down Plexes: 1 Size: 3071 MB= =0D V home State: down Plexes: 2 Size: 10 GB= =0D =0D 15 plexes:=0D P std-root.p0 C State: down Subdisks: 1 Size: 512 MB= =0D P std-root.p1 C State: down Subdisks: 1 Size: 512 MB= =0D P swap.p0 C State: down Subdisks: 1 Size: 2047 MB= =0D P swap.p1 C State: down Subdisks: 1 Size: 2047 MB= =0D P base.p0 C State: down Subdisks: 1 Size: 512 MB= =0D P base.p1 C State: down Subdisks: 1 Size: 512 MB= =0D P apps.p0 C State: down Subdisks: 1 Size: 5120 MB= =0D P apps.p1 C State: down Subdisks: 1 Size: 5120 MB= =0D P package.p0 C State: down Subdisks: 1 Size: 1024 MB= =0D P package.p1 C State: down Subdisks: 1 Size: 1024 MB= =0D P std-var.p0 C State: down Subdisks: 1 Size: 2048 MB= =0D P std-var.p1 C State: down Subdisks: 1 Size: 2048 MB= =0D P scratch.p0 S State: down Subdisks: 2 Size: 3071 MB= =0D P home.p0 C State: down Subdisks: 1 Size: 10 GB= =0D P home.p1 C State: down Subdisks: 1 Size: 10 GB= =0D =0D 16 subdisks:=0D S std-root.p0.s0 State: stale D: babor Size: 512 MB= =0D S std-root.p1.s0 State: stale D: estribor Size: 512 MB= =0D S swap.p0.s0 State: stale D: babor Size: 2047 MB= =0D S swap.p1.s0 State: stale D: estribor Size: 2047 MB= =0D S base.p0.s0 State: stale D: babor Size: 512 MB= =0D S base.p1.s0 State: stale D: estribor Size: 512 MB= =0D S apps.p0.s0 State: stale D: babor Size: 5120 MB= =0D S apps.p1.s0 State: stale D: estribor Size: 5120 MB= =0D S package.p0.s0 State: stale D: babor Size: 1024 MB= =0D S package.p1.s0 State: stale D: estribor Size: 1024 MB= =0D S std-var.p0.s0 State: stale D: babor Size: 2048 MB= =0D S std-var.p1.s0 State: stale D: estribor Size: 2048 MB= =0D S scratch.p0.s0 State: stale D: babor Size: 1535 MB= =0D S scratch.p0.s1 State: stale D: estribor Size: 1535 MB= =0D S home.p0.s0 State: stale D: babor Size: 10 GB= =0D S home.p1.s0 State: stale D: estribor Size: 10 GB= =0D gromit# ^D=08=08exit=0D Script done on Sat Jan 14 23:18:14 2006 --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="drive-babor.vinum" drive babor device /dev/ad4s1d # vol root is after swap volume std-root plex org concat sd len 1048576s driveoffset 4194288s drive babor # vol swap is the first one, starts after vinum labels # offset is 281-16 volume swap plex org concat sd len 4194023s driveoffset 265s drive babor volume base plex org concat sd len 1048576s driveoffset 5242864s drive babor # 5GB volume apps plex org concat sd len 10485760s driveoffset 6291440s drive babor # 1 GB volume package plex org concat sd len 2097152s driveoffset 16777200s drive babor # vol std-var: 2GB volume std-var plex org concat sd len 4194304s driveoffset 18874352s drive babor # vol scratch # should be striped, but for now... # sd len 3145728s # ends at 20971504s volume scratch plex org concat sd len 3145728s driveoffset 23068656s drive babor volume home plex org concat sd len 20971520s driveoffset 29360112s drive babor --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="both-drives.vinum" drive babor device /dev/ad4s1d drive estribor device /dev/ad6s1d # vol root is after swap volume std-root plex org concat sd len 1048576s driveoffset 4194288s drive babor plex org concat sd len 1048576s driveoffset 4194288s drive estribor # vol swap is the first one, starts after vinum labels # offset is 281-16 volume swap plex org concat sd len 4194023s driveoffset 265s drive babor plex org concat sd len 4194023s driveoffset 265s drive estribor volume base plex org concat sd len 1048576s driveoffset 5242864s drive babor plex org concat sd len 1048576s driveoffset 5242864s drive estribor # 5GB volume apps plex org concat sd len 10485760s driveoffset 6291440s drive babor plex org concat sd len 10485760s driveoffset 6291440s drive estribor # 1 GB volume package plex org concat sd len 2097152s driveoffset 16777200s drive babor plex org concat sd len 2097152s driveoffset 16777200s drive estribor # vol std-var: 2GB volume std-var plex org concat sd len 4194304s driveoffset 18874352s drive babor plex org concat sd len 4194304s driveoffset 18874352s drive estribor # vol scratch # sd len 3145728s # ends at 20971504s volume scratch plex org striped 479k sd len 3145728s driveoffset 23068656s drive babor sd len 3145728s driveoffset 23068656s drive estribor volume home plex org concat sd len 20971520s driveoffset 29360112s drive babor plex org concat sd len 20971520s driveoffset 29360112s drive estribor --Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="geom_vinum.ident" gromit# ident /sbin/gvinum /sbin/gvinum: $FreeBSD: src/lib/csu/i386-elf/crti.S,v 1.7 2005/05/19 07:31:06 dfr Exp $ $FreeBSD: src/lib/csu/i386-elf/crtn.S,v 1.6 2005/05/19 07:31:06 dfr Exp $ $FreeBSD: src/lib/csu/common/crtbrand.c,v 1.4 2003/10/17 15:43:13 peter Exp $ $FreeBSD: src/lib/csu/i386-elf/crt1.c,v 1.14 2005/05/19 07:36:07 dfr Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_share.c,v 1.4 2004/11/15 12:30:59 le Exp $ gromit# ident /boot/kernel/geom_vinum.ko /boot/kernel/geom_vinum.ko: $FreeBSD: src/sys/geom/vinum/geom_vinum.c,v 1.16.2.3 2005/12/10 14:36:17 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_drive.c,v 1.18.2.4 2005/12/10 14:36:17 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_plex.c,v 1.15.2.1 2005/08/19 08:48:04 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_volume.c,v 1.8.2.2 2005/10/09 04:35:42 delphij Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_subr.c,v 1.13 2005/01/19 13:57:09 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_raid5.c,v 1.10 2004/11/26 11:59:51 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_share.c,v 1.4 2004/11/15 12:30:59 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_list.c,v 1.3 2005/01/06 18:27:30 imp Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_rm.c,v 1.6.2.3 2005/11/26 11:06:11 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_init.c,v 1.10.2.1 2005/10/09 04:36:44 delphij Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_state.c,v 1.7 2005/01/21 18:27:23 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_rename.c,v 1.3.2.1 2005/11/26 11:06:11 le Exp $ $FreeBSD: src/sys/geom/vinum/geom_vinum_move.c,v 1.2.2.1 2005/11/26 11:06:11 le Exp $ gromit# --Kj7319i9nmIyA2yE--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060113213151.GA49805>