On Wed, Jan 22, 2014 at 6:25 AM, Wang Nan wrote: > ARM's kdump is actually corrupted (at least for omap4460), mainly because > of > cache problem: flush_icache_range can't reliably ensure the copied data > correctly goes into RAM. After mmu turned off and jump to the trampoline, > kexec > always failed due to random undef instructions. > > This patch use ioremap to make sure the destnation of all memcpy() is > uncachable memory, including copying of target kernel and trampoline. > AFAIK ioremap on RAM in forbidden in ARM and device memory that ioremap() ends up creating is not meant for executable code. Doesn't this trigger the WARN_ON() in _arm_ioremap_pfn_caller)?