From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=BAYES_00,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 370D6C433E0 for ; Tue, 12 Jan 2021 14:54:16 +0000 (UTC) Received: from mm01.cs.columbia.edu (mm01.cs.columbia.edu [128.59.11.253]) by mail.kernel.org (Postfix) with ESMTP id 8D28123130 for ; Tue, 12 Jan 2021 14:54:15 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8D28123130 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvmarm-bounces@lists.cs.columbia.edu Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id CE8954B184; Tue, 12 Jan 2021 09:54:14 -0500 (EST) X-Virus-Scanned: at lists.cs.columbia.edu Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dGlhFb8cRcj6; Tue, 12 Jan 2021 09:54:13 -0500 (EST) Received: from mm01.cs.columbia.edu (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 509424B198; Tue, 12 Jan 2021 09:54:13 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 634DE4B198 for ; Tue, 12 Jan 2021 09:54:12 -0500 (EST) X-Virus-Scanned: at lists.cs.columbia.edu Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7lpbb5AKWcfw for ; Tue, 12 Jan 2021 09:54:11 -0500 (EST) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id D9E774B184 for ; Tue, 12 Jan 2021 09:54:10 -0500 (EST) Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 7AB1320739; Tue, 12 Jan 2021 14:54:09 +0000 (UTC) Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94) (envelope-from ) id 1kzL3f-006zzO-CO; Tue, 12 Jan 2021 14:54:07 +0000 MIME-Version: 1.0 Date: Tue, 12 Jan 2021 14:54:07 +0000 From: Marc Zyngier To: Suzuki K Poulose Subject: Re: [PATCH v3 09/21] arm64: cpufeature: Add global feature override facility In-Reply-To: <168970f2-89d8-4e57-ab8d-59fa52bd830a@arm.com> References: <20210111132811.2455113-1-maz@kernel.org> <20210111132811.2455113-10-maz@kernel.org> <20210111184154.GC17941@gaia> <129db8bd3913a90c96d4cfe4f55e27a0@kernel.org> <168970f2-89d8-4e57-ab8d-59fa52bd830a@arm.com> User-Agent: Roundcube Webmail/1.4.9 Message-ID: <750d69f418b78deb5031da86df119911@kernel.org> X-Sender: maz@kernel.org X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: suzuki.poulose@arm.com, catalin.marinas@arm.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org, will@kernel.org, mark.rutland@arm.com, dbrazdil@google.com, alexandru.elisei@arm.com, ardb@kernel.org, jingzhangos@google.com, pajay@qti.qualcomm.com, psodagud@codeaurora.org, sramana@codeaurora.org, james.morse@arm.com, julien.thierry.kdev@gmail.com, kernel-team@android.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Cc: Prasad Sodagudi , Srinivas Ramana , kernel-team@android.com, Catalin Marinas , linux-kernel@vger.kernel.org, Ard Biesheuvel , Ajay Patil , Will Deacon , kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org X-BeenThere: kvmarm@lists.cs.columbia.edu X-Mailman-Version: 2.1.14 Precedence: list List-Id: Where KVM/ARM decisions are made List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu T24gMjAyMS0wMS0xMiAxMTo1OSwgU3V6dWtpIEsgUG91bG9zZSB3cm90ZToKPiBPbiAxLzEyLzIx IDExOjUwIEFNLCBNYXJjIFp5bmdpZXIgd3JvdGU6Cj4+IEhpIFN1enVraSwKPj4gCj4+IE9uIDIw MjEtMDEtMTIgMDk6MTcsIFN1enVraSBLIFBvdWxvc2Ugd3JvdGU6Cj4+PiBIaSBNYXJjLAo+Pj4g Cj4+PiBPbiAxLzExLzIxIDc6NDggUE0sIE1hcmMgWnluZ2llciB3cm90ZToKPj4gCj4+IFsuLi5d Cj4+IAo+Pj4+IGRpZmYgLS1naXQgYS9hcmNoL2FybTY0L2tlcm5lbC9jcHVmZWF0dXJlLmMgCj4+ Pj4gYi9hcmNoL2FybTY0L2tlcm5lbC9jcHVmZWF0dXJlLmMKPj4+PiBpbmRleCA4OTRhZjYwYjk2 NjkuLjAwZDk5ZTU5M2I2NSAxMDA2NDQKPj4+PiAtLS0gYS9hcmNoL2FybTY0L2tlcm5lbC9jcHVm ZWF0dXJlLmMKPj4+PiArKysgYi9hcmNoL2FybTY0L2tlcm5lbC9jcHVmZWF0dXJlLmMKPj4+PiBA QCAtNzc0LDYgKzc3NCw3IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBpbml0X2NwdV9mdHJfcmVnKHUz MiBzeXNfcmVnLCAKPj4+PiB1NjQgbmV3KQo+Pj4+IMKgwqDCoMKgwqAgdTY0IHN0cmljdF9tYXNr ID0gfjB4MFVMTDsKPj4+PiDCoMKgwqDCoMKgIHU2NCB1c2VyX21hc2sgPSAwOwo+Pj4+IMKgwqDC oMKgwqAgdTY0IHZhbGlkX21hc2sgPSAwOwo+Pj4+ICvCoMKgwqAgdTY0IG92ZXJyaWRlX3ZhbCA9 IDAsIG92ZXJyaWRlX21hc2sgPSAwOwo+Pj4+IAo+Pj4+IMKgwqDCoMKgwqAgY29uc3Qgc3RydWN0 IGFybTY0X2Z0cl9iaXRzICpmdHJwOwo+Pj4+IMKgwqDCoMKgwqAgc3RydWN0IGFybTY0X2Z0cl9y ZWcgKnJlZyA9IGdldF9hcm02NF9mdHJfcmVnKHN5c19yZWcpOwo+Pj4+IEBAIC03ODEsOSArNzgy LDM1IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBpbml0X2NwdV9mdHJfcmVnKHUzMiAKPj4+PiBzeXNf cmVnLCB1NjQgbmV3KQo+Pj4+IMKgwqDCoMKgwqAgaWYgKCFyZWcpCj4+Pj4gwqDCoMKgwqDCoMKg wqDCoMKgIHJldHVybjsKPj4+PiAKPj4+PiArwqDCoMKgIGlmIChyZWctPm92ZXJyaWRlX21hc2sg JiYgcmVnLT5vdmVycmlkZV92YWwpIHsKPj4+PiArwqDCoMKgwqDCoMKgwqAgb3ZlcnJpZGVfbWFz ayA9ICpyZWctPm92ZXJyaWRlX21hc2s7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIG92ZXJyaWRlX3Zh bCA9ICpyZWctPm92ZXJyaWRlX3ZhbDsKPj4+PiArwqDCoMKgIH0KPj4+PiArCj4+Pj4gwqDCoMKg wqDCoCBmb3IgKGZ0cnAgPSByZWctPmZ0cl9iaXRzOyBmdHJwLT53aWR0aDsgZnRycCsrKSB7Cj4+ Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIHU2NCBmdHJfbWFzayA9IGFybTY0X2Z0cl9tYXNrKGZ0cnAp Owo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBzNjQgZnRyX25ldyA9IGFybTY0X2Z0cl92YWx1ZShm dHJwLCBuZXcpOwo+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzNjQgZnRyX292ciA9IGFybTY0X2Z0cl92 YWx1ZShmdHJwLCBvdmVycmlkZV92YWwpOwo+Pj4+ICsKPj4+PiArwqDCoMKgwqDCoMKgwqAgaWYg KChmdHJfbWFzayAmIG92ZXJyaWRlX21hc2spID09IGZ0cl9tYXNrKSB7Cj4+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqAgaWYgKGZ0cl9vdnIgPCBmdHJfbmV3KSB7Cj4+PiAKPj4+IEhlcmUgd2Ug YXNzdW1lIHRoYXQgYWxsIHRoZSBmZWF0dXJlcyBhcmUgRlRSX0xPV0VSX1NBRkUuIFdlIGNvdWxk Cj4+PiBwcm9iYWJseSB1c2UgYXJtNjRfZnRyX3NhZmVfdmFsdWUoZnRycCwgZnRyX25ldywgZnRy X292cikgaGVyZSA/Cj4+PiBUaGF0IHdvdWxkIGNvdmVyIHVzIGZvciBib3RoIEhJR0hFUl9TQUZF IGFuZCBMT1dFUl9TQUZFIGZlYXR1cmVzLgo+Pj4gSG93ZXZlciB0aGF0IG1heSBiZSByZXN0cmlj dGl2ZSBmb3IgRlRSX0VYQUNULCBhcyB3ZSB0aGUgc2FmZQo+Pj4gdmFsdWUgd291bGQgYmUgc2V0 IHRvICJmdHItPnNhZmVfdmFsIi4gSSBndWVzcyB0aGF0IG1heSBiZSBiZXR0ZXIKPj4+IHRoYW4g Zm9yY2luZyB0byB1c2UgYW4gdW5zYWZlIHZhbHVlIGZvciB0aGUgYm9vdCBDUFUsIHdoaWNoIGNv dWxkCj4+PiBhbnl3YXkgY29uZmxpY3Qgd2l0aCB0aGUgb3RoZXIgQ1BVcyBhbmQgZXZlbnR1YWxs eSB0cmlnZ2VyIHRoZQo+Pj4gZnRyIGFsdWUgdG8gYmUgc2FmZV92YWwuCj4+IAo+PiBJIGxpa2Ug dGhlIGlkZWEgb2YgdXNpbmcgdGhlIGhlbHBlciwgYXMgaXQgY2xlYW51cHMgdXAgdGhlIGNvZGUg YSBiaXQuCj4+IEhvd2V2ZXIsIG5vdCBiZWluZyB0byBzZXQgYSBmZWF0dXJlIHRvIGEgY2VydGFp biB2YWx1ZSBjb3VsZCBiZSAKPj4gcmVzdHJpY3RpdmUsCj4+IGFzIGluIGdlbmVyYWwsIGl0IG1l YW5zIHRoYXQgd2UgY2FuIG9ubHkgZGlzYWJsZSBhIGZlYXR1cmUgYW5kIG5vdCAKPj4gYWRqdXN0 Cj4+IGl0cyBsZXZlbCBvZiBzdXBwb3J0Lgo+PiAKPj4gVGFrZSBQTVVWRVIgZm9yIGV4YW1wbGU6 IHdpdGggdGhlIGhlbHBlciwgSSBjYW4ndCBvdmVycmlkZSBpdCBmcm9tIAo+PiB2OC40IHRvCj4+ IHY4LjEuIEkgY2FuIG9ubHkgZ28gdG8gdjguMC4KPiAKPiBNeSBwb2ludCBpcywgd2Ugc2V0IHRo aXMgb25seSBmb3IgdGhlICJpbml0IiBvZiBjcHUgZmVhdHVyZXMuIFNvLCBldmVuIAo+IGlmIHdl Cj4gaW5pdCB0byBhIGN1c3RvbSAsIG5vbi0oZGVmYXVsdC1zYWZlKSB2YWx1ZSwgdGhlIHNlY29u ZGFyeSBDUFVzIGNvdWxkIAo+IHNjcmVhbSwKPiBhbmQgdGhlIHN5c3RlbSB3aWRlIHNhZmUgdmFs dWUgY291bGQgZmFsbCBiYWNrIHRvIHRoZSAic2FmZSIgdmFsdWUgZm9yCj4gRVhBQ1QgZmVhdHVy ZXMsIG5vIG1hdHRlciB3aGF0IHlvdSBkaWQgdG8gaW5pdCBpdC4KClJpZ2h0LiBTbyBsZXQncyBn byB3aXRoIHRoZSBzYWZlIHZhbHVlIGZvciBFWEFDVCBmZWF0dXJlcyBmb3Igbm93LAphbmQgbGV0 IHRoZSBvdmVycmlkZSBmYWlsIGlmIHRoYXQncyBub3Qgd2hhdCB0aGUgdXNlciBhc2tlZCBmb3Iu CgpBZnRlciBhbGwsIHRoZXJlIGFyZSBvbmx5IHNvIG1hbnkgdGhpbmdzIHdlIHdhbnQgdG8gc3Vw cG9ydCBhcwphbiBvdmVycmlkZSwgYW5kIGluIGFsbCB0aGUgY2FzZXMgYXQgaGFuZCwgdXNpbmcg dGhlIHNhZmUgdmFsdWUKYWN0dWFsbHkgbWF0Y2hlcyB3aGF0IHdlIHdhbnQgdG8gZG8uCgpXZSBj YW4gYWx3YXlzIHJldmlzaXQgdGhpcyBpZiBhbmQgd2hlbiB3ZSBuZWVkIGEgZGlmZmVyZW50IGJl aGF2aW91ci4KClRoYW5rcywKCiAgICAgICAgIE0uCi0tIApKYXp6IGlzIG5vdCBkZWFkLiBJdCBq dXN0IHNtZWxscyBmdW5ueS4uLgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwprdm1hcm0gbWFpbGluZyBsaXN0Cmt2bWFybUBsaXN0cy5jcy5jb2x1bWJpYS5l ZHUKaHR0cHM6Ly9saXN0cy5jcy5jb2x1bWJpYS5lZHUvbWFpbG1hbi9saXN0aW5mby9rdm1hcm0K From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 38025C433E0 for ; Tue, 12 Jan 2021 14:56:11 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id DE1E1221EC for ; Tue, 12 Jan 2021 14:56:10 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DE1E1221EC Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Message-ID:References:In-Reply-To:Subject:To:From: Date:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=5KYEdPfLj25Gy0Za/vNrweRsBH2WBtyir1BDLu0Fml8=; b=CPj6VE1DP7BohNDFK/A5aCHGa 67lEgDlNyJemgezdexnIjEHkTcJwryoYA3rroMuxAJZDA+rdywS7QTARKCPgwo4/4+iczuQB2Uow0 TiahKfCgzziPEKyEYn4z767x4WFcrfx5IuiPsQHxXT0sQR3/pEL1975dHWxo/V94adP+1lO74NMie fMFV/OUIZ//9fUuYy16U+Ly3OOUlDIWCK7Wjb65ALqx0aSKcmJvtWwN9gHWxwhpKOuxYjHnKLQkT5 NDv9em7tydCnSwkVssz1x2qLQqG0tq97gixUm9XRT0gMPhzXGknxajmSms68Aa9+bvLg+tQnpvewq ym1xji77w==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kzL3q-0001OA-CW; Tue, 12 Jan 2021 14:54:19 +0000 Received: from mail.kernel.org ([198.145.29.99]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kzL3i-0001MV-I0 for linux-arm-kernel@lists.infradead.org; Tue, 12 Jan 2021 14:54:14 +0000 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 7AB1320739; Tue, 12 Jan 2021 14:54:09 +0000 (UTC) Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94) (envelope-from ) id 1kzL3f-006zzO-CO; Tue, 12 Jan 2021 14:54:07 +0000 MIME-Version: 1.0 Date: Tue, 12 Jan 2021 14:54:07 +0000 From: Marc Zyngier To: Suzuki K Poulose Subject: Re: [PATCH v3 09/21] arm64: cpufeature: Add global feature override facility In-Reply-To: <168970f2-89d8-4e57-ab8d-59fa52bd830a@arm.com> References: <20210111132811.2455113-1-maz@kernel.org> <20210111132811.2455113-10-maz@kernel.org> <20210111184154.GC17941@gaia> <129db8bd3913a90c96d4cfe4f55e27a0@kernel.org> <168970f2-89d8-4e57-ab8d-59fa52bd830a@arm.com> User-Agent: Roundcube Webmail/1.4.9 Message-ID: <750d69f418b78deb5031da86df119911@kernel.org> X-Sender: maz@kernel.org X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: suzuki.poulose@arm.com, catalin.marinas@arm.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org, will@kernel.org, mark.rutland@arm.com, dbrazdil@google.com, alexandru.elisei@arm.com, ardb@kernel.org, jingzhangos@google.com, pajay@qti.qualcomm.com, psodagud@codeaurora.org, sramana@codeaurora.org, james.morse@arm.com, julien.thierry.kdev@gmail.com, kernel-team@android.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210112_095410_804288_6950453E X-CRM114-Status: GOOD ( 21.23 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , Jing Zhang , Prasad Sodagudi , Srinivas Ramana , kernel-team@android.com, Catalin Marinas , Alexandru Elisei , linux-kernel@vger.kernel.org, Ard Biesheuvel , James Morse , Julien Thierry , Ajay Patil , David Brazdil , Will Deacon , kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMjAyMS0wMS0xMiAxMTo1OSwgU3V6dWtpIEsgUG91bG9zZSB3cm90ZToKPiBPbiAxLzEyLzIx IDExOjUwIEFNLCBNYXJjIFp5bmdpZXIgd3JvdGU6Cj4+IEhpIFN1enVraSwKPj4gCj4+IE9uIDIw MjEtMDEtMTIgMDk6MTcsIFN1enVraSBLIFBvdWxvc2Ugd3JvdGU6Cj4+PiBIaSBNYXJjLAo+Pj4g Cj4+PiBPbiAxLzExLzIxIDc6NDggUE0sIE1hcmMgWnluZ2llciB3cm90ZToKPj4gCj4+IFsuLi5d Cj4+IAo+Pj4+IGRpZmYgLS1naXQgYS9hcmNoL2FybTY0L2tlcm5lbC9jcHVmZWF0dXJlLmMgCj4+ Pj4gYi9hcmNoL2FybTY0L2tlcm5lbC9jcHVmZWF0dXJlLmMKPj4+PiBpbmRleCA4OTRhZjYwYjk2 NjkuLjAwZDk5ZTU5M2I2NSAxMDA2NDQKPj4+PiAtLS0gYS9hcmNoL2FybTY0L2tlcm5lbC9jcHVm ZWF0dXJlLmMKPj4+PiArKysgYi9hcmNoL2FybTY0L2tlcm5lbC9jcHVmZWF0dXJlLmMKPj4+PiBA QCAtNzc0LDYgKzc3NCw3IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBpbml0X2NwdV9mdHJfcmVnKHUz MiBzeXNfcmVnLCAKPj4+PiB1NjQgbmV3KQo+Pj4+IMKgwqDCoMKgwqAgdTY0IHN0cmljdF9tYXNr ID0gfjB4MFVMTDsKPj4+PiDCoMKgwqDCoMKgIHU2NCB1c2VyX21hc2sgPSAwOwo+Pj4+IMKgwqDC oMKgwqAgdTY0IHZhbGlkX21hc2sgPSAwOwo+Pj4+ICvCoMKgwqAgdTY0IG92ZXJyaWRlX3ZhbCA9 IDAsIG92ZXJyaWRlX21hc2sgPSAwOwo+Pj4+IAo+Pj4+IMKgwqDCoMKgwqAgY29uc3Qgc3RydWN0 IGFybTY0X2Z0cl9iaXRzICpmdHJwOwo+Pj4+IMKgwqDCoMKgwqAgc3RydWN0IGFybTY0X2Z0cl9y ZWcgKnJlZyA9IGdldF9hcm02NF9mdHJfcmVnKHN5c19yZWcpOwo+Pj4+IEBAIC03ODEsOSArNzgy LDM1IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBpbml0X2NwdV9mdHJfcmVnKHUzMiAKPj4+PiBzeXNf cmVnLCB1NjQgbmV3KQo+Pj4+IMKgwqDCoMKgwqAgaWYgKCFyZWcpCj4+Pj4gwqDCoMKgwqDCoMKg wqDCoMKgIHJldHVybjsKPj4+PiAKPj4+PiArwqDCoMKgIGlmIChyZWctPm92ZXJyaWRlX21hc2sg JiYgcmVnLT5vdmVycmlkZV92YWwpIHsKPj4+PiArwqDCoMKgwqDCoMKgwqAgb3ZlcnJpZGVfbWFz ayA9ICpyZWctPm92ZXJyaWRlX21hc2s7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIG92ZXJyaWRlX3Zh bCA9ICpyZWctPm92ZXJyaWRlX3ZhbDsKPj4+PiArwqDCoMKgIH0KPj4+PiArCj4+Pj4gwqDCoMKg wqDCoCBmb3IgKGZ0cnAgPSByZWctPmZ0cl9iaXRzOyBmdHJwLT53aWR0aDsgZnRycCsrKSB7Cj4+ Pj4gwqDCoMKgwqDCoMKgwqDCoMKgIHU2NCBmdHJfbWFzayA9IGFybTY0X2Z0cl9tYXNrKGZ0cnAp Owo+Pj4+IMKgwqDCoMKgwqDCoMKgwqDCoCBzNjQgZnRyX25ldyA9IGFybTY0X2Z0cl92YWx1ZShm dHJwLCBuZXcpOwo+Pj4+ICvCoMKgwqDCoMKgwqDCoCBzNjQgZnRyX292ciA9IGFybTY0X2Z0cl92 YWx1ZShmdHJwLCBvdmVycmlkZV92YWwpOwo+Pj4+ICsKPj4+PiArwqDCoMKgwqDCoMKgwqAgaWYg KChmdHJfbWFzayAmIG92ZXJyaWRlX21hc2spID09IGZ0cl9tYXNrKSB7Cj4+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqAgaWYgKGZ0cl9vdnIgPCBmdHJfbmV3KSB7Cj4+PiAKPj4+IEhlcmUgd2Ug YXNzdW1lIHRoYXQgYWxsIHRoZSBmZWF0dXJlcyBhcmUgRlRSX0xPV0VSX1NBRkUuIFdlIGNvdWxk Cj4+PiBwcm9iYWJseSB1c2UgYXJtNjRfZnRyX3NhZmVfdmFsdWUoZnRycCwgZnRyX25ldywgZnRy X292cikgaGVyZSA/Cj4+PiBUaGF0IHdvdWxkIGNvdmVyIHVzIGZvciBib3RoIEhJR0hFUl9TQUZF IGFuZCBMT1dFUl9TQUZFIGZlYXR1cmVzLgo+Pj4gSG93ZXZlciB0aGF0IG1heSBiZSByZXN0cmlj dGl2ZSBmb3IgRlRSX0VYQUNULCBhcyB3ZSB0aGUgc2FmZQo+Pj4gdmFsdWUgd291bGQgYmUgc2V0 IHRvICJmdHItPnNhZmVfdmFsIi4gSSBndWVzcyB0aGF0IG1heSBiZSBiZXR0ZXIKPj4+IHRoYW4g Zm9yY2luZyB0byB1c2UgYW4gdW5zYWZlIHZhbHVlIGZvciB0aGUgYm9vdCBDUFUsIHdoaWNoIGNv dWxkCj4+PiBhbnl3YXkgY29uZmxpY3Qgd2l0aCB0aGUgb3RoZXIgQ1BVcyBhbmQgZXZlbnR1YWxs eSB0cmlnZ2VyIHRoZQo+Pj4gZnRyIGFsdWUgdG8gYmUgc2FmZV92YWwuCj4+IAo+PiBJIGxpa2Ug dGhlIGlkZWEgb2YgdXNpbmcgdGhlIGhlbHBlciwgYXMgaXQgY2xlYW51cHMgdXAgdGhlIGNvZGUg YSBiaXQuCj4+IEhvd2V2ZXIsIG5vdCBiZWluZyB0byBzZXQgYSBmZWF0dXJlIHRvIGEgY2VydGFp biB2YWx1ZSBjb3VsZCBiZSAKPj4gcmVzdHJpY3RpdmUsCj4+IGFzIGluIGdlbmVyYWwsIGl0IG1l YW5zIHRoYXQgd2UgY2FuIG9ubHkgZGlzYWJsZSBhIGZlYXR1cmUgYW5kIG5vdCAKPj4gYWRqdXN0 Cj4+IGl0cyBsZXZlbCBvZiBzdXBwb3J0Lgo+PiAKPj4gVGFrZSBQTVVWRVIgZm9yIGV4YW1wbGU6 IHdpdGggdGhlIGhlbHBlciwgSSBjYW4ndCBvdmVycmlkZSBpdCBmcm9tIAo+PiB2OC40IHRvCj4+ IHY4LjEuIEkgY2FuIG9ubHkgZ28gdG8gdjguMC4KPiAKPiBNeSBwb2ludCBpcywgd2Ugc2V0IHRo aXMgb25seSBmb3IgdGhlICJpbml0IiBvZiBjcHUgZmVhdHVyZXMuIFNvLCBldmVuIAo+IGlmIHdl Cj4gaW5pdCB0byBhIGN1c3RvbSAsIG5vbi0oZGVmYXVsdC1zYWZlKSB2YWx1ZSwgdGhlIHNlY29u ZGFyeSBDUFVzIGNvdWxkIAo+IHNjcmVhbSwKPiBhbmQgdGhlIHN5c3RlbSB3aWRlIHNhZmUgdmFs dWUgY291bGQgZmFsbCBiYWNrIHRvIHRoZSAic2FmZSIgdmFsdWUgZm9yCj4gRVhBQ1QgZmVhdHVy ZXMsIG5vIG1hdHRlciB3aGF0IHlvdSBkaWQgdG8gaW5pdCBpdC4KClJpZ2h0LiBTbyBsZXQncyBn byB3aXRoIHRoZSBzYWZlIHZhbHVlIGZvciBFWEFDVCBmZWF0dXJlcyBmb3Igbm93LAphbmQgbGV0 IHRoZSBvdmVycmlkZSBmYWlsIGlmIHRoYXQncyBub3Qgd2hhdCB0aGUgdXNlciBhc2tlZCBmb3Iu CgpBZnRlciBhbGwsIHRoZXJlIGFyZSBvbmx5IHNvIG1hbnkgdGhpbmdzIHdlIHdhbnQgdG8gc3Vw cG9ydCBhcwphbiBvdmVycmlkZSwgYW5kIGluIGFsbCB0aGUgY2FzZXMgYXQgaGFuZCwgdXNpbmcg dGhlIHNhZmUgdmFsdWUKYWN0dWFsbHkgbWF0Y2hlcyB3aGF0IHdlIHdhbnQgdG8gZG8uCgpXZSBj YW4gYWx3YXlzIHJldmlzaXQgdGhpcyBpZiBhbmQgd2hlbiB3ZSBuZWVkIGEgZGlmZmVyZW50IGJl aGF2aW91ci4KClRoYW5rcywKCiAgICAgICAgIE0uCi0tIApKYXp6IGlzIG5vdCBkZWFkLiBJdCBq dXN0IHNtZWxscyBmdW5ueS4uLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5l bEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4v bGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.0 required=3.0 tests=BAYES_00,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3FDA9C433E9 for ; Tue, 12 Jan 2021 14:55:03 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id EF15223107 for ; Tue, 12 Jan 2021 14:55:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2388512AbhALOyv (ORCPT ); Tue, 12 Jan 2021 09:54:51 -0500 Received: from mail.kernel.org ([198.145.29.99]:59626 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726236AbhALOyu (ORCPT ); Tue, 12 Jan 2021 09:54:50 -0500 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 7AB1320739; Tue, 12 Jan 2021 14:54:09 +0000 (UTC) Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94) (envelope-from ) id 1kzL3f-006zzO-CO; Tue, 12 Jan 2021 14:54:07 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Tue, 12 Jan 2021 14:54:07 +0000 From: Marc Zyngier To: Suzuki K Poulose Cc: Catalin Marinas , linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org, Will Deacon , Mark Rutland , David Brazdil , Alexandru Elisei , Ard Biesheuvel , Jing Zhang , Ajay Patil , Prasad Sodagudi , Srinivas Ramana , James Morse , Julien Thierry , kernel-team@android.com Subject: Re: [PATCH v3 09/21] arm64: cpufeature: Add global feature override facility In-Reply-To: <168970f2-89d8-4e57-ab8d-59fa52bd830a@arm.com> References: <20210111132811.2455113-1-maz@kernel.org> <20210111132811.2455113-10-maz@kernel.org> <20210111184154.GC17941@gaia> <129db8bd3913a90c96d4cfe4f55e27a0@kernel.org> <168970f2-89d8-4e57-ab8d-59fa52bd830a@arm.com> User-Agent: Roundcube Webmail/1.4.9 Message-ID: <750d69f418b78deb5031da86df119911@kernel.org> X-Sender: maz@kernel.org X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: suzuki.poulose@arm.com, catalin.marinas@arm.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, linux-kernel@vger.kernel.org, will@kernel.org, mark.rutland@arm.com, dbrazdil@google.com, alexandru.elisei@arm.com, ardb@kernel.org, jingzhangos@google.com, pajay@qti.qualcomm.com, psodagud@codeaurora.org, sramana@codeaurora.org, james.morse@arm.com, julien.thierry.kdev@gmail.com, kernel-team@android.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2021-01-12 11:59, Suzuki K Poulose wrote: > On 1/12/21 11:50 AM, Marc Zyngier wrote: >> Hi Suzuki, >> >> On 2021-01-12 09:17, Suzuki K Poulose wrote: >>> Hi Marc, >>> >>> On 1/11/21 7:48 PM, Marc Zyngier wrote: >> >> [...] >> >>>> diff --git a/arch/arm64/kernel/cpufeature.c >>>> b/arch/arm64/kernel/cpufeature.c >>>> index 894af60b9669..00d99e593b65 100644 >>>> --- a/arch/arm64/kernel/cpufeature.c >>>> +++ b/arch/arm64/kernel/cpufeature.c >>>> @@ -774,6 +774,7 @@ static void __init init_cpu_ftr_reg(u32 sys_reg, >>>> u64 new) >>>>       u64 strict_mask = ~0x0ULL; >>>>       u64 user_mask = 0; >>>>       u64 valid_mask = 0; >>>> +    u64 override_val = 0, override_mask = 0; >>>> >>>>       const struct arm64_ftr_bits *ftrp; >>>>       struct arm64_ftr_reg *reg = get_arm64_ftr_reg(sys_reg); >>>> @@ -781,9 +782,35 @@ static void __init init_cpu_ftr_reg(u32 >>>> sys_reg, u64 new) >>>>       if (!reg) >>>>           return; >>>> >>>> +    if (reg->override_mask && reg->override_val) { >>>> +        override_mask = *reg->override_mask; >>>> +        override_val = *reg->override_val; >>>> +    } >>>> + >>>>       for (ftrp = reg->ftr_bits; ftrp->width; ftrp++) { >>>>           u64 ftr_mask = arm64_ftr_mask(ftrp); >>>>           s64 ftr_new = arm64_ftr_value(ftrp, new); >>>> +        s64 ftr_ovr = arm64_ftr_value(ftrp, override_val); >>>> + >>>> +        if ((ftr_mask & override_mask) == ftr_mask) { >>>> +            if (ftr_ovr < ftr_new) { >>> >>> Here we assume that all the features are FTR_LOWER_SAFE. We could >>> probably use arm64_ftr_safe_value(ftrp, ftr_new, ftr_ovr) here ? >>> That would cover us for both HIGHER_SAFE and LOWER_SAFE features. >>> However that may be restrictive for FTR_EXACT, as we the safe >>> value would be set to "ftr->safe_val". I guess that may be better >>> than forcing to use an unsafe value for the boot CPU, which could >>> anyway conflict with the other CPUs and eventually trigger the >>> ftr alue to be safe_val. >> >> I like the idea of using the helper, as it cleanups up the code a bit. >> However, not being to set a feature to a certain value could be >> restrictive, >> as in general, it means that we can only disable a feature and not >> adjust >> its level of support. >> >> Take PMUVER for example: with the helper, I can't override it from >> v8.4 to >> v8.1. I can only go to v8.0. > > My point is, we set this only for the "init" of cpu features. So, even > if we > init to a custom , non-(default-safe) value, the secondary CPUs could > scream, > and the system wide safe value could fall back to the "safe" value for > EXACT features, no matter what you did to init it. Right. So let's go with the safe value for EXACT features for now, and let the override fail if that's not what the user asked for. After all, there are only so many things we want to support as an override, and in all the cases at hand, using the safe value actually matches what we want to do. We can always revisit this if and when we need a different behaviour. Thanks, M. -- Jazz is not dead. It just smells funny...