NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/44972: raidctl -R doesn't seem to work



hi,

>  On Mon, 16 May 2011 22:00:01 +0000 (UTC)
>  yamt%NetBSD.org@localhost wrote:
>  
>  > ushi% dmesg|tail
>  > raid1: RAID Level 1
>  > raid1: Components: /dev/dk0 /dev/dk1
>  > raid1: Total Sectors: 5860531968 (2861587 MB)
>  > raid1: GPT GUID: 497d5c1c-7fff-11e0-b07b-0015170bebef
>  > dk2 at raid1: 497d5c30-7fff-11e0-b07b-0015170bebef
>  > dk2: 5860530911 blocks at 1024, type: ffs
>  > Could not verify parity
>  > raid1: Error re-writing parity (1)!
>  > wd3: mbr partition exceeds disk size
>  > raid1: rebuilding: dk_lookup on device: /dev/dk1 failed: 16!
>  > ushi% 
>  
>  in dksubr.c in dk_open() we have:
>  
>          if (dk->dk_nwedges != 0 && part != RAW_PART) {
>                  ret = EBUSY;
>                  goto done;
>          }
>  
>  What part of those conditions are true, triggering the EBUSY
>  for /dev/dk1 ?

the EBUSY i got was from spec_open.

there seems to be at least two problems.
- the DIOCGPART ioctl in rf_ReconstructInPlace failed with ENOTTY
  as dk doesn't support it.
- rf_ReconstructInPlace leaves the vnode open on errors.

YAMAMOTO Takashi

>  
>  Later...
>  
>  Greg Oster


Home | Main Index | Thread Index | Old Index