From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:47371) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TxGuZ-0001jC-4V for qemu-devel@nongnu.org; Mon, 21 Jan 2013 07:55:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TxGuX-0004UV-Ok for qemu-devel@nongnu.org; Mon, 21 Jan 2013 07:55:39 -0500 Received: from mail-ee0-f51.google.com ([74.125.83.51]:49726) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TxGuX-0004UO-IB for qemu-devel@nongnu.org; Mon, 21 Jan 2013 07:55:37 -0500 Received: by mail-ee0-f51.google.com with SMTP id d17so2785731eek.10 for ; Mon, 21 Jan 2013 04:55:36 -0800 (PST) Sender: Paolo Bonzini Message-ID: <50FD3AC3.20502@redhat.com> Date: Mon, 21 Jan 2013 13:55:31 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <1358357479-7912-1-git-send-email-pbonzini@redhat.com> <1358357479-7912-12-git-send-email-pbonzini@redhat.com> <50FD361F.1050608@redhat.com> In-Reply-To: <50FD361F.1050608@redhat.com> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 11/12] mirror: support more than one in-flight AIO operation List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: qemu-devel@nongnu.org, stefanha@redhat.com Il 21/01/2013 13:35, Kevin Wolf ha scritto: > I'm wondering if a whole bitmap is really appropriate when you have at > most 16 parallel requests in flight. Other places in qemu (like > copy-on-read or qcow2 cluster allocation) use lists of in-flight > requests instead. > > I'm not requesting a change here, just wondering what the reasons are > and whether this, or the other places, or none of both should be changed > long term. The reason is simply that the code is reasoning in bitmaps a lot (cow_bitmap and of course the dirty bitmap), so it was a natural pick and the memory usage is not important. It is simpler and more efficient than a linear scan. I have the required information already in the MirrorOp struct indeed, but I didn't need those in a list. Paolo