From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59861) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eZ0DF-0000x4-WD for qemu-devel@nongnu.org; Tue, 09 Jan 2018 15:09:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eZ0DD-0004YQ-7h for qemu-devel@nongnu.org; Tue, 09 Jan 2018 15:09:33 -0500 Received: from mx1.redhat.com ([209.132.183.28]:51696) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1eZ0DD-0004Xi-25 for qemu-devel@nongnu.org; Tue, 09 Jan 2018 15:09:31 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 32D89C049D42 for ; Tue, 9 Jan 2018 20:09:30 +0000 (UTC) Date: Tue, 9 Jan 2018 18:09:26 -0200 From: Eduardo Habkost Message-ID: <20180109200926.GC18022@localhost.localdomain> References: <1509617407-21191-1-git-send-email-thuth@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Subject: Re: [Qemu-devel] [PATCH for-2.11 v3 0/2] Check for the availability of a hotplug controller before adding a device List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Thomas Huth Cc: qemu-devel@nongnu.org, Paolo Bonzini , Igor Mammedov , david@redhat.com, "Dr. David Alan Gilbert" , Markus Armbruster On Mon, Dec 18, 2017 at 12:59:50PM +0100, Thomas Huth wrote: > On 02.11.2017 11:10, Thomas Huth wrote: > > First patch is a small clean up to the error handling code in > > qdev_device_add(), and the second patch adds a proper check for > > the availability of a hotplug controller to prevent the possibility > > of a crash with device_del. > > > > The crash can currently be triggered for example like this: > > > > $ s390x-softmmu/qemu-system-s390x -M none -nographic > > QEMU 2.10.50 monitor - type 'help' for more information > > (qemu) device_add qemu-s390x-cpu,id=x > > (qemu) device_del x > > ** > > ERROR:qemu/qdev-monitor.c:872:qdev_unplug: assertion failed: (hotplug_ctrl) > > Aborted (core dumped) > > > > v3: > > - Invert the logic of the second error check in the first patch > > as suggested by Igor > > - Updated the patch description of the second patch with the current > > way to crash QEMU > > > > v2: > > - Do the check for the availability of the hotplug controller earlier > > in qdev_device_add > > - Use common new err_dev_del handler in case of failure > > > > Thomas Huth (2): > > qdev_monitor: Simplify error handling in qdev_device_add() > > qdev: Check for the availability of a hotplug controller before adding > > a device > > > > hw/core/qdev.c | 28 ++++++++++++++++++++-------- > > include/hw/qdev-core.h | 1 + > > qdev-monitor.c | 21 +++++++++++++-------- > > 3 files changed, 34 insertions(+), 16 deletions(-) > > Ping! > > Paolo or Eduardo, could one of you please pick up the two patches? Very sorry for the long delay. I just queued it on machine-next. Thanks! -- Eduardo