diff options
author | Peter Galbavy <peter@cvs.openbsd.org> | 2000-01-07 14:50:24 +0000 |
---|---|---|
committer | Peter Galbavy <peter@cvs.openbsd.org> | 2000-01-07 14:50:24 +0000 |
commit | d7921cbd0ec1beed703dd2b35ce6236d09fa0f12 (patch) | |
tree | 7193c433c334b83730ba6636e8b5e2007148d29f /sys/dev/raidframe/rf_raid.h | |
parent | 67a89310ea3a36e9b3d504382073e820f07a019a (diff) |
sync with work by Greg Oster on NetBSD
Please note: This update has *only* been tested on i386 with IDE
disks. Could someone with a spare box please make sure all is OK with
SCSI and maybe other arches ? sparc testing will follow locally.
* remove rf_sys.h
* many changes to make it more stable
* some performance increases
* All raid threads now get their own kernel process and the calling
raidctl(8) program will show status progress through a meter.
* In theory FFS_SOFTUPDATES and RAIDframe will now work together - NOT
TESTED YET
See http://www.cs.usask.ca/staff/oster/raid.html
This updates include Greg's changes to Jan 4th 2000.
TODO:
* some odd behaviour when running raictl -c on an already config'ed
raid set - problem founf, fix being done
* progress meter is in raidctl(8) - seperate commit, but could do with
sync'ing with OpenBSD ftp version
Diffstat (limited to 'sys/dev/raidframe/rf_raid.h')
-rw-r--r-- | sys/dev/raidframe/rf_raid.h | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/sys/dev/raidframe/rf_raid.h b/sys/dev/raidframe/rf_raid.h index dc106a9e767..8efbc6639ee 100644 --- a/sys/dev/raidframe/rf_raid.h +++ b/sys/dev/raidframe/rf_raid.h @@ -1,5 +1,5 @@ -/* $OpenBSD: rf_raid.h,v 1.4 1999/08/04 13:10:55 peter Exp $ */ -/* $NetBSD: rf_raid.h,v 1.6 1999/07/08 00:45:24 oster Exp $ */ +/* $OpenBSD: rf_raid.h,v 1.5 2000/01/07 14:50:22 peter Exp $ */ +/* $NetBSD: rf_raid.h,v 1.8 2000/01/05 02:57:29 oster Exp $ */ /* * Copyright (c) 1995 Carnegie-Mellon University. * All rights reserved. @@ -181,14 +181,24 @@ struct RF_Raid_s { RF_ThroughputStats_t throughputstats; #endif /* !_KERNEL && !SIMULATE */ RF_CumulativeStats_t userstats; + int parity_rewrite_stripes_done; + int recon_stripes_done; + int copyback_stripes_done; + + int recon_in_progress; + int parity_rewrite_in_progress; + int copyback_in_progress; /* * Engine thread control */ - RF_DECLARE_MUTEX(node_queue_mutex) - RF_DECLARE_COND(node_queue_cond) + RF_DECLARE_MUTEX(node_queue_mutex) + RF_DECLARE_COND(node_queue_cond) RF_DagNode_t *node_queue; + RF_Thread_t parity_rewrite_thread; + RF_Thread_t copyback_thread; RF_Thread_t engine_thread; + RF_Thread_t recon_thread; RF_ThreadGroup_t engine_tg; int shutdown_engine; int dags_in_flight; /* debug */ @@ -226,7 +236,6 @@ struct RF_Raid_s { int keep_acc_totals; struct raidcinfo **raid_cinfo; /* array of component info */ - struct proc *proc; /* XXX shouldn't be needed here.. :-p */ int terminate_disk_queues; |