From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [PATCHv6 00/16] boot order specification Date: Tue, 23 Nov 2010 10:12:36 -0600 Message-ID: <4CEBE7F4.9080200@linux.vnet.ibm.com> References: <1290012243-6087-1-git-send-email-gleb@redhat.com> <20101123153141.GD25606@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, blauwirbel@gmail.com, armbru@redhat.com, alex.williamson@redhat.com, mst@redhat.com, kevin@koconnor.net, Anthony Liguori To: Gleb Natapov Return-path: Received: from e35.co.us.ibm.com ([32.97.110.153]:55895 "EHLO e35.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755361Ab0KWQM7 (ORCPT ); Tue, 23 Nov 2010 11:12:59 -0500 Received: from d03relay03.boulder.ibm.com (d03relay03.boulder.ibm.com [9.17.195.228]) by e35.co.us.ibm.com (8.14.4/8.13.1) with ESMTP id oANG14Zm032621 for ; Tue, 23 Nov 2010 09:01:04 -0700 Received: from d03av03.boulder.ibm.com (d03av03.boulder.ibm.com [9.17.195.169]) by d03relay03.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id oANGCuBS105458 for ; Tue, 23 Nov 2010 09:12:56 -0700 Received: from d03av03.boulder.ibm.com (loopback [127.0.0.1]) by d03av03.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id oANGCtgB010911 for ; Tue, 23 Nov 2010 09:12:55 -0700 In-Reply-To: <20101123153141.GD25606@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 11/23/2010 09:31 AM, Gleb Natapov wrote: > Anthony, Blue > > No comments on this patch series for almost a week. Can it be applied? > Does that mean everyone's happy or have folks not gotten around to review it? IOW, last call if you have objections :-) Regards, Anthony Liguori > On Wed, Nov 17, 2010 at 06:43:47PM +0200, Gleb Natapov wrote: > >> I am using open firmware naming scheme to specify device path names. >> In this version: added SCSI bus support. Pass boot order list as file >> to firmware. >> >> Names look like this on pci machine: >> /pci@i0cf8/ide@1,1/drive@1/disk@0 >> /pci@i0cf8/isa@1/fdc@03f1/floppy@1 >> /pci@i0cf8/isa@1/fdc@03f1/floppy@0 >> /pci@i0cf8/ide@1,1/drive@1/disk@1 >> /pci@i0cf8/ide@1,1/drive@0/disk@0 >> /pci@i0cf8/scsi@3/disk@0,0 >> /pci@i0cf8/ethernet@4/ethernet-phy@0 >> /pci@i0cf8/ethernet@5/ethernet-phy@0 >> /pci@i0cf8/ide@1,1/drive@0/disk@1 >> /pci@i0cf8/isa@1/ide@01e8/drive@0/disk@0 >> /pci@i0cf8/usb@1,2/network@0/ethernet@0 >> /pci@i0cf8/usb@1,2/hub@1/network@0/ethernet@0 >> /rom@genroms/linuxboot.bin >> >> and on isa machine: >> /isa/ide@0170/drive@0/disk@0 >> /isa/fdc@03f1/floppy@1 >> /isa/fdc@03f1/floppy@0 >> /isa/ide@0170/drive@0/disk@1 >> >> Instead of using get_dev_path() callback I introduces another one >> get_fw_dev_path. Unfortunately the way get_dev_path() callback is used >> in migration code makes it hard to reuse it for other purposes. First >> of all it is not called recursively so caller expects it to provide >> unique name by itself. Device path though is inherently recursive. Each >> individual element may not be unique, but the whole path will be. On >> the other hand to call get_dev_path() recursively in migration code we >> should implement it for all possible buses first. Other problem is >> compatibility. If we change get_dev_path() output format now we will not >> be able to migrate from old qemu to new one without some additional >> compatibility layer. >> >> Gleb Natapov (16): >> Introduce fw_name field to DeviceInfo structure. >> Introduce new BusInfo callback get_fw_dev_path. >> Keep track of ISA ports ISA device is using in qdev. >> Add get_fw_dev_path callback to ISA bus in qdev. >> Store IDE bus id in IDEBus structure for easy access. >> Add get_fw_dev_path callback to IDE bus. >> Add get_dev_path callback for system bus. >> Add get_fw_dev_path callback for pci bus. >> Record which USBDevice USBPort belongs too. >> Add get_dev_path callback for usb bus. >> Add get_dev_path callback to scsi bus. >> Add bootindex parameter to net/block/fd device >> Change fw_cfg_add_file() to get full file path as a parameter. >> Add bootindex for option roms. >> Add notifier that will be called when machine is fully created. >> Pass boot device list to firmware. >> >> block_int.h | 4 +- >> hw/cs4231a.c | 1 + >> hw/e1000.c | 4 ++ >> hw/eepro100.c | 3 + >> hw/fdc.c | 12 ++++++ >> hw/fw_cfg.c | 30 ++++++++------ >> hw/fw_cfg.h | 4 +- >> hw/gus.c | 4 ++ >> hw/ide/cmd646.c | 4 +- >> hw/ide/internal.h | 3 +- >> hw/ide/isa.c | 5 ++- >> hw/ide/piix.c | 4 +- >> hw/ide/qdev.c | 22 ++++++++++- >> hw/ide/via.c | 4 +- >> hw/isa-bus.c | 42 +++++++++++++++++++ >> hw/isa.h | 4 ++ >> hw/lance.c | 1 + >> hw/loader.c | 32 ++++++++++++--- >> hw/loader.h | 8 ++-- >> hw/m48t59.c | 1 + >> hw/mc146818rtc.c | 1 + >> hw/multiboot.c | 3 +- >> hw/ne2000-isa.c | 3 + >> hw/ne2000.c | 5 ++- >> hw/nseries.c | 4 +- >> hw/palm.c | 6 +- >> hw/parallel.c | 5 ++ >> hw/pc.c | 7 ++- >> hw/pci.c | 110 ++++++++++++++++++++++++++++++++++++++++----------- >> hw/pci_host.c | 2 + >> hw/pckbd.c | 3 + >> hw/pcnet.c | 6 ++- >> hw/piix_pci.c | 1 + >> hw/qdev.c | 32 +++++++++++++++ >> hw/qdev.h | 9 ++++ >> hw/rtl8139.c | 4 ++ >> hw/sb16.c | 4 ++ >> hw/scsi-bus.c | 23 +++++++++++ >> hw/scsi-disk.c | 2 + >> hw/serial.c | 1 + >> hw/sysbus.c | 30 ++++++++++++++ >> hw/sysbus.h | 4 ++ >> hw/usb-bus.c | 45 ++++++++++++++++++++- >> hw/usb-hub.c | 3 +- >> hw/usb-musb.c | 2 +- >> hw/usb-net.c | 3 + >> hw/usb-ohci.c | 2 +- >> hw/usb-uhci.c | 2 +- >> hw/usb.h | 3 +- >> hw/virtio-blk.c | 2 + >> hw/virtio-net.c | 2 + >> hw/virtio-pci.c | 1 + >> net.h | 4 +- >> qemu-config.c | 17 ++++++++ >> sysemu.h | 11 +++++- >> vl.c | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++- >> 56 files changed, 588 insertions(+), 80 deletions(-) >> >> -- >> 1.7.2.3 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe kvm" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> > -- > Gleb. > From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=46511 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PKvUW-0002KO-9z for qemu-devel@nongnu.org; Tue, 23 Nov 2010 11:13:24 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PKvUI-0003pB-Vu for qemu-devel@nongnu.org; Tue, 23 Nov 2010 11:13:12 -0500 Received: from e39.co.us.ibm.com ([32.97.110.160]:45698) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PKvUI-0003od-Qj for qemu-devel@nongnu.org; Tue, 23 Nov 2010 11:12:58 -0500 Received: from d03relay03.boulder.ibm.com (d03relay03.boulder.ibm.com [9.17.195.228]) by e39.co.us.ibm.com (8.14.4/8.13.1) with ESMTP id oANG1ZPi026032 for ; Tue, 23 Nov 2010 09:01:35 -0700 Received: from d03av03.boulder.ibm.com (d03av03.boulder.ibm.com [9.17.195.169]) by d03relay03.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id oANGCtdF090882 for ; Tue, 23 Nov 2010 09:12:56 -0700 Received: from d03av03.boulder.ibm.com (loopback [127.0.0.1]) by d03av03.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id oANGCtg5010911 for ; Tue, 23 Nov 2010 09:12:55 -0700 Message-ID: <4CEBE7F4.9080200@linux.vnet.ibm.com> Date: Tue, 23 Nov 2010 10:12:36 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <1290012243-6087-1-git-send-email-gleb@redhat.com> <20101123153141.GD25606@redhat.com> In-Reply-To: <20101123153141.GD25606@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCHv6 00/16] boot order specification List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: Anthony Liguori , kvm@vger.kernel.org, mst@redhat.com, qemu-devel@nongnu.org, armbru@redhat.com, blauwirbel@gmail.com, alex.williamson@redhat.com, kevin@koconnor.net On 11/23/2010 09:31 AM, Gleb Natapov wrote: > Anthony, Blue > > No comments on this patch series for almost a week. Can it be applied? > Does that mean everyone's happy or have folks not gotten around to review it? IOW, last call if you have objections :-) Regards, Anthony Liguori > On Wed, Nov 17, 2010 at 06:43:47PM +0200, Gleb Natapov wrote: > >> I am using open firmware naming scheme to specify device path names. >> In this version: added SCSI bus support. Pass boot order list as file >> to firmware. >> >> Names look like this on pci machine: >> /pci@i0cf8/ide@1,1/drive@1/disk@0 >> /pci@i0cf8/isa@1/fdc@03f1/floppy@1 >> /pci@i0cf8/isa@1/fdc@03f1/floppy@0 >> /pci@i0cf8/ide@1,1/drive@1/disk@1 >> /pci@i0cf8/ide@1,1/drive@0/disk@0 >> /pci@i0cf8/scsi@3/disk@0,0 >> /pci@i0cf8/ethernet@4/ethernet-phy@0 >> /pci@i0cf8/ethernet@5/ethernet-phy@0 >> /pci@i0cf8/ide@1,1/drive@0/disk@1 >> /pci@i0cf8/isa@1/ide@01e8/drive@0/disk@0 >> /pci@i0cf8/usb@1,2/network@0/ethernet@0 >> /pci@i0cf8/usb@1,2/hub@1/network@0/ethernet@0 >> /rom@genroms/linuxboot.bin >> >> and on isa machine: >> /isa/ide@0170/drive@0/disk@0 >> /isa/fdc@03f1/floppy@1 >> /isa/fdc@03f1/floppy@0 >> /isa/ide@0170/drive@0/disk@1 >> >> Instead of using get_dev_path() callback I introduces another one >> get_fw_dev_path. Unfortunately the way get_dev_path() callback is used >> in migration code makes it hard to reuse it for other purposes. First >> of all it is not called recursively so caller expects it to provide >> unique name by itself. Device path though is inherently recursive. Each >> individual element may not be unique, but the whole path will be. On >> the other hand to call get_dev_path() recursively in migration code we >> should implement it for all possible buses first. Other problem is >> compatibility. If we change get_dev_path() output format now we will not >> be able to migrate from old qemu to new one without some additional >> compatibility layer. >> >> Gleb Natapov (16): >> Introduce fw_name field to DeviceInfo structure. >> Introduce new BusInfo callback get_fw_dev_path. >> Keep track of ISA ports ISA device is using in qdev. >> Add get_fw_dev_path callback to ISA bus in qdev. >> Store IDE bus id in IDEBus structure for easy access. >> Add get_fw_dev_path callback to IDE bus. >> Add get_dev_path callback for system bus. >> Add get_fw_dev_path callback for pci bus. >> Record which USBDevice USBPort belongs too. >> Add get_dev_path callback for usb bus. >> Add get_dev_path callback to scsi bus. >> Add bootindex parameter to net/block/fd device >> Change fw_cfg_add_file() to get full file path as a parameter. >> Add bootindex for option roms. >> Add notifier that will be called when machine is fully created. >> Pass boot device list to firmware. >> >> block_int.h | 4 +- >> hw/cs4231a.c | 1 + >> hw/e1000.c | 4 ++ >> hw/eepro100.c | 3 + >> hw/fdc.c | 12 ++++++ >> hw/fw_cfg.c | 30 ++++++++------ >> hw/fw_cfg.h | 4 +- >> hw/gus.c | 4 ++ >> hw/ide/cmd646.c | 4 +- >> hw/ide/internal.h | 3 +- >> hw/ide/isa.c | 5 ++- >> hw/ide/piix.c | 4 +- >> hw/ide/qdev.c | 22 ++++++++++- >> hw/ide/via.c | 4 +- >> hw/isa-bus.c | 42 +++++++++++++++++++ >> hw/isa.h | 4 ++ >> hw/lance.c | 1 + >> hw/loader.c | 32 ++++++++++++--- >> hw/loader.h | 8 ++-- >> hw/m48t59.c | 1 + >> hw/mc146818rtc.c | 1 + >> hw/multiboot.c | 3 +- >> hw/ne2000-isa.c | 3 + >> hw/ne2000.c | 5 ++- >> hw/nseries.c | 4 +- >> hw/palm.c | 6 +- >> hw/parallel.c | 5 ++ >> hw/pc.c | 7 ++- >> hw/pci.c | 110 ++++++++++++++++++++++++++++++++++++++++----------- >> hw/pci_host.c | 2 + >> hw/pckbd.c | 3 + >> hw/pcnet.c | 6 ++- >> hw/piix_pci.c | 1 + >> hw/qdev.c | 32 +++++++++++++++ >> hw/qdev.h | 9 ++++ >> hw/rtl8139.c | 4 ++ >> hw/sb16.c | 4 ++ >> hw/scsi-bus.c | 23 +++++++++++ >> hw/scsi-disk.c | 2 + >> hw/serial.c | 1 + >> hw/sysbus.c | 30 ++++++++++++++ >> hw/sysbus.h | 4 ++ >> hw/usb-bus.c | 45 ++++++++++++++++++++- >> hw/usb-hub.c | 3 +- >> hw/usb-musb.c | 2 +- >> hw/usb-net.c | 3 + >> hw/usb-ohci.c | 2 +- >> hw/usb-uhci.c | 2 +- >> hw/usb.h | 3 +- >> hw/virtio-blk.c | 2 + >> hw/virtio-net.c | 2 + >> hw/virtio-pci.c | 1 + >> net.h | 4 +- >> qemu-config.c | 17 ++++++++ >> sysemu.h | 11 +++++- >> vl.c | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++- >> 56 files changed, 588 insertions(+), 80 deletions(-) >> >> -- >> 1.7.2.3 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe kvm" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html >> > -- > Gleb. >