Received: by 2002:a05:6a10:a852:0:0:0:0 with SMTP id d18csp3889691pxy; Tue, 4 May 2021 12:13:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz+TleH6COHSJu/WVrf1RQq+ygJnu0ZqDvUgfp0VmRaDH5DcHLPbQcBM91xeAnUtOThRC+I X-Received: by 2002:a62:860b:0:b029:28e:d45b:4d2e with SMTP id x11-20020a62860b0000b029028ed45b4d2emr4905503pfd.70.1620155586881; Tue, 04 May 2021 12:13:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620155586; cv=none; d=google.com; s=arc-20160816; b=QeoKMs/Wmbmj2nsIe7AlOraHQGMi4SHLop1SYicAIMJnXbwDwwVFcnZuhu1rEwGs+/ feRkSoch8A65/dImJplcpjYAAAXjqoriFxayUTXCg1r2d7etC2jcqXZPiyr9B6v9rMTY wuM7P08R/m0/sC6tZOG9QPmCL9OMwS1aMOesN2nI0zGeJlXvN9wlbA3AXsxWpmc0N5u6 g1WVJXdRNekLlLQOr+uZ+735t4mt9KoS2YIqkDFo4hPrAYX6P28/serRT8qK/8hEg2YP dNeKnONbXzUbfNYK6CvuiQVFGHPGS6nWM401wVR0ywuzKrUJp/yKGJB7C2MsAdq4BuvT NMDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:ironport-sdr:ironport-sdr; bh=wWkhA9oaXDbpNzsxD/AJIcH8XOrHWuLUM/0R44Kr+cA=; b=vKsMQ+uiKvr9gUrOVoxeBcgL1JFPsNCdSqImJoU3BAT7OOhFOiXAJ3MQ4Qy5h7BlPW AX1R5hh7niROoNh85LQDJLhO9SCWv9/Eq5l6mRVP8OmfOTyodSyc9OJAFtY9N9cwmJ0p k8t+yzQIzsuKH8dZm1I/oOeFNki5yT4zewQkv16vwCWKiVdvPhPkXzYEG5S+cj0dyKBj 3kYdAR9Zwaovor1LDGmQaozU+mSMbqb5cgEnUaZ5cc7pak8O1r7P7H1jthWDFrBEjGqu o2oqS4hdnOyab4GraUr+Yf9JB+mPgRUB8raQ1eZFMPHxkY2zlt4lE1SYf+6rI3K0xp4C JLpQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o4si19002473pjg.78.2021.05.04.12.12.54; Tue, 04 May 2021 12:13:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232373AbhEDTMo (ORCPT + 99 others); Tue, 4 May 2021 15:12:44 -0400 Received: from mga03.intel.com ([134.134.136.65]:9838 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231926AbhEDTMh (ORCPT ); Tue, 4 May 2021 15:12:37 -0400 IronPort-SDR: kwOVSmkIIogEIhADG8xZNoKTSF7+VBTzk5JmVEFYMbwCJnBNpOimF+SUhWGlDUOxazZfrccGvk +nVQkG0DLMdw== X-IronPort-AV: E=McAfee;i="6200,9189,9974"; a="198115956" X-IronPort-AV: E=Sophos;i="5.82,272,1613462400"; d="scan'208";a="198115956" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 May 2021 12:11:41 -0700 IronPort-SDR: fhkrUiuFVLDq9e4Qc69OzHKPlDkUNy8UnX6A/43uKWqfc4UO1ncrzGpZMAz8AnTgJiek3Tf9Ca JzXWUNiJIHgQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,272,1613462400"; d="scan'208";a="396245291" Received: from ranerica-svr.sc.intel.com ([172.25.110.23]) by fmsmga007.fm.intel.com with ESMTP; 04 May 2021 12:11:40 -0700 From: Ricardo Neri To: Joerg Roedel , Will Deacon Cc: woodhouse@vger.kernel.org, Jacob Pan , Lu Baolu , Stephane Eranian , Thomas Gleixner , Ingo Molnar , Borislav Petkov , iommu@lists.linux-foundation.org, x86@kernel.org, linux-kernel@vger.kernel.org, "Ravi V. Shankar" , Ricardo Neri , Ricardo Neri , Andi Kleen , David Woodhouse Subject: [RFC PATCH v5 4/7] iommu/amd: Set the IRTE delivery mode from irq_cfg Date: Tue, 4 May 2021 12:10:46 -0700 Message-Id: <20210504191049.22661-5-ricardo.neri-calderon@linux.intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210504191049.22661-1-ricardo.neri-calderon@linux.intel.com> References: <20210504191049.22661-1-ricardo.neri-calderon@linux.intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org There is not hardware requirement to have a different delivery mode for each interrupt. Instead of using the delivery mode of the APIC driver, use the delivery mode of each specific interrupt configuration. This allows to accommodate interrupts which require a specific delivery mode, such as the HPET hardlockup detector. Outside of such case, there are not functional changes since the delivery mode of an interrupt is initialized with the delivery mode of the APIC driver. Cc: Andi Kleen Cc: Borislav Petkov Cc: David Woodhouse (supporter:INTEL IOMMU (VT-d)) Cc: "Ravi V. Shankar" Cc: Ingo Molnar Cc: Jacob Pan Cc: Lu Baolu (supporter:INTEL IOMMU (VT-d)) Cc: Stephane Eranian Cc: Thomas Gleixner Cc: iommu@lists.linux-foundation.org (open list:INTEL IOMMU (VT-d)) Cc: x86@kernel.org Reviewed-by: Ashok Raj Signed-off-by: Ricardo Neri --- Changes since v4: * Introduced this patch. Changes since v3: * N/A Changes since v2: * N/A Changes since v1: * N/A --- drivers/iommu/amd/iommu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c index a69a8b573e40..e8d9fae0c766 100644 --- a/drivers/iommu/amd/iommu.c +++ b/drivers/iommu/amd/iommu.c @@ -3122,7 +3122,7 @@ static void irq_remapping_prepare_irte(struct amd_ir_data *data, data->irq_2_irte.devid = devid; data->irq_2_irte.index = index + sub_handle; - iommu->irte_ops->prepare(data->entry, apic->delivery_mode, + iommu->irte_ops->prepare(data->entry, irq_cfg->delivery_mode, apic->dest_mode_logical, irq_cfg->vector, irq_cfg->dest_apicid, devid); -- 2.17.1