linux/drivers/md
Alasdair G Kergon 76df1c651b [PATCH] device-mapper snapshot: fix invalidation
When a snapshot becomes invalid, s->valid is set to 0.  In this state, a
snapshot can no longer be accessed.

When s->lock is acquired, before doing anything else, s->valid must be checked
to ensure the snapshot remains valid.

This patch eliminates some races (that may cause panics) by adding some
missing checks.  At the same time, some unnecessary levels of indentation are
removed and snapshot invalidation is moved into a single function that always
generates a device-mapper event.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-27 08:44:58 -08:00
..
raid6test
.gitignore gitignore: misc files 2006-01-01 22:21:50 +01:00
bitmap.c [PATCH] mempool: use common mempool kmalloc allocator 2006-03-26 08:56:59 -08:00
dm-bio-list.h [PATCH] device-mapper snapshot: bio_list fix 2005-11-22 09:14:31 -08:00
dm-bio-record.h
dm-crypt.c [PATCH] mempool: use mempool_create_slab_pool() 2006-03-26 08:57:00 -08:00
dm-emc.c
dm-exception-store.c
dm-hw-handler.c BUG_ON() Conversion in md/dm-hw-handler.c 2006-03-24 18:36:27 +01:00
dm-hw-handler.h
dm-io.c [PATCH] mempool: use common mempool kmalloc allocator 2006-03-26 08:56:59 -08:00
dm-io.h [PATCH] device-mapper: remove unused definition 2006-01-06 08:34:00 -08:00
dm-ioctl.c [PATCH] device-mapper ioctl: reduce PF_MEMALLOC usage 2006-02-01 08:53:10 -08:00
dm-linear.c
dm-log.c [PATCH] device-mapper log bitset: fix big endian find_next_zero_bit 2006-02-02 15:07:13 -08:00
dm-log.h
dm-mpath.c [PATCH] mempool: use mempool_create_slab_pool() 2006-03-26 08:57:00 -08:00
dm-mpath.h
dm-path-selector.c BUG_ON() Conversion in md/dm-path-selector.c 2006-03-26 18:21:58 +02:00
dm-path-selector.h
dm-raid1.c [PATCH] mempool: use common mempool kmalloc allocator 2006-03-26 08:56:59 -08:00
dm-round-robin.c
dm-snap.c [PATCH] device-mapper snapshot: fix invalidation 2006-03-27 08:44:58 -08:00
dm-snap.h [PATCH] device-mapper snapshot: load metadata on creation 2006-02-01 08:53:10 -08:00
dm-stripe.c [PATCH] dm stripe: Fix bounds 2006-03-17 07:51:25 -08:00
dm-table.c BUG_ON() Conversion in md/dm-table.c 2006-03-26 18:22:50 +02:00
dm-target.c
dm-zero.c
dm.c [PATCH] mempool: use mempool_create_slab_pool() 2006-03-26 08:57:00 -08:00
dm.h [PATCH] device-mapper: make lock_fs optional 2006-01-06 08:34:01 -08:00
faulty.c [PATCH] md: allow array level to be set textually via sysfs 2006-01-06 08:34:09 -08:00
Kconfig
kcopyd.c [PATCH] mempool: use mempool_create_slab_pool() 2006-03-26 08:57:00 -08:00
kcopyd.h
linear.c [PATCH] md: allow array level to be set textually via sysfs 2006-01-06 08:34:09 -08:00
Makefile
md.c [PATCH] regularize blk_cleanup_queue() use 2006-03-18 18:34:20 -05:00
mktables.c
multipath.c [PATCH] mempool: use common mempool kzalloc allocator 2006-03-26 08:56:59 -08:00
raid0.c [PATCH] md: Assorted little md fixes 2006-02-03 08:32:00 -08:00
raid1.c [PATCH] md: Fix several raid1 bugs which cause a memory leak 2006-03-09 19:47:37 -08:00
raid5.c [PATCH] md: Assorted little md fixes 2006-02-03 08:32:00 -08:00
raid6.h
raid6algos.c
raid6altivec.uc
raid6int.uc
raid6main.c [PATCH] md: Assorted little md fixes 2006-02-03 08:32:00 -08:00
raid6mmx.c
raid6recov.c
raid6sse1.c
raid6sse2.c
raid6x86.h
raid10.c [PATCH] md: Assorted little md fixes 2006-02-03 08:32:00 -08:00
unroll.pl
xor.c