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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 B40DFC5478C for ; Tue, 27 Feb 2024 19:07:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=iflHHViSvQ54YfN50Yz5foJGHYg6fafajbtKJb+3y5g=; b=iB/1cPDxHyDsgF A9E8grcek1UJM5AyyBjujadpBuCbp4s6yDJGp0U76Bs/4VxTLCQ1M3/tEK03O4J4i6aGszCHDOHQh VFJTl4bSNg5/goLJwzTRYIvgcvEeDBG81PbC+0pde+65+JOryXzv8YZmy0oEQwwibX8U5LA8vC2JN Su58V4J3IxCAT8UV9CbKW1s+BndYTs/eZ+5yad+js9CF9EkK3NuRO3xkY1mjur4YRh6h+DB1DhsjM K/JcX6oRH8ieFUxlorHjia1B0lpyL5G6i0PuIsamqFfFwHvnOcDek3Aak3pLCfQjPlbGRrLGmWQRB 9COEcuRXestsdhDmJmeg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rf2nV-00000006Yca-14lS; Tue, 27 Feb 2024 19:07:25 +0000 Received: from mail-pf1-x433.google.com ([2607:f8b0:4864:20::433]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rf2nS-00000006Ybg-0W7R for linux-riscv@lists.infradead.org; Tue, 27 Feb 2024 19:07:23 +0000 Received: by mail-pf1-x433.google.com with SMTP id d2e1a72fcca58-6e4670921a4so2622400b3a.0 for ; Tue, 27 Feb 2024 11:07:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1709060841; x=1709665641; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=ciUcqpYBqZeAizd1bXUZV1jOtaGsZb5b//1Mxq7v5tY=; b=nNO4E4gAfkQ10KpKbk5aMw33mEAheZpcm4IILf7wT6lKKZGenfxPuSBoTo3+WPuNRo VcsnMQAY1USBOb5WN9RfGXHNXakMBFcq4hLGXRJlXjQDK3t8idrgFh5oCwzn0lBjw3wn WuWNYOlsbNjfZkhAETcJJ2e9P2m+67e4ZLdKVy4yYiSU5pscDYG43mMlNgHSKHeP57/H XNbw3FpHFIUQFhgE8qCSzmT13Q25YPaZ5F+MB7OjSwnNP78L+2842bRA88FFp/j7rx58 gj0WTDR87cRsmbkCludYQf6Qr4x13oA1HMDRWM4APbo9yTSuae2o7WUSM7Rht//QdE5F Oeow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709060841; x=1709665641; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ciUcqpYBqZeAizd1bXUZV1jOtaGsZb5b//1Mxq7v5tY=; b=E9KJH2t9PlDo+4SA4P6Jra2tlovM8wXQaHa6+z5A6hUB+DiKmcgzGHgG0VBQQRLhkE z/Q+uSq6NUVdw6BEUZxDdbggZC56nMd04J3b6RtD+Q2bMO1LkH/PwdILnSMlVYuf3BlS wO22YmuS4wyY07SMaxaU2EMMEWtP4kJvsxiQ7n142Z75MxHP2WTdNg/MsxeWoly/bQL4 sKoVAJeE1ure9gZRjcCP46YMCVZM9Fointl70grjx2NYz78F0h5Rv2DfNEpsXgRVQJKX qYSkJ4o8DGWdDdhmgduTbqtL/rZKm8J/MReioeZgVEHnlMN/ApHI5CWQx94kZKoaQji0 DgLA== X-Forwarded-Encrypted: i=1; AJvYcCXl/N9hQn7pXv8sL3ixjjjM73MbKqjHEzH0ytFWPNHYncbgM4spXMkoZloBx/HnkTFtnT6UBot47YhSu3+hJ4AJurWIcnS078rcekNo9KzR X-Gm-Message-State: AOJu0YyV9BtJAD1stC5xBFgsghFururft+bJUXNuo0IEiBjI7y9Zvi1i IZIYIDETT+hQ+l8yvshiCG1j9/Wg9LBVn/yGRzI9X5/QpSwanl0bUqFmA+z6/Hw= X-Google-Smtp-Source: AGHT+IGdfbdJYpa+UF9WJhw2SRg2KEMy3f2W3xCLWpK3KGsImm0f1UFR9UeaLt7yaGZTLy0+GyXbSA== X-Received: by 2002:a62:cd4e:0:b0:6e3:79ba:6eed with SMTP id o75-20020a62cd4e000000b006e379ba6eedmr12060537pfg.13.1709060841076; Tue, 27 Feb 2024 11:07:21 -0800 (PST) Received: from ghost ([50.213.54.97]) by smtp.gmail.com with ESMTPSA id i19-20020aa787d3000000b006e5544046e9sm816658pfo.19.2024.02.27.11.07.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Feb 2024 11:07:20 -0800 (PST) Date: Tue, 27 Feb 2024 11:07:18 -0800 From: Charlie Jenkins To: Evan Green Subject: Re: [PATCH v4 2/2] riscv: Set unalignment speed at compile time Message-ID: References: <20240216-disable_misaligned_probe_config-v4-0-dc01e581c0ac@rivosinc.com> <20240216-disable_misaligned_probe_config-v4-2-dc01e581c0ac@rivosinc.com> <20240227-condone-impeach-9469dffc6b47@wendy> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240227_110722_193198_86EDCDA9 X-CRM114-Status: GOOD ( 57.89 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Albert Ou , linux-kernel@vger.kernel.org, Eric Biggers , Conor Dooley , Palmer Dabbelt , Jisheng Zhang , Paul Walmsley , =?iso-8859-1?Q?Cl=E9ment_L=E9ger?= , linux-riscv@lists.infradead.org, Charles Lohr Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gVHVlLCBGZWIgMjcsIDIwMjQgYXQgMTA6NDg6MzlBTSAtMDgwMCwgRXZhbiBHcmVlbiB3cm90 ZToKPiBPbiBUdWUsIEZlYiAyNywgMjAyNCBhdCAxMDoxN+KAr0FNIENoYXJsaWUgSmVua2lucyA8 Y2hhcmxpZUByaXZvc2luYy5jb20+IHdyb3RlOgo+ID4KPiA+IE9uIFR1ZSwgRmViIDI3LCAyMDI0 IGF0IDExOjM5OjI1QU0gKzAwMDAsIENvbm9yIERvb2xleSB3cm90ZToKPiA+ID4gT24gRnJpLCBG ZWIgMTYsIDIwMjQgYXQgMTI6MzM6MTlQTSAtMDgwMCwgQ2hhcmxpZSBKZW5raW5zIHdyb3RlOgo+ ID4gPiA+IEludHJvZHVjZSBLY29uZmlnIG9wdGlvbnMgdG8gc2V0IHRoZSBrZXJuZWwgdW5hbGln bmVkIGFjY2VzcyBzdXBwb3J0Lgo+ID4gPiA+IFRoZXNlIG9wdGlvbnMgcHJvdmlkZSBhIG5vbi1w b3J0YWJsZSBhbHRlcm5hdGl2ZSB0byB0aGUgcnVudGltZQo+ID4gPiA+IHVuYWxpZ25lZCBhY2Nl c3MgcHJvYmUuCj4gPiA+ID4KPiA+ID4gPiBUbyBzdXBwb3J0IHRoaXMsIHRoZSB1bmFsaWduZWQg YWNjZXNzIHByb2JpbmcgY29kZSBpcyBtb3ZlZCBpbnRvIGl0J3MKPiA+ID4gPiBvd24gZmlsZSBh bmQgZ2F0ZWQgYmVoaW5kIGEgbmV3IFJJU0NWX1BST0JFX1VOQUxJR05FRF9BQ0NFU1NfU1VQUE9S VAo+ID4gPiA+IG9wdGlvbi4KPiA+ID4gPgo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IENoYXJsaWUg SmVua2lucyA8Y2hhcmxpZUByaXZvc2luYy5jb20+Cj4gPiA+ID4gLS0tCj4gPiA+ID4gIGFyY2gv cmlzY3YvS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNTggKysrKystCj4gPiA+ ID4gIGFyY2gvcmlzY3YvaW5jbHVkZS9hc20vY3B1ZmVhdHVyZS5oICAgICAgICAgfCAgMzAgKysr LQo+ID4gPiA+ICBhcmNoL3Jpc2N2L2tlcm5lbC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgIHwg ICA2ICstCj4gPiA+ID4gIGFyY2gvcmlzY3Yva2VybmVsL2NwdWZlYXR1cmUuYyAgICAgICAgICAg ICAgfCAyNTUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiA+ID4gPiAgYXJjaC9yaXNjdi9r ZXJuZWwvbWlzYWxpZ25lZF9hY2Nlc3Nfc3BlZWQuYyB8IDI2NSArKysrKysrKysrKysrKysrKysr KysrKysrKysrCj4gPiA+ID4gIGFyY2gvcmlzY3Yva2VybmVsL3Byb2JlX2VtdWxhdGVkX2FjY2Vz cy5jICAgfCAgNjQgKysrKysrKwo+ID4gPiA+ICBhcmNoL3Jpc2N2L2tlcm5lbC9zeXNfaHdwcm9i ZS5jICAgICAgICAgICAgIHwgIDI1ICsrKwo+ID4gPiA+ICBhcmNoL3Jpc2N2L2tlcm5lbC90cmFw c19taXNhbGlnbmVkLmMgICAgICAgIHwgIDU0ICstLS0tLQo+ID4gPiA+ICA4IGZpbGVzIGNoYW5n ZWQsIDQ0MiBpbnNlcnRpb25zKCspLCAzMTUgZGVsZXRpb25zKC0pCj4gPiA+ID4KPiA+ID4gPiBk aWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9LY29uZmlnIGIvYXJjaC9yaXNjdi9LY29uZmlnCj4gPiA+ ID4gaW5kZXggYmZmYmQ4NjlhMDY4Li4zY2Y3MDBhZGM0M2IgMTAwNjQ0Cj4gPiA+ID4gLS0tIGEv YXJjaC9yaXNjdi9LY29uZmlnCj4gPiA+ID4gKysrIGIvYXJjaC9yaXNjdi9LY29uZmlnCj4gPiA+ ID4gQEAgLTY5MCwyNSArNjkwLDcxIEBAIGNvbmZpZyBUSFJFQURfU0laRV9PUkRFUgo+ID4gPiA+ ICBjb25maWcgUklTQ1ZfTUlTQUxJR05FRAo+ID4gPgo+ID4gPgo+ID4gPiBXaHkgY2FuIHdlIG5v dCBtYWtlIHVwIG91ciBtaW5kcyBvbiB3aGF0IHRvIGNhbGwgdGhpcz8gVGhlIG1ham9yaXR5IG9m Cj4gPiA+IHVzZXJzIGFyZSAidW5hbGlnbmVkIiBidXQgdGhlIGZpbGUgeW91IGFkZCBhbmQgdGhp cyBjb25maWcgb3B0aW9uIGFyZQo+ID4gPiAibWlzYWxpZ25lZC4iCj4gPgo+ID4gV2UgaGF2ZSBi b3RoIGV2ZXJ5d2hlcmUsIG1heWJlIHdlIChJPykgc2hvdWxkIGdvIGluIGFuZCBzdGFuZGFyZGl6 ZSB0aGUKPiA+IHdvcmRpbmcgZXZlcnl3aGVyZS4gSSBwZXJzb25hbGx5IHByZWZlciAibWlzYWxp Z25lZCIgd2hpY2ggbWVhbnMKPiA+ICJpbmNvcnJlY3RseSBhbGlnbmVkIiBvdmVyICJ1bmFsaWdu ZWQiIHdoaWNoIG1lYW5zICJub3QgYWxpZ25lZCIgYmVjYXVzZQo+ID4gYSA3LWJpdCBhbGlnbm1l bnQgaXMgc3RpbGwgImFsaWduZWQiIGFsb25nIGEgNy1iaXQgYm91bmRhcnksIGJ1dCBpdCBpcwo+ ID4gY2VydGFpbmx5IGluY29ycmVjdGx5IGFsaWduZWQuCj4gPgo+ID4gPgo+ID4gPiA+ICAgICBi b29sICJTdXBwb3J0IG1pc2FsaWduZWQgbG9hZC9zdG9yZSB0cmFwcyBmb3Iga2VybmVsIGFuZCB1 c2Vyc3BhY2UiCj4gPiA+ID4gICAgIHNlbGVjdCBTWVNDVExfQVJDSF9VTkFMSUdOX0FMTE9XCj4g PiA+ID4gKyAgIGRlcGVuZHMgb24gUklTQ1ZfUFJPQkVfVU5BTElHTkVEX0FDQ0VTUyB8fCBSSVND Vl9FTVVMQVRFRF9VTkFMSUdORURfQUNDRVNTCj4gPiA+ID4gICAgIGRlZmF1bHQgeQo+ID4gPiA+ ICAgICBoZWxwCj4gPiA+ID4gICAgICAgU2F5IFkgaGVyZSBpZiB5b3Ugd2FudCB0aGUga2VybmVs IHRvIGVtYmVkIHN1cHBvcnQgZm9yIG1pc2FsaWduZWQKPiA+ID4gPiAgICAgICBsb2FkL3N0b3Jl IGZvciBib3RoIGtlcm5lbCBhbmQgdXNlcnNwYWNlLiBXaGVuIGRpc2FibGUsIG1pc2FsaWduZWQK PiA+ID4gPiAgICAgICBhY2Nlc3NlcyB3aWxsIGdlbmVyYXRlIFNJR0JVUyBpbiB1c2Vyc3BhY2Ug YW5kIHBhbmljIGluIGtlcm5lbC4KPiA+ID4gPgo+ID4gPiA+ICtjaG9pY2UKPiA+ID4gPiArICAg cHJvbXB0ICJVbmFsaWduZWQgQWNjZXNzZXMgU3VwcG9ydCIKPiA+ID4gPiArICAgZGVmYXVsdCBS SVNDVl9QUk9CRV9VTkFMSUdORURfQUNDRVNTCj4gPiA+ID4gKyAgIGhlbHAKPiA+ID4gPiArICAg ICBUaGlzIHNlbGVjdHMgdGhlIGhhcmR3YXJlIHN1cHBvcnQgZm9yIHVuYWxpZ25lZCBhY2Nlc3Nl cy4gVGhpcwo+ID4gPiA+ICsgICAgIGluZm9ybWF0aW9uIGlzIHVzZWQgYnkgdGhlIGtlcm5lbCB0 byBwZXJmb3JtIG9wdGltaXphdGlvbnMuIEl0IGlzIGFsc28KPiA+ID4gPiArICAgICBleHBvc2Vk IHRvIHVzZXIgc3BhY2UgdmlhIHRoZSBod3Byb2JlIHN5c2NhbGwuIFRoZSBoYXJkd2FyZSB3aWxs IGJlCj4gPiA+ID4gKyAgICAgcHJvYmVkIGF0IGJvb3QgYnkgZGVmYXVsdC4KPiA+ID4gPiArCj4g PiA+ID4gK2NvbmZpZyBSSVNDVl9QUk9CRV9VTkFMSUdORURfQUNDRVNTCj4gPiA+ID4gKyAgIGJv b2wgIlByb2JlIGZvciBoYXJkd2FyZSB1bmFsaWduZWQgYWNjZXNzIHN1cHBvcnQiCj4gPiA+ID4g KyAgIGhlbHAKPiA+ID4gPiArICAgICBEdXJpbmcgYm9vdCwgdGhlIGtlcm5lbCB3aWxsIHJ1biBh IHNlcmllcyBvZiB0ZXN0cyB0byBkZXRlcm1pbmUgdGhlCj4gPiA+ID4gKyAgICAgc3BlZWQgb2Yg dW5hbGlnbmVkIGFjY2Vzc2VzLiBUaGlzIGlzIHRoZSBvbmx5IHBvcnRhYmxlIG9wdGlvbi4gVGhp cwo+ID4gPiA+ICsgICAgIHByb2Jpbmcgd2lsbCBkeW5hbWljYWxseSBkZXRlcm1pbmUgdGhlIHNw ZWVkIG9mIHVuYWxpZ25lZCBhY2Nlc3NlcyBvbgo+ID4gPiA+ICsgICAgIHRoZSBib290IGhhcmR3 YXJlLgo+ID4gPiA+ICsKPiA+ID4gPiArY29uZmlnIFJJU0NWX0VNVUxBVEVEX1VOQUxJR05FRF9B Q0NFU1MKPiA+ID4gPiArICAgYm9vbCAiQXNzdW1lIHRoZSBDUFUgZXhwZWN0cyBlbXVsYXRlZCB1 bmFsaWduZWQgbWVtb3J5IGFjY2Vzc2VzIgo+ID4gPiA+ICsgICBkZXBlbmRzIG9uIE5PTlBPUlRB QkxFCj4gPiA+Cj4gPiA+IFRoaXMgaXMgcG9ydGFibGUgdG9vLCByaWdodD8KPiA+Cj4gPiBJIGd1 ZXNzIHNvPyBJIHRoaW5rIEkgd291bGQgcHJlZmVyIHRvIGhhdmUgdGhlIHByb2JpbmcgYmVpbmcg dGhlIG9ubHkKPiA+IHBvcnRhYmxlIG9wdGlvbi4KPiA+Cj4gPiA+Cj4gPiA+ID4gKyAgIHNlbGVj dCBSSVNDVl9NSVNBTElHTkVECj4gPiA+ID4gKyAgIGhlbHAKPiA+ID4gPiArICAgICBBc3N1bWUg dGhhdCB0aGUgQ1BVIGV4cGVjdHMgZW11bGF0ZWQgdW5hbGlnbmVkIG1lbW9yeSBhY2Nlc3Nlcy4K PiA+ID4gPiArICAgICBXaGVuIGVuYWJsZWQsIHRoaXMgb3B0aW9uIG5vdGlmaWVzIHRoZSBrZXJu ZWwgYW5kIHVzZXJzcGFjZSB0aGF0Cj4gPiA+ID4gKyAgICAgdW5hbGlnbmVkIG1lbW9yeSBhY2Nl c3NlcyB3aWxsIGJlIGVtdWxhdGVkIGJ5IHRoZSBrZXJuZWwuCj4gPiA+Cj4gPiA+ID4gVG8gZW5m b3JjZQo+ID4gPiA+ICsgICAgIHRoaXMgZXhwZWN0YXRpb24sIFJJU0NWX01JU0FMSUdORUQgaXMg c2VsZWN0ZWQgYnkgdGhpcyBvcHRpb24uCj4gPiA+Cj4gPiA+IERyb3AgdGhpcyBJTU8sIGxldCBL Y29uZmlnIGhhbmRsZSBkaXNwbGF5aW5nIHRoZSBkZXBlbmRlbmNpZXMuCj4gPiA+Cj4gPgo+ID4g SSB3YXMgZGViYXRpbmcgaWYgS2NvbmZpZyBoYW5kbGluZyB3YXMgZW5vdWdoLCBzbyBJIGFtIGds YWQgaXQgaXMsIEkKPiA+IHdpbGwgcmVtb3ZlIHRoaXMuCj4gPgo+ID4gPiA+ICsKPiA+ID4gPiAr Y29uZmlnIFJJU0NWX1NMT1dfVU5BTElHTkVEX0FDQ0VTUwo+ID4gPiA+ICsgICBib29sICJBc3N1 bWUgdGhlIENQVSBzdXBwb3J0cyBzbG93IHVuYWxpZ25lZCBtZW1vcnkgYWNjZXNzZXMiCj4gPiA+ ID4gKyAgIGRlcGVuZHMgb24gTk9OUE9SVEFCTEUKPiA+ID4gPiArICAgaGVscAo+ID4gPiA+ICsg ICAgIEFzc3VtZSB0aGF0IHRoZSBDUFUgc3VwcG9ydHMgc2xvdyB1bmFsaWduZWQgbWVtb3J5IGFj Y2Vzc2VzLiBXaGVuCj4gPiA+ID4gKyAgICAgZW5hYmxlZCwgdGhpcyBvcHRpb24gaW1wcm92ZXMg dGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBrZXJuZWwgb24gc3VjaAo+ID4gPiA+ICsgICAgIENQVXMu Cj4gPiA+Cj4gPiA+IERvZXMgaXQ/IEFyZSB5b3Ugc3VyZSB0aGF0IGdlbmVyYXRpbmcgdW5hbGln bmVkIGFjY2Vzc2VzIG9uIHN5c3RlbXMKPiA+ID4gd2hlcmUgdGhleSBhcmUgc2xvdyBpcyBhIHBl cmZvcm1hbmNlIGluY3JlYXNlPwo+ID4gPiBUaGF0IHNhaWQsIEkgZG9uJ3QgcmVhbGx5IHNlZSB0 aGlzIG9wdGlvbiBhY3R1YWxseSBkb2luZyBhbnl0aGluZyBvdGhlcgo+ID4gPiB0aGFuIHNldHRp bmcgdGhlIHZhbHVlIGZvciBod3Byb2JlLCBzbyBJIGRvbid0IGFjdHVhbGx5IGtub3cgd2hhdCB0 aGUKPiA+ID4gZWZmZWN0IG9mIHRoaXMgb3B0aW9uIGFjdHVhbGx5IGlzIG9uIHRoZSBrZXJuZWwn cyBwZXJmb3JtYW5jZS4KPiA+ID4KPiA+ID4gR2VuZXJhbGx5IEkgd291bGQgbGlrZSB0byBzdWdn ZXN0IGEgY2hhbmdlIGZyb20gIkNQVSIgdG8gInN5c3RlbSIgaGVyZSwKPiA+ID4gc2luY2UgdGhl IHNsb3cgY2FzZXMgdGhhdCBleGlzdCBhcmUgbW9zdGx5IGJlY2F1c2UgdGhlIHVuYWxpZ25lZCBh Y2Nlc3MKPiA+ID4gaXMgYWN0dWFsbHkgZW11bGF0ZWQgaW4gZmlybXdhcmUuCj4gPgo+ID4gSXQg d291bGQgYmUgaWRlYWwgaWYgImVtdWxhdGVkIiB3YXMgdXNlZCBmb3IgYW55IGNhc2Ugb2YgZW11 bGF0ZWQKPiA+IGFjY2Vzc2VzIChmaXJtd2FyZSBvciBpbiB0aGUga2VybmVsKS4gIERvaW5nIGVt dWxhdGVkIGFjY2Vzc2VzIHdpbGwgYmUKPiA+IG9yZGVycyBvZiBtYWduaXR1ZGUgc2xvd2VyIHRo YW4gYSBwcm9jZXNzb3IgdGhhdCAic2xvd2x5IiBoYW5kbGVzIHRoZQo+ID4gYWNjZXNzZXMuCj4g Pgo+ID4gU28gZXZlbiBpZiB0aGUgcHJvY2Vzc29yIHBlcmZvcm1zIGEgInNsb3ciIGFjY2Vzcywg aXQgY291bGQgc3RpbGwgYmUKPiA+IGJlbmVmaWNpYWwgZm9yIHRoZSBrZXJuZWwgdG8gZG8gdGhl IG1pc2FsaWduZWQgYWNjZXNzIHJhdGhlciB0aGFuIG1hbnVhbAo+ID4gZG8gdGhlIGFsaWdubWVu dC4KPiA+Cj4gPiBDdXJyZW50bHkgdGhlcmUgaXMgbm8gcGxhY2UgdGhhdCB0YWtlcyBpbnRvIGFj Y291bnQgdGhpcyAic2xvdyIgb3B0aW9uCj4gPiBidXQgSSB3YW50ZWQgdG8gbGVhdmUgaXQgb3Bl biBmb3IgZnV0dXJlIG9wdGltaXphdGlvbnMuCj4gPgo+ID4gPgo+ID4gPiA+IEhvd2V2ZXIsIHRo ZSBrZXJuZWwgd2lsbCBydW4gbXVjaCBtb3JlIHNsb3dseSwgb3Igd2lsbCBub3QgYmUKPiA+ID4g PiArICAgICBhYmxlIHRvIHJ1biBhdCBhbGwsIG9uIENQVXMgdGhhdCBkbyBub3Qgc3VwcG9ydCB1 bmFsaWduZWQgbWVtb3J5Cj4gPiA+ID4gKyAgICAgYWNjZXNzZXMuCj4gPiA+ID4gKwo+ID4gPiA+ ICBjb25maWcgUklTQ1ZfRUZGSUNJRU5UX1VOQUxJR05FRF9BQ0NFU1MKPiA+ID4gPiAgICAgYm9v bCAiQXNzdW1lIHRoZSBDUFUgc3VwcG9ydHMgZmFzdCB1bmFsaWduZWQgbWVtb3J5IGFjY2Vzc2Vz Igo+ID4gPiA+ICAgICBkZXBlbmRzIG9uIE5PTlBPUlRBQkxFCj4gPiA+ID4gICAgIHNlbGVjdCBE Q0FDSEVfV09SRF9BQ0NFU1MgaWYgTU1VCj4gPiA+ID4gICAgIHNlbGVjdCBIQVZFX0VGRklDSUVO VF9VTkFMSUdORURfQUNDRVNTCj4gPiA+ID4gICAgIGhlbHAKPiA+ID4gPiAtICAgICBTYXkgWSBo ZXJlIGlmIHlvdSB3YW50IHRoZSBrZXJuZWwgdG8gYXNzdW1lIHRoYXQgdGhlIENQVSBzdXBwb3J0 cwo+ID4gPiA+IC0gICAgIGVmZmljaWVudCB1bmFsaWduZWQgbWVtb3J5IGFjY2Vzc2VzLiAgV2hl biBlbmFibGVkLCB0aGlzIG9wdGlvbgo+ID4gPiA+IC0gICAgIGltcHJvdmVzIHRoZSBwZXJmb3Jt YW5jZSBvZiB0aGUga2VybmVsIG9uIHN1Y2ggQ1BVcy4gIEhvd2V2ZXIsIHRoZQo+ID4gPiA+IC0g ICAgIGtlcm5lbCB3aWxsIHJ1biBtdWNoIG1vcmUgc2xvd2x5LCBvciB3aWxsIG5vdCBiZSBhYmxl IHRvIHJ1biBhdCBhbGwsCj4gPiA+ID4gLSAgICAgb24gQ1BVcyB0aGF0IGRvIG5vdCBzdXBwb3J0 IGVmZmljaWVudCB1bmFsaWduZWQgbWVtb3J5IGFjY2Vzc2VzLgo+ID4gPiA+ICsgICAgIEFzc3Vt ZSB0aGF0IHRoZSBDUFUgc3VwcG9ydHMgZmFzdCB1bmFsaWduZWQgbWVtb3J5IGFjY2Vzc2VzLiBX aGVuCj4gPiA+ID4gKyAgICAgZW5hYmxlZCwgdGhpcyBvcHRpb24gaW1wcm92ZXMgdGhlIHBlcmZv cm1hbmNlIG9mIHRoZSBrZXJuZWwgb24gc3VjaAo+ID4gPiA+ICsgICAgIENQVXMuICBIb3dldmVy LCB0aGUga2VybmVsIHdpbGwgcnVuIG11Y2ggbW9yZSBzbG93bHksIG9yIHdpbGwgbm90IGJlCj4g PiA+ID4gKyAgICAgYWJsZSB0byBydW4gYXQgYWxsLCBvbiBDUFVzIHRoYXQgZG8gbm90IHN1cHBv cnQgZWZmaWNpZW50IHVuYWxpZ25lZAo+ID4gPiA+ICsgICAgIG1lbW9yeSBhY2Nlc3Nlcy4KPiA+ ID4gPiArCj4gPiA+ID4gK2NvbmZpZyBSSVNDVl9VTlNVUFBPUlRFRF9VTkFMSUdORURfQUNDRVNT Cj4gPiA+Cj4gPiA+IFRoaXMgb3B0aW9uIG5lZWRzIHRvIGJlIHJlbW92ZWQuIFRoZSB1YWJpIHN0 YXRlcyB0aGF0IHVuYWxpZ25lZCBhY2Nlc3MKPiA+ID4gaXMgc3VwcG9ydGVkIGluIHVzZXJzcGFj ZSwgaWYgdGhlIGNwdSBvciBmaXJtd2FyZSBkb2VzIG5vdCBpbXBsZW1lbnQKPiA+ID4gdW5hbGln bmVkIGFjY2VzcyB0aGVuIHRoZSBrZXJuZWwgbXVzdCBlbXVsYXRlIGl0Lgo+ID4KPiA+IFNob3Vs ZCBpdCByZW1vdmVkIGZyb20gaHdwcm9iZSBhcyB3ZWxsIHRoZW4/Cj4gCj4gV2UgaGFkIGFkZGVk IGl0IGFzIGEgaHdwcm9iZSB2YWx1ZSBpbiB0aGlzIGRpc2N1c3Npb246Cj4gaHR0cHM6Ly9sb3Jl Lmtlcm5lbC5vcmcvbGttbC9ZKzFWT1h5S0RESEV1ZWpKQHNwdWQvCj4gCj4gUGVyc29uYWxseSBJ IGxpa2UgaXQgYXMgYSBwb3NzaWJsZSBod3Byb2JlIHZhbHVlLCBldmVuIGlmIGl0IGlzIGluCj4g Y29uZmxpY3Qgd2l0aCB0aGUgdWFiaS4gSSBjYW4ndCBmdWxseSBkZWZlbmQgaXQsIG90aGVyIHRo YW4gYXMgYSB2ZXJ5Cj4gZm9yd2FyZCBsb29raW5nIHBvc3NpYmlsaXR5LCBhbmQgYXMgYSBuaWNl IHZhbHVlIGZvciBwZW9wbGUgZG9pbmcKPiB3ZWlyZCB0aGluZ3Mgb2ZmIHRoZSBiZWF0ZW4gcGF0 aC4gTXkgcHJlZmVyZW5jZSB3b3VsZCBiZSB0byBrZWVwIGl0IGluCj4gaHdwcm9iZSwgYnV0IEkn bSBmaW5lIHdpdGggbm90IGhhdmluZyBhIEtjb25maWcgZm9yIGl0Lgo+IAo+IC1FdmFuCgpTZWVt cyByZWFzb25hYmxlIHRvIG1lLCBJIHdpbGwgcmVtb3ZlIGl0IGZyb20gdGhlIEtjb25maWcuCgot IENoYXJsaWUKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpsaW51eC1yaXNjdiBtYWlsaW5nIGxpc3QKbGludXgtcmlzY3ZAbGlzdHMuaW5mcmFkZWFkLm9y ZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJpc2N2 Cg== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f180.google.com (mail-pf1-f180.google.com [209.85.210.180]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BBEB33D988 for ; Tue, 27 Feb 2024 19:07:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.180 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709060843; cv=none; b=ug4cSqUPWwz6RNXmpQJYMGIkeMo8BVCXu/jSBZ1NBMyUaxYFNTWv+FvtBqovoqoDPjdThWt7GRpOtGuS1/vVQj2mK2OSwYwgrcrGTGYZ2uSte1U5rpAb0eWKYzEM1S1S0KYjAy70bC7wNu007212bclqug2IzX/jKRkF9A6OWLI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709060843; c=relaxed/simple; bh=d4YS6qDnqsxc0ZcDBJA6aOLb3GyoEOHo09+HXgEFdYI=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=ZozKH4LEysLtGtEhpYh2K4I2Jf9ruvnZSyWdBtDCewjJiLxsLPBErpNUHCLNB5nyj77hsZp6x62AMKblHdKTZvCuKIUPmBVAkzJzRgIZqjIdIrnn7hc1wIxb72L4y6HTn1pKGUcvIANvzcMDoYeSzPZhyays8+v9UTSyMxNATcA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=rivosinc.com; spf=pass smtp.mailfrom=rivosinc.com; dkim=pass (2048-bit key) header.d=rivosinc-com.20230601.gappssmtp.com header.i=@rivosinc-com.20230601.gappssmtp.com header.b=mxcgBmlO; arc=none smtp.client-ip=209.85.210.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=rivosinc.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rivosinc.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=rivosinc-com.20230601.gappssmtp.com header.i=@rivosinc-com.20230601.gappssmtp.com header.b="mxcgBmlO" Received: by mail-pf1-f180.google.com with SMTP id d2e1a72fcca58-6e4c359e48aso2985135b3a.1 for ; Tue, 27 Feb 2024 11:07:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1709060841; x=1709665641; darn=vger.kernel.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=ciUcqpYBqZeAizd1bXUZV1jOtaGsZb5b//1Mxq7v5tY=; b=mxcgBmlO1tKx5UsvQ8QK+sEcO/79ZhFgkcWzCCD1ObqYQkdh8ANJ0Q04dT/r2+7Bv0 YFyMWMosXDnpAcV5yIX/7cHLLo1+lZdGIpECLS5wPwzSmfRMf3EitYG8M7t6Akwl1arx NBMTiKJoc8pfVDterquBDWBlA3U8LpBdOdaXJdRCMvOroZRiaid8hoX6Tln56iFgnaW+ kiHb7b4GLgvYrLVB83ZeLj/m174rgL2mBZt7OJfN3GoBWWKOusqYw+rH1cxULTwsXtru U5GfHlz1++xDQe7zACYpR5MgM/TSYKAYz6suzw0S8mknrgLkVwcEd8rUWPsJM6EiCiXg GdAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1709060841; x=1709665641; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ciUcqpYBqZeAizd1bXUZV1jOtaGsZb5b//1Mxq7v5tY=; b=dsiDPvyLYfQjEMgGREO3I+rkkDLdswLSuzYFYUL+qgjRzMNlbk0oW04feJtgw/pRFY Ik/yX+RvOdb2bNope/bSaXlRrO/haHbZtYBwB/8Jl10CCUN9MzEp3T09RyjplrfQbKfq TI2YqsiQmLRAHcZmysSg2AIlSwFon35m1zPHrXi95M5hKCzRJ13KqgocwNRP++ThoxAA gSd8oZLOWiuSFUvUjCdZVU1TmNSiK1PN2HtclXDRsc8f47mpDk23vyVawLEusD8YGt97 ybTqXW2a+JwqRC7xEwFSPl7h2eQ5JreA/S1ucNYUn7hhzErOt2yMZXq4GMJJIcrRhoaP mDnw== X-Forwarded-Encrypted: i=1; AJvYcCW2pceigVsoYqXLuhMYTDpsclsDFZUYV4yT5jWlLT/c0lvCe+gxy2VjDTiM3bmrjQjsEeeYY5AujcsgDcQtaluarjQ9ZIdKSUHXU1zv X-Gm-Message-State: AOJu0Yzw7yzUkZ73olLEmQ3VM82rr7HJPpy6C+am7HsdHRYRf4zdqCwY ysvdwBtHSJff/CLSaO2OhT4T5qsy1FzQ0gje3jC8wxqpvaK/MrzFO/i2gH7P97o= X-Google-Smtp-Source: AGHT+IGdfbdJYpa+UF9WJhw2SRg2KEMy3f2W3xCLWpK3KGsImm0f1UFR9UeaLt7yaGZTLy0+GyXbSA== X-Received: by 2002:a62:cd4e:0:b0:6e3:79ba:6eed with SMTP id o75-20020a62cd4e000000b006e379ba6eedmr12060537pfg.13.1709060841076; Tue, 27 Feb 2024 11:07:21 -0800 (PST) Received: from ghost ([50.213.54.97]) by smtp.gmail.com with ESMTPSA id i19-20020aa787d3000000b006e5544046e9sm816658pfo.19.2024.02.27.11.07.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Feb 2024 11:07:20 -0800 (PST) Date: Tue, 27 Feb 2024 11:07:18 -0800 From: Charlie Jenkins To: Evan Green Cc: Conor Dooley , Paul Walmsley , Palmer Dabbelt , Albert Ou , Jisheng Zhang , =?iso-8859-1?Q?Cl=E9ment_L=E9ger?= , Eric Biggers , Elliot Berman , Charles Lohr , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v4 2/2] riscv: Set unalignment speed at compile time Message-ID: References: <20240216-disable_misaligned_probe_config-v4-0-dc01e581c0ac@rivosinc.com> <20240216-disable_misaligned_probe_config-v4-2-dc01e581c0ac@rivosinc.com> <20240227-condone-impeach-9469dffc6b47@wendy> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Tue, Feb 27, 2024 at 10:48:39AM -0800, Evan Green wrote: > On Tue, Feb 27, 2024 at 10:17 AM Charlie Jenkins wrote: > > > > On Tue, Feb 27, 2024 at 11:39:25AM +0000, Conor Dooley wrote: > > > On Fri, Feb 16, 2024 at 12:33:19PM -0800, Charlie Jenkins wrote: > > > > Introduce Kconfig options to set the kernel unaligned access support. > > > > These options provide a non-portable alternative to the runtime > > > > unaligned access probe. > > > > > > > > To support this, the unaligned access probing code is moved into it's > > > > own file and gated behind a new RISCV_PROBE_UNALIGNED_ACCESS_SUPPORT > > > > option. > > > > > > > > Signed-off-by: Charlie Jenkins > > > > --- > > > > arch/riscv/Kconfig | 58 +++++- > > > > arch/riscv/include/asm/cpufeature.h | 30 +++- > > > > arch/riscv/kernel/Makefile | 6 +- > > > > arch/riscv/kernel/cpufeature.c | 255 -------------------------- > > > > arch/riscv/kernel/misaligned_access_speed.c | 265 ++++++++++++++++++++++++++++ > > > > arch/riscv/kernel/probe_emulated_access.c | 64 +++++++ > > > > arch/riscv/kernel/sys_hwprobe.c | 25 +++ > > > > arch/riscv/kernel/traps_misaligned.c | 54 +----- > > > > 8 files changed, 442 insertions(+), 315 deletions(-) > > > > > > > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > > > > index bffbd869a068..3cf700adc43b 100644 > > > > --- a/arch/riscv/Kconfig > > > > +++ b/arch/riscv/Kconfig > > > > @@ -690,25 +690,71 @@ config THREAD_SIZE_ORDER > > > > config RISCV_MISALIGNED > > > > > > > > > Why can we not make up our minds on what to call this? The majority of > > > users are "unaligned" but the file you add and this config option are > > > "misaligned." > > > > We have both everywhere, maybe we (I?) should go in and standardize the > > wording everywhere. I personally prefer "misaligned" which means > > "incorrectly aligned" over "unaligned" which means "not aligned" because > > a 7-bit alignment is still "aligned" along a 7-bit boundary, but it is > > certainly incorrectly aligned. > > > > > > > > > bool "Support misaligned load/store traps for kernel and userspace" > > > > select SYSCTL_ARCH_UNALIGN_ALLOW > > > > + depends on RISCV_PROBE_UNALIGNED_ACCESS || RISCV_EMULATED_UNALIGNED_ACCESS > > > > default y > > > > help > > > > Say Y here if you want the kernel to embed support for misaligned > > > > load/store for both kernel and userspace. When disable, misaligned > > > > accesses will generate SIGBUS in userspace and panic in kernel. > > > > > > > > +choice > > > > + prompt "Unaligned Accesses Support" > > > > + default RISCV_PROBE_UNALIGNED_ACCESS > > > > + help > > > > + This selects the hardware support for unaligned accesses. This > > > > + information is used by the kernel to perform optimizations. It is also > > > > + exposed to user space via the hwprobe syscall. The hardware will be > > > > + probed at boot by default. > > > > + > > > > +config RISCV_PROBE_UNALIGNED_ACCESS > > > > + bool "Probe for hardware unaligned access support" > > > > + help > > > > + During boot, the kernel will run a series of tests to determine the > > > > + speed of unaligned accesses. This is the only portable option. This > > > > + probing will dynamically determine the speed of unaligned accesses on > > > > + the boot hardware. > > > > + > > > > +config RISCV_EMULATED_UNALIGNED_ACCESS > > > > + bool "Assume the CPU expects emulated unaligned memory accesses" > > > > + depends on NONPORTABLE > > > > > > This is portable too, right? > > > > I guess so? I think I would prefer to have the probing being the only > > portable option. > > > > > > > > > + select RISCV_MISALIGNED > > > > + help > > > > + Assume that the CPU expects emulated unaligned memory accesses. > > > > + When enabled, this option notifies the kernel and userspace that > > > > + unaligned memory accesses will be emulated by the kernel. > > > > > > > To enforce > > > > + this expectation, RISCV_MISALIGNED is selected by this option. > > > > > > Drop this IMO, let Kconfig handle displaying the dependencies. > > > > > > > I was debating if Kconfig handling was enough, so I am glad it is, I > > will remove this. > > > > > > + > > > > +config RISCV_SLOW_UNALIGNED_ACCESS > > > > + bool "Assume the CPU supports slow unaligned memory accesses" > > > > + depends on NONPORTABLE > > > > + help > > > > + Assume that the CPU supports slow unaligned memory accesses. When > > > > + enabled, this option improves the performance of the kernel on such > > > > + CPUs. > > > > > > Does it? Are you sure that generating unaligned accesses on systems > > > where they are slow is a performance increase? > > > That said, I don't really see this option actually doing anything other > > > than setting the value for hwprobe, so I don't actually know what the > > > effect of this option actually is on the kernel's performance. > > > > > > Generally I would like to suggest a change from "CPU" to "system" here, > > > since the slow cases that exist are mostly because the unaligned access > > > is actually emulated in firmware. > > > > It would be ideal if "emulated" was used for any case of emulated > > accesses (firmware or in the kernel). Doing emulated accesses will be > > orders of magnitude slower than a processor that "slowly" handles the > > accesses. > > > > So even if the processor performs a "slow" access, it could still be > > beneficial for the kernel to do the misaligned access rather than manual > > do the alignment. > > > > Currently there is no place that takes into account this "slow" option > > but I wanted to leave it open for future optimizations. > > > > > > > > > However, the kernel will run much more slowly, or will not be > > > > + able to run at all, on CPUs that do not support unaligned memory > > > > + accesses. > > > > + > > > > config RISCV_EFFICIENT_UNALIGNED_ACCESS > > > > bool "Assume the CPU supports fast unaligned memory accesses" > > > > depends on NONPORTABLE > > > > select DCACHE_WORD_ACCESS if MMU > > > > select HAVE_EFFICIENT_UNALIGNED_ACCESS > > > > help > > > > - Say Y here if you want the kernel to assume that the CPU supports > > > > - efficient unaligned memory accesses. When enabled, this option > > > > - improves the performance of the kernel on such CPUs. However, the > > > > - kernel will run much more slowly, or will not be able to run at all, > > > > - on CPUs that do not support efficient unaligned memory accesses. > > > > + Assume that the CPU supports fast unaligned memory accesses. When > > > > + enabled, this option improves the performance of the kernel on such > > > > + CPUs. However, the kernel will run much more slowly, or will not be > > > > + able to run at all, on CPUs that do not support efficient unaligned > > > > + memory accesses. > > > > + > > > > +config RISCV_UNSUPPORTED_UNALIGNED_ACCESS > > > > > > This option needs to be removed. The uabi states that unaligned access > > > is supported in userspace, if the cpu or firmware does not implement > > > unaligned access then the kernel must emulate it. > > > > Should it removed from hwprobe as well then? > > We had added it as a hwprobe value in this discussion: > https://lore.kernel.org/lkml/Y+1VOXyKDDHEuejJ@spud/ > > Personally I like it as a possible hwprobe value, even if it is in > conflict with the uabi. I can't fully defend it, other than as a very > forward looking possibility, and as a nice value for people doing > weird things off the beaten path. My preference would be to keep it in > hwprobe, but I'm fine with not having a Kconfig for it. > > -Evan Seems reasonable to me, I will remove it from the Kconfig. - Charlie