[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Linux kernel polling for QEMU
From: |
Willem de Bruijn |
Subject: |
Re: [Qemu-devel] Linux kernel polling for QEMU |
Date: |
Mon, 28 Nov 2016 15:41:36 -0500 |
On Mon, Nov 28, 2016 at 4:31 AM, Eliezer Tamir
<address@hidden> wrote:
> + Eric, Willem
>
> On 24/11/2016 17:12, Stefan Hajnoczi wrote:
>> I looked through the socket SO_BUSY_POLL and blk_mq poll support in
>> recent Linux kernels with an eye towards integrating the ongoing QEMU
>> polling work. The main missing feature is eventfd polling support which
>> I describe below.
> ...
>> State of polling in Linux
>> -------------------------
>> SO_BUSY_POLL causes recvmsg(2), select(2), and poll(2) family system
>> calls to spin awaiting new receive packets. From what I can tell epoll
>> is not supported so that system call will sleep without polling.
>
> At the time I sent out an RFC for epoll() SO_BUSY_POLL support.
> https://lkml.org/lkml/2013/8/21/192
>
> In hindsight I think the way I tracked sockets was over-complicated.
> What I would do today would be to extend the API to allow the user
> to tell epoll which socket/queue combinations are interesting.
Also note the trivial special case for setups with one single-queue
nic (most 1Gb machines).
On multi-queue setups a less trivial attempt is optimistically spinning on
queues whose interrupt is pinned to same cpu as the process. Based
on the heuristic that a process that cares enough about low-latency to
configure busy poll will also care enough to set cpu affinity.
Both heuristics can be implemented without an explicit user API.
Re: [Qemu-devel] Linux kernel polling for QEMU, Christian Borntraeger, 2016/11/29
Re: [Qemu-devel] Linux kernel polling for QEMU, Fam Zheng, 2016/11/29
- Re: [Qemu-devel] Linux kernel polling for QEMU, Paolo Bonzini, 2016/11/29
- Re: [Qemu-devel] Linux kernel polling for QEMU, Fam Zheng, 2016/11/29
- Re: [Qemu-devel] Linux kernel polling for QEMU, Paolo Bonzini, 2016/11/29
- Re: [Qemu-devel] Linux kernel polling for QEMU, Fam Zheng, 2016/11/29
- Re: [Qemu-devel] Linux kernel polling for QEMU, Andrew Jones, 2016/11/29
- Re: [Qemu-devel] Linux kernel polling for QEMU, Fam Zheng, 2016/11/29