Commit d87d01e1 authored by Alberto Garcia's avatar Alberto Garcia Committed by Kevin Wolf
Browse files

throttle: Remove throttle_group_lock/unlock()



The group throttling code was always meant to handle its locking
internally. However, bdrv_swap() was touching the ThrottleGroup
structure directly and therefore needed an API for that.

Now that bdrv_swap() no longer exists there's no need for the
throttle_group_lock() API anymore.

Signed-off-by: default avatarAlberto Garcia <berto@igalia.com>
Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent bd745e23
Loading
Loading
Loading
Loading
+1 −30
Original line number Diff line number Diff line
@@ -33,8 +33,7 @@
 * its own locking.
 *
 * This locking is however handled internally in this file, so it's
 * mostly transparent to outside users (but see the documentation in
 * throttle_groups_lock()).
 * transparent to outside users.
 *
 * The whole ThrottleGroup structure is private and invisible to
 * outside users, that only use it through its ThrottleState.
@@ -468,34 +467,6 @@ void throttle_group_unregister_bs(BlockDriverState *bs)
    bs->throttle_state = NULL;
}

/* Acquire the lock of this throttling group.
 *
 * You won't normally need to use this. None of the functions from the
 * ThrottleGroup API require you to acquire the lock since all of them
 * deal with it internally.
 *
 * This should only be used in exceptional cases when you want to
 * access the protected fields of a BlockDriverState directly
 * (e.g. bdrv_swap()).
 *
 * @bs: a BlockDriverState that is member of the group
 */
void throttle_group_lock(BlockDriverState *bs)
{
    ThrottleGroup *tg = container_of(bs->throttle_state, ThrottleGroup, ts);
    qemu_mutex_lock(&tg->lock);
}

/* Release the lock of this throttling group.
 *
 * See the comments in throttle_group_lock().
 */
void throttle_group_unlock(BlockDriverState *bs)
{
    ThrottleGroup *tg = container_of(bs->throttle_state, ThrottleGroup, ts);
    qemu_mutex_unlock(&tg->lock);
}

static void throttle_groups_init(void)
{
    qemu_mutex_init(&throttle_groups_lock);
+0 −3
Original line number Diff line number Diff line
@@ -43,7 +43,4 @@ void coroutine_fn throttle_group_co_io_limits_intercept(BlockDriverState *bs,
                                                        unsigned int bytes,
                                                        bool is_write);

void throttle_group_lock(BlockDriverState *bs);
void throttle_group_unlock(BlockDriverState *bs);

#endif