From patchwork Tue Sep 11 16:49:49 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Brijesh Singh X-Patchwork-Id: 10595953 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 41C5F13B8 for ; Tue, 11 Sep 2018 17:06:55 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2B1CA29A64 for ; Tue, 11 Sep 2018 17:06:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1EAB029AD4; Tue, 11 Sep 2018 17:06:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 91E7429A64 for ; Tue, 11 Sep 2018 17:06:53 +0000 (UTC) Received: from localhost ([::1]:58671 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fzm7o-0001ro-9X for patchwork-qemu-devel@patchwork.kernel.org; Tue, 11 Sep 2018 13:06:52 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54537) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fzm6R-0008Oo-BM for qemu-devel@nongnu.org; Tue, 11 Sep 2018 13:05:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fzlrs-0002vX-E7 for qemu-devel@nongnu.org; Tue, 11 Sep 2018 12:50:27 -0400 Received: from mail-eopbgr730082.outbound.protection.outlook.com ([40.107.73.82]:22781 helo=NAM05-DM3-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fzlrr-0002ja-Lb for qemu-devel@nongnu.org; Tue, 11 Sep 2018 12:50:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector1-amd-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cQZqk6jLymiaxjF7nkqAIdFtrfGb50SSxkzkveLoSRY=; b=fFkeqWevBdmfxjVHkijn5CgeuAw/8n9H2M1koGMwx8z6l3S9eX8xtKbeYnLuT6Gsjs/Kbh+rVJgDRNrS7VvTRGplw0W3jFWtjtigmNp/Be18S3movjaohOeslqlQH9HtrCNZenN2Xy/QEYDjqSZwBoup9kYI6cnJr2wSUF3r2B8= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Received: from sbrijesh-desktop.amd.com (165.204.77.1) by SN6PR12MB2688.namprd12.prod.outlook.com (2603:10b6:805:6f::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1122.16; Tue, 11 Sep 2018 16:50:12 +0000 From: Brijesh Singh To: qemu-devel@nongnu.org Date: Tue, 11 Sep 2018 11:49:49 -0500 Message-Id: <1536684589-11718-7-git-send-email-brijesh.singh@amd.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1536684589-11718-1-git-send-email-brijesh.singh@amd.com> References: <1536684589-11718-1-git-send-email-brijesh.singh@amd.com> MIME-Version: 1.0 X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: SN1PR12CA0065.namprd12.prod.outlook.com (2603:10b6:802:20::36) To SN6PR12MB2688.namprd12.prod.outlook.com (2603:10b6:805:6f::29) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: bfdbf097-8578-451d-fe98-08d61806a4d9 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989137)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020); SRVR:SN6PR12MB2688; X-Microsoft-Exchange-Diagnostics: 1; SN6PR12MB2688; 3:Ur0Mbi0I6n/h2Q4XYSiVlV1JuI6qlFpBrxmzsQ0eKcJkFx8mY6igF0WM5XCdwoUDbt3x0KPhmUk3/aj7SXdBbtkJ0vmeV80vI4OunUGa68um9iJn/Y9YG4ssAw7B99Qa2DJULPqFUyATsrfwGFi3EOe+/XmY1hn4itN5uV2MHl4GWOov9ZEqTA4MvrvYyCgeYOujFIkG32+S4WCqXX6IIrRRE5rUkcfaDpk8b/nv70F3LCpmuqljB8jZBERRrDYS; 25:WYLpyc5Tei+1eOGyvxhKbog4cfhNLUpfazhge5HSJlAkTfdW4Nu9FSEeRfYeiuwkb2Dzn43AcPkibZ4ZcEysJA2RIdV/tngq2plq8Jfddkb+1F82GfuB0IUQZ45xGDj09X4/o3KW5gBwVuceX7WJL+LNCMfIJuPH/Vqd1W/yxPKBC2KFZW9rSyPX6In7jmi1BPH0qhgy7iibPZDwT70pNOCptwvXcLHCSdsz1RHX3vsQiRYSZZl+t9qAyZUVKOcSAu7x9eqnMsKmmeQqL3yIfIyP9xfBWE1U2skNyQkgiwnok3dJOR2DNyDV7Zdj61deByCMMZEzqkasODgWKDfgGA==; 31:myTTGK9glBEESad+L8k9kDOHq4mQUunZ8YDD0lsqBPn8roMgTtMXcaJpOKQaPtZ48KMBPL3IZIqImAn9O9cheSqcwVzb4XSognDRy0RNPTA44k/n0Jvra/aq6qKi1SfclsN6ikKwqyXYEQUxveIJymKZ0PS3yucfU0cLEY4GH2rTHmh6H1DiVgwApm3KNifhDMdLzfQoMuN0xSYm9IfZsKZX1Oe78oeV61g8eMW2Tj8= X-MS-TrafficTypeDiagnostic: SN6PR12MB2688: X-Microsoft-Exchange-Diagnostics: 1; SN6PR12MB2688; 20:z9jga83fIJOhKFyi3EpH4P22QYWHlR8R8hE0R3+JLro2rTunx53gNtACX2q7LXAf9BBaQN/CUFf5cgk4w9xcnaTVHaMiolkNGX0wxYBET7r7Axjr0POLcm36/7UfI2py8xHBRqDIhru40r9sZ1EfSKgFs63htE0ChQdGiJAFtO2HhfFTBuIsJxAyyVed6pWp0Mwlwci1YNpTDvUFyf+pqzAOjJgbQ4wtOQjiGbU/HxUPgBCaHjTQ9DuOAaHoLiZ/DME8sLb8jzLZxe9ec/NspIwYELu4NAIINqYIfwTng5lRewY05isF56yduGQ7uFNVVQYZL4WxMKuhrEn7nOxhk8Zhz6BI10h784jm48/44gSM+1LHjZrq0AnOReFHUECrn+qogME79IxvwkfLNfC2oCmtS8U24jKDOQdEXaTVCFeZQGmxQMbHToCwMiuaplUN+6G/wClICOxi2Xb4JPwK/+t0sz0XOXUhtHW8FlFqNW4WTYqfnohf6ohxcOnfl0eJ; 4:uBPuxT4rFtthDspgodhj75R3uA0XiB+7cR20l3w25TlagOxlBz522K8aynFjzgJ2VqA15FjHHvB4KN8tmoAmBHPmPldWaMKwog5pjWClHBljprL8SaR1Xz7ejdYRe+KTqxBWkAKqm2f86yA8fpt2VZBbgnYtBr3D5p3S1jtOdQWgA+5mEesEw6VMHUE6GHvu+P+55XBJr73IPml7pqT6k7rwrKOMnw7c1nNKvsgSx1Hs/RIqRyxilJQA8gnQaQgDrYTlDhf6ls3karBjTrTWIrLKIs8vMeV/Cad52ZZf8XZjI8xYT4gANw91QHzHcibB4UqGsYNkGTSJYoimQRT5DGZ3SE9YoN3I5c/BpKPAZw05GOG6YDlrkfettp3WJj2vwhmOPB8O5fXNgJY4ash0hA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(85827821059158)(767451399110)(163750095850)(211171220733660); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(823301075)(10201501046)(3002001)(3231311)(944501410)(52105095)(93006095)(93001095)(6055026)(149027)(150027)(6041310)(20161123558120)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123564045)(20161123560045)(201708071742011)(7699050); SRVR:SN6PR12MB2688; BCL:0; PCL:0; RULEID:; SRVR:SN6PR12MB2688; X-Forefront-PRVS: 0792DBEAD0 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(366004)(136003)(376002)(39860400002)(396003)(189003)(199004)(2616005)(386003)(3846002)(97736004)(7736002)(48376002)(11346002)(316002)(305945005)(53416004)(6116002)(50466002)(476003)(2351001)(478600001)(966005)(486006)(39060400002)(956004)(7696005)(76176011)(4326008)(51416003)(6666003)(36756003)(6486002)(6916009)(106356001)(8676002)(68736007)(186003)(44832011)(2361001)(105586002)(52116002)(5660300001)(25786009)(81166006)(81156014)(2906002)(446003)(53936002)(47776003)(66066001)(54906003)(6306002)(26005)(50226002)(8936002)(16586007)(16526019)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:SN6PR12MB2688; H:sbrijesh-desktop.amd.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: amd.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; SN6PR12MB2688; 23:JevEaEe1lya/HINDZbovN9qrQjmfwLwkVZjkRHBGl?= HGPV3C3GBupdu8g56N1UKOrcEjbKxegNzhEfVlQf9PewspYA9MmOGRK8U0rORbEDwa83UpxfsGT+fGtl5tS999KgIqXcyyx9Oov4ieyDZzr3AsWWvl5T3bdFmmDmle74C83cGlaUkxo9OM1vAqo5OZJ3/nuqyiSZCZvkEV4f/qgeLk4p5QG5NJxppGYjLSaZbWAdD+ht231Dq/tWNJQcKF+mgfVFlHwVMswbuyXr5Aso5Ss5WJRCJVY6kqJm0qxzMCFvgwMNNneXEXDIMFsZbvyGrKpmn8m9C4eC/7cF9sjDssgZH5zR6T2pxbwVpV6lj4dq+mZXH2jhswweo3mmv1VC+EgT9HFkOssUK2EdsEd6mAU2WLU8/ZRMi8h8eFgd8l41Rh/3YHQo/bZKH4oGV1BjqhlIVGC6QMaq8i3Ao67v3c5DJlqeiu4607ugRmGG8hkInlZrUVVrS/Q/g0tqdZnRAeflD7iIEjlGOI17VDz1dkiCG1PP/7Ot7MgvCjZZv2i2VDeP2jNno0+Be67AmgiyEv2I3WY7Kl7UFK4wEKmfAcc06/coKgjk9sOXT2ez7PZMzIxT6fQe+8N3OwQxkNAb0OkwSg6u0HJvK+zDAML2fNPqhQ2GV5Od9d4RVAor2ESeyWdDCTArCnVSPxgRrf08aDYmhCPtB3Ai0rm/m98REiW5R5VWMZ5nmsKUB/k+SuElMEEwMfk9DdRtVscctS+4hQ9qBRauADKdktyaCLp65Y7HRmOT9i/mATd40fvs7V/3pCVbKY31bZBC8M02AWa5Bd8zKilU6YJoO1iJtpcDNnYI8C0rJa+cXnfnPJ+w9I4nraZoYsO9ErFdBHO+yZSceoGEwPRsxGeFs197r9aE0Sqtm9DLyTKUooxh55Q7zaoJSVseW6c1TfAJCF9IsW/qTI1t8J3FhjCTMos6VjNRW6a+SoFsBg6rOYvzvQa5U3lruPXs7vWkAY0yQWht/cK6kkud0J5JcIZ42gv/QNtxf/fTJUFmL8Q5KNbtVW32vvdapvl/B4JoPUpR2JaGI8FaHyUh9ng5V2Pv5NA3aTYeVSR74e8LOUpuAxIemk0vh0In0JiCkH/qOGl3tJIak9/sQPEqxUltahDOUFk5z22X8jk9PBHzVDxOFbNDgLllGOIuO6IjN3n5eMVc2gh8YHQTcvzxc/mOXeM4UPnnux3JjkKBJ0+H3mzgY17d5lyFbkSSoEnV0d7UCieE0JiNZV83bUTEwK7TXMSivx3OPlVJIxf3k4jwGJzAbWiENnUvCI= X-Microsoft-Antispam-Message-Info: DyOY1eXJjJP0y0Qi57JO6Yfx0KAFAslbVj0qPJVA0La4UWjGSWQWTuoiJUMIcjO+olaPyUyaOoqRYqGLWkIDIg/6bsqWKJFbSJHXz3NHSlLiVwG6ucqqsZlERSTHhvg5zMoM8JkxHcqvMgXPGV8iJXqqHFJTJqD9O5ZLEPt89lP3AdtCM6ui828gPXUr1uCfGGbgHY2d5cqvP2bxE587hoPR+x6t95UJeq0hcjKgQFBa/yjRSLOge+38UCT6OMYPG/t3nJMpLnkjC4bo0BGEQz6SCeJV1vY7IcdiBAx5pYtzcJiyATaWNZsIcy3UgGWG0pHjl5/Ey0CBepigk+f3YzPHOO2ZT/uNbN+/My86SIo= X-Microsoft-Exchange-Diagnostics: 1; SN6PR12MB2688; 6:yQ307bE5vhY6jMjIl5T049JPq6wkvBwLMfRlKwy0cNfxKriPDZ26JY45CbZLJq6AtmtY2TUyzkvVgwNfnSuwmQmTmzbJMvrH5Uv5jwBxtwwqDGgoDmKwrUL3Bu4eFGxvE4maYvKe+o6OYP/73PwjD3+UmAy9pKJpHJKaiOeEMG0uAka5bBhx+Ga6t90aWVcSSdIwPjY1H6bw2i6+RuJVefiixI6k1JqzEHB09dM0z+njXrGyPmmL2/zQ6kYmr6MCulNUsVu4bxrBU9uNxH1dP/Ge4Rwls5BZuTxn6QZz2yv6wdOhAZHktl8NS0ORN8M1hbyIUGB2X7iw4IG5MI6Nv1pK16OM9cCPTKF9JOdjVazkuAgyXPT4XsgQiNFhGmXSyax4S/Gc88ZCEeGevbYkLO+iJSrxsjIIwSPNiwgMEpx8ZkjkVITnV9364f3Ukx4cFtxtwmKMCnu/ITlhXj+PFg==; 5:2eIlXYpqdMTMzjY7slahtIZHiL7qtonSfUwM6rlajagoUVCgIgTQD7W9zngUqzPNk8ECvRmSwjl6Qn3iJFHBC7ty2S1L/T0HLOmliJNFxpoq2tEMJSOQvOmjG7tleJnlOl5Qurpejk7j59o6WFiAO3ShQUxtC230WfoGSG+pRW0=; 7:keim8b+97YmYktxqdio+VHjZZKOUJB+jJUie013WMoUCjLp4X3gbskW3o7S1xf4Q9M+r3J/gBTyD6W28Etw/FEDnUxqEmyaL9n5LZWnaL0+M9PHb1CDMgqLPnKKRercIHmxHryZYaH0tYltUSCiAimd09ncHyFpFEeRp1GRJrLk9G3/ZdKxNiMy7YQebHAPzn6r7PgPIOjEveg6ZzSqup5x9XklfKuK30B+2l0IZCrGGQfxS5Cyraq9nxt/XT0iB SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; SN6PR12MB2688; 20:DOU/VkZuzOjdRmIVR6/dKloxbcPOsiDg/j9jQ0e3HShGYqeI+S2N9ITCfWyaNrSt//xqjbgLIy6g4r+cTs4VbDg4bpWYrHIqLdgbmgWeEW1iAONzLynjnaVMD4gDekvrVOzeyZH5wy7uJmN4tilEBcyfnxILF9VYhvJseWYNaLJmDaMbzAf3KRVBscTz275Jaa3N+qKZhDhkergHc3DukEYQa2bF6LBg8589YrvZyaLZG7dCxkf/weD3Zcv4pOQK X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Sep 2018 16:50:12.7369 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: bfdbf097-8578-451d-fe98-08d61806a4d9 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR12MB2688 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.73.82 Subject: [Qemu-devel] [PATCH 6/6] x86_iommu/amd: Enable Guest virtual APIC support 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: Tom Lendacky , Brijesh Singh , Eduardo Habkost , "Michael S. Tsirkin" , Paolo Bonzini , Suravee Suthikulpanit , Richard Henderson Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP Now that amd-iommu support interrupt remapping, enable the GASup in IVRS table and GASup in extended feature register to indicate that IOMMU support guest virtual APIC mode. Note that the GAMSup is set to zero to indicate that Guest Virtual APIC does not support advanced interrupt features (i.e virtualized interrupts using the guest virtual APIC). See Table 21 from IOMMU spec for interrupt virtualization controls IOMMU spec: https://support.amd.com/TechDocs/48882_IOMMU.pdf Cc: "Michael S. Tsirkin" Cc: Paolo Bonzini Cc: Richard Henderson Cc: Eduardo Habkost Cc: Marcel Apfelbaum Cc: Tom Lendacky Cc: Suravee Suthikulpanit Signed-off-by: Brijesh Singh Reviewed-by: Peter Xu --- hw/i386/acpi-build.c | 3 ++- hw/i386/amd_iommu.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c index 5c2c638..1cbc8ba 100644 --- a/hw/i386/acpi-build.c +++ b/hw/i386/acpi-build.c @@ -2565,7 +2565,8 @@ build_amd_iommu(GArray *table_data, BIOSLinker *linker) build_append_int_noprefix(table_data, (48UL << 30) | /* HATS */ (48UL << 28) | /* GATS */ - (1UL << 2), /* GTSup */ + (1UL << 2) | /* GTSup */ + (1UL << 6), /* GASup */ 4); /* * Type 1 device entry reporting all devices diff --git a/hw/i386/amd_iommu.h b/hw/i386/amd_iommu.h index 1dab974..5defaac 100644 --- a/hw/i386/amd_iommu.h +++ b/hw/i386/amd_iommu.h @@ -177,7 +177,7 @@ /* extended feature support */ #define AMDVI_EXT_FEATURES (AMDVI_FEATURE_PREFETCH | AMDVI_FEATURE_PPR | \ AMDVI_FEATURE_IA | AMDVI_FEATURE_GT | AMDVI_FEATURE_HE | \ - AMDVI_GATS_MODE | AMDVI_HATS_MODE) + AMDVI_GATS_MODE | AMDVI_HATS_MODE | AMDVI_FEATURE_GA) /* capabilities header */ #define AMDVI_CAPAB_FEATURES (AMDVI_CAPAB_FLAT_EXT | \