Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp3847416pxy; Mon, 26 Apr 2021 11:08:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzQGHCNqDuGPcZ95NsgUt1c31IyhFaLAL4OxYR59j3iGzT9md07Ze3KSdbcDOT1qrDOn2G+ X-Received: by 2002:a05:6402:510f:: with SMTP id m15mr22938273edd.328.1619460518768; Mon, 26 Apr 2021 11:08:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619460518; cv=none; d=google.com; s=arc-20160816; b=zCfutbQ+9U72kXV/SbvU6a65YElmkZa9nWeGRLh/VldTl+33g8zTCdbnvJyUvHGyjI nE45ekvJ6ge/kDCqR4K6ZU4XS9BFmsau04J7pQDDFawOI8LZm3qOLuyqIXzQboYh9BYY KntE9HxJ0oqvTeFxqYLzCLSfULDSaaj+rKNAeiKy0Ai9F8tbV40MJ7SVUrT8AI8vwnQu /EmQ9iJzI6yRFHTBgRKHMZv0PHBhx1rs9TYlQj1q1otRV5JWjt9RXODIK2yjm9G5XuXt v+0m0zdptl3+gWFp5RihSfFl/gLnxXiEg6b/ARkqjJZJ4KlHuHFa+wLjjnlSuc2n9ebP ZkBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :ironport-sdr:ironport-sdr; bh=DhrAqb8savaxDYKrhgD/kG/UIYgg0XVVugIeP0VUOOs=; b=S1kgPTS/tE0PPYfn18gyrP/oqBhtabcO9hlIST0b5a8dQWXL1pCsvcYxVEKkFuZabR DHrNj84vm/Ndu5JLstVSjfXgXxv4NfwLl4N43QnZt+Z2ZqtBNYlLl/pi/oOS2qkSBvL2 QiNM4QB9/WWrcuDNQI2Qf1GnwHri0MkbMmQKPORjTvAJ9fzqhRRTt098CZ+km1aWCHWU JOmTqgVkQJTTewWzb5Y0NVMYfnzO7PiJ5qUZ47bQ6lwIidZk97EaGNwrkxQwiTaIS1vN UOisK6xtazLCgwQRmE8khVzgmZt13YEq/jCCvPAHjoLipEA7VasdUTfVJ+zzHeVhTG3T Wl4A== 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 a27si6300510ejb.515.2021.04.26.11.08.15; Mon, 26 Apr 2021 11:08:38 -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 S235493AbhDZSE4 (ORCPT + 99 others); Mon, 26 Apr 2021 14:04:56 -0400 Received: from mga03.intel.com ([134.134.136.65]:51109 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234419AbhDZSDi (ORCPT ); Mon, 26 Apr 2021 14:03:38 -0400 IronPort-SDR: ymsbcCc0yvvUGSegsMPxvHceGoIIAfeBI796Qlhg3v6GmNI8RjZ3FvtIC6ky5dXq65YrnGVA2g iqQwtJfykViw== X-IronPort-AV: E=McAfee;i="6200,9189,9966"; a="196440435" X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="196440435" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 11:02:55 -0700 IronPort-SDR: gHjdKpW0vuJ9mH+hiSEE0AGy84K4PcUVw2GTZ7zkOqPJ/5M7bZF3TOs6KlPBYadxSnntC8Leos YFZ0PyEIcYfA== X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="447353434" Received: from ssumanpx-mobl.amr.corp.intel.com (HELO skuppusw-mobl5.amr.corp.intel.com) ([10.254.34.197]) by fmsmga004-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 11:02:54 -0700 From: Kuppuswamy Sathyanarayanan To: Peter Zijlstra , Andy Lutomirski , Dave Hansen , Dan Williams , Tony Luck Cc: Andi Kleen , Kirill Shutemov , Kuppuswamy Sathyanarayanan , Raj Ashok , Sean Christopherson , linux-kernel@vger.kernel.org, Sean Christopherson , Kuppuswamy Sathyanarayanan Subject: [RFC v2 25/32] x86/tdx: Forcefully disable legacy PIC for TDX guests Date: Mon, 26 Apr 2021 11:01:52 -0700 Message-Id: X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Sean Christopherson Disable the legacy PIC (8259) for TDX guests as the PIC cannot be supported by the VMM. TDX Module does not allow direct IRQ injection, and using posted interrupt style delivery requires the guest to EOI the IRQ, which diverges from the legacy PIC behavior. Signed-off-by: Sean Christopherson Reviewed-by: Andi Kleen Reviewed-by: Tony Luck Signed-off-by: Kuppuswamy Sathyanarayanan --- arch/x86/kernel/tdx.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/x86/kernel/tdx.c b/arch/x86/kernel/tdx.c index ab1efa4d10e9..1f1bb98e1d38 100644 --- a/arch/x86/kernel/tdx.c +++ b/arch/x86/kernel/tdx.c @@ -4,6 +4,7 @@ #define pr_fmt(fmt) "TDX: " fmt #include +#include #include #include #include /* force_sig_fault() */ @@ -421,6 +422,8 @@ void __init tdx_early_init(void) pv_ops.irq.safe_halt = tdg_safe_halt; pv_ops.irq.halt = tdg_halt; + legacy_pic = &null_legacy_pic; + cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, "tdg:cpu_hotplug", NULL, tdg_cpu_offline_prepare); -- 2.25.1