summaryrefslogtreecommitdiff
path: root/sys/dev/raidframe
diff options
context:
space:
mode:
authoroster <oster@NetBSD.org>2021-07-23 02:35:14 +0000
committeroster <oster@NetBSD.org>2021-07-23 02:35:14 +0000
commitacfd5966ecd5924ecfb45b75d570cf0706c61b6e (patch)
tree96ed0742efbcd36070d9e1d1699d369c3f2a4dfa /sys/dev/raidframe
parent59585ada437d2dacd4394b30df1701b455887e77 (diff)
All IO is async in the RAIDframe kernel driver, so desc->async_flag
isn't needed. Cleanup the flag from rf_DoAccess() and its caller as well.
Diffstat (limited to 'sys/dev/raidframe')
-rw-r--r--sys/dev/raidframe/rf_desc.h3
-rw-r--r--sys/dev/raidframe/rf_driver.c13
-rw-r--r--sys/dev/raidframe/rf_driver.h4
-rw-r--r--sys/dev/raidframe/rf_netbsdkintf.c12
-rw-r--r--sys/dev/raidframe/rf_states.c9
5 files changed, 13 insertions, 28 deletions
diff --git a/sys/dev/raidframe/rf_desc.h b/sys/dev/raidframe/rf_desc.h
index 74145fcf419..f67abc8a9f0 100644
--- a/sys/dev/raidframe/rf_desc.h
+++ b/sys/dev/raidframe/rf_desc.h
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_desc.h,v 1.21 2019/10/10 03:43:59 christos Exp $ */
+/* $NetBSD: rf_desc.h,v 1.22 2021/07/23 02:35:14 oster Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
* All rights reserved.
@@ -91,7 +91,6 @@ struct RF_RaidAccessDesc_s {
* I/O */
void *callbackArg; /* arg to give to callback func */
RF_RaidAccessDesc_t *next;
- int async_flag;
RF_Etimer_t timer; /* used for timing this access */
};
#endif /* !_RF__RF_DESC_H_ */
diff --git a/sys/dev/raidframe/rf_driver.c b/sys/dev/raidframe/rf_driver.c
index 29bc2adf651..8abab3d88d6 100644
--- a/sys/dev/raidframe/rf_driver.c
+++ b/sys/dev/raidframe/rf_driver.c
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_driver.c,v 1.138 2021/07/23 00:54:45 oster Exp $ */
+/* $NetBSD: rf_driver.c,v 1.139 2021/07/23 02:35:14 oster Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -66,7 +66,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rf_driver.c,v 1.138 2021/07/23 00:54:45 oster Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rf_driver.c,v 1.139 2021/07/23 02:35:14 oster Exp $");
#ifdef _KERNEL_OPT
#include "opt_raid_diagnostic.h"
@@ -665,13 +665,11 @@ rf_FreeRaidAccDesc(RF_RaidAccessDesc_t *desc)
* when either the DAG library is incomplete or there are too many
* failures in a parity group.
*
- * type should be read or write async_flag should be RF_TRUE or
- * RF_FALSE bp_in is a buf pointer. void *to facilitate ignoring it
- * outside the kernel
+ * type should be read or write. bp_in is a buf pointer. void *to
+ * facilitate ignoring it outside the kernel
********************************************************************/
int
-rf_DoAccess(RF_Raid_t * raidPtr, RF_IoType_t type, int async_flag,
- RF_RaidAddr_t raidAddress, RF_SectorCount_t numBlocks,
+rf_DoAccess(RF_Raid_t * raidPtr, RF_IoType_t type, RF_RaidAddr_t raidAddress, RF_SectorCount_t numBlocks,
void *bufPtr, struct buf *bp, RF_RaidAccessFlags_t flags)
{
RF_RaidAccessDesc_t *desc;
@@ -704,7 +702,6 @@ rf_DoAccess(RF_Raid_t * raidPtr, RF_IoType_t type, int async_flag,
#if RF_ACC_TRACE > 0
RF_ETIMER_START(desc->tracerec.tot_timer);
#endif
- desc->async_flag = async_flag;
if (raidPtr->parity_map != NULL &&
type == RF_IO_TYPE_WRITE)
diff --git a/sys/dev/raidframe/rf_driver.h b/sys/dev/raidframe/rf_driver.h
index d62ada3b662..79ec3230a6b 100644
--- a/sys/dev/raidframe/rf_driver.h
+++ b/sys/dev/raidframe/rf_driver.h
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_driver.h,v 1.20 2015/12/26 00:58:45 pgoyette Exp $ */
+/* $NetBSD: rf_driver.h,v 1.21 2021/07/23 02:35:14 oster Exp $ */
/*
* rf_driver.h
*/
@@ -52,7 +52,7 @@ RF_RaidAccessDesc_t *rf_AllocRaidAccDesc(RF_Raid_t *, RF_IoType_t,
RF_RaidAccessFlags_t,
const RF_AccessState_t *);
void rf_FreeRaidAccDesc(RF_RaidAccessDesc_t *);
-int rf_DoAccess(RF_Raid_t *, RF_IoType_t, int, RF_RaidAddr_t,
+int rf_DoAccess(RF_Raid_t *, RF_IoType_t, RF_RaidAddr_t,
RF_SectorCount_t, void *, struct buf *,
RF_RaidAccessFlags_t);
#if 0
diff --git a/sys/dev/raidframe/rf_netbsdkintf.c b/sys/dev/raidframe/rf_netbsdkintf.c
index f21dcc270d6..7ac8ef4cdc9 100644
--- a/sys/dev/raidframe/rf_netbsdkintf.c
+++ b/sys/dev/raidframe/rf_netbsdkintf.c
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_netbsdkintf.c,v 1.395 2021/07/23 00:54:45 oster Exp $ */
+/* $NetBSD: rf_netbsdkintf.c,v 1.396 2021/07/23 02:35:14 oster Exp $ */
/*-
* Copyright (c) 1996, 1997, 1998, 2008-2011 The NetBSD Foundation, Inc.
@@ -101,7 +101,7 @@
***********************************************************/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rf_netbsdkintf.c,v 1.395 2021/07/23 00:54:45 oster Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rf_netbsdkintf.c,v 1.396 2021/07/23 02:35:14 oster Exp $");
#ifdef _KERNEL_OPT
#include "opt_raid_autoconfig.h"
@@ -1904,7 +1904,6 @@ raiddoaccess(RF_Raid_t *raidPtr, struct buf *bp)
RF_SectorCount_t num_blocks, pb, sum;
RF_RaidAddr_t raid_addr;
daddr_t blocknum;
- int do_async;
int rc;
rf_lock_mutex2(raidPtr->mutex);
@@ -1954,17 +1953,12 @@ raiddoaccess(RF_Raid_t *raidPtr, struct buf *bp)
raidPtr->openings--;
rf_unlock_mutex2(raidPtr->mutex);
- /*
- * Everything is async.
- */
- do_async = 1;
-
/* don't ever condition on bp->b_flags & B_WRITE.
* always condition on B_READ instead */
rc = rf_DoAccess(raidPtr, (bp->b_flags & B_READ) ?
RF_IO_TYPE_READ : RF_IO_TYPE_WRITE,
- do_async, raid_addr, num_blocks,
+ raid_addr, num_blocks,
bp->b_data, bp, RF_DAG_NONBLOCKING_IO);
done:
diff --git a/sys/dev/raidframe/rf_states.c b/sys/dev/raidframe/rf_states.c
index fa29ed2003c..7ab379cf62f 100644
--- a/sys/dev/raidframe/rf_states.c
+++ b/sys/dev/raidframe/rf_states.c
@@ -1,4 +1,4 @@
-/* $NetBSD: rf_states.c,v 1.52 2021/07/23 00:54:45 oster Exp $ */
+/* $NetBSD: rf_states.c,v 1.53 2021/07/23 02:35:14 oster Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
* All rights reserved.
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rf_states.c,v 1.52 2021/07/23 00:54:45 oster Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rf_states.c,v 1.53 2021/07/23 02:35:14 oster Exp $");
#include <sys/errno.h>
@@ -216,11 +216,6 @@ rf_State_LastState(RF_RaidAccessDesc_t *desc)
void * callbackArg = desc->callbackArg;
/*
- * We don't support non-async IO.
- */
- KASSERT(desc->async_flag);
-
- /*
* The parity_map hook has to go here, because the iodone
* callback goes straight into the kintf layer.
*/