]> err.no Git - linux-2.6/commitdiff
[PATCH] device-mapper log bitset: fix big endian find_next_zero_bit
authorStefan Bader <shbader@de.ibm.com>
Thu, 2 Feb 2006 22:28:07 +0000 (14:28 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Thu, 2 Feb 2006 23:07:13 +0000 (15:07 -0800)
This is a fix to the device-mapper-log-bitset-fix-endian patch that
switched to ext2_* versions of the set and clear bit functions.  The
find_next_zero_bit function also has to be the ext2 one.  Otherwise the
mirror target tries to recover non-existent regions beyond the end of
device.

Signed-off-by: Stefan Bader <shbader@de.ibm.com>
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>
drivers/md/dm-log.c

index 74039db846baa3eb19c4574c91827f4d58cb9050..d73779a42417f25a1fac190d4bc4907aa939a782 100644 (file)
@@ -545,7 +545,8 @@ static int core_get_resync_work(struct dirty_log *log, region_t *region)
                return 0;
 
        do {
-               *region = find_next_zero_bit((unsigned long *) lc->sync_bits,
+               *region = ext2_find_next_zero_bit(
+                                            (unsigned long *) lc->sync_bits,
                                             lc->region_count,
                                             lc->sync_search);
                lc->sync_search = *region + 1;