[PATCH v8 9/9] vmcore: support mmap() on /proc/vmcore
HATAYAMA Daisuke
d.hatayama at jp.fujitsu.com
Thu Jun 6 21:01:45 EDT 2013
(2013/06/07 6:31), Arnd Bergmann wrote:
> On Thursday 23 May 2013 14:25:48 HATAYAMA Daisuke wrote:
>> This patch introduces mmap_vmcore().
>>
>> Don't permit writable nor executable mapping even with mprotect()
>> because this mmap() is aimed at reading crash dump memory.
>> Non-writable mapping is also requirement of remap_pfn_range() when
>> mapping linear pages on non-consecutive physical pages; see
>> is_cow_mapping().
>>
>> Set VM_MIXEDMAP flag to remap memory by remap_pfn_range and by
>> remap_vmalloc_range_pertial at the same time for a single
>> vma. do_munmap() can correctly clean partially remapped vma with two
>> functions in abnormal case. See zap_pte_range(), vm_normal_page() and
>> their comments for details.
>>
>> On x86-32 PAE kernels, mmap() supports at most 16TB memory only. This
>> limitation comes from the fact that the third argument of
>> remap_pfn_range(), pfn, is of 32-bit length on x86-32: unsigned long.
>>
>> Signed-off-by: HATAYAMA Daisuke <d.hatayama at jp.fujitsu.com>
>> Acked-by: Vivek Goyal <vgoyal at redhat.com>
>
> I get build errors on 'make randconfig' from this, when building
> NOMMU kernels on ARM. I suppose the new feature should be hidden
> in #ifdef CONFIG_MMU.
>
> Arnd
>
Thanks for trying the build and your report!
OTOH, I don't have no-MMU architectures; x86 box only. I cannot reproduce this build error. Could you give me your build log? I want to use it to detect what part depends on CONFIG_MMU.
--
Thanks.
HATAYAMA, Daisuke
More information about the kexec
mailing list