Subject: Re: raidframe
To: Ben Collver <collver@softhome.net>
From: Greg Oster <oster@cs.usask.ca>
List: current-users
Date: 11/11/2000 15:21:51
Ben Collver writes:
> > After the 'swapctl -d /dev/raid0b', does a 'swapctl -a /dev/raid0b' succeed
> ?
>
> Yes. And I went through the whole sequence several times, and the parity
> stayed clean.
Ok, good.
> > Let's also backup a step... If you disable swap completely, does the parit
> y
> > remain clean after a reboot?
>
> If I disable swap completely the parity remains clean after a reboot.
Good. So it *is* related to swap then.
[time passes]
I hunted for a while on this, but it was Chuck Silvers noted the problem...
apply the following diff to usr/src/sys/uvm/uvm_swap.c, (and leave that
"# KEYWORDS: shutdown" in /etc/rc.d/swap1) and this problem should be fixed :)
Later...
Greg Oster
-------------------
*** uvm_swap.c.orig Sat Nov 11 15:12:07 2000
--- uvm_swap.c Sat Nov 11 15:12:23 2000
***************
*** 1028,1038 ****
if (sdp->swd_vp->v_type == VREG) {
crfree(sdp->swd_cred);
}
- if (sdp->swd_vp != rootvp) {
- (void) VOP_CLOSE(sdp->swd_vp, FREAD|FWRITE, p->p_ucred, p);
- }
if (sdp->swd_vp) {
vrele(sdp->swd_vp);
}
/* remove anons from the system */
--- 1028,1038 ----
if (sdp->swd_vp->v_type == VREG) {
crfree(sdp->swd_cred);
}
if (sdp->swd_vp) {
vrele(sdp->swd_vp);
+ }
+ if (sdp->swd_vp != rootvp) {
+ (void) VOP_CLOSE(sdp->swd_vp, FREAD|FWRITE, p->p_ucred, p);
}
/* remove anons from the system */