From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43395) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VLVmL-00037n-KU for qemu-devel@nongnu.org; Mon, 16 Sep 2013 06:11:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VLVmD-0003EK-1F for qemu-devel@nongnu.org; Mon, 16 Sep 2013 06:11:37 -0400 Received: from mail-qc0-x234.google.com ([2607:f8b0:400d:c01::234]:59221) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VLVmC-0003E4-TA for qemu-devel@nongnu.org; Mon, 16 Sep 2013 06:11:28 -0400 Received: by mail-qc0-f180.google.com with SMTP id p19so2531656qcv.25 for ; Mon, 16 Sep 2013 03:11:28 -0700 (PDT) Sender: Paolo Bonzini Message-ID: <5236D957.80801@redhat.com> Date: Mon, 16 Sep 2013 12:11:35 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1378924006-14057-1-git-send-email-marcel.a@redhat.com> <5231721D.4000109@redhat.com> <87sixagysq.fsf@blackfin.pond.sub.org> <1378982018.2186.23.camel@localhost.localdomain> <874n9qe1xi.fsf@blackfin.pond.sub.org> <1379325279.17705.54.camel@localhost.localdomain> In-Reply-To: <1379325279.17705.54.camel@localhost.localdomain> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] qdev-monitor: Avoid exiting when hot-plugging two devices with the same bootindex value List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Marcel Apfelbaum Cc: aliguori@us.ibm.com, gleb@redhat.com, mst@redhat.com, sw@weilnetz.de, qemu-devel@nongnu.org, Markus Armbruster , afaerber@suse.de Il 16/09/2013 11:54, Marcel Apfelbaum ha scritto: > On Thu, 2013-09-12 at 13:04 +0200, Markus Armbruster wrote: >> Marcel Apfelbaum writes: >> >>> On Thu, 2013-09-12 at 11:43 +0200, Markus Armbruster wrote: >>>> Paolo Bonzini writes: >>>> >>>>> Il 11/09/2013 20:26, Marcel Apfelbaum ha scritto: >>>>>> Qemu is expected to quit if the same boot index value is used by >>>>>> two devices. >>>>>> However, hot-plugging a device with a bootindex value already used should >>>>>> fail with a friendly message rather than quitting a running VM. >>>>> >>>>> I think the problem is right where QEMU exits, i.e. in >>>>> add_boot_device_path. This function should return an error instead, via >>>>> an Error ** argument. >>>> >>>> Agree. > > I understood that the boot order is passed in fw cfg and updated only once at > "machine done". There is no update of this list after this point. > Modifying the boot order from monitor does not work at all. > > So in order to solve this issue we can: > 1. Don't allow use of bootindex at hot-plug > 2. Change the architecture so boot order changing during hot-plug will be possible. This is done relatively easily in add_boot_device_path (check the qdev_hotplug variable and return an error if it is 1). You can do it on top of Markus's patch. Paolo