commit | 3f3a9b849d2b703934c07fa17f5eac2dc37c1f6b | [log] [tgz] |
---|---|---|
author | Lars Ellenberg <lars.ellenberg@linbit.com> | Wed Sep 01 15:12:12 2010 +0200 |
committer | Philipp Reisner <philipp.reisner@linbit.com> | Thu Oct 14 18:38:28 2010 +0200 |
tree | 12aff51d5d92a0642232205b95eb9e55e85dd2bf | |
parent | c518d04fdec3d8b9d6f8b2228040934de9ee6708 [diff] |
drbd: fix race on meta-data update The race: drbd_md_mark_dirty() drbd_md_sync() if (!test_and_clear_bit(MD_DIRTY, &mdev->flags)) return; drbd_md_sync_page_io(mdev, mdev->ldev, sector, WRITE) ==> RACE clear_bit(MD_DIRTY, &mdev->flags); <== spurious Fixed by removing the spurious clear_bit. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>