From patchwork Mon Feb 14 09:25:31 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jan Beulich X-Patchwork-Id: 12745284 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 36638C433FE for ; Mon, 14 Feb 2022 09:25:46 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.271291.465697 (Exim 4.92) (envelope-from ) id 1nJXbz-0004aA-LR; Mon, 14 Feb 2022 09:25:35 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 271291.465697; Mon, 14 Feb 2022 09:25:35 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1nJXbz-0004Zb-Hv; Mon, 14 Feb 2022 09:25:35 +0000 Received: by outflank-mailman (input) for mailman id 271291; Mon, 14 Feb 2022 09:25:34 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1nJXbx-00043T-S7 for xen-devel@lists.xenproject.org; Mon, 14 Feb 2022 09:25:33 +0000 Received: from de-smtp-delivery-102.mimecast.com (de-smtp-delivery-102.mimecast.com [194.104.111.102]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 0cc35a1a-8d78-11ec-b215-9bbe72dcb22c; Mon, 14 Feb 2022 10:25:29 +0100 (CET) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-he1eur02lp2056.outbound.protection.outlook.com [104.47.5.56]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id de-mta-10-GuhDHtz2NK2pHNWIx8v9mg-1; Mon, 14 Feb 2022 10:25:31 +0100 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) by VI1PR04MB5168.eurprd04.prod.outlook.com (2603:10a6:803:56::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4975.18; Mon, 14 Feb 2022 09:25:30 +0000 Received: from VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::d479:b728:345c:bd65]) by VI1PR04MB5600.eurprd04.prod.outlook.com ([fe80::d479:b728:345c:bd65%5]) with mapi id 15.20.4975.015; Mon, 14 Feb 2022 09:25:30 +0000 X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 0cc35a1a-8d78-11ec-b215-9bbe72dcb22c DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=mimecast20200619; t=1644830733; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=O+QV9f4zvS046E/T2Qkac91dJy0u0hz2Q9q4aDSre0U=; b=N+jjAsKrxPQk7f04yzErt10ld9LTyUNC+CdnA4oKjMeheu8qAnKuYUmahqv4QmFkERtvjh kWbWw7KgQydCVmxJzJ/MCVZlEL12yGTnjiYphGQfSK83SLz7Osji1mXdb56ADr8fIaUlPl lQMVNPkUqwxk9wCTbaKaRywhwPiBg20= X-MC-Unique: GuhDHtz2NK2pHNWIx8v9mg-1 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NmsxkszlYhy9rfK5pTW28fFHhpMd0i6AoM1UXVRopzgF7syyUC1934kuiF+UpCyP5UDWAgZfqoRMsWgTg1lBqNzJbAgAudbwNyqrfU3Xu1zmuj61toRonZ0s12QLnidebIRucvN/L8riM7XgVo8Td75i0n6gLK1bKu22dzNISUlBpm1ZzYDTnI12/6noXEm0gddq8skXBLLnNJVglav/E6XNjJ7Lw0zKT1Ez8JUu9L9RLzjAqEAz/FgGm0yEClLAbGe/iiPY09LpM5ZQzoGqVzmc7RCqXlD696ABxMl/C9Fh8HHxu9H4ZgD3ZbvLV46dEHL+1SEa2YBLSQltHjaEEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=O+QV9f4zvS046E/T2Qkac91dJy0u0hz2Q9q4aDSre0U=; b=KfutONe6ZQ8QBqcd0ReSkeFI54gpCk4BVW+Dvn8SSeh2vdOmq10wI6IFSDTmjAA5Czw64VcxFTqNcV1SsrCOi1OQfIaCUMpA4R5UqKCCWpd6NZ6cyTEtHdSFbpEW+GdnHj9Xk0/wCXKYoi7omNQolZCtoT/9hJZrtqff7R7Q6a+qJqCzyt7Dd5XQktq2B31KHDLp+PsTu2fbQ1JBkkMWRu0Dygi9AKI6oL66uo65PQE9uxKKhPv0Ay7vIIkxrd3AjlPBP3XapV8DvMWbRP44r3lFhT+94d8fqi31+hcxrDuMy916Dfk3xw575fzXK4LrcAN1yU3SL9nOgSZTUcVUCQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Message-ID: Date: Mon, 14 Feb 2022 10:25:31 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.6.0 Subject: [PATCH v3 3/4] x86/APIC: skip unnecessary parts of __setup_APIC_LVTT() Content-Language: en-US From: Jan Beulich To: "xen-devel@lists.xenproject.org" Cc: Andrew Cooper , Wei Liu , =?utf-8?q?Roger_Pau_Monn=C3=A9?= References: <35cb3c72-05ba-24c7-1fdd-3ee1aced3aec@suse.com> In-Reply-To: <35cb3c72-05ba-24c7-1fdd-3ee1aced3aec@suse.com> X-ClientProxiedBy: AS8PR04CA0125.eurprd04.prod.outlook.com (2603:10a6:20b:127::10) To VI1PR04MB5600.eurprd04.prod.outlook.com (2603:10a6:803:e7::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6c447af9-bff8-4182-a35a-08d9ef9bf1b8 X-MS-TrafficTypeDiagnostic: VI1PR04MB5168:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:5236; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: BF58ZCy2mrVZd/TySIs1MooX5HdVPTPsrTfAQgyWDd+NmvD7jVjw7rKng8kkpbowlmuMrIHqap44KKLJZNwTN7ApD4r7RN/vcFaEMZ6nJoAnhDXCI02DCv48QAlr5hFiXk+noeTLszOslzjKVtshP6Gk1MytEVKIFoJTYD2BP3sbPcC550RDXJm7fg/FPxDV73BTj6nZy1CqTD96ajF1xKZ+PcgYIZUXrv36GBvh80kw9JVTn5gKj9COdcHuZC4VRq1MI8xwL8vXSzAZ4G2BNYidYHHbn/bCW/rf/B8wsv1wMLW7QtgNCX4Bs3Rfq0f/4SNDNudztUcPtf30jM7aWdBJ0I66cFNLLkJhoywHygKSvGzCVUsldPwrEm7yc1lYzwrvB/YglBRHEAVS/Vffj2Z7xinPAQsQcRDxOPhqz8huR5WfBR4ov1F+sa+XBDOAaodCr/K6C8ta7K/Vje/Il5nuFyUJmp38Mp5agnkvabnXl+5lq5TI/6MBeT5+rYZH3RqdVn9yP3nAAqrqjiWWr2k3Zplbtblesp9lV+SbpdgN15inAuSx+wwGO5FQFj5wKbG0Y30bpAohS1K3J7wu7AlxLML609/brBc0Qbk79Y+V9BLZlJ34hCQ3S8OfC4hQK374rxsGfsoFElFzt9KYWpDHV4GtuswMpVOZISIg/lrmRzjMRs5b7Fzjy60FYk0JGYv9Y5MV2/03uNfabyb0vKjEHNyZNgoAn1IDre2eYGpX/ON1o6nBG0261f021B8n X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR04MB5600.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(36756003)(316002)(38100700002)(6916009)(31686004)(66556008)(66476007)(5660300002)(86362001)(54906003)(4326008)(8676002)(6486002)(508600001)(31696002)(26005)(2616005)(2906002)(8936002)(66946007)(186003)(6512007)(6506007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?cgMBuoT+OS2qKg0osvjRC1R39ItM?= =?utf-8?q?IAuyBrmU8R4sQsPRfZJ7wl3K8MaxtY0ZlSqlSm+qS1udBRm/AtBUKBm/bE2vr2AUS?= =?utf-8?q?Jv29Bh/4Ti+YP+QpXwetqH2O22WnEZcgoNaWStQwV4bN6qUZ85OLFNE2QvEcO7MQW?= =?utf-8?q?qKr1bQOv+XRFk5HTwHxlBvTqxj8egx7XZs3t1oYSVSJfFs1YAbQ2TGFR60TTzlzBz?= =?utf-8?q?w8F+NwZuCLanCEBrFUWxn/ko23jl45r9+SClihjT6KJiy95o0Xao+YoJNnSIlXkh7?= =?utf-8?q?sB+nf3CMkwvoTdmSFwLxAupapMDUcWeNikAZNcnflyqxgtjE7agUbLS14t5ZI/OKb?= =?utf-8?q?50uor2pxmZC/naZkK83QJZ3C1uH/J+Yd/hrwUQ/F8C1iEzNDzwjN4LN1ve21outVQ?= =?utf-8?q?mX07EyuIbAH2vppHmzEOr2gulC5jDqYJ/aa2Q70wSY0SvYXLqegjpqAlKRw5mrZ8M?= =?utf-8?q?vZHOJCOfZ4XR9vlDSA+WNbvZVhmHazwuZuIj58FWrFzvMTy5QqHkY2txScXwSzzQh?= =?utf-8?q?gifvZ65JcCwB5y6b+LPgfNOu0kRB8iO7XZJaMoPR9SdtIa2N7bszOLmb+SnkU4r9E?= =?utf-8?q?fYBAXvUvT0tt0gtaP9+UwMIW+yJwrUzamVkv3o9+RxVItdCmlqk5ttrINt3iwGirY?= =?utf-8?q?A6U2nHCZXBzml782ZqrcRKTklCrbiCsdkFIsgsltfVfLT2/vv+D3ap11HF//Oaarf?= =?utf-8?q?keLOi+A7dR2Pxorpx2vOtYZ1iwtlNFauq/3KuHbrjEponUxCGJWu4fiUmKx1a4dOG?= =?utf-8?q?k0nP4AoV+f783Dkmu5+HRH/tqJuscOaEFsv0sG2ZzQSjyFBMhRCO29u4GE5t2rDcc?= =?utf-8?q?Q8OCd8Y+y0Ihpe9+aUzlJby5YMMi4GHP3DKnYdlGrhixzMEUiNHpqu6DXMojN+A/S?= =?utf-8?q?VH3KWa5YswroT4YAk/hVdO2gsObEEqdLka+frb70E6HT9YR3E8RWVbLqwpW4gWxqo?= =?utf-8?q?Tf8v/+/PARBxgXDpWodFs6Ep8+1I1OVG2QgWYmuvI1L0ZV/LB5XBKgb56f5eFq6/S?= =?utf-8?q?1rvDEgBtb7Ed3R1wWywxW2GdApZ5uyAgE44u/4p7r4a86YGGYEl3ilXBa/AtGt7Fm?= =?utf-8?q?9Jif46SO/GkZalY9n+TTDKBHXNfKdvgYrD5KhrTnS9iwzhUx5HVExPvSAQE6F+8P0?= =?utf-8?q?i3+AQQAy0F2Hitwv/dPqyPNtlk58MpzSawPnb8vyGlvc/h5DIpNxPmdZezn3Yzb3r?= =?utf-8?q?Hfix7cSyyG2Y4isg4ooByQVX03iuOo814H2Dx1Q7rNZCmCjkV/36CkMQ2j+btbPFx?= =?utf-8?q?BMAcCnY4f956DOjrZE06BQsn+ai1Zd4BDhjyP5wL31sgmvz8ZFd6sTvwwSZsB9LOA?= =?utf-8?q?J6i2RvM9Bm+oeDGJgBZzdfAeq4E+vvjC8nmAfPkNNEbKp1/yksXpf8yIxEu++EEvw?= =?utf-8?q?CNTKOBVrTe3mlAhkE8Wr0chbfW0rSuLebFsJZSs+65ykE2qWrwVzQP44tPcMhKaFI?= =?utf-8?q?4bs8y3ycdbvz/Qq6o8Hx+O3/zw+IC6Vc5Da7M6tcNJyLs01pX+frNyYxJA9yfBQhr?= =?utf-8?q?APJN9M3fVXk0Hnu9GpAdFaod9DH6g3Xlhl2dRG+KZtxZdntm+IpO4kE=3D?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6c447af9-bff8-4182-a35a-08d9ef9bf1b8 X-MS-Exchange-CrossTenant-AuthSource: VI1PR04MB5600.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Feb 2022 09:25:30.6202 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AKz6K/yInSzvCMCOegjV14k5CrxAh3N/Wq3em6a+ELqHlNs9BPO0nZQgtZmIPXGxsQhdfMJR9eP+wvNuLzhf8g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB5168 In TDT mode there's no point writing TDCR or TMICT, while outside of that mode there's no need for the MFENCE. No change intended to overall functioning. Signed-off-by: Jan Beulich Reviewed-by: Roger Pau Monné --- v2: New. --- a/xen/arch/x86/apic.c +++ b/xen/arch/x86/apic.c @@ -1059,24 +1059,25 @@ static void __setup_APIC_LVTT(unsigned i { unsigned int lvtt_value, tmp_value; - /* NB. Xen uses local APIC timer in one-shot mode. */ - lvtt_value = /*APIC_TIMER_MODE_PERIODIC |*/ LOCAL_TIMER_VECTOR; - if ( tdt_enabled ) { - lvtt_value &= (~APIC_TIMER_MODE_MASK); - lvtt_value |= APIC_TIMER_MODE_TSC_DEADLINE; + lvtt_value = APIC_TIMER_MODE_TSC_DEADLINE | LOCAL_TIMER_VECTOR; + apic_write(APIC_LVTT, lvtt_value); + + /* + * See Intel SDM: TSC-Deadline Mode chapter. In xAPIC mode, + * writing to the APIC LVTT and TSC_DEADLINE MSR isn't serialized. + * According to Intel, MFENCE can do the serialization here. + */ + asm volatile( "mfence" : : : "memory" ); + + return; } + /* NB. Xen uses local APIC timer in one-shot mode. */ + lvtt_value = /*APIC_TIMER_MODE_PERIODIC |*/ LOCAL_TIMER_VECTOR; apic_write(APIC_LVTT, lvtt_value); - /* - * See Intel SDM: TSC-Deadline Mode chapter. In xAPIC mode, - * writing to the APIC LVTT and TSC_DEADLINE MSR isn't serialized. - * According to Intel, MFENCE can do the serialization here. - */ - asm volatile( "mfence" : : : "memory" ); - tmp_value = apic_read(APIC_TDCR); apic_write(APIC_TDCR, tmp_value | APIC_TDR_DIV_1);