From nobody Sun May 19 23:20:53 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1618000157; cv=none; d=zohomail.com; s=zohoarc; b=EDEV/85QHz5E0vtb3i5xj5nYac0OqnPhhl9ANAM/aHq/SOFBks7v0LXaBkTn/sco52fkFFngEl2PPw3kvRB09F+3nk4jgmR0Y+WYmrGKvYgIRYM2U1TebRbZqNN779/ITgbzRmdhzZWE7x+ruH2AS3xZ1cHKG/1P5kV4RnUUdlc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1618000157; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=liB2Vx01UETRmR85jAnvUN5jWJXLjBT8ZS9U0KHp2kw=; b=adFMnr46ooMDyi1Nqbqg+OBooo7PxQ0H9rfkAk5G92Dtq6c+WH4ITn10QTsq10d+ASGxXMPA3TW2JYdHzV22xqTe5Y8IJ5a6nvj56SoYUB2i8Ph8Xb/ZSQd5dV+/3L/6JyfOLsWLr+TBj9PfnpzjaisbgcXB/IgoyuPXND/70IY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1618000157978276.01377679575864; Fri, 9 Apr 2021 13:29:17 -0700 (PDT) Received: from localhost ([::1]:56856 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lUxkh-0005z4-W7 for importer@patchew.org; Fri, 09 Apr 2021 16:29:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52626) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lUxee-00005Z-Ae for qemu-devel@nongnu.org; Fri, 09 Apr 2021 16:23:00 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:25725) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lUxeb-0004BK-B3 for qemu-devel@nongnu.org; Fri, 09 Apr 2021 16:23:00 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-145-CELbe1VpNaaFzGi-ieajaQ-1; Fri, 09 Apr 2021 16:22:53 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 6B8A1107ACCD; Fri, 9 Apr 2021 20:22:52 +0000 (UTC) Received: from localhost (ovpn-118-57.rdu2.redhat.com [10.10.118.57]) by smtp.corp.redhat.com (Postfix) with ESMTP id 32ADC5D6AD; Fri, 9 Apr 2021 20:22:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1617999775; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=liB2Vx01UETRmR85jAnvUN5jWJXLjBT8ZS9U0KHp2kw=; b=UKr9XIueSL6paZF3XE9PngrJJn67QikJQJvNsNpdvUZn+D+FUMutBRBwLx467JOx59WgOJ sFq3zloy+MhAQ9hi+pfRljk5xKt/uPwBPngveT2SH3MUIkgwYENnQtkpoV3ZV1Z36x5+OY H3ldBMbmfTnflraJEKhWCZLS6S+6zgU= X-MC-Unique: CELbe1VpNaaFzGi-ieajaQ-1 From: Eduardo Habkost To: qemu-devel@nongnu.org, Peter Maydell Subject: [PULL 1/2] i386: Add missing cpu feature bits in EPYC-Rome model Date: Fri, 9 Apr 2021 16:22:45 -0400 Message-Id: <20210409202246.1857179-2-ehabkost@redhat.com> In-Reply-To: <20210409202246.1857179-1-ehabkost@redhat.com> References: <20210409202246.1857179-1-ehabkost@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ehabkost@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=216.205.24.124; envelope-from=ehabkost@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Habkost , Richard Henderson , David Edmondson , Babu Moger , Pankaj Gupta , Paolo Bonzini , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" From: Babu Moger Found the following cpu feature bits missing from EPYC-Rome model. ibrs : Indirect Branch Restricted Speculation ssbd : Speculative Store Bypass Disable These new features will be added in EPYC-Rome-v2. The -cpu help output after the change. x86 EPYC-Rome (alias configured by machine type) x86 EPYC-Rome-v1 AMD EPYC-Rome Processor x86 EPYC-Rome-v2 AMD EPYC-Rome Processor Reported-by: Pankaj Gupta Signed-off-by: Babu Moger Signed-off-by: Pankaj Gupta Signed-off-by: Eduardo Habkost Reviewed-by: David Edmondson Message-Id: <161478622280.16275.6399866734509127420.stgit@bmoger-ubuntu> Signed-off-by: Eduardo Habkost --- target/i386/cpu.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 6b3e9467f17..ad99cad0e7c 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -4179,6 +4179,18 @@ static X86CPUDefinition builtin_x86_defs[] =3D { .xlevel =3D 0x8000001E, .model_id =3D "AMD EPYC-Rome Processor", .cache_info =3D &epyc_rome_cache_info, + .versions =3D (X86CPUVersionDefinition[]) { + { .version =3D 1 }, + { + .version =3D 2, + .props =3D (PropValue[]) { + { "ibrs", "on" }, + { "amd-ssbd", "on" }, + { /* end of list */ } + } + }, + { /* end of list */ } + } }, { .name =3D "EPYC-Milan", --=20 2.30.2 From nobody Sun May 19 23:20:53 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1617999992; cv=none; d=zohomail.com; s=zohoarc; b=fsQvforRD6IvyuV8Ni/gs2c4sFW4zReJFPDO57H1KDDhSeKsVcHJJeJ+DrjNEt5lOP/ziTz31QhQJn1Hc/+n1KNS3F706VCSVRSnql+P2jlf1e/exEYkZrnY/45FKoRJU2RqrF1Y6cVZKNRlS2IzXzrOeHd4lKsFCuPJs6zuAAM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1617999992; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=A831zHdvpuQd0VH2Tp3eQkFBYyVatf0BAWnK+8L2BNA=; b=co20k9QoRh6XChU0PpyGmnheZ4WXjJOW2+w+sfdN1u7wu4M9vfSoE4TaRIMhzbNz0toHV6qCmhL4/uUyGp1yfextZylmj2dVPIIuI8WvfBo4IeYcrER4pKq1NN3xmdN+PkwJjNrq9IPA5QzGmpBQH0tDM4OPno7J5O/2A3dwYfo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1617999992652369.63598739272675; Fri, 9 Apr 2021 13:26:32 -0700 (PDT) Received: from localhost ([::1]:50278 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lUxi3-00038Z-HX for importer@patchew.org; Fri, 09 Apr 2021 16:26:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:52604) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lUxec-0008WO-UK for qemu-devel@nongnu.org; Fri, 09 Apr 2021 16:22:59 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:42272) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lUxeb-0004BM-8u for qemu-devel@nongnu.org; Fri, 09 Apr 2021 16:22:58 -0400 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-234-BjolE5WMMvuo7ykW875xQA-1; Fri, 09 Apr 2021 16:22:54 -0400 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5A83018B614E; Fri, 9 Apr 2021 20:22:53 +0000 (UTC) Received: from localhost (ovpn-118-57.rdu2.redhat.com [10.10.118.57]) by smtp.corp.redhat.com (Postfix) with ESMTP id 24C2E60916; Fri, 9 Apr 2021 20:22:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1617999776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=A831zHdvpuQd0VH2Tp3eQkFBYyVatf0BAWnK+8L2BNA=; b=AuTBFNk+/PHhQodcMwrrQ1VlvMv4FQsTwcOYA6wSp7nTBq9KAv1NPuVuLBlG7RojV18L/7 cU+hsrQnpd6OH0kJH4J/VNVDqAejVaEA4W9//iO1j0CABC8x8pbXj/1D53dGcrQpWwgqwe S5T24MCWGo2Wq/7p+YzH/5HYNdv6sXo= X-MC-Unique: BjolE5WMMvuo7ykW875xQA-1 From: Eduardo Habkost To: qemu-devel@nongnu.org, Peter Maydell Subject: [PULL 2/2] cpu/core: Fix "help" of CPU core device types Date: Fri, 9 Apr 2021 16:22:46 -0400 Message-Id: <20210409202246.1857179-3-ehabkost@redhat.com> In-Reply-To: <20210409202246.1857179-1-ehabkost@redhat.com> References: <20210409202246.1857179-1-ehabkost@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ehabkost@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=ehabkost@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Thomas Huth , Eduardo Habkost , Richard Henderson , Greg Kurz , Paolo Bonzini , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" From: Greg Kurz Calling qdev_get_machine() from a QOM instance_init function is fragile because we can't be sure the machine object actually exists. And this happens to break when passing ",help" on the command line to get the list of properties for a CPU core device types : $ ./qemu-system-ppc64 -device power8_v2.0-spapr-cpu-core,help qemu-system-ppc64: ../../hw/core/machine.c:1290: qdev_get_machine: Assertion `machine !=3D NULL' failed. Aborted (core dumped) This used to work before QEMU 5.0, but commit 3df261b6676b unwillingly introduced a subtle regression : the above command line needs to create an instance but the instance_init function of the base class calls qdev_get_machine() before qemu_create_machine() has been called, which is a programming bug. Use current_machine instead. It is okay to skip the setting of nr_thread in this case since only its type is displayed. Fixes: 3df261b6676b ("softmmu/vl.c: Handle '-cpu help' and '-device help' b= efore 'no default machine'") Reported-by: Thomas Huth Signed-off-by: Greg Kurz Cc: peter.maydell@linaro.org Message-Id: <20210409160339.500167-3-groug@kaod.org> Signed-off-by: Eduardo Habkost --- hw/cpu/core.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/hw/cpu/core.c b/hw/cpu/core.c index 92d3b2fbad6..98760751557 100644 --- a/hw/cpu/core.c +++ b/hw/cpu/core.c @@ -66,10 +66,16 @@ static void core_prop_set_nr_threads(Object *obj, Visit= or *v, const char *name, =20 static void cpu_core_instance_init(Object *obj) { - MachineState *ms =3D MACHINE(qdev_get_machine()); CPUCore *core =3D CPU_CORE(obj); =20 - core->nr_threads =3D ms->smp.threads; + /* + * Only '-device something-cpu-core,help' can get us there before + * the machine has been created. We don't care to set nr_threads + * in this case since it isn't used afterwards. + */ + if (current_machine) { + core->nr_threads =3D current_machine->smp.threads; + } } =20 static void cpu_core_class_init(ObjectClass *oc, void *data) --=20 2.30.2