1
linux/drivers/md
NeilBrown c148ffdcda md/raid5: Allow dirty-degraded arrays to be assembled when only party is degraded.
Normally is it not safe to allow a raid5 that is both dirty and
degraded to be assembled without explicit request from that admin, as
it can cause hidden data corruption.
This is because 'dirty' means that the parity cannot be trusted, and
'degraded' means that the parity needs to be used.

However, if the device that is missing contains only parity, then
there is no issue and assembly can continue.
This particularly applies when a RAID5 is being converted to a RAID6
and there is an unclean shutdown while the conversion is happening.

So check for whether the degraded space only contains parity, and
in that case, allow the assembly.

Signed-off-by: NeilBrown <neilb@suse.de>
2009-11-13 17:47:00 +11:00
..
raid6test md: drivers/md/unroll.pl replaced with awk analog 2009-10-16 16:25:19 +11:00
.gitignore
bitmap.c md: remove clumsy usage of do_sync_mapping_range from bitmap code 2009-10-16 15:56:01 +11:00
bitmap.h
dm-bio-record.h
dm-crypt.c
dm-delay.c
dm-exception-store.c dm snapshot: allow chunk size to be less than page size 2009-10-16 23:18:22 +01:00
dm-exception-store.h dm snapshot: use unsigned integer chunk size 2009-10-16 23:18:17 +01:00
dm-io.c
dm-ioctl.c Driver-Core: extend devnode callbacks to provide permissions 2009-09-19 12:50:38 -07:00
dm-kcopyd.c
dm-linear.c
dm-log-userspace-base.c dm log: userspace fix incorrect luid cast in userspace_ctr 2009-10-16 23:18:15 +01:00
dm-log-userspace-transfer.c dm/connector: Only process connector packages from privileged processes 2009-10-02 10:54:10 -07:00
dm-log-userspace-transfer.h dm log: userspace add luid to distinguish between concurrent log instances 2009-09-04 20:40:34 +01:00
dm-log.c
dm-mpath.c
dm-mpath.h
dm-path-selector.c
dm-path-selector.h
dm-queue-length.c
dm-raid1.c bio: first step in sanitizing the bio->bi_rw flag testing 2009-09-11 14:33:31 +02:00
dm-region-hash.c
dm-round-robin.c
dm-service-time.c
dm-snap-persistent.c dm snapshot: use unsigned integer chunk size 2009-10-16 23:18:17 +01:00
dm-snap-transient.c
dm-snap.c dm snapshot: use unsigned integer chunk size 2009-10-16 23:18:17 +01:00
dm-stripe.c block: Optimal I/O limit wrapper 2009-09-14 08:24:52 +02:00
dm-sysfs.c
dm-table.c
dm-target.c
dm-uevent.c
dm-uevent.h
dm-zero.c
dm.c dm: dec_pending needs locking to save error value 2009-10-16 23:18:15 +01:00
dm.h
faulty.c
Kconfig Merge branch 'dmaengine' into async-tx-next 2009-09-08 17:55:21 -07:00
linear.c md: report device as congested when suspended 2009-09-23 18:10:29 +10:00
linear.h
Makefile md: drivers/md/unroll.pl replaced with awk analog 2009-10-16 16:25:19 +11:00
md.c md: allow v0.91 metadata to record devices as being active but not in-sync. 2009-11-13 17:40:48 +11:00
md.h md: report device as congested when suspended 2009-09-23 18:10:29 +10:00
mktables.c
multipath.c md: remove unnecessary memset from multipath. 2009-09-23 18:16:31 +10:00
multipath.h
raid0.c md: report device as congested when suspended 2009-09-23 18:10:29 +10:00
raid0.h
raid1.c md: raid1/raid10: handle allocation errors during array setup. 2009-10-16 15:55:44 +11:00
raid1.h
raid5.c md/raid5: Allow dirty-degraded arrays to be assembled when only party is degraded. 2009-11-13 17:47:00 +11:00
raid5.h md: fix problems with RAID6 calculations for DDF. 2009-10-16 16:27:34 +11:00
raid6algos.c
raid6altivec.uc md: drivers/md/unroll.pl replaced with awk analog 2009-10-16 16:25:19 +11:00
raid6int.uc md: drivers/md/unroll.pl replaced with awk analog 2009-10-16 16:25:19 +11:00
raid6mmx.c
raid6recov.c
raid6sse1.c
raid6sse2.c
raid6x86.h
raid10.c md: raid1/raid10: handle allocation errors during array setup. 2009-10-16 15:55:44 +11:00
raid10.h
unroll.awk md: drivers/md/unroll.pl replaced with awk analog 2009-10-16 16:25:19 +11:00