From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-pl0-x229.google.com ([2607:f8b0:400e:c01::229]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1f3tzr-0001LR-U1 for kexec@lists.infradead.org; Thu, 05 Apr 2018 01:47:29 +0000 Received: by mail-pl0-x229.google.com with SMTP id b6-v6so14902615pla.11 for ; Wed, 04 Apr 2018 18:47:17 -0700 (PDT) Date: Thu, 5 Apr 2018 10:47:08 +0900 From: AKASHI Takahiro Subject: Re: [PATCH v3 0/2] kexec-tools: arm64: Enable D-cache in purgatory Message-ID: <20180405014707.GB19607@linaro.org> References: <59312080.1090906@arm.com> <1963984d-e78e-a5b2-f1a2-fb0a789a505e@redhat.com> <71f0a333-8bfb-3755-c9fd-e30bf2280339@cisco.com> <5599813d-f83c-d154-287a-c131c48292ca@arm.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <5599813d-f83c-d154-287a-c131c48292ca@arm.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "kexec" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: James Morse Cc: Pratyush Anand , mark.rutland@arm.com, bhe@redhat.com, kexec@lists.infradead.org, horms@verge.net.au, "xe-linux-external(mailer list)" , Kostiantyn Iarmak , dyoung@redhat.com, linux-arm-kernel@lists.infradead.org T24gV2VkLCBBcHIgMDQsIDIwMTggYXQgMDI6Mjg6NTJQTSArMDEwMCwgSmFtZXMgTW9yc2Ugd3Jv dGU6Cj4gSGkgS29zdGlhbnR5biwKPiAKPiBPbiAwNC8wNC8xOCAxMzo0NSwgS29zdGlhbnR5biBJ YXJtYWsgd3JvdGU6Cj4gPiBGcm9tOiBQcmF0eXVzaCBBbmFuZCA8cGFuYW5kQHJlZGhhdC5jb20+ Cj4gPj4gRGF0ZTogRnJpLCBKdW4gMiwgMjAxNyBhdCA1OjQyIFBNCj4gPj4gU3ViamVjdDogUmU6 IFtQQVRDSCB2MyAwLzJdIGtleGVjLXRvb2xzOiBhcm02NDogRW5hYmxlIEQtY2FjaGUgaW4gcHVy Z2F0b3J5Cj4gPj4gVG86IEphbWVzIE1vcnNlIDxqYW1lcy5tb3JzZUBhcm0uY29tPgo+ID4+IENj OiBtYXJrLnJ1dGxhbmRAYXJtLmNvbSwgYmhlQHJlZGhhdC5jb20sIGtleGVjQGxpc3RzLmluZnJh ZGVhZC5vcmcsCj4gPj4gaG9ybXNAdmVyZ2UubmV0LmF1LCBkeW91bmdAcmVkaGF0LmNvbSwKPiA+ PiBsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKPiA+Pgo+ID4+IE9uIEZyaWRh eSAwMiBKdW5lIDIwMTcgMDE6NTMgUE0sIEphbWVzIE1vcnNlIHdyb3RlOgo+ID4+PiBPbiAyMy8w NS8xNyAwNjowMiwgUHJhdHl1c2ggQW5hbmQgd3JvdGU6Cj4gPj4+PiBJdCB0YWtlcyBtb3JlIHRo YXQgMiBtaW51dGVzIHRvIHZlcmlmeSBTSEEgaW4gcHVyZ2F0b3J5IHdoZW4gdm1saW51eiBpbWFn ZQo+ID4+Pj4gaXMgYXJvdW5kIDEzTUIgYW5kIGluaXRyYW1mcyBpcyBhcm91bmQgMzBNQi4gSXQg dGFrZXMgbW9yZSB0aGFuIDIwIHNlY29uZAo+ID4+Pj4gZXZlbiB3aGVuIHdlIGhhdmUgLU8yIG9w dGltaXphdGlvbiBlbmFibGVkLiBIb3dldmVyLCBpZiBkY2FjaGUgaXMgZW5hYmxlZAo+ID4+Pj4g ZHVyaW5nIHB1cmdhdG9yeSBleGVjdXRpb24gdGhlbiwgaXQgdGFrZXMganVzdCBhIHNlY29uZCBp biBTSEEKPiA+Pj4+IHZlcmlmaWNhdGlvbi4KPiA+Pj4+Cj4gPj4+PiBUaGVyZWZvcmUsIHRoZXNl IHBhdGNoZXMgYWRkcyBzdXBwb3J0IGZvciBkY2FjaGUgZW5hYmxpbmcgZmFjaWxpdHkgZHVyaW5n Cj4gPj4+PiBwdXJnYXRvcnkgZXhlY3V0aW9uLgo+IAo+ID4+PiBJJ20gc3RpbGwgbm90IGNvbnZp bmNlZCB3ZSBuZWVkIHRoaXMuIE1vdmluZyB0aGUgU0hBIHZlcmlmaWNhdGlvbiB0byBoYXBwZW4K PiA+Pj4gYmVmb3JlIHRoZSBkY2FjaGUrbW11IGFyZSBkaXNhYmxlZCB3b3VsZCBhbHNvIHNvbHZl IHRoZSBkZWxheSBwcm9ibGVtLAo+ID4+Cj4gPj4gSHVtbS4uSSBhbSBub3Qgc3VyZSwgaWYgd2Ug Y2FuIGRvIHRoYXQuCj4gCj4gPj4gV2hlbiB3ZSBsZWF2ZSBrZXJuZWwgKGFuZCBlbnRlciBpbnRv IHB1cmdhdG9yeSksIGljYWNoZStkY2FjaGUrbW11IGFyZQo+ID4+IGFscmVhZHkgZGlzYWJsZWQu IEkgdGhpbmssIHRoYXQgd291bGQgYmUgcG9zc2libGUgd2hlbiB3ZSB3aWxsIGJlIGluIGEKPiA+ PiBwb3NpdGlvbiB0byB1c2UgaW4ta2VybmVsIHB1cmdhdG9yeS4KPiA+Pgo+ID4+PiBhbmQgd2UK PiA+Pj4gY2FuIHByaW50IGFuIGVycm9yIG1lc3NhZ2Ugb3IgZmFpbCB0aGUgc3lzY2FsbC4KPiA+ Pj4KPiA+Pj4gRm9yIGtleGVjIHdlIGRvbid0IGV4cGVjdCBtZW1vcnkgY29ycnVwdGlvbiwgd2hh dCBhcmUgd2UgdGVzdGluZyBmb3I/Cj4gPj4+IEkgY2FuIHNlZSB0aGUgdXNlIGZvciBrZHVtcCwg YnV0IHRoZSBrZHVtcC1rZXJuZWwgaXMgdW5tYXBwZWQgc28gdGhlIGtlcm5lbAo+ID4+PiBjYW4n dCBhY2NpZGVudGFsbHkgd3JpdGUgb3ZlciBpdC4KPiA+Pj4KPiA+Pj4gKHdlIGRpc2N1c3NlZCBh bGwgdGhpcyBsYXN0IHRpbWUsIGJ1dCBpdCBmaXp6bGVkLW91dC4gSWYgeW91IGFuZCB0aGUKPiA+ Pj4gwqAga2V4ZWMtdG9vbHMgbWFpbnRhaW5lciB0aGluayBpdHMgbmVjZXNzYXJ5LCBmaW5lIGJ5 IG1lISkKPiAKPiA+PiBZZXMsIHRoZXJlIGhhZCBhbHJlYWR5IGJlZW4gZGlzY3Vzc2lvbiBhbmQg TUFJTlRBSU5FUnMgaGF2ZQo+ID4+IGRpc2NvdXJhZ2VkIG5vbmUtcHVyZ2F0b3J5IGltcGxlbWVu dGF0aW9uLgoKSSBkb24ndCByZW1lbWJlciB0aGUgZGlzY3Vzc2lvbiBsaWtlIHRoaXMgcXVpdGUg d2VsbCwgYnV0IGFueWhvdyAuLi4KCj4gPj4KPiA+Pj4gSSBoYXZlIHNvbWUgY29tbWVudHMgb24g bWFraW5nIHRoaXMgY29kZSBlYXNpZXIgdG8gbWFpbnRhaW4uLgo+ID4+Pgo+ID4+IFRoYW5rcy4K PiA+Pgo+ID4+IEkgaGF2ZSBpbXBsZW1lbnRlZCB5b3VyIHJldmlldyBjb21tZW50cyBhbmQgaGF2 ZSBhcmNoaXZlZCB0aGUgY29kZSBpbgo+ID4+Cj4gPj4gaHR0cHM6Ly9naXRodWIuY29tL3ByYXR5 dXNoYW5hbmQva2V4ZWMtdG9vbHMuZ2l0IDogcHVyZ2F0b3J5LWVuYWJsZS1kY2FjaGUKPiA+Pgo+ ID4+IEkgd2lsbCBiZSBwb3N0aW5nIHRoZSBuZXh0IHZlcnNpb24gb25seSB3aGVuIHNvbWVvbmUg Y29tcGxhaW5zIGFib3V0Cj4gPj4gQVJNNjQga2R1bXAgYmVoYXZpb3IgdGhhdCBpdCBpcyBub3Qg YXMgZmFzdCBhcyB4ODYuCj4gCj4gPiBPbiBvdXIgQVJNNjQtYmFzZWQgcGxhdGZvcm0gd2UgaGF2 ZSB2ZXJ5IGxvbmcgbWFpbiBrZXJuZWwtc2Vjb25kYXJ5IGtlcm5lbAo+ID4gc3dpdGNoIHRpbWUu Cj4gPiAKPiA+IFRoaXMgcGF0Y2ggc2V0IGZpeGVzIHRoZSBpc3N1ZSAod2UgYXJlIHVzaW5nIDQu NCBrZXJuZWwgYW5kIDIuMC4xMyBrZXhlYy10b29scwo+ID4gdmVyc2lvbiksIHdlIGNhbiBnZXQg fjI1eCBzcGVlZHVwLCB3aXRoIHRoaXMgcGF0Y2ggc2Vjb25kYXJ5IGtlcm5lbCBib290cyBpbiB+ Mwo+ID4gc2Vjb25kcyB3aGlsZSBvbiAyLjAuMTMtMi4wLjE2IGtleGVjLXRvb2xzIHdpdGhvdXQg dGhpcyBwYXRjaCBzd2l0Y2ggdGFrZXMgYWJvdXQKPiA+IDc1IHNlY29uZHMuCj4gCj4gVGhpcyBp cyBzbG93IGJlY2F1c2UgaXRzIGdlbmVyYXRpbmcgYSBjaGVja3N1bSBvZiB0aGUga2VybmVsIHdp dGhvdXQgdGhlIGJlbmVmaXQKPiBvZiB0aGUgY2FjaGVzLiBUaGlzIHNlcmllcyBnZW5lcmF0ZWQg cGFnZSB0YWJsZXMgc28gdGhhdCBpdCBjb3VsZCBlbmFibGUgdGhlIE1NVQo+IGFuZCBjYWNoZXMu IEJ1dCwgdGhlIHB1cmdhdG9yeSBjb2RlIGFsc28gbmVlZHMgdG8gYmUgYSBzaW1wbGUgYXMgcG9z c2libGUKPiBiZWNhdXNlIGl0cyBwcmFjdGljYWxseSBpbXBvc3NpYmxlIHRvIGRlYnVnLgoKTm90 IGltcG9zc2libGUsIGJ1dCBJIGFkbWl0IHRoYXQgSSBvY2Nhc2lvbmFsbHkgaGFkIGhhcmQgdGlt ZSBpbiBkZWJ1Z2dpbmcuCgo+IFRoZSBwdXJnYXRvcnkgY29kZSBkb2VzIHRoaXMgY2hlY2tzdW0t aW5nIGJlY2F1c2UgaXRzIHdvcnJpZWQgdGhlIHBhbmljKCkgd2FzCj4gYmVjYXVzZSB0aGUga2Vy bmVsIGNhdXNlIHNvbWUgbWVtb3J5IGNvcnJ1cHRpb24sIGFuZCB0aGF0IG1lbW9yeSBjb3JydXB0 aW9uIG1heQo+IGhhdmUgYWZmZWN0ZWQgdGhlIGtkdW1wIGtlcm5lbCB0b28uCj4gCj4gVGhpcyBj YW4ndCBoYXBwZW4gb24gYXJtNjQgYXMgd2UgdW5tYXAga2R1bXAncyBjcmFzaCByZWdpb24sIHNv IG5vdCBldmVuIHRoZQo+IGtlcm5lbCBjYW4gYWNjaWRlbnRhbGx5IHdyaXRlIHRvIGl0LiA5OGQy ZTE1MzliODQgKCJhcm02NDoga2R1bXA6IHByb3RlY3QgY3Jhc2gKPiBkdW1wIGtlcm5lbCBtZW1v cnkiKSBoYXMgYWxsIHRoZSBkZXRhaWxzLgo+IAo+ICh3ZSBhbHNvIG5lZWRlZCB0byBkbyB0aGlz IHRvIGF2b2lkIHRoZSByaXNrIG9mIG1pc21hdGNoZWQgbWVtb3J5IGF0dHJpYnV0ZXMgaWYKPiBr ZHVtcCBib290cyBhbmQgc29tZSBDUFVzIGFyZSBzdGlsbCBzdHVjayBpbiB0aGUgb2xkIGtlcm5l bCkKPiAKPiAKPiA+IFdoZW4gZG8geW91IHBsYW4gbWVyZ2UgdGhpcyBwYXRjaD8KPiAKPiBXZSBl bmRlZCB1cCB3aXRoIHRoZSBjaGVjay1zdW1taW5nIGNvZGUgYmVjYXVzZSBpdHMgdGhlIGRlZmF1 bHQgYmVoYXZpb3VyIG9mCj4ga2V4ZWMtdG9vbHMgb24gb3RoZXIgYXJjaGl0ZWN0dXJlcy4KPiAK PiBPbmUgYWx0ZXJuYXRpdmUgaXMgdG8gcmlwIGl0IG91dCBmb3IgYXJtNjQuIFVudGVzdGVkOgoK VGhhbmtzIGZvciB0aGUgcGF0Y2guIFRoaXMgZXZlbnR1YWxseSBlbGltaW5hdGVzICJyZWFzb24g ZCdldHJlIiBvZgpwdXJnYXRvcnkgb24gYXJtNjQgYXMgSSBkb2VzIGluIG15IGtleGVjX2ZpbGUg cGF0Y2gsIGFsdGhvdWdoIGl0IHdvdWxkCnJlcXVpcmUgYSBzbWFsbCByZS13b3JrLgoKLVRha2Fo aXJvIEFLQVNISQoKCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0lPC0tLS0tLS0tLS0tLS0tLS0tLS0t Cj4gZGlmZiAtLWdpdCBhL3B1cmdhdG9yeS9hcmNoL2FybTY0L01ha2VmaWxlIGIvcHVyZ2F0b3J5 L2FyY2gvYXJtNjQvTWFrZWZpbGUKPiBpbmRleCA2MzZhYmVhLi5mMTBjMTQ4IDEwMDY0NAo+IC0t LSBhL3B1cmdhdG9yeS9hcmNoL2FybTY0L01ha2VmaWxlCj4gKysrIGIvcHVyZ2F0b3J5L2FyY2gv YXJtNjQvTWFrZWZpbGUKPiBAQCAtNyw3ICs3LDggQEAgYXJtNjRfUFVSR0FUT1JZX0VYVFJBX0NG TEFHUyA9IFwKPiAgICAgICAgIC1XZXJyb3ItaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb24g XAo+ICAgICAgICAgLVdkZWNsYXJhdGlvbi1hZnRlci1zdGF0ZW1lbnQgXAo+ICAgICAgICAgLVdl cnJvcj1pbXBsaWNpdC1pbnQgXAo+IC0gICAgICAgLVdlcnJvcj1zdHJpY3QtcHJvdG90eXBlcwo+ ICsgICAgICAgLVdlcnJvcj1zdHJpY3QtcHJvdG90eXBlcyBcCj4gKyAgICAgICAtRE5PX1NIQV9J Tl9QVVJHQVRPUlkKPiAKPiAgYXJtNjRfUFVSR0FUT1JZX1NSQ1MgKz0gXAo+ICAgICAgICAgcHVy Z2F0b3J5L2FyY2gvYXJtNjQvZW50cnkuUyBcCj4gZGlmZiAtLWdpdCBhL3B1cmdhdG9yeS9wdXJn YXRvcnkuYyBiL3B1cmdhdG9yeS9wdXJnYXRvcnkuYwo+IGluZGV4IDNiYmNjMDkuLjQ0ZTc5MmEg MTAwNjQ0Cj4gLS0tIGEvcHVyZ2F0b3J5L3B1cmdhdG9yeS5jCj4gKysrIGIvcHVyZ2F0b3J5L3B1 cmdhdG9yeS5jCj4gQEAgLTksNiArOSw4IEBACj4gIHN0cnVjdCBzaGEyNTZfcmVnaW9uIHNoYTI1 Nl9yZWdpb25zW1NIQTI1Nl9SRUdJT05TXSA9IHt9Owo+ICBzaGEyNTZfZGlnZXN0X3Qgc2hhMjU2 X2RpZ2VzdCA9IHsgfTsKPiAKPiArI2lmbmRlZiBOT19TSEFfSU5fUFVSR0FUT1JZCj4gKwo+ICBp bnQgdmVyaWZ5X3NoYTI1Nl9kaWdlc3Qodm9pZCkKPiAgewo+ICAgICAgICAgc3RydWN0IHNoYTI1 Nl9yZWdpb24gKnB0ciwgKmVuZDsKPiBAQCAtMzksMTQgKzQxLDE4IEBAIGludCB2ZXJpZnlfc2hh MjU2X2RpZ2VzdCh2b2lkKQo+ICAgICAgICAgcmV0dXJuIDA7Cj4gIH0KPiAKPiArI2VuZGlmIC8q IE5PX1NIQV9JTl9QVVJHQVRPUlkgKi8KPiArCj4gIHZvaWQgcHVyZ2F0b3J5KHZvaWQpCj4gIHsK PiAgICAgICAgIHByaW50ZigiSSdtIGluIHB1cmdhdG9yeVxuIik7Cj4gICAgICAgICBzZXR1cF9h cmNoKCk7Cj4gKyNpZm5kZWYgTk9fU0hBX0lOX1BVUkdBVE9SWQo+ICAgICAgICAgaWYgKHZlcmlm eV9zaGEyNTZfZGlnZXN0KCkpIHsKPiAgICAgICAgICAgICAgICAgZm9yKDs7KSB7Cj4gICAgICAg ICAgICAgICAgICAgICAgICAgLyogbG9vcCBmb3JldmVyICovCj4gICAgICAgICAgICAgICAgIH0K PiAgICAgICAgIH0KPiArI2VuZGlmIC8qIE5PX1NIQV9JTl9QVVJHQVRPUlkgKi8KPiAgICAgICAg IHBvc3RfdmVyaWZpY2F0aW9uX3NldHVwX2FyY2goKTsKPiAgfQo+IC0tLS0tLS0tLS0tLS0tLS0t LS0tJTwtLS0tLS0tLS0tLS0tLS0tLS0tLQo+IAo+IAo+IFRoYW5rcywKPiAKPiBKYW1lcwo+IAo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gbGludXgt YXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKPiBsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVh ZC5vcmcKPiBodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4 LWFybS1rZXJuZWwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmtleGVjIG1haWxpbmcgbGlzdAprZXhlY0BsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8va2V4ZWMK From mboxrd@z Thu Jan 1 00:00:00 1970 From: takahiro.akashi@linaro.org (AKASHI Takahiro) Date: Thu, 5 Apr 2018 10:47:08 +0900 Subject: [PATCH v3 0/2] kexec-tools: arm64: Enable D-cache in purgatory In-Reply-To: <5599813d-f83c-d154-287a-c131c48292ca@arm.com> References: <59312080.1090906@arm.com> <1963984d-e78e-a5b2-f1a2-fb0a789a505e@redhat.com> <71f0a333-8bfb-3755-c9fd-e30bf2280339@cisco.com> <5599813d-f83c-d154-287a-c131c48292ca@arm.com> Message-ID: <20180405014707.GB19607@linaro.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, Apr 04, 2018 at 02:28:52PM +0100, James Morse wrote: > Hi Kostiantyn, > > On 04/04/18 13:45, Kostiantyn Iarmak wrote: > > From: Pratyush Anand > >> Date: Fri, Jun 2, 2017 at 5:42 PM > >> Subject: Re: [PATCH v3 0/2] kexec-tools: arm64: Enable D-cache in purgatory > >> To: James Morse > >> Cc: mark.rutland at arm.com, bhe at redhat.com, kexec at lists.infradead.org, > >> horms at verge.net.au, dyoung at redhat.com, > >> linux-arm-kernel at lists.infradead.org > >> > >> On Friday 02 June 2017 01:53 PM, James Morse wrote: > >>> On 23/05/17 06:02, Pratyush Anand wrote: > >>>> It takes more that 2 minutes to verify SHA in purgatory when vmlinuz image > >>>> is around 13MB and initramfs is around 30MB. It takes more than 20 second > >>>> even when we have -O2 optimization enabled. However, if dcache is enabled > >>>> during purgatory execution then, it takes just a second in SHA > >>>> verification. > >>>> > >>>> Therefore, these patches adds support for dcache enabling facility during > >>>> purgatory execution. > > >>> I'm still not convinced we need this. Moving the SHA verification to happen > >>> before the dcache+mmu are disabled would also solve the delay problem, > >> > >> Humm..I am not sure, if we can do that. > > >> When we leave kernel (and enter into purgatory), icache+dcache+mmu are > >> already disabled. I think, that would be possible when we will be in a > >> position to use in-kernel purgatory. > >> > >>> and we > >>> can print an error message or fail the syscall. > >>> > >>> For kexec we don't expect memory corruption, what are we testing for? > >>> I can see the use for kdump, but the kdump-kernel is unmapped so the kernel > >>> can't accidentally write over it. > >>> > >>> (we discussed all this last time, but it fizzled-out. If you and the > >>> ? kexec-tools maintainer think its necessary, fine by me!) > > >> Yes, there had already been discussion and MAINTAINERs have > >> discouraged none-purgatory implementation. I don't remember the discussion like this quite well, but anyhow ... > >> > >>> I have some comments on making this code easier to maintain.. > >>> > >> Thanks. > >> > >> I have implemented your review comments and have archived the code in > >> > >> https://github.com/pratyushanand/kexec-tools.git : purgatory-enable-dcache > >> > >> I will be posting the next version only when someone complains about > >> ARM64 kdump behavior that it is not as fast as x86. > > > On our ARM64-based platform we have very long main kernel-secondary kernel > > switch time. > > > > This patch set fixes the issue (we are using 4.4 kernel and 2.0.13 kexec-tools > > version), we can get ~25x speedup, with this patch secondary kernel boots in ~3 > > seconds while on 2.0.13-2.0.16 kexec-tools without this patch switch takes about > > 75 seconds. > > This is slow because its generating a checksum of the kernel without the benefit > of the caches. This series generated page tables so that it could enable the MMU > and caches. But, the purgatory code also needs to be a simple as possible > because its practically impossible to debug. Not impossible, but I admit that I occasionally had hard time in debugging. > The purgatory code does this checksum-ing because its worried the panic() was > because the kernel cause some memory corruption, and that memory corruption may > have affected the kdump kernel too. > > This can't happen on arm64 as we unmap kdump's crash region, so not even the > kernel can accidentally write to it. 98d2e1539b84 ("arm64: kdump: protect crash > dump kernel memory") has all the details. > > (we also needed to do this to avoid the risk of mismatched memory attributes if > kdump boots and some CPUs are still stuck in the old kernel) > > > > When do you plan merge this patch? > > We ended up with the check-summing code because its the default behaviour of > kexec-tools on other architectures. > > One alternative is to rip it out for arm64. Untested: Thanks for the patch. This eventually eliminates "reason d'etre" of purgatory on arm64 as I does in my kexec_file patch, although it would require a small re-work. -Takahiro AKASHI > --------------------%<-------------------- > diff --git a/purgatory/arch/arm64/Makefile b/purgatory/arch/arm64/Makefile > index 636abea..f10c148 100644 > --- a/purgatory/arch/arm64/Makefile > +++ b/purgatory/arch/arm64/Makefile > @@ -7,7 +7,8 @@ arm64_PURGATORY_EXTRA_CFLAGS = \ > -Werror-implicit-function-declaration \ > -Wdeclaration-after-statement \ > -Werror=implicit-int \ > - -Werror=strict-prototypes > + -Werror=strict-prototypes \ > + -DNO_SHA_IN_PURGATORY > > arm64_PURGATORY_SRCS += \ > purgatory/arch/arm64/entry.S \ > diff --git a/purgatory/purgatory.c b/purgatory/purgatory.c > index 3bbcc09..44e792a 100644 > --- a/purgatory/purgatory.c > +++ b/purgatory/purgatory.c > @@ -9,6 +9,8 @@ > struct sha256_region sha256_regions[SHA256_REGIONS] = {}; > sha256_digest_t sha256_digest = { }; > > +#ifndef NO_SHA_IN_PURGATORY > + > int verify_sha256_digest(void) > { > struct sha256_region *ptr, *end; > @@ -39,14 +41,18 @@ int verify_sha256_digest(void) > return 0; > } > > +#endif /* NO_SHA_IN_PURGATORY */ > + > void purgatory(void) > { > printf("I'm in purgatory\n"); > setup_arch(); > +#ifndef NO_SHA_IN_PURGATORY > if (verify_sha256_digest()) { > for(;;) { > /* loop forever */ > } > } > +#endif /* NO_SHA_IN_PURGATORY */ > post_verification_setup_arch(); > } > --------------------%<-------------------- > > > Thanks, > > James > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel