Hi, This patch will replace the find_next_zero_bit function with the appropriate ext2 counterpart. Without this on 64 bit BE machines the mirror target will try to recover regions beyond the end of device. Regards, Stefan
From: Stefan Bader <shbader@xxxxxxxxxx> This is an addition to the endian fixes that introduce ext2_* versions of the set and clear bit functions. The find_next_zero_bit 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@xxxxxxxxxx> diff -Nurp linux-2.6.15/drivers/md/dm-log.c linux-2.6.15-fix/drivers/md/dm-log.c --- linux-2.6.15/drivers/md/dm-log.c 2006-02-01 16:43:32.707368696 +0100 +++ linux-2.6.15-fix/drivers/md/dm-log.c 2006-02-01 16:48:40.344639085 +0100 @@ -545,7 +545,8 @@ static int core_get_resync_work(struct d 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;
-- dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel