Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 May 2000 16:10:01 -0700 (PDT)
From:      Thomas Faehnle <tf@wurbl.wn.bawue.de>
To:        freebsd-bugs@FreeBSD.org
Subject:   kern/18754: Vinum: reviving RAID5 volume corrupts data
Message-ID:  <200005222310.QAA11733@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/18754; it has been noted by GNATS.

From: Thomas Faehnle <tf@wurbl.wn.bawue.de>
To: FreeBSD-gnats-submit@freebsd.org
Cc:  
Subject: kern/18754: Vinum: reviving RAID5 volume corrupts data
Date: Mon, 22 May 2000 21:20:35 +0200 (CEST)

 >Number:         18754
 >Category:       kern
 >Synopsis:       Vinum: reviving RAID5 volume corrupts data
 >Confidential:   no
 >Severity:       critical
 >Priority:       medium
 >Responsible:    freebsd-bugs
 >State:          open
 >Quarter:        
 >Keywords:       
 >Date-Required:
 >Class:          sw-bug
 >Submitter-Id:   current-users
 >Arrival-Date:   Mon May 22 13:10:03 PDT 2000
 >Closed-Date:
 >Last-Modified:
 >Originator:     Thomas Faehnle
 >Release:        FreeBSD 4.0-STABLE i386
 >Organization:
 Multisys GbR
 >Environment:
 	
 	4.0-STABLE, tracked up to CTM patch src-4.0077
 
 >Description:
 
 	Reviving a subdisk that is part of a RAID5 volume and
 	simultaneously accessing said volume leads to data
 	corruption.
 
 	This occurs no matter whether the volume is accessed via a
 	filesystem or via the raw /dev/vinum/<whatever> device.
 
 >How-To-Repeat:
 	
 	Given the following vinum configuration
 	
 	,--------------------
 	| vinum -> l
 	| 3 drives:
 	| D d0                    State: up       Device /dev/da0s2e      
 	| 					Avail: 15439/15539 MB (99%)
 	| D d1                    State: up       Device /dev/da1s2e
 	| 					Avail: 15439/15539 MB (99%)
 	| D d2                    State: up       Device /dev/da2s2e
 	| 					Avail: 15439/15539 MB (99%)
 	| 1 volumes:
 	| V raid                  State: up       Plexes:       1 Size:        200 MB
 	| 
 	| 1 plexes:
 	| P raid.p0            R5 State: up       Subdisks:     3 Size:        200 MB
 	| 
 	| 3 subdisks:
 	| S raid.p0.s0            State: up       PO:        0  B Size:        100 MB
 	| S raid.p0.s1            State: up       PO:      512 kB Size:        100 MB
 	| S raid.p0.s2            State: up       PO:     1024 kB Size:        100 MB
 	`--------------------
 	
 	Create a filesystem on the vinum volume:
 	
 	,--------------------
 	| bunsen:~# newfs -v /dev/vinum/raid 
 	| /dev/vinum/raid:        409600 sectors in 100 cylinders of 1 tracks, 4096 sectors
 	|         200.0MB in 7 cyl groups (16 c/g, 32.00MB/g, 7168 i/g)
 	| super-block backups (for fsck -b #) at:
 	|  32, 65568, 131104, 196640, 262176, 327712, 393248
 	`--------------------
 	
 	In another shell, arrange for one subdisk to get revived (while the
 	newfs above is still running):
 	
 	,--------------------
 	| vinum -> stop -f raid.p0.s0
 	| vinum -> start raid.p0.s0
 	| Reviving raid.p0.s0 in the background
 	| vinum[335]: reviving raid.p0.s0
 	| vinum -> ls
 	| S raid.p0.s0            State: R 66%    PO:        0  B Size:        100 MB
 	| S raid.p0.s1            State: up       PO:      512 kB Size:        100 MB
 	| S raid.p0.s2            State: up       PO:     1024 kB Size:        100 MB
 	`--------------------
 	
 	fsck the volume:
 	
 	,--------------------
 	| bunsen:~# fsck /dev/vinum/raid
 	| ** /dev/vinum/raid
 	| BAD SUPER BLOCK: VALUES IN SUPER BLOCK DISAGREE WITH THOSE IN FIRST ALTERNATE
 	| /dev/vinum/raid: NOT LABELED AS A BSD FILE SYSTEM (unused)
 	`--------------------
 
 >Fix:
 
 
 
 
 
 
 
 >Release-Note:
 >Audit-Trail:
 >Unformatted:
 
 
 To Unsubscribe: send mail to majordomo@FreeBSD.org
 with "unsubscribe freebsd-bugs" in the body of the message
 
 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200005222310.QAA11733>