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 EA515C27C4F for ; Sun, 23 Jun 2024 09:10:45 +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:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc: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=o2fGVVVWo/78lsm76oW+FOJACwUScN2+qidcMJoTnPA=; b=TSpAX6sUOMq6o0 EOOEyeRaFeSDKx6YoiXtql6p3ytczoonIohqsI2zL79iMzSRGS05jPJ3QKJpZR+U48I39LvDhxzuz gn2KZKmf4sTgW1o5h3MuR3pVUA6U9VQfkl69WZpWEjhr9djrhvvZenPW29HSUI2xeK2NpaQRRz4hI CNg5cWlX6z7WTFHaFD13Oc3pTFQS9ErrCaeKoUECyOoySlxMD9HmQslisoQ/tWeZg4/Zsy2W6kWu7 ySOrlXsuWO9Ej1rWx6YROm8LJizb26Gcn0QCYq3VK543ll94Vtv0b7J+gVNsRi5+5e5i6DRdbN6ql Je8UDiN5BqJp15zcXuSw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sLJF0-0000000Dfrn-2so0; Sun, 23 Jun 2024 09:10:30 +0000 Received: from dfw.source.kernel.org ([2604:1380:4641:c500::1]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sLJEx-0000000Dfqw-35dm for linux-riscv@lists.infradead.org; Sun, 23 Jun 2024 09:10:29 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 77D506209D; Sun, 23 Jun 2024 09:10:25 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 94617C2BD10; Sun, 23 Jun 2024 09:10:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1719133825; bh=IJerKaND2PDmpGc/JHeycwUPLP3nyXvoGxo19PJ82xE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=oj78JHi6tiZufakq7Vw+6mRNykWp/G6u9780AuMZicHG0qHEOUOQ1JSM5FWVALTWj 4C2nyFia8/QGRpCcy454y1t3ai8frPICO1rCXvo9nQvhqzCfvpEAcrMvMz+1PBrax1 /EYlc/4+YZgtCqFzSifLhNFyWivmvg4Iu6jfivIgnO84Zjf64zEfQUne8EX9zq4KPv jPVY+PUHs0+xuFO65JpIRVKO61VJvW9QUaqNq1Q7bCUPecMKct+o7pTTwPW8UcpYCB L/Dp2bH7+/Ro2kmDurYC00gHh+l/NzVfPgm9sjinhD4sRG95L4PxrySJiLFkm8ZxfD OpRyNsmqAwRfw== Date: Sun, 23 Jun 2024 12:08:00 +0300 From: Mike Rapoport To: Charlie Jenkins Cc: yunhui cui , paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alexghiti@rivosinc.com, akpm@linux-foundation.org, bhe@redhat.com, dawei.li@shingroup.cn, jszhang@kernel.org, namcao@linutronix.de, bjorn@rivosinc.com, vishal.moola@gmail.com, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [External] Re: [PATCH] RISC-V: cmdline: Add support for 'memmap' parameter Message-ID: References: <20240618120842.15159-1-cuiyunhui@bytedance.com> 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-20240623_021027_908647_EE452997 X-CRM114-Status: GOOD ( 48.10 ) 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: , 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 T24gVGh1LCBKdW4gMjAsIDIwMjQgYXQgMTE6Mzk6NDFQTSAtMDcwMCwgQ2hhcmxpZSBKZW5raW5z IHdyb3RlOgo+IE9uIEZyaSwgSnVuIDIxLCAyMDI0IGF0IDAyOjAyOjE4UE0gKzA4MDAsIHl1bmh1 aSBjdWkgd3JvdGU6Cj4gPiBIaSBDaGFybGll77yMCj4gPiAKPiA+IE9uIEZyaSwgSnVuIDIxLCAy MDI0IGF0IDExOjEw4oCvQU0gQ2hhcmxpZSBKZW5raW5zIDxjaGFybGllQHJpdm9zaW5jLmNvbT4g d3JvdGU6Cj4gPiA+Cj4gPiA+IE9uIEZyaSwgSnVuIDIxLCAyMDI0IGF0IDEwOjA4OjM5QU0gKzA4 MDAsIHl1bmh1aSBjdWkgd3JvdGU6Cj4gPiA+ID4gSGkgQ2hhcmxpZSwKPiA+ID4gPgo+ID4gPiA+ IE9uIEZyaSwgSnVuIDIxLCAyMDI0IGF0IDk6MDPigK9BTSBDaGFybGllIEplbmtpbnMgPGNoYXJs aWVAcml2b3NpbmMuY29tPiB3cm90ZToKPiA+ID4gPiA+Cj4gPiA+ID4gPiBPbiBUdWUsIEp1biAx OCwgMjAyNCBhdCAwODowODo0MlBNICswODAwLCBZdW5odWkgQ3VpIHdyb3RlOgo+ID4gPiA+ID4g PiBJbXBsZW1lbnQgc3VwcG9ydCBmb3IgcGFyc2luZyAnbWVtbWFwJyBrZXJuZWwgY29tbWFuZCBs aW5lIHBhcmFtZXRlci4KPiA+ID4gPiA+ID4KPiA+ID4gPiA+ID4gVGhpcyBwYXRjaCBjb3ZlcnMg cGFyc2luZyBvZiB0aGUgZm9sbG93aW5nIHR3byBmb3JtYXRzIGZvciAnbWVtbWFwJwo+ID4gPiA+ ID4gPiBwYXJhbWV0ZXIgdmFsdWVzOgo+ID4gPiA+ID4gPgo+ID4gPiA+ID4gPiAtIG5uW0tNR11A c3NbS01HXQo+ID4gPiA+ID4gPiAtIG5uW0tNR10kc3NbS01HXQo+ID4gPiA+ID4gPgo+ID4gPiA+ ID4gPiAoW0tNR10gPSBLIE0gb3IgRyAoa2lsbywgbWVnYSwgZ2lnYSkpCj4gPiA+ID4gPiA+Cj4g PiA+ID4gPiA+IFRoZXNlIHR3byBhbGxvd2VkIGZvcm1hdHMgZm9yIHBhcmFtZXRlciB2YWx1ZSBh cmUgYWxyZWFkeSBkb2N1bWVudGVkCj4gPiA+ID4gPiA+IGluIGZpbGUga2VybmVsLXBhcmFtZXRl cnMudHh0IGluIERvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUgZm9sZGVyLgo+ID4gPiA+ID4gPiBT b21lIGFyY2hpdGVjdHVyZXMgYWxyZWFkeSBzdXBwb3J0IHRoZW0sIGJ1dCBNaXBzIGRpZCBub3Qg cHJpb3IgdG8KCkkgYmVsaWV2ZSB5b3Ugc2hvdWxkIGFkZCBSSVNDViB0byB0aGUgbGlzdCBvZiBz dXBwb3J0ZWQgYXJjaGl0ZWN0dXJlcyBmb3IKdGhlc2Ugb3B0aW9ucy4KCj4gPiA+ID4gPiBDb3B5 LXBhc3RlIGZyb20gYSBNaXBzIHBhdGNoPyBTaG91bGQgc2F5IHJpc2N2IDopCj4gPiA+ID4gPgo+ ID4gPiA+ID4gSXQgbG9va3MgbGlrZSB0aGlzIGNvZGUgaXMgZHVwbGljYXRlZCBmcm9tIHh0ZW5z YSBhbmQgaXMgZWZmZWN0aXZlbHkgdGhlCj4gPiA+ID4gPiBzYW1lIGFzIG1pcHMuIENhbiB0aGlz IGNvZGUgYmUgcGxhY2VkIGluIGEgZ2VuZXJpYyBmaWxlIHNvIHRoYXQgdGhlIGNvZGUKPiA+ID4g PiA+IGNhbiBiZSBzaGFyZWQgYmV0d2VlbiBtaXBzLCByaXNjdiwgYW5kIHh0ZW5zYSAtLSBtYXli ZSBhIG5ldyBjb25maWcgdGhhdAo+ID4gPiA+ID4gZ2V0cyBzZWxlY3RlZCBieSBtaXBzL3Jpc2N2 L3h0ZW5zYT8KPiA+ID4gPgo+ID4gPiA+IFllYWgsIHRoYXQncyBhY3R1YWxseSB3aGF0IEkgd2Fz IHRoaW5raW5nLiBXaGljaCBnZW5lcmFsIGZpbGUgZG8geW91Cj4gPiA+ID4gdGhpbmsgd291bGQg YmUgbW9yZSBzdWl0YWJsZSB0byBwdXQgaXQgaW4/Cj4gPiA+Cj4gPiA+IEkgYW0gbm90IHN1cmUg dGhlIGJlc3QgcGxhY2UgdG8gcHV0IGl0LiBXaGF0IGRvIHlvdSB0aGluayBhYm91dAo+ID4gPiBt bS9tZW1ibG9jay5jIG5leHQgdG8gdGhlICJtZW1ibG9jayIgZWFybHkgcGFyYW0/Cj4gPiAKPiA+ IElzIGl0IGluYXBwcm9wcmlhdGUgdG8gcHV0IGl0IGluIG1lbWJsb2NrPyBUaGUgaW1wbGVtZW50 YXRpb24gb2YgbWlwcwo+ID4gaXMgZGlmZmVyZW50IGZyb20gdGhhdCBvZiB4dGVuc2EsIGFuZCBl YXJseV9tZW0gaXMgYWxzbyBkaXN0cmlidXRlZCBpbgo+ID4gdmFyaW91cyBhcmNocywgc28gd2Ug c3RpbGwgcHV0IG1lbW1hcCBpbiByaXNjdi8sIGFuZCB0aGVuIEkgd2lsbAo+ID4gbW9kaWZ5IHRo ZSBjb21taXQgbG9nLgo+ID4gV2hhdCBkbyB5b3UgdGhpbms/Cj4gCj4gVGhlIG1pcHMgaW1wbGVt ZW50YXRpb24gaXMgdmVyeSBjbG9zZSB0byBiZWluZyB0aGUgc2FtZSwgYnV0IEkgYW0gbm90Cj4g c3VyZSBpZiB0aGUgZGlmZmVyZW5jZXMgd291bGQgcHJldmVudCBzdGFuZGFyZGl6YXRpb24uIHh0 ZW5zYSBhbmQgbm93Cj4gcmlzY3Ygd291bGQgaGF2ZSBpZGVudGljYWwgaW1wbGVtZW50YXRpb25z IHRob3VnaCBzbyBhIGdlbmVyaWMgbWVtbWFwCj4gaW1wbGVtZW50YXRpb24gY291bGQgYmUgb25s eSBhcHBsaWVkIHRvIHRob3NlIHR3byBhcmNocy4KClRoZSBtZW1tYXA9IGlzIGdlbmVyYWxseSBh IGhhY2sgdG8gd29ya2Fyb3VuZCBpc3N1ZXMgd2l0aCBob3cgZmlybXdhcmUKZGVzY3JpYmVzIG1l bW9yeSB0byB0aGUga2VybmVsIHNvIGluIGEgd2F5IGl0IGJlbG9uZ3MgdG8gYXJjaC8gY29kZS4K Cm1pcHMgYW5kIHh0ZW5zYSBhbHJlYWR5IGhhdmUgZGlmZmVyZW50IHZpZXdzIG9uIGhvdyB0aGlz IHNob3VsZCBiZSB0cmVhdGVkLApub3QgbWVudGlvbmluZyB4ODYgdGhhdCBoYW5kbGVzIG1lbW1h cD0gb24gZTgyMCBsZXZlbCByYXRoZXIgdGhhbiB3aXRoCm1lbWJsb2NrLgoKPiA+ID4gPiA+ID4g ZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvbW0vaW5pdC5jIGIvYXJjaC9yaXNjdi9tbS9pbml0LmMK PiA+ID4gPiA+ID4gaW5kZXggZTM0MDVlNGI5OWFmLi43YmU3ZWMzMDkyYWQgMTAwNjQ0Cj4gPiA+ ID4gPiA+IC0tLSBhL2FyY2gvcmlzY3YvbW0vaW5pdC5jCj4gPiA+ID4gPiA+ICsrKyBiL2FyY2gv cmlzY3YvbW0vaW5pdC5jCj4gPiA+ID4gPiA+IEBAIC0yMDgsNiArMjA4LDU2IEBAIHN0YXRpYyBp bnQgX19pbml0IGVhcmx5X21lbShjaGFyICpwKQo+ID4gPiA+ID4gPiAgfQo+ID4gPiA+ID4gPiAg ZWFybHlfcGFyYW0oIm1lbSIsIGVhcmx5X21lbSk7Cj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+ICtz dGF0aWMgdm9pZCBfX2luaXQgcGFyc2VfbWVtbWFwX29uZShjaGFyICpwKQo+ID4gPiA+ID4gPiAr ewo+ID4gPiA+ID4gPiArICAgICBjaGFyICpvbGRwOwo+ID4gPiA+ID4gPiArICAgICB1bnNpZ25l ZCBsb25nIHN0YXJ0X2F0LCBtZW1fc2l6ZTsKPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiArICAg ICBpZiAoIXApCj4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgcmV0dXJuOwo+ID4gPiA+ID4gPiAr Cj4gPiA+ID4gPiA+ICsgICAgIG9sZHAgPSBwOwo+ID4gPiA+ID4gPiArICAgICBtZW1fc2l6ZSA9 IG1lbXBhcnNlKHAsICZwKTsKPiA+ID4gPiA+ID4gKyAgICAgaWYgKHAgPT0gb2xkcCkKPiA+ID4g PiA+ID4gKyAgICAgICAgICAgICByZXR1cm47Cj4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4gKyAg ICAgc3dpdGNoICgqcCkgewo+ID4gPiA+ID4gPiArICAgICBjYXNlICdAJzoKPiA+ID4gPiA+ID4g KyAgICAgICAgICAgICBzdGFydF9hdCA9IG1lbXBhcnNlKHAgKyAxLCAmcCk7Cj4gPiA+ID4gPiA+ ICsgICAgICAgICAgICAgbWVtYmxvY2tfYWRkKHN0YXJ0X2F0LCBtZW1fc2l6ZSk7Cj4gPiA+ID4g PiA+ICsgICAgICAgICAgICAgYnJlYWs7Cj4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4gKyAgICAg Y2FzZSAnJCc6Cj4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgc3RhcnRfYXQgPSBtZW1wYXJzZShw ICsgMSwgJnApOwo+ID4gPiA+ID4gPiArICAgICAgICAgICAgIG1lbWJsb2NrX3Jlc2VydmUoc3Rh cnRfYXQsIG1lbV9zaXplKTsKClRoaXMgd2lsbCBhZGQgYSByZWdpb24gdG8gbWVtYmxvY2sucmVz ZXJ2ZWQsIGJ1dCBpZiB0aGVyZSBpcyBubyBtZW1vcnkKdGhlcmUgdGhpcyBpbmZvcm1hdGlvbiB3 b24ndCBiZSBhdmFpbGFibGUgYWZ0ZXIgYm9vdCwgZS5nLiB0aGVyZSB3b24ndCBiZQpzdHJ1Y3Qg cGFnZXMgd2l0aCBQR19SZXNlcnZlZCBmb3IgdGhpcyByZWdpb24uCklzIHRoaXMgeW91ciBpbnRl bnRpb24/Cgo+ID4gPiA+ID4gPiArICAgICAgICAgICAgIGJyZWFrOwo+ID4gPiA+ID4gPiArCj4g PiA+ID4gPiA+ICsgICAgIGNhc2UgMDoKPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICBtZW1ibG9j a19yZXNlcnZlKG1lbV9zaXplLCAtbWVtX3NpemUpOwoKVGhpcyBjb3JyZXNwb25kcyB0byB0aGUg Y2FzZSBtZW1tYXA9bm5bS01HXSBhbmQgaXQgaXMgbm90IGRvY3VtZW50ZWQgaW4Ka2VybmVsLXBh cmFtZXRlcnMudHh0LgoKTm90IHN1cmUgaXQncyBuZWVkZWQgYXQgYWxsIGFzIHRoZSBzYW1lIHJl c3VsdCBjYW4gYmUgYWNoaWV2ZWQgd2l0aAptZW1tYXA9bm5bS01HXSQwLgoKPiA+ID4gPiA+ID4g KyAgICAgICAgICAgICBicmVhazsKPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4gPiArICAgICBkZWZh dWx0Ogo+ID4gPiA+ID4gPiArICAgICAgICAgICAgIHByX3dhcm4oIlVucmVjb2duaXplZCBtZW1t YXAgc3ludGF4OiAlc1xuIiwgcCk7Cj4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgYnJlYWs7Cj4g PiA+ID4gPiA+ICsgICAgIH0KPiA+ID4gPiA+ID4gK30KPiA+ID4gPiA+ID4gKwo+ID4gPiA+ID4g PiArc3RhdGljIGludCBfX2luaXQgcGFyc2VfbWVtbWFwX29wdChjaGFyICpzdHIpCj4gPiA+ID4g PiA+ICt7Cj4gPiA+ID4gPiA+ICsgICAgIHdoaWxlIChzdHIpIHsKPiA+ID4gPiA+ID4gKyAgICAg ICAgICAgICBjaGFyICprID0gc3RyY2hyKHN0ciwgJywnKTsKPiA+ID4gPiA+ID4gKwo+ID4gPiA+ ID4gPiArICAgICAgICAgICAgIGlmIChrKQo+ID4gPiA+ID4gPiArICAgICAgICAgICAgICAgICAg ICAgKmsrKyA9IDA7Cj4gPiA+ID4gPiA+ICsKPiA+ID4gPiA+ID4gKyAgICAgICAgICAgICBwYXJz ZV9tZW1tYXBfb25lKHN0cik7Cj4gPiA+ID4gPiA+ICsgICAgICAgICAgICAgc3RyID0gazsKPiA+ ID4gPiA+ID4gKyAgICAgfQo+ID4gPiA+ID4gPiArCj4gPiA+ID4gPiA+ICsgICAgIHJldHVybiAw Owo+ID4gPiA+ID4gPiArfQo+ID4gPiA+ID4gPiArZWFybHlfcGFyYW0oIm1lbW1hcCIsIHBhcnNl X21lbW1hcF9vcHQpOwo+ID4gPiA+ID4gPiArCj4gPiA+ID4gPiA+ICBzdGF0aWMgdm9pZCBfX2lu aXQgc2V0dXBfYm9vdG1lbSh2b2lkKQo+ID4gPiA+ID4gPiAgewo+ID4gPiA+ID4gPiAgICAgICBw aHlzX2FkZHJfdCB2bWxpbnV4X2VuZCA9IF9fcGFfc3ltYm9sKCZfZW5kKTsKPiA+ID4gPiA+ID4g LS0KPiA+ID4gPiA+ID4gMi4yMC4xCj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiA+ID4g PiA+IGxpbnV4LXJpc2N2IG1haWxpbmcgbGlzdAo+ID4gPiA+ID4gPiBsaW51eC1yaXNjdkBsaXN0 cy5pbmZyYWRlYWQub3JnCj4gPiA+ID4gPiA+IGh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21h aWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YKPiA+ID4gPgo+ID4gPiA+IFRoYW5rcywKPiA+ID4g PiBZdW5odWkKPiA+IAo+ID4gVGhhbmtzLAo+ID4gWXVuaHVpCgotLSAKU2luY2VyZWx5IHlvdXJz LApNaWtlLgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K bGludXgtcmlzY3YgbWFpbGluZyBsaXN0CmxpbnV4LXJpc2N2QGxpc3RzLmluZnJhZGVhZC5vcmcK aHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1yaXNjdgo= From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B73A92D052 for ; Sun, 23 Jun 2024 09:10:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1719133825; cv=none; b=FhKrsmI11IROzqADUwoF7xlI7GQXpH0CMO6MyTCYsQ8bHzvwCLS1iZsYUAGROTk/yPFEdhqhY2gDadTpKsq6EJDR4NZLAwWUwv3tcpbpnuqsPykcSozrIuPNHeHSzMsl1dgv1aDYQkJqsLGs+rgc0VzGhAb+Dg57Z8CL5j7cITk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1719133825; c=relaxed/simple; bh=IJerKaND2PDmpGc/JHeycwUPLP3nyXvoGxo19PJ82xE=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=m+qOUFOqYX+DzsySnj8WLPTqlq82dMDbj0tZbdJTshvz7aA9+Xz4BS8Q72DRJBHbRfyc9mg9rpD4BJuZd0zoG0goCJVfSspfRcQPajin80TiznUIcmiT2fB4suhx1H68SVZiXJMkYUFPlZeIL1wiTbeHe5rv6kwEjtC3ibjGB3w= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oj78JHi6; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oj78JHi6" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 94617C2BD10; Sun, 23 Jun 2024 09:10:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1719133825; bh=IJerKaND2PDmpGc/JHeycwUPLP3nyXvoGxo19PJ82xE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=oj78JHi6tiZufakq7Vw+6mRNykWp/G6u9780AuMZicHG0qHEOUOQ1JSM5FWVALTWj 4C2nyFia8/QGRpCcy454y1t3ai8frPICO1rCXvo9nQvhqzCfvpEAcrMvMz+1PBrax1 /EYlc/4+YZgtCqFzSifLhNFyWivmvg4Iu6jfivIgnO84Zjf64zEfQUne8EX9zq4KPv jPVY+PUHs0+xuFO65JpIRVKO61VJvW9QUaqNq1Q7bCUPecMKct+o7pTTwPW8UcpYCB L/Dp2bH7+/Ro2kmDurYC00gHh+l/NzVfPgm9sjinhD4sRG95L4PxrySJiLFkm8ZxfD OpRyNsmqAwRfw== Date: Sun, 23 Jun 2024 12:08:00 +0300 From: Mike Rapoport To: Charlie Jenkins Cc: yunhui cui , paul.walmsley@sifive.com, palmer@dabbelt.com, aou@eecs.berkeley.edu, alexghiti@rivosinc.com, akpm@linux-foundation.org, bhe@redhat.com, dawei.li@shingroup.cn, jszhang@kernel.org, namcao@linutronix.de, bjorn@rivosinc.com, vishal.moola@gmail.com, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [External] Re: [PATCH] RISC-V: cmdline: Add support for 'memmap' parameter Message-ID: References: <20240618120842.15159-1-cuiyunhui@bytedance.com> 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 Thu, Jun 20, 2024 at 11:39:41PM -0700, Charlie Jenkins wrote: > On Fri, Jun 21, 2024 at 02:02:18PM +0800, yunhui cui wrote: > > Hi Charlie, > > > > On Fri, Jun 21, 2024 at 11:10 AM Charlie Jenkins wrote: > > > > > > On Fri, Jun 21, 2024 at 10:08:39AM +0800, yunhui cui wrote: > > > > Hi Charlie, > > > > > > > > On Fri, Jun 21, 2024 at 9:03 AM Charlie Jenkins wrote: > > > > > > > > > > On Tue, Jun 18, 2024 at 08:08:42PM +0800, Yunhui Cui wrote: > > > > > > Implement support for parsing 'memmap' kernel command line parameter. > > > > > > > > > > > > This patch covers parsing of the following two formats for 'memmap' > > > > > > parameter values: > > > > > > > > > > > > - nn[KMG]@ss[KMG] > > > > > > - nn[KMG]$ss[KMG] > > > > > > > > > > > > ([KMG] = K M or G (kilo, mega, giga)) > > > > > > > > > > > > These two allowed formats for parameter value are already documented > > > > > > in file kernel-parameters.txt in Documentation/admin-guide folder. > > > > > > Some architectures already support them, but Mips did not prior to I believe you should add RISCV to the list of supported architectures for these options. > > > > > Copy-paste from a Mips patch? Should say riscv :) > > > > > > > > > > It looks like this code is duplicated from xtensa and is effectively the > > > > > same as mips. Can this code be placed in a generic file so that the code > > > > > can be shared between mips, riscv, and xtensa -- maybe a new config that > > > > > gets selected by mips/riscv/xtensa? > > > > > > > > Yeah, that's actually what I was thinking. Which general file do you > > > > think would be more suitable to put it in? > > > > > > I am not sure the best place to put it. What do you think about > > > mm/memblock.c next to the "memblock" early param? > > > > Is it inappropriate to put it in memblock? The implementation of mips > > is different from that of xtensa, and early_mem is also distributed in > > various archs, so we still put memmap in riscv/, and then I will > > modify the commit log. > > What do you think? > > The mips implementation is very close to being the same, but I am not > sure if the differences would prevent standardization. xtensa and now > riscv would have identical implementations though so a generic memmap > implementation could be only applied to those two archs. The memmap= is generally a hack to workaround issues with how firmware describes memory to the kernel so in a way it belongs to arch/ code. mips and xtensa already have different views on how this should be treated, not mentioning x86 that handles memmap= on e820 level rather than with memblock. > > > > > > diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c > > > > > > index e3405e4b99af..7be7ec3092ad 100644 > > > > > > --- a/arch/riscv/mm/init.c > > > > > > +++ b/arch/riscv/mm/init.c > > > > > > @@ -208,6 +208,56 @@ static int __init early_mem(char *p) > > > > > > } > > > > > > early_param("mem", early_mem); > > > > > > > > > > > > +static void __init parse_memmap_one(char *p) > > > > > > +{ > > > > > > + char *oldp; > > > > > > + unsigned long start_at, mem_size; > > > > > > + > > > > > > + if (!p) > > > > > > + return; > > > > > > + > > > > > > + oldp = p; > > > > > > + mem_size = memparse(p, &p); > > > > > > + if (p == oldp) > > > > > > + return; > > > > > > + > > > > > > + switch (*p) { > > > > > > + case '@': > > > > > > + start_at = memparse(p + 1, &p); > > > > > > + memblock_add(start_at, mem_size); > > > > > > + break; > > > > > > + > > > > > > + case '$': > > > > > > + start_at = memparse(p + 1, &p); > > > > > > + memblock_reserve(start_at, mem_size); This will add a region to memblock.reserved, but if there is no memory there this information won't be available after boot, e.g. there won't be struct pages with PG_Reserved for this region. Is this your intention? > > > > > > + break; > > > > > > + > > > > > > + case 0: > > > > > > + memblock_reserve(mem_size, -mem_size); This corresponds to the case memmap=nn[KMG] and it is not documented in kernel-parameters.txt. Not sure it's needed at all as the same result can be achieved with memmap=nn[KMG]$0. > > > > > > + break; > > > > > > + > > > > > > + default: > > > > > > + pr_warn("Unrecognized memmap syntax: %s\n", p); > > > > > > + break; > > > > > > + } > > > > > > +} > > > > > > + > > > > > > +static int __init parse_memmap_opt(char *str) > > > > > > +{ > > > > > > + while (str) { > > > > > > + char *k = strchr(str, ','); > > > > > > + > > > > > > + if (k) > > > > > > + *k++ = 0; > > > > > > + > > > > > > + parse_memmap_one(str); > > > > > > + str = k; > > > > > > + } > > > > > > + > > > > > > + return 0; > > > > > > +} > > > > > > +early_param("memmap", parse_memmap_opt); > > > > > > + > > > > > > static void __init setup_bootmem(void) > > > > > > { > > > > > > phys_addr_t vmlinux_end = __pa_symbol(&_end); > > > > > > -- > > > > > > 2.20.1 > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > linux-riscv mailing list > > > > > > linux-riscv@lists.infradead.org > > > > > > http://lists.infradead.org/mailman/listinfo/linux-riscv > > > > > > > > Thanks, > > > > Yunhui > > > > Thanks, > > Yunhui -- Sincerely yours, Mike.