diff options
author | Lars Ellenberg <lars.ellenberg@linbit.com> | 2010-12-15 23:21:39 +0100 |
---|---|---|
committer | Philipp Reisner <philipp.reisner@linbit.com> | 2011-03-10 11:36:38 +0100 |
commit | 7777a8ba1fc980e5edfe492ebf5a1676497b8db2 (patch) | |
tree | 9eb81d2bee5bf63a796ae4df0b9cf352b3f0360b /drivers/block/cciss.h | |
parent | 1b881ef77537f1077482f9946a6a99b4e2dd54b2 (diff) |
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>
Diffstat (limited to 'drivers/block/cciss.h')
0 files changed, 0 insertions, 0 deletions