WSL2-Linux-Kernel/drivers/block/drbd
Lars Ellenberg 7777a8ba1f drbd: bitmap: don't count unused bits (fix non-terminating resync)
We trusted the on-disk bitmap to have unused bits cleared.
In case that is not true for whatever reason,
and we take a code path where the unused bits don't get cleared
elsewhere (bm_clear_surplus is not called), we may miscount the bits,
and get confused during resync, waiting for bits to get cleared that we
don't even use: the resync process would not terminate.

Fix this by masking out unused bits in __bm_count_bits.

Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com>
Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
2011-03-10 11:36:38 +01:00
..
Kconfig drbd: Kconfig fix 2009-12-29 17:38:28 +01:00
Makefile drbd: remove tracing bits 2009-10-01 21:17:58 +02:00
drbd_actlog.c drbd: Use the standard bool, true, and false keywords 2011-03-10 11:36:24 +01:00
drbd_bitmap.c drbd: bitmap: don't count unused bits (fix non-terminating resync) 2011-03-10 11:36:38 +01:00
drbd_int.h drbd: Rename __inc_ap_bio_cond to may_inc_ap_bio 2011-03-10 11:36:37 +01:00
drbd_main.c drbd: Rename __inc_ap_bio_cond to may_inc_ap_bio 2011-03-10 11:36:37 +01:00
drbd_nl.c drbd: Fix: drbd_bitmap_io does not return an enum determine_dev_size 2011-03-10 11:36:35 +01:00
drbd_proc.c drbd: increase module count on /proc/drbd access 2011-03-10 11:35:11 +01:00
drbd_receiver.c drbd: receive_bitmap_plain: Get rid of ugly and useless enum 2011-03-10 11:36:34 +01:00
drbd_req.c drbd: Use the standard bool, true, and false keywords 2011-03-10 11:36:24 +01:00
drbd_req.h drbd: Begin to account BIO processing time before inc_ap_bio() 2011-03-10 11:34:57 +01:00
drbd_strings.c drbd: Rename enum drbd_state_ret_codes to enum drbd_state_rv 2011-03-10 11:36:18 +01:00
drbd_vli.h The DRBD driver 2009-10-01 21:17:49 +02:00
drbd_worker.c drbd: Use the standard bool, true, and false keywords 2011-03-10 11:36:24 +01:00
drbd_wrappers.h drbd: Get rid of unnecessary macros (2) 2011-03-10 11:36:15 +01:00