[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v1] qmp: don't hold ctx lock while querying blockstats
From: |
Kevin Wolf |
Subject: |
Re: [PATCH v1] qmp: don't hold ctx lock while querying blockstats |
Date: |
Fri, 10 Jul 2020 11:40:26 +0200 |
Am 10.07.2020 um 10:54 hat Zhenyu Ye geschrieben:
> Because the QMP command runs in the main thread, and changes
> to the aio context of iothread will only be executed in the
> main thread (they will not be in parallel), so there is no
> need a lock protection while querying blockstats.
>
> If we hold the lock here, while the I/O pressure is high in
> vm and the I/O returns slowly, the main thread will be stuck
> until the lock is released, which will affect the vcpu operation
> and finall cause the vm to be stuck.
>
> Signed-off-by: Zhenyu Ye <yezhenyu2@huawei.com>
Are you saying that you think qmp_query_blockstats() runs in the
iothread? This is not true, it runs in the main thread.
This makes dropping the lock wrong, and even dropping it shouldn't make
a difference for other things that should run in the main thread because
the main thread is still busy executing the QMP command.
Am I missing something?
(Also, a change like this is most definitely *not* trivial.)
Kevin