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 8116BC43334 for ; Tue, 5 Jul 2022 12:28:21 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=YcYYbxMNh5CsrgWxgUXV7ifZ9hwZfw1YVIHcYFyCfAo=; b=jRj7A/jdL9G+1G u/c+cFdhuU5P7YFCQiR6VNfB1601oDNiWIUCqJlUtEhAw0YqPVpGnfWkQUyMV+JFgoaQk9FMVuH5c tQoqlqWeXo8joJpQCy/btGOUDFw92VdaborNdtJ8PyVeTI20mk+MaBs/QGAo3V8kVsNsfCBUC0pEk ZUa0bho1/pPJe5KBvql2Y88si+KIZBiiPBrh3GCc5Qb2FsY/6ok9/HVgdJ1I5O84jNBZ7ftwOrzpl 59zTZenk0YsQ9Aw6MY9tkiHIpK7XUMpGLZw5xTgx5Dmjcnfjx/4pI3NfcpaT3fwAnaRZoqmCPAvU0 WpnPgrhySnjbrmWwP6UA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o8he9-000Az8-Lf; Tue, 05 Jul 2022 12:27:17 +0000 Received: from out30-57.freemail.mail.aliyun.com ([115.124.30.57]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1o8he5-000AuW-BR for linux-arm-kernel@lists.infradead.org; Tue, 05 Jul 2022 12:27:16 +0000 X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R181e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046051;MF=guanghuifeng@linux.alibaba.com;NM=1;PH=DS;RN=21;SR=0;TI=SMTPD_---0VISH683_1657024024; Received: from 30.225.28.170(mailfrom:guanghuifeng@linux.alibaba.com fp:SMTPD_---0VISH683_1657024024) by smtp.aliyun-inc.com; Tue, 05 Jul 2022 20:27:05 +0800 Message-ID: Date: Tue, 5 Jul 2022 20:27:03 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH v4] arm64: mm: fix linear mem mapping access performance degradation To: Will Deacon Cc: Ard Biesheuvel , baolin.wang@linux.alibaba.com, catalin.marinas@arm.com, akpm@linux-foundation.org, david@redhat.com, jianyong.wu@arm.com, james.morse@arm.com, quic_qiancai@quicinc.com, christophe.leroy@csgroup.eu, jonathan@marek.ca, mark.rutland@arm.com, thunder.leizhen@huawei.com, anshuman.khandual@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, rppt@kernel.org, geert+renesas@glider.be, linux-mm@kvack.org, yaohongbo@linux.alibaba.com, alikernel-developer@linux.alibaba.com References: <20220704111402.GA31553@willie-the-truck> <4accaeda-572f-f72d-5067-2d0999e4d00a@linux.alibaba.com> <20220704131516.GC31684@willie-the-truck> <2ae1cae0-ee26-aa59-7ed9-231d67194dce@linux.alibaba.com> <20220704142313.GE31684@willie-the-truck> <6977c692-78ca-5a67-773e-0389c85f2650@linux.alibaba.com> <20220704163815.GA32177@willie-the-truck> <20220705095231.GB552@willie-the-truck> <5d044fdd-a61a-d60f-d294-89e17de37712@linux.alibaba.com> <20220705121115.GB1012@willie-the-truck> From: "guanghui.fgh" In-Reply-To: <20220705121115.GB1012@willie-the-truck> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220705_052713_615619_2EF1570E X-CRM114-Status: GOOD ( 23.10 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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 CgrlnKggMjAyMi83LzUgMjA6MTEsIFdpbGwgRGVhY29uIOWGmemBkzoKPiBPbiBUdWUsIEp1bCAw NSwgMjAyMiBhdCAwODowNzowN1BNICswODAwLCBndWFuZ2h1aS5mZ2ggd3JvdGU6Cj4+Cj4+Cj4+ IOWcqCAyMDIyLzcvNSAxNzo1MiwgV2lsbCBEZWFjb24g5YaZ6YGTOgo+Pj4gT24gTW9uLCBKdWwg MDQsIDIwMjIgYXQgMDc6MDk6MjNQTSArMDIwMCwgQXJkIEJpZXNoZXV2ZWwgd3JvdGU6Cj4+Pj4g T24gTW9uLCA0IEp1bCAyMDIyIGF0IDE4OjM4LCBXaWxsIERlYWNvbiA8d2lsbEBrZXJuZWwub3Jn PiB3cm90ZToKPj4+Pj4KPj4+Pj4gT24gTW9uLCBKdWwgMDQsIDIwMjIgYXQgMTA6MzQ6MDdQTSAr MDgwMCwgZ3VhbmdodWkuZmdoIHdyb3RlOgo+Pj4+Pj4gVGhhbmtzLgo+Pj4+Pj4KPj4+Pj4+IOWc qCAyMDIyLzcvNCAyMjoyMywgV2lsbCBEZWFjb24g5YaZ6YGTOgo+Pj4+Pj4+IE9uIE1vbiwgSnVs IDA0LCAyMDIyIGF0IDEwOjExOjI3UE0gKzA4MDAsIGd1YW5naHVpLmZnaCB3cm90ZToKPj4+PiAu Li4KPj4+Pj4+Pj4gTmFtZWx5LCBpdCdzIG5lZWQgdG8gdXNlIG5vbiBibG9jay9zZWN0aW9uIG1h cHBpbmcgZm9yIGNyYXNoa2VybmVsIG1lbQo+Pj4+Pj4+PiBiZWZvcmUgc2hyaW5na2luZy4KPj4+ Pj4+Pgo+Pj4+Pj4+IFdlbGwsIHllcywgYnV0IHdlIGNhbiBjaGFuZ2UgYXJjaF9rZXhlY19bdW5d cHJvdGVjdF9jcmFzaGtyZXMoKSBub3QgdG8gZG8KPj4+Pj4+PiB0aGF0IGlmIHdlJ3JlIGxlYXZp bmcgdGhlIHRoaW5nIG1hcHBlZCwgbm8/Cj4+Pj4+Pj4KPj4+Pj4+IEkgdGhpbmsgd2Ugc2hvdWxk IHVzZSBhcmNoX2tleGVjX1t1bl1wcm90ZWN0X2NyYXNoa3JlcyBmb3IgY3Jhc2hrZXJuZWwgbWVt Lgo+Pj4+Pj4KPj4+Pj4+IEJlY2F1c2Ugd2hlbiBpbnZhbGlkIGNyYXNoa2VybmVsIG1lbSBwYWdl dGFibGUsIHRoZXJlIGlzIG5vIGNoYW5jZSB0byByZC93cgo+Pj4+Pj4gdGhlIGNyYXNoa2VybmVs IG1lbSBieSBtaXN0YWtlLgo+Pj4+Pj4KPj4+Pj4+IElmIHdlIGRvbid0IHVzZSBhcmNoX2tleGVj X1t1bl1wcm90ZWN0X2NyYXNoa3JlcyB0byBpbnZhbGlkIGNyYXNoa2VybmVsIG1lbQo+Pj4+Pj4g cGFnZXRhYmxlLCB0aGVyZSBtYXliZSBzb21lIHdyaXRlIG9wZXJhdGlvbnMgdG8gdGhlc2UgbWVt IGJ5IG1pc3Rha2Ugd2hpY2gKPj4+Pj4+IG1heSBjYXVzZSBjcmFzaGtlcm5lbCBib290IGVycm9y IGFuZCB2bWNvcmUgc2F2aW5nIGVycm9yLgo+Pj4+Pgo+Pj4+PiBJIGRvbid0IHJlYWxseSBidXkg dGhpcyBsaW5lIG9mIHJlYXNvbmluZy4gVGhlIGVudGlyZSBtYWluIGtlcm5lbCBpcwo+Pj4+PiB3 cml0YWJsZSwgc28gd2h5IGRvIHdlIGNhcmUgYWJvdXQgcHJvdGVjdGluZyB0aGUgY3Jhc2hrZXJu ZWwgc28gbXVjaD8gVGhlCj4+Pj4+IF9jb2RlXyB0byBsYXVuY2ggdGhlIGNyYXNoIGtlcm5lbCBp cyB3cml0YWJsZSEgSWYgeW91IGNhcmUgYWJvdXQgcHJldmVudGluZwo+Pj4+PiB3cml0ZXMgdG8g bWVtb3J5IHdoaWNoIHNob3VsZCBub3QgYmUgd3JpdGFibGUsIHRoZW4geW91IHNob3VsZCB1c2UK Pj4+Pj4gcm9kYXRhPWZ1bGwuCj4+Pj4+Cj4+Pj4KPj4+PiBUaGlzIGlzIG5vdCBlbnRpcmVseSB0 cnVlIC0gdGhlIGNvcmUga2VybmVsIHRleHQgYW5kIHJvZGF0YSBhcmUKPj4+PiByZW1hcHBlZCBy L28gaW4gdGhlIGxpbmVhciBtYXAsIHdoZXJlYXMgYWxsIG1vZHVsZSBjb2RlIGFuZCByb2RhdGEg YXJlCj4+Pj4gbGVmdCB3cml0YWJsZSB3aGVuIHJvZGF0YSAhPSBmdWxsLgo+Pj4KPj4+IFllcywg c29ycnksIHlvdSdyZSBxdWl0ZSByaWdodC4gVGhlIGtlcm5lbCB0ZXh0IGlzIG9ubHkgd3JpdGFi bGUgaWYKPj4+IHJvZGF0YT1vZmYuCj4+Pgo+Pj4gQnV0IEkgc3RpbGwgdGhpbmsgaXQgbWFrZXMg c2Vuc2UgdG8gcHJvdGVjdCB0aGUgY3Jhc2hrZXJuZWwgb25seSBpZgo+Pj4gcm9kYXRhPWZ1bGwg KHdoaWNoIGlzIHRoZSBkZWZhdWx0IG9uIGFybTY0KSBhcyB0aGlzIGFsbG93cyB1cyB0byByZWx5 Cj4+PiBvbiBwYWdlIG1hcHBpbmdzIGFuZCBJIHRoaW5rIGZpdHMgd2VsbCB3aXRoIHdoYXQgd2Ug ZG8gZm9yIG1vZHVsZXMuCj4+Pgo+Pj4+IEJ1dCB0aGUgY29uY2x1c2lvbiBpcyB0aGUgc2FtZSwg aW1vOiBpZiB5b3UgY2FuJ3QgYmUgYm90aGVyZWQgdG8KPj4+PiBwcm90ZWN0IGEgZ29vZCBjaHVu ayBvZiB0aGUgY29kZSBhbmQgcm9kYXRhIHRoYXQgdGhlIGtlcm5lbCByZWxpZXMgb24sCj4+Pj4g d2h5IHNob3VsZCB0aGUgY3Jhc2hrZXJuZWwgYmUgdHJlYXRlZCBhbnkgZGlmZmVyZW50bHk/Cj4+ Pgo+Pj4gVGhhbmtzLgo+Pj4KPj4+IFdpbGwKPj4gVGhhbmtzLgo+Pgo+PiAxLlRoZSByb2RhdGEg ZnVsbCBpcyBoYXJtIHRvIHRoZSBwZXJmb3JtYW5jZSBhbmQgaGFzIGJlZW4gZGlzYWJsZWQgaW4t aG91c2UuCj4+Cj4+IDIuV2hlbiB1c2luZyBjcmFzaGtlcm5lbCB3aXRoIHJvZGF0YSBub24gZnVs bCwgdGhlIGtlcm5lbCBhbHNvIHdpbGwgdXNlIG5vbgo+PiBibG9jay9zZWN0aW9uIG1hcHBpbmcg d2hpY2ggY2F1c2UgaGlnaCBkLVRMQiBtaXNzIGFuZCBkZWdyYWRlIHBlcmZvcm1hbmNlCj4+IGdy ZWF0bHkuCj4+IFRoaXMgcGF0Y2ggZml4IGl0IHRvIHVzZSBibG9jay9zZWN0aW9uIG1hcHBpbmcg YXMgZmFyIGFzIHBvc3NpYmxlLgo+Pgo+PiBib29sIGNhbl9zZXRfZGlyZWN0X21hcCh2b2lkKQo+ PiB7Cj4+IAlyZXR1cm4gcm9kYXRhX2Z1bGwgfHwgZGVidWdfcGFnZWFsbG9jX2VuYWJsZWQoKTsK Pj4gfQo+Pgo+PiBtYXBfbWVtOgo+PiBpZiAoY2FuX3NldF9kaXJlY3RfbWFwKCkgfHwgSVNfRU5B QkxFRChDT05GSUdfS0ZFTkNFKSkKPj4gCWZsYWdzIHw9IE5PX0JMT0NLX01BUFBJTkdTIHwgTk9f Q09OVF9NQVBQSU5HUzsKPj4KPj4gMy5XaGVuIHJvZGF0YSBmdWxsIGlzIGRpc2FibGVkLCBjcmFz aGtlcm5lbCBhbHNvIG5lZWQgcHJvdGVjdChrZWVwCj4+IGFyY2hfa2V4ZWNfW3VuXXByb3RlY3Rf Y3Jhc2hrcmVzIHVzaW5nKS4KPj4gSSB0aGluayBjcmFzaGtlcm5lbCBzaG91bGQndCBkZXBlbmQg b24gcmFkYXRhIGZ1bGwoTWF5YmUgb3RoZXIgYXJjaGl0ZWN0dXJlCj4+IGRvbid0IHN1cHBvcnQg cmFkYXRhIGZ1bGwgbm93KS4KPiAKPiBJIHRoaW5rIHRoaXMgaXMgZ29pbmcgcm91bmQgaW4gY2ly Y2xlcyA6Lwo+IAo+IEFzIGEgZmlyc3Qgc3RlcCwgY2FuIHdlIHBsZWFzZSBsZWF2ZSB0aGUgY3Jh c2hrZXJuZWwgbWFwcGVkIHVubGVzcwo+IHJvZGF0YT1mdWxsPyBJdCBzaG91bGQgYmUgYSBtdWNo IHNpbXBsZXIgcGF0Y2ggdG8gd3JpdGUsIHJldmlldyBhbmQgbWFpbnRhaW4KPiBhbmQgaXQgZ2l2 ZXMgeW91IHRoZSBwZXJmb3JtYW5jZSB5b3Ugd2FudCB3aGVuIGNyYXNoa2VybmVsIGlzIGJlaW5n IHVzZWQuCj4gCj4gV2lsbAoKVGhhbmtzLgoKVGhlcmUgaXMgYSBjaXJjbGUuCgoxLldoZW4gdGhl IHJvZGF0YSBpcyBub24gZnVsbCwgdGhlcmUgd2lsbCBiZSBzb21lIGVycm9yIHdoZW4gY2FsbGlu ZyAKYXJjaF9rZXhlY19bdW5dcHJvdGVjdF9jcmFzaGtyZXMoQlVHX09OKHB1ZF9odWdlKCpwdWQp KSkgbm93LgpJdCdzIGFsc28gbmVlZCBub24tYmxvY2svc2VjdGlvbiBtYXBwaW5nIGZvciBjcmFz aGtlcm5lbCBtZW0uCgoyLkluIG90aGVyIHdvcmRzLCBtYXliZSB3ZSBzaG91bGQgY2hhbmdlIAph cmNoX2tleGVjX1t1bl1wcm90ZWN0X2NyYXNoa3JlcyB0byBzdXBwb3J0IGJsb2NrL3NlY3Rpb24g bWFwcGluZyB3aGljaCAKY2FuIGxlYXZlIGNyYXNoa2VybmVsIGJsb2NrL3NlY3Rpb24gbWFwcGlu Zy4KCkJ1dCB3aGVuIHdlIHNocmluayB0aGUgY3Jhc2hrZXJuZWwgbWVtLCB3ZSBhbHNvIG5lZWQg dG8gc3BsaXQgc29tZSAKYmxvY2svc2VjdGlvbiBtYXBwaW5nKHBhcnQgbWVtIGZvciBjcmFzaGtl cm5lbCwgdGhlIGxlZnQgZm9yIHRoZSBub3JtYWwgCmtlcm5lbCkuCkFzIGEgcmVzdWx0LCBtYXli ZSB3ZSBidWlsZCBjcmFzaGtlcm5lbCBtZW0gd2l0aCBub24tYmxvY2svc2VjdGlvbiAKbWFwcGlu ZyBpcyBhcHByb3ByaWF0ZShhcyB0aGlzIHBhdGNoIGRvaW5nKS4KCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBs aXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5m cmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id DABA9C43334 for ; Tue, 5 Jul 2022 12:27:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5B7086B0071; Tue, 5 Jul 2022 08:27:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5666E6B0073; Tue, 5 Jul 2022 08:27:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 431096B0074; Tue, 5 Jul 2022 08:27:13 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 345296B0071 for ; Tue, 5 Jul 2022 08:27:13 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 0B32C9F0 for ; Tue, 5 Jul 2022 12:27:13 +0000 (UTC) X-FDA: 79652971146.21.1B51DDF Received: from out30-133.freemail.mail.aliyun.com (out30-133.freemail.mail.aliyun.com [115.124.30.133]) by imf20.hostedemail.com (Postfix) with ESMTP id 36CEE1C0007 for ; Tue, 5 Jul 2022 12:27:09 +0000 (UTC) X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R181e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046051;MF=guanghuifeng@linux.alibaba.com;NM=1;PH=DS;RN=21;SR=0;TI=SMTPD_---0VISH683_1657024024; Received: from 30.225.28.170(mailfrom:guanghuifeng@linux.alibaba.com fp:SMTPD_---0VISH683_1657024024) by smtp.aliyun-inc.com; Tue, 05 Jul 2022 20:27:05 +0800 Message-ID: Date: Tue, 5 Jul 2022 20:27:03 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH v4] arm64: mm: fix linear mem mapping access performance degradation To: Will Deacon Cc: Ard Biesheuvel , baolin.wang@linux.alibaba.com, catalin.marinas@arm.com, akpm@linux-foundation.org, david@redhat.com, jianyong.wu@arm.com, james.morse@arm.com, quic_qiancai@quicinc.com, christophe.leroy@csgroup.eu, jonathan@marek.ca, mark.rutland@arm.com, thunder.leizhen@huawei.com, anshuman.khandual@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, rppt@kernel.org, geert+renesas@glider.be, linux-mm@kvack.org, yaohongbo@linux.alibaba.com, alikernel-developer@linux.alibaba.com References: <20220704111402.GA31553@willie-the-truck> <4accaeda-572f-f72d-5067-2d0999e4d00a@linux.alibaba.com> <20220704131516.GC31684@willie-the-truck> <2ae1cae0-ee26-aa59-7ed9-231d67194dce@linux.alibaba.com> <20220704142313.GE31684@willie-the-truck> <6977c692-78ca-5a67-773e-0389c85f2650@linux.alibaba.com> <20220704163815.GA32177@willie-the-truck> <20220705095231.GB552@willie-the-truck> <5d044fdd-a61a-d60f-d294-89e17de37712@linux.alibaba.com> <20220705121115.GB1012@willie-the-truck> From: "guanghui.fgh" In-Reply-To: <20220705121115.GB1012@willie-the-truck> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=alibaba.com; spf=pass (imf20.hostedemail.com: domain of guanghuifeng@linux.alibaba.com designates 115.124.30.133 as permitted sender) smtp.mailfrom=guanghuifeng@linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1657024031; h=from:from:sender: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=dcw92ujRpmCWinBtGzBFrWH1uI81DkAEUNe6Xa9qOSE=; b=CGTk4fXvJUAQiaX7z/rhadIUKJAbisql6751uCc2PVfPXWx7o6c7RivzLOka1DLgoLSKoT NcghzZF5Ty1jWNIyR+CZZsNVHK1RZCsplUeYYwLvKpx8dS/jDH9OGxthyvZaTatPBBr0Rk tD8JWz0XD52TI05rPh6ssIxXJZ0Yjzg= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1657024031; a=rsa-sha256; cv=none; b=CHDZPspWGsZuIC7cjwCfB6EXEugzHQNhbViyD9wQ4lKqWoYwfbzu+GpnKHzTEVYxsNVavI yqrGrAQCCNrapRxsY9A3FWizqm15GMANSY49j1TM56DSf/kwJ1slvLccCn95vkdW//RQ3f pTIncJFdep+C4qzzZ5oiQOiHCxusfTI= X-Stat-Signature: s15m3xkmfr6a18djqmtpnwomciz5g3ge X-Rspamd-Queue-Id: 36CEE1C0007 Authentication-Results: imf20.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=alibaba.com; spf=pass (imf20.hostedemail.com: domain of guanghuifeng@linux.alibaba.com designates 115.124.30.133 as permitted sender) smtp.mailfrom=guanghuifeng@linux.alibaba.com X-Rspamd-Server: rspam03 X-Rspam-User: X-HE-Tag: 1657024029-776896 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: 在 2022/7/5 20:11, Will Deacon 写道: > On Tue, Jul 05, 2022 at 08:07:07PM +0800, guanghui.fgh wrote: >> >> >> 在 2022/7/5 17:52, Will Deacon 写道: >>> On Mon, Jul 04, 2022 at 07:09:23PM +0200, Ard Biesheuvel wrote: >>>> On Mon, 4 Jul 2022 at 18:38, Will Deacon wrote: >>>>> >>>>> On Mon, Jul 04, 2022 at 10:34:07PM +0800, guanghui.fgh wrote: >>>>>> Thanks. >>>>>> >>>>>> 在 2022/7/4 22:23, Will Deacon 写道: >>>>>>> On Mon, Jul 04, 2022 at 10:11:27PM +0800, guanghui.fgh wrote: >>>> ... >>>>>>>> Namely, it's need to use non block/section mapping for crashkernel mem >>>>>>>> before shringking. >>>>>>> >>>>>>> Well, yes, but we can change arch_kexec_[un]protect_crashkres() not to do >>>>>>> that if we're leaving the thing mapped, no? >>>>>>> >>>>>> I think we should use arch_kexec_[un]protect_crashkres for crashkernel mem. >>>>>> >>>>>> Because when invalid crashkernel mem pagetable, there is no chance to rd/wr >>>>>> the crashkernel mem by mistake. >>>>>> >>>>>> If we don't use arch_kexec_[un]protect_crashkres to invalid crashkernel mem >>>>>> pagetable, there maybe some write operations to these mem by mistake which >>>>>> may cause crashkernel boot error and vmcore saving error. >>>>> >>>>> I don't really buy this line of reasoning. The entire main kernel is >>>>> writable, so why do we care about protecting the crashkernel so much? The >>>>> _code_ to launch the crash kernel is writable! If you care about preventing >>>>> writes to memory which should not be writable, then you should use >>>>> rodata=full. >>>>> >>>> >>>> This is not entirely true - the core kernel text and rodata are >>>> remapped r/o in the linear map, whereas all module code and rodata are >>>> left writable when rodata != full. >>> >>> Yes, sorry, you're quite right. The kernel text is only writable if >>> rodata=off. >>> >>> But I still think it makes sense to protect the crashkernel only if >>> rodata=full (which is the default on arm64) as this allows us to rely >>> on page mappings and I think fits well with what we do for modules. >>> >>>> But the conclusion is the same, imo: if you can't be bothered to >>>> protect a good chunk of the code and rodata that the kernel relies on, >>>> why should the crashkernel be treated any differently? >>> >>> Thanks. >>> >>> Will >> Thanks. >> >> 1.The rodata full is harm to the performance and has been disabled in-house. >> >> 2.When using crashkernel with rodata non full, the kernel also will use non >> block/section mapping which cause high d-TLB miss and degrade performance >> greatly. >> This patch fix it to use block/section mapping as far as possible. >> >> bool can_set_direct_map(void) >> { >> return rodata_full || debug_pagealloc_enabled(); >> } >> >> map_mem: >> if (can_set_direct_map() || IS_ENABLED(CONFIG_KFENCE)) >> flags |= NO_BLOCK_MAPPINGS | NO_CONT_MAPPINGS; >> >> 3.When rodata full is disabled, crashkernel also need protect(keep >> arch_kexec_[un]protect_crashkres using). >> I think crashkernel should't depend on radata full(Maybe other architecture >> don't support radata full now). > > I think this is going round in circles :/ > > As a first step, can we please leave the crashkernel mapped unless > rodata=full? It should be a much simpler patch to write, review and maintain > and it gives you the performance you want when crashkernel is being used. > > Will Thanks. There is a circle. 1.When the rodata is non full, there will be some error when calling arch_kexec_[un]protect_crashkres(BUG_ON(pud_huge(*pud))) now. It's also need non-block/section mapping for crashkernel mem. 2.In other words, maybe we should change arch_kexec_[un]protect_crashkres to support block/section mapping which can leave crashkernel block/section mapping. But when we shrink the crashkernel mem, we also need to split some block/section mapping(part mem for crashkernel, the left for the normal kernel). As a result, maybe we build crashkernel mem with non-block/section mapping is appropriate(as this patch doing).