On Wed, Jul 10, 2019 at 11:19 AM James Morse <james.mo...@arm.com> wrote: > > Hi Pasha, > > On 09/07/2019 14:07, Pavel Tatashin wrote: > >>> Enabling MMU and D-Cache for relocation would essentially require the > >>> same changes in kernel. Could you please share exactly why these were > >>> not accepted upstream into kexec-tools? > >> > >> Because '--no-checks' is a much simpler alternative. > >> > >> More of the discussion: > >> https://lore.kernel.org/linux-arm-kernel/5599813d-f83c-d154-287a-c131c4829...@arm.com/ > >> > >> While you can make purgatory a fully-fledged operating system, it doesn't > >> really need to > >> do anything on arm64. Errata-workarounds alone are a reason not do start > >> down this path. > > > > Thank you James. I will summaries the information gathered from the > > yesterday's/today's discussion and add it to the cover letter together > > with ARM64 tag. I think, the patch series makes sense for ARM64 only, > > unless there are other platforms that disable caching/MMU during > > relocation. > > I'd prefer not to reserve additional memory for regular kexec just to avoid > the relocation. > If the kernel's relocation work is so painful we can investigate doing it > while the MMU is > enabled. If you can compare regular-kexec with kexec_file_load() you > eliminate the > purgatory part of the work.
Relocation time is exactly the same for regular-kexec and kexec_file_load(). So, the relocation is indeed painful for our case. I am working on adding MMU enabled kernel relocation. Pasha