Message ID | 2120a03f-3712-82d2-0b3d-759a996d0c87@suse.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show
Return-Path: <xen-devel-bounces@lists.xenproject.org> 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 91D1B13BD for <patchwork-xen-devel@patchwork.kernel.org>; Fri, 19 Jul 2019 10:31:54 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7EC85287D1 for <patchwork-xen-devel@patchwork.kernel.org>; Fri, 19 Jul 2019 10:31:54 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 6D5DF288BB; Fri, 19 Jul 2019 10:31:54 +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=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id EF60B287D1 for <patchwork-xen-devel@patchwork.kernel.org>; Fri, 19 Jul 2019 10:31:53 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from <xen-devel-bounces@lists.xenproject.org>) id 1hoQ9T-0004Fq-3e; Fri, 19 Jul 2019 10:30:11 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from <SRS0=wvcP=VQ=suse.com=jbeulich@srs-us1.protection.inumbo.net>) id 1hoQ9R-0004Fa-Ly for xen-devel@lists.xenproject.org; Fri, 19 Jul 2019 10:30:09 +0000 X-Inumbo-ID: 2dd7cfda-aa10-11e9-8980-bc764e045a96 Received: from m9a0003g.houston.softwaregrp.com (unknown [15.124.64.68]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id 2dd7cfda-aa10-11e9-8980-bc764e045a96; Fri, 19 Jul 2019 10:30:08 +0000 (UTC) Received: FROM m9a0003g.houston.softwaregrp.com (15.121.0.190) BY m9a0003g.houston.softwaregrp.com WITH ESMTP; Fri, 19 Jul 2019 10:30:03 +0000 Received: from M4W0334.microfocus.com (2002:f78:1192::f78:1192) by M9W0067.microfocus.com (2002:f79:be::f79:be) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10; Fri, 19 Jul 2019 10:29:37 +0000 Received: from NAM03-DM3-obe.outbound.protection.outlook.com (15.124.8.12) by M4W0334.microfocus.com (15.120.17.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1591.10 via Frontend Transport; Fri, 19 Jul 2019 10:29:37 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N+SbXQCmb0EG2MpDimHimQFRqRCy+uEHAbFLD7mhZVfiivL6rKs2dJGyyJIk7YVSrkr2dDrJBI2QJFPNj7tAmZLcxIJnPVYtTqAhdZfCw+ycAsFlAxahCcXZMxy00Y44fye2+lubtvmx+j1oHewAxS0rNMDdqRqlHLPNL04TGSA6AG65qNwS8I97/eAeQH7ItBx5qrQ7MqdwzhxPFQWjbvKIBFJg9x9jtfq6YBiiJwN0/jtZQ3bVWIhqcYn+y7gKxIBrYY6R0QoFueYCIPdcWQkYUAQU3cADQSGb0sY2GS+w1I1Kh6UYICZG/dnuYF5sEemrOw3H15fJSyulk7gsXw== 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-SenderADCheck; bh=AXO7ZHh8KO9QySatYEKjIhxrXNYQLgOP6fVcipQY5aM=; b=PoHG6DBMjH/Qzg0ZAC96ritAnhUvqnuY3x2nUVRhpDGOb4SnuSI3o7tIWqtA9xUcN27pYqP3hTLQ64FI8T9lyTSwAJxZQC8MVFmq0HwNAf1nhedRVLhrwBbnYujyGO86mVlQMBktXz2V0I3RZxH3Xqd3m/qRhSnUfi//Jd/gfGLRC3G0sqAZsr+mW0T8sVmcbuZgwKIDm1+bgD0wrCDkG5fmVrbZqBFGls4jiAo89B8nTK5oqji5v58crhGGxjUOyIc3/vQoQuWgrx2B+690/PSGqJ0OOynVKzYk6cEvSRmPxwew8OJAD+ImvDBrNvyomjW+fD60ekYZNtMcMVzTRQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1;spf=pass smtp.mailfrom=suse.com;dmarc=pass action=none header.from=suse.com;dkim=pass header.d=suse.com;arc=none Received: from DM6PR18MB3401.namprd18.prod.outlook.com (10.255.174.218) by DM6PR18MB2540.namprd18.prod.outlook.com (20.179.105.160) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2094.12; Fri, 19 Jul 2019 10:29:36 +0000 Received: from DM6PR18MB3401.namprd18.prod.outlook.com ([fe80::1fe:35f6:faf3:78c7]) by DM6PR18MB3401.namprd18.prod.outlook.com ([fe80::1fe:35f6:faf3:78c7%7]) with mapi id 15.20.2073.012; Fri, 19 Jul 2019 10:29:36 +0000 From: Jan Beulich <JBeulich@suse.com> To: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org> Thread-Topic: [PATCH v2 2/2] x86/mtrr: Skip cache flushes on CPUs with cache self-snooping Thread-Index: AQHVPhzduXN26MwI5kWBrLOv0yjR7g== Date: Fri, 19 Jul 2019 10:29:36 +0000 Message-ID: <2120a03f-3712-82d2-0b3d-759a996d0c87@suse.com> References: <0ccb27d1-6612-d915-a898-8423ac3afdd0@suse.com> In-Reply-To: <0ccb27d1-6612-d915-a898-8423ac3afdd0@suse.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: LO2P265CA0334.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:a4::34) To DM6PR18MB3401.namprd18.prod.outlook.com (2603:10b6:5:1cc::26) authentication-results: spf=none (sender IP is ) smtp.mailfrom=JBeulich@suse.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [87.234.252.170] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c35da599-08a2-4708-6a24-08d70c33ff7d x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020); SRVR:DM6PR18MB2540; x-ms-traffictypediagnostic: DM6PR18MB2540: x-microsoft-antispam-prvs: <DM6PR18MB2540EEFE86F2EAFF38381E77B3CB0@DM6PR18MB2540.namprd18.prod.outlook.com> x-ms-oob-tlc-oobclassifiers: OLM:2582; x-forefront-prvs: 01039C93E4 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(4636009)(39860400002)(136003)(376002)(346002)(396003)(366004)(199004)(189003)(66066001)(446003)(11346002)(3846002)(6116002)(6436002)(36756003)(26005)(53936002)(5640700003)(2616005)(476003)(102836004)(186003)(6486002)(478600001)(14454004)(2351001)(25786009)(256004)(14444005)(486006)(6506007)(71200400001)(7736002)(6916009)(71190400001)(2501003)(316002)(4326008)(99286004)(8676002)(305945005)(86362001)(31696002)(54906003)(31686004)(5660300002)(2906002)(66556008)(76176011)(52116002)(6512007)(386003)(80792005)(66946007)(81156014)(68736007)(8936002)(81166006)(66446008)(64756008)(66476007); DIR:OUT; SFP:1102; SCL:1; SRVR:DM6PR18MB2540; H:DM6PR18MB3401.namprd18.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: suse.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: dWU70aBWfFS/HywhVK35Vz5QhSQHLBF/1rk6p8SDIu1ZOF59qaQoPRVPUr/fkfO1hw4BxIvHrEygi0OiaMODjFVbIBVQ5lN1NiACRjzNJBOusiMtNU+oHPBFOqXbqrmy3VNvhiW1Et7Hsc21Os3RkUJZtFpJE1r9kQ5UCw7gmrOJh9W/mw7AqvWo3wsdEVJlW5z9oRn14WkfdrrBWfS3CjaH7p2WCoy/vnszD78cLEKlLw7Gu0r85Vggv5+fQes1iRQrSFtLx/Lp0Wvs3NAJv+aKLJF/BaJ7KnIoejRrLMifz1j6nqzbvKt4yaN3cu8hqhZIB61XKIZJVxI6Cjxf7P7ePzPJcrXFxCxSnsrPRfVFqhA5m85LGFpIfH3/4VRts4LVUVTbUIOTbezmerhP/CatZNnEgAxncJrEodQUhjo= Content-ID: <52C2239B8BC4724684C1374403D8B075@namprd18.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: c35da599-08a2-4708-6a24-08d70c33ff7d X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jul 2019 10:29:36.6608 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 856b813c-16e5-49a5-85ec-6f081e13b527 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: JBeulich@suse.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR18MB2540 X-OriginatorOrg: suse.com Subject: [Xen-devel] [PATCH v2 2/2] x86/mtrr: Skip cache flushes on CPUs with cache self-snooping X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion <xen-devel.lists.xenproject.org> List-Unsubscribe: <https://lists.xenproject.org/mailman/options/xen-devel>, <mailto:xen-devel-request@lists.xenproject.org?subject=unsubscribe> List-Post: <mailto:xen-devel@lists.xenproject.org> List-Help: <mailto:xen-devel-request@lists.xenproject.org?subject=help> List-Subscribe: <https://lists.xenproject.org/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xenproject.org?subject=subscribe> Cc: Andrew Cooper <andrew.cooper3@citrix.com>, Wei Liu <wl@xen.org>, =?utf-8?q?Roger_Pau_Monn=C3=A9?= <roger.pau@citrix.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" <xen-devel-bounces@lists.xenproject.org> X-Virus-Scanned: ClamAV using ClamSMTP |
Series |
x86: port self-snoop related patches from Linux
|
expand
|
--- a/xen/arch/x86/cpu/mtrr/generic.c +++ b/xen/arch/x86/cpu/mtrr/generic.c @@ -450,7 +450,14 @@ static bool prepare_set(void) /* Enter the no-fill (CD=1, NW=0) cache mode and flush caches. */ write_cr0(read_cr0() | X86_CR0_CD); - wbinvd(); + + /* + * Cache flushing is the most time-consuming step when programming + * the MTRRs. Fortunately, as per the Intel Software Development + * Manual, we can skip it if the processor supports cache self- + * snooping. + */ + alternative("wbinvd", "", X86_FEATURE_XEN_SELFSNOOP); cr4 = read_cr4(); if (cr4 & X86_CR4_PGE) @@ -466,6 +473,9 @@ static bool prepare_set(void) /* Disable MTRRs, and set the default type to uncached */ mtrr_wrmsr(MSR_MTRRdefType, deftype & ~0xcff); + /* Again, only flush caches if we have to. */ + alternative("wbinvd", "", X86_FEATURE_XEN_SELFSNOOP); + return cr4 & X86_CR4_PGE; }