Received: by 2002:ac0:bc90:0:0:0:0:0 with SMTP id a16csp3866599img; Mon, 25 Mar 2019 20:58:31 -0700 (PDT) X-Google-Smtp-Source: APXvYqyhgXXIwz3l9G7fJ/3ANY9rQ18Ex+cyHH8z2KEYTpRGGpRJNavK3HqiwigNLosrAjgxfk94 X-Received: by 2002:a63:c00a:: with SMTP id h10mr26888610pgg.272.1553572711703; Mon, 25 Mar 2019 20:58:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1553572711; cv=none; d=google.com; s=arc-20160816; b=C1mtZ/+Z4W1Wyt3+rocfZUt8XZAM/TU1AY88A4wvvh8bYx5rtA1XseqEnOx0B7nqvg 7mqGqRHhhTLnQoSLxDiI8eFvqn7SKTisTXbt1SDsujcio28zmByFZr4IInRsne/10rRJ PtmhNkyaqSoK6T8bMtzB/QqSsqLwgczjYK3i9lrx2U8Mw4m3AKGdjobIdQT7tEEYeUli Y8COWjU0ThCWPUAOA3ifs02543gHGaPWaWQuaIBKK7d9vhZyWp66glqdEewQMO5GXrH5 7V5GkBMoNkcZpb/eyG1gAlN4dtseWvweyEIboOalVay72j7wxi+Kh0yDXMX3kB+3T5F1 3BWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-language:accept-language:message-id:date:thread-index :thread-topic:subject:cc:to:from:dkim-signature; bh=TaCTqfpSEk/xxnYB++SuPHewlgCJRLEUHeexU+RyZAA=; b=0nsmua/dL7MUBQwMwe2IAfolZNAihFaWwY3qSw120laxv6j6lxDPoQEiveWr3g67+W /EwDbmF2V92TlW1wJRyUfog85XsG6JXcqfG8r8CjiOihOwGpslOQy/qNJFYnnQtee3TR S/0sYIBGVgBC37cv70V4tVvTASxqNbEHkmTpSR2YgPag6DoDp2wnyVO7VI4UMazYvZBp 46PaU9osel8c2CXa5WhUQzPA73xZrTZNK/RxZhrXzpnAb/Pk5z4Uw+9m8i/TZlvsV3BN axaQ2sVWHEmZo7D06NLzuqpg5ygRicZlFNwvC6M2bAFpavV4ynCywslI30qJmZGklONl Gq6g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=n81JNVKw; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j9si15563063plk.359.2019.03.25.20.58.16; Mon, 25 Mar 2019 20:58:31 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=n81JNVKw; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730877AbfCZD5l (ORCPT + 99 others); Mon, 25 Mar 2019 23:57:41 -0400 Received: from mail-eopbgr790049.outbound.protection.outlook.com ([40.107.79.49]:12192 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729681AbfCZD5l (ORCPT ); Mon, 25 Mar 2019 23:57:41 -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=TaCTqfpSEk/xxnYB++SuPHewlgCJRLEUHeexU+RyZAA=; b=n81JNVKwHjCgaKfq5DlvZMSvIZMMaDNZEClTp0KY1SWNUBOzICVYVZ8gtOJQiRkr+/VmjAn3UatlqBHeet9GtAh/WIWOZb1LHINoPqrja5yIBaHzIoiCUGE/o5fvTd548rwdeHHVkKD9FxI88AfPFQ8LZF72o46sr3oFT20GpN4= Received: from DM6PR12MB2844.namprd12.prod.outlook.com (20.176.117.96) by DM6PR12MB3209.namprd12.prod.outlook.com (20.179.105.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1730.16; Tue, 26 Mar 2019 03:57:37 +0000 Received: from DM6PR12MB2844.namprd12.prod.outlook.com ([fe80::3589:a066:e1d:b1f0]) by DM6PR12MB2844.namprd12.prod.outlook.com ([fe80::3589:a066:e1d:b1f0%5]) with mapi id 15.20.1730.019; Tue, 26 Mar 2019 03:57:37 +0000 From: "Suthikulpanit, Suravee" To: "linux-kernel@vger.kernel.org" , "kvm@vger.kernel.org" CC: "joro@8bytes.org" , "pbonzini@redhat.com" , "rkrcmar@redhat.com" , "vkuznets@redhat.com" , "Suthikulpanit, Suravee" Subject: [PATCH v2] svm/avic: Fix invalidate logical APIC id entry Thread-Topic: [PATCH v2] svm/avic: Fix invalidate logical APIC id entry Thread-Index: AQHU44gM6vK3inub30eEmN0VlYxwVQ== Date: Tue, 26 Mar 2019 03:57:37 +0000 Message-ID: <20190326035711.77916-1-suravee.suthikulpanit@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [171.96.73.107] x-clientproxiedby: SG2PR01CA0154.apcprd01.prod.exchangelabs.com (2603:1096:4:8f::34) To DM6PR12MB2844.namprd12.prod.outlook.com (2603:10b6:5:45::32) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Suravee.Suthikulpanit@amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a548e3b3-fa27-43df-b39f-08d6b19f2f26 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(5600127)(711020)(4605104)(4618075)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060)(7193020);SRVR:DM6PR12MB3209; x-ms-traffictypediagnostic: DM6PR12MB3209: x-microsoft-antispam-prvs: x-forefront-prvs: 09888BC01D x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(376002)(366004)(396003)(346002)(136003)(199004)(189003)(7736002)(6512007)(1076003)(106356001)(99286004)(3846002)(54906003)(110136005)(68736007)(71190400001)(4326008)(2616005)(71200400001)(86362001)(2501003)(66066001)(476003)(316002)(50226002)(81156014)(6116002)(81166006)(102836004)(256004)(8676002)(14444005)(5660300002)(305945005)(105586002)(26005)(25786009)(6486002)(6436002)(478600001)(8936002)(52116002)(6506007)(386003)(36756003)(53936002)(72206003)(486006)(2906002)(97736004)(186003)(14454004);DIR:OUT;SFP:1101;SCL:1;SRVR:DM6PR12MB3209;H:DM6PR12MB2844.namprd12.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: el0ApbgR9Hmir8YBAVZrTQgP0NBJ7Pk2cwBgoouacbHwFHpod/PQhWKiaRLXvlK/6SrkzBD7a70oBvamTdHnz2/p0g7UvAiUfW8k2gPoVtWq9AprIImL0uyt3PfzvCneeTEbKg7JdjZO4se9OrIq1eBhH5H9vDEXZBp2JyczyPBXSygzk8CRca7G5bmIB98SQn8RaRauN1CNNCDF9H4mI8pmf0lCX6JXJs7LmChayRBcdoT6I4mv5f02ZhuMD43HTD5uqb29RrFDP427lrYe/io1CcFb6TUHCpUN3F8NdPP+d+udWhLm8nOUdsc8r2VCaEEP2/NgANNL/vgbZPyqJBpxZtxV1xSeDN12oG+jKR4o5lLuhXPlo/R/jgT9BsxILALsmztkpKebXxMs9TqmJsUOxrUEq8tiJhvdX9g/KIg= Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: a548e3b3-fa27-43df-b39f-08d6b19f2f26 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Mar 2019 03:57:37.3049 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3209 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Only clear the valid bit when invalidate logical APIC id entry. The current logic clear the valid bit, but also set the rest of the bits (including reserved bits) to 1. Fixes: 98d90582be2e ('svm: Fix AVIC DFR and LDR handling') Signed-off-by: Suravee Suthikulpanit --- arch/x86/kvm/svm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 7a4ce1a22ca0..8a123bd0f591 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -270,6 +270,7 @@ struct amd_svm_iommu_ir { }; =20 #define AVIC_LOGICAL_ID_ENTRY_GUEST_PHYSICAL_ID_MASK (0xFF) +#define AVIC_LOGICAL_ID_ENTRY_VALID_BIT 31 #define AVIC_LOGICAL_ID_ENTRY_VALID_MASK (1 << 31) =20 #define AVIC_PHYSICAL_ID_ENTRY_HOST_PHYSICAL_ID_MASK (0xFFULL) @@ -4640,7 +4641,7 @@ static void avic_invalidate_logical_id_entry(struct k= vm_vcpu *vcpu) u32 *entry =3D avic_get_logical_id_entry(vcpu, svm->ldr_reg, flat); =20 if (entry) - WRITE_ONCE(*entry, (u32) ~AVIC_LOGICAL_ID_ENTRY_VALID_MASK); + clear_bit(AVIC_LOGICAL_ID_ENTRY_VALID_BIT, (unsigned long *)entry); } =20 static int avic_handle_ldr_update(struct kvm_vcpu *vcpu) --=20 2.17.1