Module Name:src
Committed By: thorpej
Date: Thu Aug 5 03:37:41 UTC 2021
Modified Files:
src/sys/dev/raidframe [thorpej-cfargs2]: raidframeio.h raidframevar.h
rf_dagfuncs.c rf_netbsdkintf.c rf_pqdegdags.c rf_raid.h
Log Message:
Sync w/ HEAD.
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.9.28.1 src/sys/dev/raidframe/raidframeio.h
cvs rdiff -u -r1.21 -r1.21.18.1 src/sys/dev/raidframe/raidframevar.h
cvs rdiff -u -r1.33 -r1.33.2.1 src/sys/dev/raidframe/rf_dagfuncs.c
cvs rdiff -u -r1.397 -r1.397.2.1 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.14 -r1.14.2.1 src/sys/dev/raidframe/rf_pqdegdags.c
cvs rdiff -u -r1.49 -r1.49.2.1 src/sys/dev/raidframe/rf_raid.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/raidframe/raidframeio.h
diff -u src/sys/dev/raidframe/raidframeio.h:1.9 src/sys/dev/raidframe/raidframeio.h:1.9.28.1
--- src/sys/dev/raidframe/raidframeio.h:1.9 Sat Jan 20 01:32:45 2018
+++ src/sys/dev/raidframe/raidframeio.h Thu Aug 5 03:37:41 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: raidframeio.h,v 1.9 2018/01/20 01:32:45 mrg Exp $ */
+/* $NetBSD: raidframeio.h,v 1.9.28.1 2021/08/05 03:37:41 thorpej Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -133,5 +133,6 @@
#define RAIDFRAME_SET_LAST_UNIT _IOW('r', 41, int)
#define RAIDFRAME_GET_INFO _IOWR('r', 42, RF_DeviceConfig_t *) /* get configuration */
#define RAIDFRAME_CONFIGURE _IOW ('r', 43, void *) /* configure the driver */
-
+#define RAIDFRAME_RESCAN _IO ('r', 44)
#endif/* !_RF_RAIDFRAMEIO_H_ */
+
Index: src/sys/dev/raidframe/raidframevar.h
diff -u src/sys/dev/raidframe/raidframevar.h:1.21 src/sys/dev/raidframe/raidframevar.h:1.21.18.1
--- src/sys/dev/raidframe/raidframevar.h:1.21 Thu Oct 10 03:43:59 2019
+++ src/sys/dev/raidframe/raidframevar.h Thu Aug 5 03:37:41 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: raidframevar.h,v 1.21 2019/10/10 03:43:59 christos Exp $ */
+/* $NetBSD: raidframevar.h,v 1.21.18.1 2021/08/05 03:37:41 thorpej Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -355,6 +355,7 @@ typedef RF_uint32 RF_ReconReqFlags_t;
/* flags that can be put in the rf_recon_req structure */
#define RF_FDFLAGS_NONE 0x0 /* just fail the disk */
#define RF_FDFLAGS_RECON 0x1 /* fail and initiate recon */
+#define RF_FDFLAGS_RECON_FORCE 0x2 /* fail and initiate recon, ignoring errors */
struct rf_recon_req { /* used to tell the kernel to fail a disk */
RF_RowCol_t col;
Index: src/sys/dev/raidframe/rf_dagfuncs.c
diff -u src/sys/dev/raidframe/rf_dagfuncs.c:1.33 src/sys/dev/raidframe/rf_dagfuncs.c:1.33.2.1
--- src/sys/dev/raidframe/rf_dagfuncs.c:1.33 Tue Jul 27 03:01:48 2021
+++ src/sys/dev/raidframe/rf_dagfuncs.c Thu Aug 5 03:37:41 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_dagfuncs.c,v 1.33 2021/07/27 03:01:48 oster Exp $ */
+/* $NetBSD: rf_dagfuncs.c,v 1.33.2.1 2021/08/05 03:37:41 thorpej Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
* All rights reserved.
@@ -48,7 +48,7 @@
*/
#include
-__KERNEL_RCSID(0, "$NetBSD: rf_dagfuncs.c,v 1.33 2021/07/27 03:01:48 oster Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rf_dagfuncs.c,v 1.33.2.1 2021/08/05 03:37:41 thorpej Exp $");
#include
#include
@@ -121,7 +121,7 @@ rf_TerminateUndoFunc(RF_DagNode_t *node)
*
* parameters:
*
- * 0 - physical disk addres of data
+ * 0 - physical disk address of data
* 1 - buffer for holding read data
* 2 - parity stripe ID
* 3 - flags
Index: src/sys/dev/raidframe/rf_netbsdkintf.c
diff -u src/sys/dev/raidframe/rf_netbsdkintf.c:1.397 src/sys/dev/raidframe/rf_netbsdkintf.c:1.397.2.1
--- src/sys/dev/raidframe/rf_netbsdkintf.c:1.397 Mon Jul 26 22:50:36 2021
+++ src/sys/dev/raidframe/rf_netbsdkintf.c Thu Aug 5 03:37:41 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_netbsdkintf.c,v 1.397 2021/07/26 22:50:36 oster Exp $ */
+/* $NetBSD: rf_netbsdkintf.c,v 1.397.2.1 2021/08/05 03:37:41 thorpej Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998, 2008-2011 The NetBSD Foundation, Inc.
@@ -101,7 +101,7 @@
***/
#include
-__KERNEL_RCSID(0, "$NetBSD: rf_netbsdkintf.c,v 1.397 2021/07/26 22:50:36 oster Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rf_netbsdkintf.c,v 1.397.2.1 2021/08/05 03:37:41 thorpej Exp $");
#ifdef _KERNEL_OPT
#include "opt_raid_autoconfig.h"
@@ -305,6 +305,7 @@ static void rf_RewriteParityThread(RF_Ra
static void rf_CopybackThread(RF_Raid_t *raidPtr);
static void rf_ReconstructInPlaceThread(struct rf_recon_req_internal *);
static int rf_autoconfig(device_t);
+static int rf_rescan(void);
static void rf_buildroothack(RF_ConfigSet_t *);
static RF_AutoConfig_t *rf_find_raid_components(void);
@@ -480,6 +481,56 @@ rf_containsboot(RF_Raid_t *r, device_t b
return 0;
}
+static int
+rf_rescan(void)
+{
+