From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57840) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aU7OR-0004jb-As for qemu-devel@nongnu.org; Fri, 12 Feb 2016 01:39:52 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aU7ON-00056E-B2 for qemu-devel@nongnu.org; Fri, 12 Feb 2016 01:39:51 -0500 Received: from mailhub.sw.ru ([195.214.232.25]:43360 helo=relay.sw.ru) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aU7OM-00055V-Uk for qemu-devel@nongnu.org; Fri, 12 Feb 2016 01:39:47 -0500 From: "Denis V. Lunev" Date: Fri, 12 Feb 2016 09:39:32 +0300 Message-Id: <1455259174-3384-1-git-send-email-den@openvz.org> Subject: [Qemu-devel] [PATCH v2 0/2] move qcow2_invalidate_cache() out of coroutine context List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Amit Shah , "Denis V. Lunev" , Juan Quintela , qemu-devel@nongnu.org, Paolo Bonzini There is a possibility to hit an assert in qcow2_get_specific_info that s->qcow_version is undefined. This happens when VM in starting from suspended state, i.e. it processes incoming migration, and in the same time 'info block' is called. The problem is that qcow2_invalidate_cache() closes the image and memset()s BDRVQcowState in the middle. This operation should not be performed in coroutine context. Changes from v1: - fixed spelling. Eric, thank you for spell checking Signed-off-by: Denis V. Lunev CC: Paolo Bonzini CC: Juan Quintela CC: Amit Shah