qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1 0/2] Add timeout mechanism to qmp actions


From: Zhenyu Ye
Subject: Re: [PATCH v1 0/2] Add timeout mechanism to qmp actions
Date: Mon, 19 Oct 2020 20:40:37 +0800
User-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.3.0

Hi Stefan,

On 2020/10/13 18:00, Stefan Hajnoczi wrote:
> 
> Sorry, I lost track of this on-going email thread.
> 
> Thanks for the backtrace. It shows the io_submit call is done while the
> AioContext lock is held. The monitor thread is waiting for the
> IOThread's AioContext lock. vcpus threads can get stuck waiting on the
> big QEMU lock (BQL) that is held by the monitor in the meantime.
> 
> Please collect the kernel backtrace for io_submit so we can understand
> why multi-second io_submit latencies happen.
> 
> I also suggest trying aio=io_uring to check if Linux io_uring avoids the
> latency problem.
> 

The kernel backtrace for io_submit in GUEST is:

        guest# ./offcputime -K -p `pgrep -nx fio`
            b'finish_task_switch'
            b'__schedule'
            b'schedule'
            b'io_schedule'
            b'blk_mq_get_tag'
            b'blk_mq_get_request'
            b'blk_mq_make_request'
            b'generic_make_request'
            b'submit_bio'
            b'blkdev_direct_IO'
            b'generic_file_read_iter'
            b'aio_read'
            b'io_submit_one'
            b'__x64_sys_io_submit'
            b'do_syscall_64'
            b'entry_SYSCALL_64_after_hwframe'
            -                fio (1464)
                40031912

And Linux io_uring can avoid the latency problem.

Thanks,
Zhenyu



reply via email to

[Prev in Thread] Current Thread [Next in Thread]