From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153285423679.5133683744447; Wed, 15 Feb 2017 02:08:05 -0800 (PST) Received: from localhost ([::1]:39346 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwVI-0000Lc-1n for importer@patchew.org; Wed, 15 Feb 2017 05:08:04 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54362) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTI-0006dC-Q0 for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTG-0001ku-SV for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:00 -0500 Received: from mx1.redhat.com ([209.132.183.28]:60834) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwT9-0001d3-9o; Wed, 15 Feb 2017 05:05:51 -0500 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 00EC8C04B317; Wed, 15 Feb 2017 10:05:51 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5nOq005990 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:50 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id D5B5911384AC; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:40 +0100 Message-Id: <1487153147-11530-2-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Wed, 15 Feb 2017 10:05:51 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 1/8] hw: Default -drive to if=ide explicitly where it works X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, qemu-block@nongnu.org, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Block backends defined with -drive if=3Dide are meant to be picked up by machine initialization code: a suitable frontend gets created and wired up automatically. if=3Dide drives not picked up that way can still be used with -device as if they had if=3Dnone, but that's unclean and best avoided. Unused ones produce an "Orphaned drive without device" warning. -drive parameter "if" is optional, and the default depends on the machine type. If a machine type doesn't specify a default, the default is "ide". Many machine types default to if=3Dide, even though they don't actually have an IDE controller. A future patch will change these defaults to something more sensible. To prepare for it, this patch makes default "ide" explicit for the machines that actually pick up if=3Dide drives: * alpha: clipper * arm/aarch64: spitz borzoi terrier tosa * i386/x86_64: generic-pc-machine (with concrete subtypes pc-q35-* pc-i440fx-* pc-* isapc xenfv) * mips64el: fulong2e * mips/mipsel/mips64el: malta mips * ppc/ppc64: mac99 g3beige prep * sh4/sh4eb: r2d * sparc64: sun4u sun4v Note that ppc64 machine powernv already sets an "ide" default explicitly. Its IDE controller isn't implemented, yet. Signed-off-by: Markus Armbruster Reviewed-by: Thomas Huth --- hw/alpha/dp264.c | 1 + hw/arm/spitz.c | 3 +++ hw/arm/tosa.c | 1 + hw/i386/pc.c | 1 + hw/mips/mips_fulong2e.c | 1 + hw/mips/mips_malta.c | 1 + hw/mips/mips_r4k.c | 1 + hw/ppc/mac_newworld.c | 1 + hw/ppc/mac_oldworld.c | 1 + hw/ppc/prep.c | 1 + hw/sh4/r2d.c | 1 + hw/sparc64/sun4u.c | 2 ++ 12 files changed, 15 insertions(+) diff --git a/hw/alpha/dp264.c b/hw/alpha/dp264.c index d6431fd..85405da 100644 --- a/hw/alpha/dp264.c +++ b/hw/alpha/dp264.c @@ -177,6 +177,7 @@ static void clipper_machine_init(MachineClass *mc) { mc->desc =3D "Alpha DP264/CLIPPER"; mc->init =3D clipper_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D 4; mc->is_default =3D 1; } diff --git a/hw/arm/spitz.c b/hw/arm/spitz.c index 949a15a..fe2d5a7 100644 --- a/hw/arm/spitz.c +++ b/hw/arm/spitz.c @@ -998,6 +998,7 @@ static void spitzpda_class_init(ObjectClass *oc, void *= data) =20 mc->desc =3D "Sharp SL-C3000 (Spitz) PDA (PXA270)"; mc->init =3D spitz_init; + mc->block_default_type =3D IF_IDE; } =20 static const TypeInfo spitzpda_type =3D { @@ -1012,6 +1013,7 @@ static void borzoipda_class_init(ObjectClass *oc, voi= d *data) =20 mc->desc =3D "Sharp SL-C3100 (Borzoi) PDA (PXA270)"; mc->init =3D borzoi_init; + mc->block_default_type =3D IF_IDE; } =20 static const TypeInfo borzoipda_type =3D { @@ -1026,6 +1028,7 @@ static void terrierpda_class_init(ObjectClass *oc, vo= id *data) =20 mc->desc =3D "Sharp SL-C3200 (Terrier) PDA (PXA270)"; mc->init =3D terrier_init; + mc->block_default_type =3D IF_IDE; } =20 static const TypeInfo terrierpda_type =3D { diff --git a/hw/arm/tosa.c b/hw/arm/tosa.c index c3db996..9f58a23 100644 --- a/hw/arm/tosa.c +++ b/hw/arm/tosa.c @@ -263,6 +263,7 @@ static void tosapda_machine_init(MachineClass *mc) { mc->desc =3D "Sharp SL-6000 (Tosa) PDA (PXA255)"; mc->init =3D tosa_init; + mc->block_default_type =3D IF_IDE; } =20 DEFINE_MACHINE("tosa", tosapda_machine_init) diff --git a/hw/i386/pc.c b/hw/i386/pc.c index e3fcd51..a555c35 100644 --- a/hw/i386/pc.c +++ b/hw/i386/pc.c @@ -2339,6 +2339,7 @@ static void pc_machine_class_init(ObjectClass *oc, vo= id *data) mc->query_hotpluggable_cpus =3D pc_query_hotpluggable_cpus; mc->default_boot_order =3D "cad"; mc->hot_add_cpu =3D pc_hot_add_cpu; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D 255; mc->reset =3D pc_machine_reset; hc->pre_plug =3D pc_machine_device_pre_plug_cb; diff --git a/hw/mips/mips_fulong2e.c b/hw/mips/mips_fulong2e.c index 9a4dae4..e636c3a 100644 --- a/hw/mips/mips_fulong2e.c +++ b/hw/mips/mips_fulong2e.c @@ -387,6 +387,7 @@ static void mips_fulong2e_machine_init(MachineClass *mc) { mc->desc =3D "Fulong 2e mini pc"; mc->init =3D mips_fulong2e_init; + mc->block_default_type =3D IF_IDE; } =20 DEFINE_MACHINE("fulong2e", mips_fulong2e_machine_init) diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c index 75877de..5dd177e 100644 --- a/hw/mips/mips_malta.c +++ b/hw/mips/mips_malta.c @@ -1264,6 +1264,7 @@ static void mips_malta_machine_init(MachineClass *mc) { mc->desc =3D "MIPS Malta Core LV"; mc->init =3D mips_malta_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D 16; mc->is_default =3D 1; } diff --git a/hw/mips/mips_r4k.c b/hw/mips/mips_r4k.c index 27548c4..748586e 100644 --- a/hw/mips/mips_r4k.c +++ b/hw/mips/mips_r4k.c @@ -306,6 +306,7 @@ static void mips_machine_init(MachineClass *mc) { mc->desc =3D "mips r4k platform"; mc->init =3D mips_r4k_init; + mc->block_default_type =3D IF_IDE; } =20 DEFINE_MACHINE("mips", mips_machine_init) diff --git a/hw/ppc/mac_newworld.c b/hw/ppc/mac_newworld.c index 2bfdb64..716aea6 100644 --- a/hw/ppc/mac_newworld.c +++ b/hw/ppc/mac_newworld.c @@ -518,6 +518,7 @@ static void core99_machine_class_init(ObjectClass *oc, = void *data) =20 mc->desc =3D "Mac99 based PowerMAC"; mc->init =3D ppc_core99_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D MAX_CPUS; mc->default_boot_order =3D "cd"; mc->kvm_type =3D core99_kvm_type; diff --git a/hw/ppc/mac_oldworld.c b/hw/ppc/mac_oldworld.c index 56282c5..5df94e2 100644 --- a/hw/ppc/mac_oldworld.c +++ b/hw/ppc/mac_oldworld.c @@ -368,6 +368,7 @@ static void heathrow_machine_init(MachineClass *mc) { mc->desc =3D "Heathrow based PowerMAC"; mc->init =3D ppc_heathrow_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D MAX_CPUS; #ifndef TARGET_PPC64 mc->is_default =3D 1; diff --git a/hw/ppc/prep.c b/hw/ppc/prep.c index ca7959c..961230c 100644 --- a/hw/ppc/prep.c +++ b/hw/ppc/prep.c @@ -684,6 +684,7 @@ static void prep_machine_init(MachineClass *mc) { mc->desc =3D "PowerPC PREP platform"; mc->init =3D ppc_prep_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D MAX_CPUS; mc->default_boot_order =3D "cad"; } diff --git a/hw/sh4/r2d.c b/hw/sh4/r2d.c index db373c7..6d06968 100644 --- a/hw/sh4/r2d.c +++ b/hw/sh4/r2d.c @@ -362,6 +362,7 @@ static void r2d_machine_init(MachineClass *mc) { mc->desc =3D "r2d-plus board"; mc->init =3D r2d_init; + mc->block_default_type =3D IF_IDE; } =20 DEFINE_MACHINE("r2d", r2d_machine_init) diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c index d1a6bca..d347b66 100644 --- a/hw/sparc64/sun4u.c +++ b/hw/sparc64/sun4u.c @@ -579,6 +579,7 @@ static void sun4u_class_init(ObjectClass *oc, void *dat= a) =20 mc->desc =3D "Sun4u platform"; mc->init =3D sun4u_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D 1; /* XXX for now */ mc->is_default =3D 1; mc->default_boot_order =3D "c"; @@ -596,6 +597,7 @@ static void sun4v_class_init(ObjectClass *oc, void *dat= a) =20 mc->desc =3D "Sun4v platform"; mc->init =3D sun4v_init; + mc->block_default_type =3D IF_IDE; mc->max_cpus =3D 1; /* XXX for now */ mc->default_boot_order =3D "c"; } --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153818962890.2446356923457; Wed, 15 Feb 2017 02:16:58 -0800 (PST) Received: from localhost ([::1]:39409 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwds-00008L-5N for importer@patchew.org; Wed, 15 Feb 2017 05:16:56 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54375) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTJ-0006ed-GW for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTI-0001mJ-67 for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:01 -0500 Received: from mx1.redhat.com ([209.132.183.28]:60870) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwT9-0001cy-4u; Wed, 15 Feb 2017 05:05:51 -0500 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C01637E9D1; Wed, 15 Feb 2017 10:05:50 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5nFo024795 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:50 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id D83C811384AE; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:41 +0100 Message-Id: <1487153147-11530-3-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.27 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Wed, 15 Feb 2017 10:05:50 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 2/8] hw/arm/cubieboard hw/arm/xlnx-ep108: Fix units_per_default_bus X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, Peter Maydell , qemu-block@nongnu.org, Alistair Francis , Beniamino Galvani , qemu-arm@nongnu.org, "Edgar E. Iglesias" , mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Machine types cubieboard, xlnx-ep108, xlnx-zcu102 have an onboard AHCI controller, but neglect to set their MachineClass member units_per_default_bus =3D 1. This permits -drive if=3Dide,unit=3D1, which makes no sense for AHCI. It also screws up index=3DN for odd N, because it gets desugared to unit=3D1,bus=3DN/2 Doesn't really matter, because these machine types fail to honor -drive if=3Dide. Add the missing units_per_default_bus =3D 1 anyway, along with a TODO comment on what needs to be done for -drive if=3Dide. Also set block_default_type =3D IF_IDE explicitly. It's currently the default, but the next commit will change it to something more sensible, and we want to keep the IF_IDE default for these three machines. See also the previous commit. Cc: Beniamino Galvani Cc: Alistair Francis Cc: "Edgar E. Iglesias" Cc: Peter Maydell Cc: qemu-arm@nongnu.org Signed-off-by: Markus Armbruster Acked-by: Alistair Francis --- hw/arm/cubieboard.c | 4 ++++ hw/arm/xlnx-ep108.c | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/hw/arm/cubieboard.c b/hw/arm/cubieboard.c index dd19ba3..b98e1c4 100644 --- a/hw/arm/cubieboard.c +++ b/hw/arm/cubieboard.c @@ -71,6 +71,8 @@ static void cubieboard_init(MachineState *machine) memory_region_add_subregion(get_system_memory(), AW_A10_SDRAM_BASE, &s->sdram); =20 + /* TODO create and connect IDE devices for ide_drive_get() */ + cubieboard_binfo.ram_size =3D machine->ram_size; cubieboard_binfo.kernel_filename =3D machine->kernel_filename; cubieboard_binfo.kernel_cmdline =3D machine->kernel_cmdline; @@ -82,6 +84,8 @@ static void cubieboard_machine_init(MachineClass *mc) { mc->desc =3D "cubietech cubieboard"; mc->init =3D cubieboard_init; + mc->block_default_type =3D IF_IDE; + mc->units_per_default_bus =3D 1; } =20 DEFINE_MACHINE("cubieboard", cubieboard_machine_init) diff --git a/hw/arm/xlnx-ep108.c b/hw/arm/xlnx-ep108.c index 4ec590a..860780a 100644 --- a/hw/arm/xlnx-ep108.c +++ b/hw/arm/xlnx-ep108.c @@ -106,6 +106,8 @@ static void xlnx_ep108_init(MachineState *machine) sysbus_connect_irq(SYS_BUS_DEVICE(&s->soc.spi[i]), 1, cs_line); } =20 + /* TODO create and connect IDE devices for ide_drive_get() */ + xlnx_ep108_binfo.ram_size =3D ram_size; xlnx_ep108_binfo.kernel_filename =3D machine->kernel_filename; xlnx_ep108_binfo.kernel_cmdline =3D machine->kernel_cmdline; @@ -118,6 +120,8 @@ static void xlnx_ep108_machine_init(MachineClass *mc) { mc->desc =3D "Xilinx ZynqMP EP108 board"; mc->init =3D xlnx_ep108_init; + mc->block_default_type =3D IF_IDE; + mc->units_per_default_bus =3D 1; } =20 DEFINE_MACHINE("xlnx-ep108", xlnx_ep108_machine_init) @@ -126,6 +130,8 @@ static void xlnx_zcu102_machine_init(MachineClass *mc) { mc->desc =3D "Xilinx ZynqMP ZCU102 board"; mc->init =3D xlnx_ep108_init; + mc->block_default_type =3D IF_IDE; + mc->units_per_default_bus =3D 1; } =20 DEFINE_MACHINE("xlnx-zcu102", xlnx_zcu102_machine_init) --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 148715421834756.056258307106305; Wed, 15 Feb 2017 02:23:38 -0800 (PST) Received: from localhost ([::1]:39441 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwkK-0006iY-P3 for importer@patchew.org; Wed, 15 Feb 2017 05:23:36 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54408) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTL-0006ge-3E for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTJ-0001nl-No for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:03 -0500 Received: from mx1.redhat.com ([209.132.183.28]:37372) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwTA-0001eM-Np; Wed, 15 Feb 2017 05:05:53 -0500 Received: from smtp.corp.redhat.com (int-mx16.intmail.prod.int.phx2.redhat.com [10.5.11.28]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 17FE280481; Wed, 15 Feb 2017 10:05:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9E6F17FE4F; Wed, 15 Feb 2017 10:05:50 +0000 (UTC) Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id DB5ED11384AF; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:42 +0100 Message-Id: <1487153147-11530-4-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.74 on 10.5.11.28 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Wed, 15 Feb 2017 10:05:52 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 3/8] hw: Default -drive to if=none instead of ide when ide cannot work X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Peter Maydell , Anthony Green , Mark Cave-Ayland , Max Filippov , "Edgar E . Iglesias" , Guan Xuetao , Stefano Stabellini , Jia Liu , qemu-block@nongnu.org, Alexander Graf , Anthony Perard , Artyom Tarasenko , Fabien Chouteau , qemu-arm@nongnu.org, kwolf@redhat.com, Bastian Koppelmann , Laurent Vivier , mreitz@redhat.com, Michael Walle , qemu-ppc@nongnu.org, xen-devel@lists.xensource.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Block backends defined with -drive if=3Dide are meant to be picked up by machine initialization code: a suitable frontend gets created and wired up automatically. if=3Dide drives not picked up that way can still be used with -device as if they had if=3Dnone, but that's unclean and best avoided. Unused ones produce an "Orphaned drive without device" warning. -drive parameter "if" is optional, and the default depends on the machine type. If a machine type doesn't specify a default, the default is "ide". Many machine types implicitly default to if=3Dide that way, even though they don't actually have an IDE controller. This makes no sense. Change the implicit default to if=3Dnone. Affected machines: * all targets: none * aarch64/arm: akita ast2500 canon cheetah collie connex imx25 integratorcp kzm lm3s6965evb lm3s811evb mainstone musicpal n800 n810 netduino2 nuri palmetto realview romulus sabrelite smdkc210 sx1 sx1 verdex z2 * cris: axis-dev88 * i386/x86_64: xenpv * lm32: lm32-evr lm32-uclinux milkymist * m68k: an5206 dummy mcf5208evb * microblaze/microblazeel: petalogix-ml605 petalogix-s3adsp1800 * mips/mips64/mips64el/mipsel: mipssim * moxie: moxiesim * or32: or32-sim * ppc/ppc64/ppcemb: bamboo ref405ep taihu virtex-ml507 * ppc/ppc64: mpc8544ds ppce500 * sh4/sh4eb: shix * sparc: leon3_generic * sparc64: niagara * tricore: tricore_testboard * unicore32: puv3 * xtensa/xtensaeb: kc705 lx200 lx60 ml605 sim None of these machines have an IDE controller, let alone code to honor if=3Dide. Cc: Peter Maydell Cc: qemu-arm@nongnu.org Cc: Edgar E. Iglesias Cc: Stefano Stabellini Cc: Anthony Perard Cc: xen-devel@lists.xensource.com Cc: Michael Walle Cc: Laurent Vivier Cc: Anthony Green Cc: Jia Liu Cc: Alexander Graf Cc: qemu-ppc@nongnu.org Cc: Magnus Damm Cc: Fabien Chouteau Cc: Mark Cave-Ayland Cc: Artyom Tarasenko Cc: Bastian Koppelmann Cc: Guan Xuetao Cc: Max Filippov Signed-off-by: Markus Armbruster Acked-By: Artyom Tarasenko Reviewed-by: Laurent Vivier Reviewed-by: Thomas Huth --- include/sysemu/blockdev.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/include/sysemu/blockdev.h b/include/sysemu/blockdev.h index 16432f3..351a039 100644 --- a/include/sysemu/blockdev.h +++ b/include/sysemu/blockdev.h @@ -19,12 +19,11 @@ void blockdev_auto_del(BlockBackend *blk); typedef enum { IF_DEFAULT =3D -1, /* for use with drive_add() only */ /* - * IF_IDE must be zero, because we want MachineClass member - * block_default_type to default-initialize to IF_IDE + * IF_NONE must be zero, because we want MachineClass member + * block_default_type to default-initialize to IF_NONE */ - IF_IDE =3D 0, - IF_NONE, - IF_SCSI, IF_FLOPPY, IF_PFLASH, IF_MTD, IF_SD, IF_VIRTIO, IF_XEN, + IF_NONE =3D 0, + IF_IDE, IF_SCSI, IF_FLOPPY, IF_PFLASH, IF_MTD, IF_SD, IF_VIRTIO, IF_XE= N, IF_COUNT } BlockInterfaceType; =20 --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153944208171.29359918533396; Wed, 15 Feb 2017 02:19:04 -0800 (PST) Received: from localhost ([::1]:39417 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwfu-0002dU-Uh for importer@patchew.org; Wed, 15 Feb 2017 05:19:02 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54396) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTK-0006fm-DB for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTJ-0001n6-6G for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:02 -0500 Received: from mx1.redhat.com ([209.132.183.28]:37346) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwT9-0001cz-5X; Wed, 15 Feb 2017 05:05:51 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id C57738047D; Wed, 15 Feb 2017 10:05:50 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5nFH023545 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:50 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id DF1C311384B0; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:43 +0100 Message-Id: <1487153147-11530-5-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Wed, 15 Feb 2017 10:05:50 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 4/8] hw: Default -drive to if=none instead of scsi when scsi cannot work X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, Peter Maydell , qemu-block@nongnu.org, Alistair Francis , qemu-arm@nongnu.org, "Edgar E. Iglesias" , mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Block backends defined with -drive if=3Dscsi are meant to be picked up by machine initialization code: a suitable frontend gets created and wired up automatically. if=3Dscsi drives not picked up that way can still be used with -device as if they had if=3Dnone, but that's unclean and best avoided. Unused ones produce an "Orphaned drive without device" warning. A few machine types default to if=3Dscsi, even though they don't actually have a SCSI HBA. This makes no sense. Change their default to if=3Dnone. Affected machines: * aarch64/arm: realview-pbx-a9 vexpress-a9 vexpress-a15 xilinx-zynq-a9 Cc: Peter Maydell Cc: "Edgar E. Iglesias" Cc: Alistair Francis Cc: qemu-arm@nongnu.org Signed-off-by: Markus Armbruster Reviewed-by: Thomas Huth Reviewed-by: Alistair Francis --- hw/arm/realview.c | 1 - hw/arm/vexpress.c | 1 - hw/arm/xilinx_zynq.c | 1 - 3 files changed, 3 deletions(-) diff --git a/hw/arm/realview.c b/hw/arm/realview.c index 8eafcca..8c11c7a 100644 --- a/hw/arm/realview.c +++ b/hw/arm/realview.c @@ -443,7 +443,6 @@ static void realview_pbx_a9_class_init(ObjectClass *oc,= void *data) =20 mc->desc =3D "ARM RealView Platform Baseboard Explore for Cortex-A9"; mc->init =3D realview_pbx_a9_init; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D 4; } =20 diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c index e057568..c6b1e67 100644 --- a/hw/arm/vexpress.c +++ b/hw/arm/vexpress.c @@ -752,7 +752,6 @@ static void vexpress_class_init(ObjectClass *oc, void *= data) =20 mc->desc =3D "ARM Versatile Express"; mc->init =3D vexpress_common_init; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D 4; } =20 diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index 7dac20d..3985356 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -323,7 +323,6 @@ static void zynq_machine_init(MachineClass *mc) { mc->desc =3D "Xilinx Zynq Platform Baseboard for Cortex-A9"; mc->init =3D zynq_init; - mc->block_default_type =3D IF_SCSI; mc->max_cpus =3D 1; mc->no_sdcard =3D 1; } --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153674835797.6119890554245; Wed, 15 Feb 2017 02:14:34 -0800 (PST) Received: from localhost ([::1]:39392 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwbY-0006Xh-4x for importer@patchew.org; Wed, 15 Feb 2017 05:14:32 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54377) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTJ-0006eg-In for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTI-0001mZ-HL for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:01 -0500 Received: from mx1.redhat.com ([209.132.183.28]:40496) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwTA-0001eT-Nv; Wed, 15 Feb 2017 05:05:52 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5FD98C00A16A; Wed, 15 Feb 2017 10:05:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5oZl023548 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:52 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id E289211384B1; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:44 +0100 Message-Id: <1487153147-11530-6-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Wed, 15 Feb 2017 10:05:52 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 5/8] hw/arm/highbank: Default -drive to if=ide instead of if=scsi X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, Rob Herring , qemu-block@nongnu.org, Peter Maydell , mreitz@redhat.com, qemu-arm@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" These machines have no onboard SCSI HBA, and no way to plug one. -drive if=3Dscsi therefore cannot work. They do have an onboard IDE controller (sysbus-ahci), but fail to honor if=3Dide. Change their default to if=3Dide, and add a TODO comment on what needs to be done to actually honor -drive if=3Dide. Cc: Rob Herring Cc: Peter Maydell Cc: qemu-arm@nongnu.org Signed-off-by: Markus Armbruster Reviewed-by: Thomas Huth --- hw/arm/highbank.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/hw/arm/highbank.c b/hw/arm/highbank.c index 80e5fd4..0a4508c 100644 --- a/hw/arm/highbank.c +++ b/hw/arm/highbank.c @@ -363,6 +363,8 @@ static void calxeda_init(MachineState *machine, enum cx= machines machine_id) sysbus_connect_irq(SYS_BUS_DEVICE(dev), 2, pic[82]); } =20 + /* TODO create and connect IDE devices for ide_drive_get() */ + highbank_binfo.ram_size =3D ram_size; highbank_binfo.kernel_filename =3D kernel_filename; highbank_binfo.kernel_cmdline =3D kernel_cmdline; @@ -405,7 +407,8 @@ static void highbank_class_init(ObjectClass *oc, void *= data) =20 mc->desc =3D "Calxeda Highbank (ECX-1000)"; mc->init =3D highbank_init; - mc->block_default_type =3D IF_SCSI; + mc->block_default_type =3D IF_IDE; + mc->units_per_default_bus =3D 1; mc->max_cpus =3D 4; } =20 @@ -421,7 +424,8 @@ static void midway_class_init(ObjectClass *oc, void *da= ta) =20 mc->desc =3D "Calxeda Midway (ECX-2000)"; mc->init =3D midway_init; - mc->block_default_type =3D IF_SCSI; + mc->block_default_type =3D IF_IDE; + mc->units_per_default_bus =3D 1; mc->max_cpus =3D 4; } =20 --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153283702144.3607425365185; Wed, 15 Feb 2017 02:08:03 -0800 (PST) Received: from localhost ([::1]:39345 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwVE-0000JJ-TZ for importer@patchew.org; Wed, 15 Feb 2017 05:08:00 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54308) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTH-0006bs-9c for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTG-0001jl-1A for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:05:59 -0500 Received: from mx1.redhat.com ([209.132.183.28]:48182) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwTA-0001dm-Ih; Wed, 15 Feb 2017 05:05:52 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 4C4E64E339; Wed, 15 Feb 2017 10:05:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5ohE023549 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:52 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id EB6E511384B2; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:45 +0100 Message-Id: <1487153147-11530-7-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Wed, 15 Feb 2017 10:05:52 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 6/8] blockdev: Improve message for orphaned -drive X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, qemu-block@nongnu.org, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" We warn when a -drive isn't supported by the machine type (commit a66c9dc): $ qemu-system-x86_64 -S -display none -drive if=3Dmtd Warning: Orphaned drive without device: id=3Dmtd0,file=3D,if=3Dmtd,bus= =3D0,unit=3D0 Improve this to point to the offending bit of configuration: qemu-system-x86_64: -drive if=3Dmtd: warning: machine type does not sup= port if=3Dmtd,bus=3D0,unit=3D0 Especially nice when it's hidden behind -readconfig foo.cfg: qemu-system-x86_64:foo.cfg:140: warning: machine type does not support = if=3Dmtd,bus=3D0,unit=3D0 Signed-off-by: Markus Armbruster --- blockdev.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/blockdev.c b/blockdev.c index db82ac9..eb75f35 100644 --- a/blockdev.c +++ b/blockdev.c @@ -231,6 +231,7 @@ bool drive_check_orphaned(void) { BlockBackend *blk; DriveInfo *dinfo; + Location loc; bool rs =3D false; =20 for (blk =3D blk_next(NULL); blk; blk =3D blk_next(blk)) { @@ -239,10 +240,12 @@ bool drive_check_orphaned(void) /* Unless this is a default drive, this may be an oversight. */ if (!blk_get_attached_dev(blk) && !dinfo->is_default && dinfo->type !=3D IF_NONE) { - fprintf(stderr, "Warning: Orphaned drive without device: " - "id=3D%s,file=3D%s,if=3D%s,bus=3D%d,unit=3D%d\n", - blk_name(blk), blk_bs(blk) ? blk_bs(blk)->filename : "= ", - if_name[dinfo->type], dinfo->bus, dinfo->unit); + loc_push_none(&loc); + qemu_opts_loc_restore(dinfo->opts); + error_report("warning: machine type does not support" + " if=3D%s,bus=3D%d,unit=3D%d", + if_name[dinfo->type], dinfo->bus, dinfo->unit); + loc_pop(&loc); rs =3D true; } } --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153494395763.995426466169; Wed, 15 Feb 2017 02:11:34 -0800 (PST) Received: from localhost ([::1]:39380 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwYe-00031V-26 for importer@patchew.org; Wed, 15 Feb 2017 05:11:32 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54332) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTH-0006by-Ro for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTG-0001kV-Im for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:05:59 -0500 Received: from mx1.redhat.com ([209.132.183.28]:40494) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwTA-0001eA-Lx; Wed, 15 Feb 2017 05:05:52 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 5AB1AC062C8B; Wed, 15 Feb 2017 10:05:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx13.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5pC2023552 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:52 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id F283911384B3; Wed, 15 Feb 2017 11:05:47 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:46 +0100 Message-Id: <1487153147-11530-8-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.26 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Wed, 15 Feb 2017 10:05:52 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 7/8] blockdev: Make orphaned -drive fatal X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, qemu-block@nongnu.org, mreitz@redhat.com Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Block backends defined with "-drive if=3DT" with T other than "none" are meant to be picked up by machine initialization code: a suitable frontend gets created and wired up automatically. If machine initialization code doesn't comply, the block backend remains unused. This triggers a warning since commit a66c9dc, v2.2.0. Drives created by default are exempted; use -nodefaults to get rid of them. Turn this warning into an error. Signed-off-by: Markus Armbruster --- blockdev.c | 14 +++++++------- include/sysemu/blockdev.h | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/blockdev.c b/blockdev.c index eb75f35..bbf9d4d 100644 --- a/blockdev.c +++ b/blockdev.c @@ -227,30 +227,30 @@ DriveInfo *drive_get(BlockInterfaceType type, int bus= , int unit) return NULL; } =20 -bool drive_check_orphaned(void) +void drive_check_orphaned(void) { BlockBackend *blk; DriveInfo *dinfo; Location loc; - bool rs =3D false; + bool orphans =3D false; =20 for (blk =3D blk_next(NULL); blk; blk =3D blk_next(blk)) { dinfo =3D blk_legacy_dinfo(blk); - /* If dinfo->bdrv->dev is NULL, it has no device attached. */ - /* Unless this is a default drive, this may be an oversight. */ if (!blk_get_attached_dev(blk) && !dinfo->is_default && dinfo->type !=3D IF_NONE) { loc_push_none(&loc); qemu_opts_loc_restore(dinfo->opts); - error_report("warning: machine type does not support" + error_report("machine type does not support" " if=3D%s,bus=3D%d,unit=3D%d", if_name[dinfo->type], dinfo->bus, dinfo->unit); loc_pop(&loc); - rs =3D true; + orphans =3D true; } } =20 - return rs; + if (orphans) { + exit(1); + } } =20 DriveInfo *drive_get_by_index(BlockInterfaceType type, int index) diff --git a/include/sysemu/blockdev.h b/include/sysemu/blockdev.h index 351a039..ac22f2a 100644 --- a/include/sysemu/blockdev.h +++ b/include/sysemu/blockdev.h @@ -48,7 +48,7 @@ BlockBackend *blk_by_legacy_dinfo(DriveInfo *dinfo); void override_max_devs(BlockInterfaceType type, int max_devs); =20 DriveInfo *drive_get(BlockInterfaceType type, int bus, int unit); -bool drive_check_orphaned(void); +void drive_check_orphaned(void); DriveInfo *drive_get_by_index(BlockInterfaceType type, int index); int drive_get_max_bus(BlockInterfaceType type); int drive_get_max_devs(BlockInterfaceType type); --=20 2.7.4 From nobody Sat Apr 27 14:25:54 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zoho.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1487153422023986.0410583352484; Wed, 15 Feb 2017 02:10:22 -0800 (PST) Received: from localhost ([::1]:39361 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwXU-0002Ag-Pu for importer@patchew.org; Wed, 15 Feb 2017 05:10:20 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54323) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cdwTH-0006bx-Lb for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:06:00 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cdwTG-0001k8-BW for qemu-devel@nongnu.org; Wed, 15 Feb 2017 05:05:59 -0500 Received: from mx1.redhat.com ([209.132.183.28]:56247) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cdwTB-0001ep-0b; Wed, 15 Feb 2017 05:05:53 -0500 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B8E483DD47; Wed, 15 Feb 2017 10:05:52 +0000 (UTC) Received: from blackfin.pond.sub.org (ovpn-116-50.ams2.redhat.com [10.36.116.50]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v1FA5pqV006000 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 15 Feb 2017 05:05:52 -0500 Received: by blackfin.pond.sub.org (Postfix, from userid 1000) id 035D611384B4; Wed, 15 Feb 2017 11:05:48 +0100 (CET) From: Markus Armbruster To: qemu-devel@nongnu.org Date: Wed, 15 Feb 2017 11:05:47 +0100 Message-Id: <1487153147-11530-9-git-send-email-armbru@redhat.com> In-Reply-To: <1487153147-11530-1-git-send-email-armbru@redhat.com> References: <1487153147-11530-1-git-send-email-armbru@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Wed, 15 Feb 2017 10:05:52 +0000 (UTC) Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 8/8] hw: Drop superfluous special checks for orphaned -drive X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, qemu-block@nongnu.org, Mark Cave-Ayland , mreitz@redhat.com, =?UTF-8?q?Herv=C3=A9=20Poussineau?= , John Snow Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" We've traditionally rejected orphans here and there, but not systematically. For instance, the sun4m machines have an onboard SCSI HBA (bus=3D0), and have always rejected bus>0. Other machines with an onboard SCSI HBA don't. Commit a66c9dc made all orphans trigger a warning, and the previous commit turned this into an error. The checks "here and there" are now redundant. Drop them. Note that the one in mips_jazz.c was wrong: it rejected bus > MAX_FD, but MAX_FD is the number of floppy drives per bus. Error messages change from $ qemu-system-x86_64 -drive if=3Dide,bus=3D2 qemu-system-x86_64: Too many IDE buses defined (3 > 2) $ qemu-system-mips64 -M magnum,accel=3Dqtest -drive if=3Dfloppy,bus=3D2= ,id=3Dfd1 qemu: too many floppy drives $ qemu-system-sparc -M LX -drive if=3Dscsi,bus=3D1 qemu: too many SCSI bus to $ qemu-system-x86_64 -drive if=3Dide,bus=3D2 qemu-system-x86_64: -drive if=3Dide,bus=3D2: machine type does not supp= ort if=3Dide,bus=3D2,unit=3D0 $ qemu-system-mips64 -M magnum,accel=3Dqtest -drive if=3Dfloppy,bus=3D2= ,id=3Dfd1 qemu-system-mips64: -drive if=3Dfloppy,bus=3D2,id=3Dfd1: machine type d= oes not support if=3Dfloppy,bus=3D2,unit=3D0 $ qemu-system-sparc -M LX -drive if=3Dscsi,bus=3D1 qemu-system-sparc: -drive if=3Dscsi,bus=3D1: machine type does not supp= ort if=3Dscsi,bus=3D1,unit=3D0 Cc: John Snow Cc: "Herv=C3=A9 Poussineau" Cc: Mark Cave-Ayland Signed-off-by: Markus Armbruster --- hw/ide/core.c | 17 ----------------- hw/mips/mips_jazz.c | 4 ---- hw/sparc/sun4m.c | 5 ----- 3 files changed, 26 deletions(-) diff --git a/hw/ide/core.c b/hw/ide/core.c index 43709e5..cfa5de6 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -2840,23 +2840,6 @@ const VMStateDescription vmstate_ide_bus =3D { void ide_drive_get(DriveInfo **hd, int n) { int i; - int highest_bus =3D drive_get_max_bus(IF_IDE) + 1; - int max_devs =3D drive_get_max_devs(IF_IDE); - int n_buses =3D max_devs ? (n / max_devs) : n; - - /* - * Note: The number of actual buses available is not known. - * We compute this based on the size of the DriveInfo* array, n. - * If it is less than max_devs * , - * We will stop looking for drives prematurely instead of overfilling - * the array. - */ - - if (highest_bus > n_buses) { - error_report("Too many IDE buses defined (%d > %d)", - highest_bus, n_buses); - exit(1); - } =20 for (i =3D 0; i < n; i++) { hd[i] =3D drive_get_by_index(IF_IDE, i); diff --git a/hw/mips/mips_jazz.c b/hw/mips/mips_jazz.c index 73f6c9f..1cef581 100644 --- a/hw/mips/mips_jazz.c +++ b/hw/mips/mips_jazz.c @@ -291,10 +291,6 @@ static void mips_jazz_init(MachineState *machine, qdev_get_gpio_in(rc4030, 5), &esp_reset, &dma_enable); =20 /* Floppy */ - if (drive_get_max_bus(IF_FLOPPY) >=3D MAX_FD) { - fprintf(stderr, "qemu: too many floppy drives\n"); - exit(1); - } for (n =3D 0; n < MAX_FD; n++) { fds[n] =3D drive_get(IF_FLOPPY, 0, n); } diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c index f5b6efd..61416a6 100644 --- a/hw/sparc/sun4m.c +++ b/hw/sparc/sun4m.c @@ -989,11 +989,6 @@ static void sun4m_hw_init(const struct sun4m_hwdef *hw= def, slavio_misc_init(hwdef->slavio_base, hwdef->aux1_base, hwdef->aux2_bas= e, slavio_irq[30], fdc_tc); =20 - if (drive_get_max_bus(IF_SCSI) > 0) { - fprintf(stderr, "qemu: too many SCSI bus\n"); - exit(1); - } - esp_init(hwdef->esp_base, 2, espdma_memory_read, espdma_memory_write, espdma, espdma_irq, &esp_reset, &dma_enable); --=20 2.7.4