After a rebuild-in-place, a reconstruct, or a copyback, we should

really be updating the component labels.
This commit is contained in:
oster 2002-11-15 03:57:48 +00:00
parent eb0cfdb469
commit ad8fd01bdf
2 changed files with 12 additions and 4 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: rf_copyback.c,v 1.20 2002/09/17 03:30:33 oster Exp $ */
/* $NetBSD: rf_copyback.c,v 1.21 2002/11/15 03:57:48 oster Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
* All rights reserved.
@ -38,7 +38,7 @@
****************************************************************************************/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: rf_copyback.c,v 1.20 2002/09/17 03:30:33 oster Exp $");
__KERNEL_RCSID(0, "$NetBSD: rf_copyback.c,v 1.21 2002/11/15 03:57:48 oster Exp $");
#include <dev/raidframe/raidframevar.h>
@ -236,6 +236,7 @@ rf_CopybackReconstructedData(raidPtr)
raidwrite_component_label( raidPtr->raid_cinfo[frow][fcol].ci_dev,
raidPtr->raid_cinfo[frow][fcol].ci_vp,
&c_label);
rf_update_component_labels(raidPtr, RF_NORMAL_COMPONENT_UPDATE);
}

View File

@ -1,4 +1,4 @@
/* $NetBSD: rf_reconstruct.c,v 1.48 2002/10/18 02:46:37 oster Exp $ */
/* $NetBSD: rf_reconstruct.c,v 1.49 2002/11/15 03:57:48 oster Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
* All rights reserved.
@ -33,7 +33,7 @@
************************************************************/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: rf_reconstruct.c,v 1.48 2002/10/18 02:46:37 oster Exp $");
__KERNEL_RCSID(0, "$NetBSD: rf_reconstruct.c,v 1.49 2002/11/15 03:57:48 oster Exp $");
#include <sys/time.h>
#include <sys/buf.h>
@ -374,6 +374,10 @@ rf_ReconstructFailedDiskBasic(raidPtr, row, col)
raidPtr->raid_cinfo[srow][scol].ci_vp,
&c_label);
rf_update_component_labels(raidPtr,
RF_NORMAL_COMPONENT_UPDATE);
}
return (rc);
}
@ -624,6 +628,9 @@ rf_ReconstructInPlace(raidPtr, row, col)
raidPtr->raid_cinfo[row][col].ci_vp,
&c_label);
rf_update_component_labels(raidPtr,
RF_NORMAL_COMPONENT_UPDATE);
}
RF_SIGNAL_COND(raidPtr->waitForReconCond);
return (rc);