From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39462) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cBIHw-0004JV-QH for qemu-devel@nongnu.org; Mon, 28 Nov 2016 04:31:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cBIHt-0007tS-Kx for qemu-devel@nongnu.org; Mon, 28 Nov 2016 04:31:52 -0500 Received: from mga04.intel.com ([192.55.52.120]:25085) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cBIHt-0007t9-Cs for qemu-devel@nongnu.org; Mon, 28 Nov 2016 04:31:49 -0500 References: <20161124151225.GA11963@stefanha-x1.localdomain> From: Eliezer Tamir Message-ID: <325f739a-05bd-c437-b9a2-e371a8cbf50d@linux.intel.com> Date: Mon, 28 Nov 2016 11:31:43 +0200 MIME-Version: 1.0 In-Reply-To: <20161124151225.GA11963@stefanha-x1.localdomain> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] Linux kernel polling for QEMU List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi , qemu-devel@nongnu.org Cc: Jens Axboe , Christoph Hellwig , Davide Libenzi , "Michael S. Tsirkin" , Paolo Bonzini , Christian Borntraeger , Fam Zheng , Eric Dumazet , Willem de Bruijn + 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. I would love to collaborate on this with you, though I must confess that my resources at the moment are limited and the setup I used for testing no longer exists. -Eliezer