From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37728) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wu1Vy-00056Y-Rb for qemu-devel@nongnu.org; Mon, 09 Jun 2014 11:29:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wu1Vt-0000qK-U5 for qemu-devel@nongnu.org; Mon, 09 Jun 2014 11:29:38 -0400 Received: from mx1.redhat.com ([209.132.183.28]:12033) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wu1Vt-0000qF-LE for qemu-devel@nongnu.org; Mon, 09 Jun 2014 11:29:33 -0400 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s59FTW5E011529 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 9 Jun 2014 11:29:33 -0400 Message-ID: <5395D2DB.3060005@redhat.com> Date: Mon, 09 Jun 2014 09:29:31 -0600 From: Eric Blake MIME-Version: 1.0 References: <1402322375-18899-1-git-send-email-stefanha@redhat.com> In-Reply-To: <1402322375-18899-1-git-send-email-stefanha@redhat.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="AG0NFASAv1h8g5FGhsXabbW9PQp1RwFwd" Subject: Re: [Qemu-devel] [PATCH] docs/multiple-iothreads.txt: add documentation on IOThread programming List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi , qemu-devel@nongnu.org Cc: Kevin Wolf , Paolo Bonzini , Fam Zheng This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --AG0NFASAv1h8g5FGhsXabbW9PQp1RwFwd Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 06/09/2014 07:59 AM, Stefan Hajnoczi wrote: > This document explains how IOThreads and the main loop are related, > especially how to write code that can run in an IOThread. Currently on= > virtio-blk-data-plane uses these techniques. The next obvious target i= s > virtio-scsi; there has also been work on virtio-net. >=20 > Signed-off-by: Stefan Hajnoczi > --- > docs/multiple-iothreads.txt | 124 ++++++++++++++++++++++++++++++++++++= ++++++++ > 1 file changed, 124 insertions(+) > create mode 100644 docs/multiple-iothreads.txt >=20 > diff --git a/docs/multiple-iothreads.txt b/docs/multiple-iothreads.txt > new file mode 100644 > index 0000000..f2b008d > --- /dev/null > +++ b/docs/multiple-iothreads.txt > @@ -0,0 +1,124 @@ > +This document explains the IOThread feature and how to write code that= runs > +outside the QEMU global mutex. Pre-existing epidemic in this directory, but should you assert copyright and a license? > + > +The main loop and IOThreads > +--------------------------- > +QEMU is an event-driven program that can do several things at once usi= ng an > +event loop. The VNC server and the QMP monitor are both processed fro= m the > +same event loop which monitors their file descriptors until they becom= e s/loop/loop,/ --=20 Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --AG0NFASAv1h8g5FGhsXabbW9PQp1RwFwd Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBCAAGBQJTldLbAAoJEKeha0olJ0NqlvEIAKcKU7HbuNRmWWZRTooFgO8c +tcF7KHnTrVyJKyFFLsAupYgTDlbzOqWeLGBxfs12hkn7DHDw+zfpuUYOv+G1GUa fwDRq9tYl4K7yiMqNi37WO7Nk87i0LNMhACkhnV3vvjlEjWMXf4JRyl8h6U1dsMC CTmo0WV0vJXMSWWHLG0sr74rAUje+thTTbFmsu0/4/e3GKBjZz7/JoWpB7wy5la5 JX+0gSlos1kZ8jmgjb5IHM0rqnD3wA0w3PZN0hyuECW4jJyJe87XHDx1YaMIxW6D 1krlQ5iVFnRMmUmv/PES84WQShcvqY6tmJBVdkH4aI0umncbDDIRNq33j0LVgr4= =BWBh -----END PGP SIGNATURE----- --AG0NFASAv1h8g5FGhsXabbW9PQp1RwFwd--