From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:49026) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZGFd-0002xK-Pm for qemu-devel@nongnu.org; Mon, 06 May 2013 03:54:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UZGFc-0003q4-QD for qemu-devel@nongnu.org; Mon, 06 May 2013 03:54:25 -0400 Received: from mail-ee0-f46.google.com ([74.125.83.46]:55410) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZGFc-0003ps-J8 for qemu-devel@nongnu.org; Mon, 06 May 2013 03:54:24 -0400 Received: by mail-ee0-f46.google.com with SMTP id b57so1580616eek.19 for ; Mon, 06 May 2013 00:54:23 -0700 (PDT) Sender: Paolo Bonzini Message-ID: <518761A6.4010209@redhat.com> Date: Mon, 06 May 2013 09:54:14 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1367597032-28934-1-git-send-email-mdroth@linux.vnet.ibm.com> In-Reply-To: <1367597032-28934-1-git-send-email-mdroth@linux.vnet.ibm.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [RFC 0/9] QContext: QOM class to support multiple event loops List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Michael Roth Cc: aliguori@us.ibm.com, qemu-devel@nongnu.org, stefanha@redhat.com, qemulist@gmail.com Il 03/05/2013 18:03, Michael Roth ha scritto: > These patches apply on top of qemu.git master, and can also be obtained from: > git://github.com/mdroth/qemu.git qcontext > > OVERVIEW > > This series introduces a set of QOM classes/interfaces for event > registration/handling: QContext and QSource, which are based closely on > their GMainContext/GSource GLib counterparts. > > QContexts can be created via the command-line via -object, and can also be > intructed (via -object params/properties) to automatically start a > thread/event-loop to handle QSources we attach to them. This is an awesome idea. However, it seems a bit overengineered. Why do we need QSource at all? In my opinion, we should first change dataplane to use AioContext as a GSource, and benchmark it thoroughly. If it is fast enough, we can "just" introduce a glib-based QContext and be done with it. Hopefully that is the case... Paolo