From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:54681) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gw6sI-00046U-1I for qemu-devel@nongnu.org; Tue, 19 Feb 2019 09:59:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gw6sH-0000WY-3e for qemu-devel@nongnu.org; Tue, 19 Feb 2019 09:59:57 -0500 References: <20190218233154.19303-1-jsnow@redhat.com> From: Eric Blake Message-ID: <3374bbeb-cc15-acbb-88d8-a057bbfe5482@redhat.com> Date: Tue, 19 Feb 2019 08:59:47 -0600 MIME-Version: 1.0 In-Reply-To: <20190218233154.19303-1-jsnow@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v5] blockdev: acquire aio_context for bitmap add/remove List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: John Snow , qemu-devel@nongnu.org, qemu-block@nongnu.org Cc: Max Reitz , Kevin Wolf , Markus Armbruster , pbonzini@redhat.com, vsementsov@virtuozzo.com On 2/18/19 5:31 PM, John Snow wrote: > When bitmaps are persistent, they may incur a disk read or write when bitmaps > are added or removed. For configurations like virtio-dataplane, failing to > acquire this lock will abort QEMU when disk IO occurs. > > We used to acquire aio_context as part of the bitmap lookup, so re-introduce > the lock for just the cases that have an IO penalty. Commit 2119882c removed > these locks, and I failed to notice this when we committed fd5ae4cc, so this > has been broken since persistent bitmaps were introduced. > > Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1672010 > Reported-By: Aihua Liang > Signed-off-by: John Snow > --- > v5: I'm having a really bad day. This version actually has the semicolon. > --- > blockdev.c | 26 ++++++++++++++++++++------ > 1 file changed, 20 insertions(+), 6 deletions(-) Reviewed-by: Eric Blake and yes, this time it builds. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3226 Virtualization: qemu.org | libvirt.org