mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 11:46:19 +00:00
fix in-kernel configuration serialization
this is uncritical, as we still also serialize in userland, but to correctly serialize on the CONFIG_PENDING bit, it must be wait_event(state_wait, \!test_and_set_bit) Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com>
This commit is contained in:
parent
32a87c0114
commit
6c6c7951be
1 changed files with 1 additions and 1 deletions
|
@ -733,7 +733,7 @@ void drbd_setup_queue_param(struct drbd_conf *mdev, unsigned int max_seg_s) __mu
|
||||||
*/
|
*/
|
||||||
static void drbd_reconfig_start(struct drbd_conf *mdev)
|
static void drbd_reconfig_start(struct drbd_conf *mdev)
|
||||||
{
|
{
|
||||||
wait_event(mdev->state_wait, test_and_set_bit(CONFIG_PENDING, &mdev->flags));
|
wait_event(mdev->state_wait, !test_and_set_bit(CONFIG_PENDING, &mdev->flags));
|
||||||
wait_event(mdev->state_wait, !test_bit(DEVICE_DYING, &mdev->flags));
|
wait_event(mdev->state_wait, !test_bit(DEVICE_DYING, &mdev->flags));
|
||||||
drbd_thread_start(&mdev->worker);
|
drbd_thread_start(&mdev->worker);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue