[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1437036437-25408-1-git-send-email-bhe@redhat.com>
Date: Thu, 16 Jul 2015 16:46:55 +0800
From: Baoquan He <bhe@...hat.com>
To: linux-kernel@...r.kernel.org, ncroxon@...hat.com,
dyoung@...hat.com, mhuang@...hat.com
Cc: Baoquan He <bhe@...hat.com>
Subject: [RHEL6.8 Patch 00/19] Support mmap() on /proc/vmcore
This patchset includes 3 parts.
-------------------------------------
1st part:
Includes 13 upstream commits. They are recommended by Nigel Croxon
since he back ported this feature to rhel7. This 13 back ports
works for all ARCHs except of s390 since it always broke s390n kdump.
c2c1b08 fs/proc/vmcore.c: put if tests in the top of the while loop to reduce duplication
0fa73b8 include/linux/mm.h: add PAGE_ALIGNED() helper
b27eb18 vmcore: clean up read_vmcore()
f2bdacd vmcore: allocate buffer for ELF headers on page-size alignment
7f614cd vmcore: treat memory chunks referenced by PT_LOAD program header entries in page-size boundary in vmcore_list
cef2ac3 vmalloc: make find_vm_area check in range
e69e9d4a vmalloc: introduce remap_vmalloc_range_partial
087350c vmcore: allocate ELF note segment in the 2nd kernel vmalloc memory
ef9e78f vmcore: allow user process to remap ELF note segment buffer
591ff71 vmcore: calculate vmcore file size from buffer size and total size of vmcore objects
8308697 vmcore: support mmap() on /proc/vmcore
5a74953 s390/kdump: Disable mmap for s390
0692ded fs/proc/vmcore.c:mmap_vmcore: skip non-ram pages reported by hypervisors
-------------------------------------
2nd part:
Includes several s390 related memory commits. Since these 13 commits
in 1st part worked on all ARCHs except of S390. Then I asked IBM
S390 kernel developers Michael Holzheu <michael.holzheu@...ibm.com>,
Jan Willeke <WILLEKE@...ibm.com> to help, they suggested these 3 commits.
With them it works for s390 kdump.
191a2fa s390/kdump: Allow copy_oldmem_page() copy to virtual memory"
9cb2181 vmcore: introduce remap_oldmem_pfn_range()"
23df79d s390/vmcore: implement remap_oldmem_pfn_range for s390"
-------------------------------------
3rd part:
Includes 3 commits. They are back ported because 3 commits in
2nd part will fail x86 and ppc compiling.
997c136 fs/proc/vmcore.c: add hook to read_from_oldmem() to check for non-ram pages
816422a asm-generic, mm: pgtable: consolidate zero page helpers
238ec4e [S390] zero page cache synonyms
Brew build:
I made a brew build here and tested it on s390 and x86 machine,
both works.
https://brewweb.devel.redhat.com/taskinfo?taskID=9357037
Then Nigel took patches from my rh-git and made a brew build as below.
Lisa from HP took a test and confirmed this works on HP machines
and it improved the dump as expected.
https://brewweb.devel.redhat.com/taskinfo?taskID=9380805
My rh-git for this feature is here:
git://git.engineering.redhat.com/users/bhe/rhel6/.git mmap-new
Baoquan He (19):
[S390] zero page cache synonyms
asm-generic, mm: pgtable: consolidate zero page helpers
fs/proc/vmcore.c: add hook to read_from_oldmem() to check for non-ram
pages
fs/proc/vmcore.c: put if tests in the top of the while loop to reduce
duplication
include/linux/mm.h: add PAGE_ALIGNED() helper
vmcore: clean up read_vmcore()
vmcore: allocate buffer for ELF headers on page-size alignment
vmcore: treat memory chunks referenced by PT_LOAD program header
entries in page-size boundary in vmcore_list
vmalloc: make find_vm_area check in range
vmalloc: introduce remap_vmalloc_range_partial
vmcore: allocate ELF note segment in the 2nd kernel vmalloc memory
vmcore: allow user process to remap ELF note segment buffer
vmcore: calculate vmcore file size from buffer size and total size of
vmcore objects
vmcore: support mmap() on /proc/vmcore
s390/kdump: Disable mmap for s390
s390/kdump: Allow copy_oldmem_page() copy to virtual memory
vmcore: introduce remap_oldmem_pfn_range()
s390/vmcore: implement remap_oldmem_pfn_range for s390
fs/proc/vmcore.c:mmap_vmcore: skip non-ram pages reported by
hypervisors
arch/mips/include/asm/pgtable.h | 10 +-
arch/s390/include/asm/pgtable.h | 14 +-
arch/s390/kernel/crash_dump.c | 75 +++-
arch/s390/mm/init.c | 49 ++-
fs/proc/vmcore.c | 899 ++++++++++++++++++++++++++++++----------
include/asm-generic/pgtable.h | 26 ++
include/linux/crash_dump.h | 9 +
include/linux/mm.h | 3 +
include/linux/vmalloc.h | 4 +
mm/memory.c | 14 -
mm/vmalloc.c | 70 +++-
11 files changed, 901 insertions(+), 272 deletions(-)
--
2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists