]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
[PATCH] dm snapshot: fix freeing pending exception
authorMilan Broz <mbroz@redhat.com>
Tue, 5 Dec 2006 15:11:18 +0000 (16:11 +0100)
committerChris Wright <chrisw@sous-sol.org>
Sun, 17 Dec 2006 00:20:47 +0000 (16:20 -0800)
Fix oops when removing full snapshot
kernel bugzilla bug 7040

If a snapshot became invalid (full) while there is outstanding
pending_exception, pending_complete() forgets to remove
the corresponding exception from its exception table before freeing it.

Already fixed in 2.6.19.

Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
drivers/md/dm-snap.c

index 1d0fafda0f761abb3630bd180f628dd7dfbbbc4d..6578b260feab39e883dddb885707c1a53032f922 100644 (file)
@@ -691,6 +691,7 @@ static void pending_complete(struct pending_exception *pe, int success)
 
                free_exception(e);
 
+               remove_exception(&pe->e);
                error_snapshot_bios(pe);
                goto out;
        }