From mboxrd@z Thu Jan 1 00:00:00 1970 From: pradeep Subject: qemu aborts if i add a already registered device from qemu monitor .. Date: Tue, 19 Oct 2010 15:27:37 +0530 Message-ID: <20101019152737.234e2e51@skywalker> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit To: kvm-devel , qemu-devel@nongnu.org, Avi Kivity Return-path: Received: from e9.ny.us.ibm.com ([32.97.182.139]:53502 "EHLO e9.ny.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758195Ab0JSJ5o (ORCPT ); Tue, 19 Oct 2010 05:57:44 -0400 Received: from d01relay01.pok.ibm.com (d01relay01.pok.ibm.com [9.56.227.233]) by e9.ny.us.ibm.com (8.14.4/8.13.1) with ESMTP id o9J9bKNL019090 for ; Tue, 19 Oct 2010 05:37:20 -0400 Received: from d01av02.pok.ibm.com (d01av02.pok.ibm.com [9.56.224.216]) by d01relay01.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id o9J9vh6T379698 for ; Tue, 19 Oct 2010 05:57:43 -0400 Received: from d01av02.pok.ibm.com (loopback [127.0.0.1]) by d01av02.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id o9J9vgAd025430 for ; Tue, 19 Oct 2010 07:57:43 -0200 Sender: kvm-owner@vger.kernel.org List-ID: Hi I tried to add a device to guest from upstream qemu monitor using "device_add". Unknowingly i try to add already registered devices from qemu monitor, my qemu monitor is aborted. I don't see a reason to kill monitor. I think abort() is a bit rough. we need a better way to handle it. If a user try to add a already registered device, qemu should convey this to user saying that, this device already registered and an error message should be fine than aborting qemu. QLIST_FOREACH(block, &ram_list.blocks, next) { if (!strcmp(block->idstr, new_block->idstr)) { fprintf(stderr, "RAMBlock \"%s\" already registered, abort!\n", new_block->idstr); abort(); } If i return some other value in above code, instead of abort(), I would need change the code for every device, which i dont want to. Is there a way to check, if device is already enrolled or not in the very beginning of "device_add" call. Thanks Pradeep