From patchwork Wed Apr 30 14:26:05 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= X-Patchwork-Id: 886043 Delivered-To: patch@linaro.org Received: by 2002:a5d:4884:0:b0:38f:210b:807b with SMTP id g4csp883251wrq; Wed, 30 Apr 2025 07:27:29 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWLUgP8jRnR4YhjwDp81RXprvn4ICSvVwV1Jv4ilOPirK7aJsJISFzPb+tfFkZeVkJpejBq2g==@linaro.org X-Google-Smtp-Source: AGHT+IHnIt0YEtbRtXWMQKKGZoIgWhRqoF9O3KKycAgsiE25UK4mOUTABKdUW72WBN6C3J1XTl0h X-Received: by 2002:a05:622a:5818:b0:477:6eca:b40c with SMTP id d75a77b69052e-489c35bcc6emr59031571cf.1.1746023249612; Wed, 30 Apr 2025 07:27:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1746023249; cv=none; d=google.com; s=arc-20240605; b=K4FGonrJPWfyniAmOEWizoXxz+m9JEu3T7ytzkX2vCyi0DHP0O3PJTMOtFG1PBTcic cZ8T9QbGL3CM7JQRf2G7cGP6ELWk69ce4UfJOa/dCpMYsG2esnYzX8ZyZy+c5K72ziNA S6J+NEgQVmt+uSerQosvbo4pKhgWoUbaJCNhAfncPvd7Qw1cbOIct8YWQl2sOWKYcfi+ dxALqGm1XZKt+iaZtmjblRTuBCKc+m7jUEnCMls3293JxyM8I1dxLQI/AqGiBo8jx64W wEngOhvKgzCER/9Vs7YemxrxjLFz8ll3iEhNWRND7aUt19MqLSZVUKQUx6cVHunLoW7P VlQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=NpvMgcrpSQGafRLyw/ZNHAX6/bjj0J9IvQrfqDaCmhA=; fh=TqYEK5+2juc2mhgfaATFgi48YFwlNKK4yheibt76CUA=; b=RkGdCktsNqeArfsWYoNQOepl9sqjcuIbSwrcR3Wf5j2PYBTxl0t6THuHOnTo8who0+ xuRc4NID6I9+sbhOBLSQ7wig0JQ7CemddEEYk+a5GcaKOWeramQQ1PBaLDQZ81GhuUXe 7jdm6w6+ekqyA3FUaOj6basusKBCj9FH4DIT6hosR7vlhi78q1qvwXk3/EqdNH3QSSOi +iqnQpq3EMUhlkiN0pwxUh5ief6fqMX/pLTyGAaIxpCj/scNHp6ctz+rkSajyqo2ZAOY VRXlhKppYOpMFkrYialaghFVUdq1mkmqPMkyquKTtva1f23FNcDwlJzVPn9mzjkzFh+h NI3Q==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=EorfgvUi; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id d75a77b69052e-47ea24b2804si158932291cf.516.2025.04.30.07.27.29 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Wed, 30 Apr 2025 07:27:29 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=EorfgvUi; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uA8Ox-0001FG-70; Wed, 30 Apr 2025 10:27:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uA8OH-0001Dx-Sd for qemu-devel@nongnu.org; Wed, 30 Apr 2025 10:26:26 -0400 Received: from mail-qk1-x732.google.com ([2607:f8b0:4864:20::732]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uA8OF-00075f-3d for qemu-devel@nongnu.org; Wed, 30 Apr 2025 10:26:25 -0400 Received: by mail-qk1-x732.google.com with SMTP id af79cd13be357-7c597760323so809354685a.3 for ; Wed, 30 Apr 2025 07:26:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1746023181; x=1746627981; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NpvMgcrpSQGafRLyw/ZNHAX6/bjj0J9IvQrfqDaCmhA=; b=EorfgvUiqlOHDcrO4TCvkJrha4KJqb70ushd/NHHSbA6eC3KGB0MoGnWOcwgj53kbH aCL1p9G9B5qGt63PXkzn+5/HrUEEJjzGyFotyAEe3DP7Qp5o40gW4YdbG+7bYzctZJB1 qAz7kOu5TRzO+Y+pH8GVWtqvG02sQAkqq322S2Q2bKVfD/Gzf90hZEUOvPGOahp6TXdB GcNFmvJ80oxJcjfeNISkBfqROBsit+D5E+eR/VGS6FnfwYu5NH5Adclb6V3HN/fm3/LU wLZlei3AQRGuk1kfsN6vokcoiTE22hah5pMyQ5YqAD9UUtL9nNXWRxuqaKrtiZxwU9Dr wUPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746023181; x=1746627981; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NpvMgcrpSQGafRLyw/ZNHAX6/bjj0J9IvQrfqDaCmhA=; b=sYtzstLiqT3DAeDPgTppdbSeuzyVJMS+vGkIo8kQUVLNqndcmNHOMQADqa5x3MVX4d 5YGH8u55AIjP+IxbQ15aEP4soHyXlX80Dga9sBMXAAZG1R59pO8viD/puuFbz0kmEPCu dTGCe6h/oeDSx/kPPyWnsXhtmTGJkavCR8naprQ8OPwChcm84BvefPGWWRSquqkTFPCR DC5ejOIEDJTUoAMbNq4nmLcqdx2kKBkVlWJxnGYpLIUnyVFNa8wL7atdvxiJv9GEsK0s zBb1MLYn6dJoKiMAIbnhwR1YKZD32i4yyRVVYDkuI08miZJVWR3DUXMqzp+BKzfABJjP uSYg== X-Gm-Message-State: AOJu0Ywa4xxbgvT2jjA34uDbJJXIB//VC8K0WILtfUYJowTpqvCnlUGy LUYL4mpaHeQAdmw3z1WUfVisLlxOCUwcIv7Dy8BOLasyrfnXWXh0+cn3MFgfqPrV0dZ8dRPz6KV l X-Gm-Gg: ASbGncsWOdWLP8dPdIHRjMfJse5YxS9OHamcQij0M6LwrUs7YZ6g1W87kymKiT4axcW Y2aFVW9pH/eT2/drozlTjJdDFj/qGD9Kg2joZyVQVQ9x0hPLZ5Epg0hwEWUhbD/3gdYyQJ3OgPS 7FvkGLNm33iaKtlejUa9gjnB7Nwd6reeiOAOUS11zupgbklnADKpos3AHH5Mzj34zvnXNbf0ZqH YH3otif0vjdTBrjCcPfK7u5RDnEVZSlhNN+GDdy8o9WMw5XkbF3MMtgbsnPcxc2XgW9LscHHL5k nJw1Fz8YZsuTlZJJ2yjDCn0EqV62TodUJaaWkVquNkDQuLfs9UU0J3n4D10nNcVCarA/BC4hr2c s/TisaID3aTbwPe8= X-Received: by 2002:a05:620a:1985:b0:7c5:95f0:e776 with SMTP id af79cd13be357-7cac740f35cmr442128685a.1.1746023180741; Wed, 30 Apr 2025 07:26:20 -0700 (PDT) Received: from localhost.localdomain (88-187-86-199.subs.proxad.net. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7c958cac816sm858406185a.31.2025.04.30.07.26.18 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 30 Apr 2025 07:26:20 -0700 (PDT) From: =?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: Paolo Bonzini , =?utf-8?q?Cl=C3=A9ment_Mathieu--Dri?= =?utf-8?q?f?= , Amit Shah , Jason Wang , =?utf-8?q?Da?= =?utf-8?q?niel_P_=2E_Berrang=C3=A9?= , Yi Liu , Thomas Huth , Laurent Vivier , =?utf-8?q?Marc-Andr=C3=A9_Lureau?= , Eduardo Habkost , "Michael S. Tsirkin" , Richard Henderson , Marcel Apfelbaum , =?utf-8?q?Philippe_Mathieu-D?= =?utf-8?q?aud=C3=A9?= Subject: [PATCH 1/5] hw/i386/intel_iommu: Remove IntelIOMMUState::buggy_eim field Date: Wed, 30 Apr 2025 16:26:05 +0200 Message-ID: <20250430142609.84134-2-philmd@linaro.org> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250430142609.84134-1-philmd@linaro.org> References: <20250430142609.84134-1-philmd@linaro.org> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::732; envelope-from=philmd@linaro.org; helo=mail-qk1-x732.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, 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.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org The IntelIOMMUState::buggy_eim boolean was only set in the hw_compat_2_7[] array, via the 'x-buggy-eim=true' property. We removed all machines using that array, lets remove that property, simplifying vtd_decide_config(). Signed-off-by: Philippe Mathieu-Daudé --- include/hw/i386/intel_iommu.h | 1 - hw/i386/intel_iommu.c | 5 ++--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/include/hw/i386/intel_iommu.h b/include/hw/i386/intel_iommu.h index e95477e8554..29304329d05 100644 --- a/include/hw/i386/intel_iommu.h +++ b/include/hw/i386/intel_iommu.h @@ -303,7 +303,6 @@ struct IntelIOMMUState { uint32_t intr_size; /* Number of IR table entries */ bool intr_eime; /* Extended interrupt mode enabled */ OnOffAuto intr_eim; /* Toggle for EIM cabability */ - bool buggy_eim; /* Force buggy EIM unless eim=off */ uint8_t aw_bits; /* Host/IOVA address width (in bits) */ bool dma_drain; /* Whether DMA r/w draining enabled */ bool dma_translation; /* Whether DMA translation supported */ diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index 5f8ed1243d1..c980cecb4ee 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -3823,7 +3823,6 @@ static const Property vtd_properties[] = { DEFINE_PROP_UINT32("version", IntelIOMMUState, version, 0), DEFINE_PROP_ON_OFF_AUTO("eim", IntelIOMMUState, intr_eim, ON_OFF_AUTO_AUTO), - DEFINE_PROP_BOOL("x-buggy-eim", IntelIOMMUState, buggy_eim, false), DEFINE_PROP_UINT8("aw-bits", IntelIOMMUState, aw_bits, VTD_HOST_ADDRESS_WIDTH), DEFINE_PROP_BOOL("caching-mode", IntelIOMMUState, caching_mode, FALSE), @@ -4731,11 +4730,11 @@ static bool vtd_decide_config(IntelIOMMUState *s, Error **errp) } if (s->intr_eim == ON_OFF_AUTO_AUTO) { - s->intr_eim = (kvm_irqchip_in_kernel() || s->buggy_eim) + s->intr_eim = kvm_irqchip_in_kernel() && x86_iommu_ir_supported(x86_iommu) ? ON_OFF_AUTO_ON : ON_OFF_AUTO_OFF; } - if (s->intr_eim == ON_OFF_AUTO_ON && !s->buggy_eim) { + if (s->intr_eim == ON_OFF_AUTO_ON) { if (kvm_irqchip_is_split() && !kvm_enable_x2apic()) { error_setg(errp, "eim=on requires support on the KVM side" "(X2APIC_API, first shipped in v4.7)");