lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ