diff options
| author | oster <oster@NetBSD.org> | 2000-01-07 13:57:20 +0000 |
|---|---|---|
| committer | oster <oster@NetBSD.org> | 2000-01-07 13:57:20 +0000 |
| commit | 91273673e77dde05daf0382b93e56f098ee09e06 (patch) | |
| tree | 21aba3b19ca03586a7a9ceb2c356aa9cf4b09ded /sys/dev/raidframe | |
| parent | 5f95b56bc8dd0e1429635e4ee5c8d31583636ed7 (diff) | |
In RAIDFRAME_CONFIGURE, don't set values in raidPtrs[unit] unless
the configuration was successful. Noted by Peter Galbavy of OpenBSD.
Diffstat (limited to 'sys/dev/raidframe')
| -rw-r--r-- | sys/dev/raidframe/rf_netbsdkintf.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/sys/dev/raidframe/rf_netbsdkintf.c b/sys/dev/raidframe/rf_netbsdkintf.c index da204f54bb5..f61ee10ded9 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.39 2000/01/06 02:06:41 oster Exp $ */ +/* $NetBSD: rf_netbsdkintf.c,v 1.40 2000/01/07 13:57:20 oster Exp $ */ /*- * Copyright (c) 1996, 1997, 1998 The NetBSD Foundation, Inc. * All rights reserved. @@ -783,16 +783,18 @@ raidioctl(dev, cmd, data, flag, p) retcode = rf_Configure(raidPtrs[unit], k_cfg); - /* allow this many simultaneous IO's to this RAID device */ - raidPtrs[unit]->openings = RAIDOUTSTANDING; + if (retcode == 0) { - /* XXX should be moved to rf_Configure() */ + /* allow this many simultaneous IO's to + this RAID device */ + raidPtrs[unit]->openings = RAIDOUTSTANDING; + + /* XXX should be moved to rf_Configure() */ - raidPtrs[unit]->copyback_in_progress = 0; - raidPtrs[unit]->parity_rewrite_in_progress = 0; - raidPtrs[unit]->recon_in_progress = 0; + raidPtrs[unit]->copyback_in_progress = 0; + raidPtrs[unit]->parity_rewrite_in_progress = 0; + raidPtrs[unit]->recon_in_progress = 0; - if (retcode == 0) { retcode = raidinit(dev, raidPtrs[unit], unit); rf_markalldirty( raidPtrs[unit] ); } |
