From: Pratyush Anand <pan...@redhat.com>
On our ARM64-based platform we have very long main kernel-secondary
kernel switch time.
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 <james.mo...@arm.com>
Cc: mark.rutl...@arm.com, b...@redhat.com, email@example.com,
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
Therefore, these patches adds support for dcache enabling facility during
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.
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 have some comments on making this code easier to maintain..
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.
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.
When do you plan merge this patch?
I can help you with testing on our platform.
Thanks for all your time on this series. That really helped me to
understand the arm64 page table in a better way.
linux-arm-kernel mailing list
kexec mailing list