[PATCH 00/11] Support System RAM resource type and EINJ to NVDIMM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch-set introduces a new I/O resource type, IORESOURCE_SYSTEM_RAM,
for System RAM while keeping the current IORESOURCE_MEM type bit set for
all memory-mapped ranges (including System RAM) for backward compatibility.
With the new System RAM type, walking through the iomem resource table
no longer requires to test with strcmp() against "System RAM".  After this
infrastructure update, this patch changes EINJ to support NVDIMM.

Patches 1-2 add a new System RAM type, and make resource interfaces work
with resource flags with modifier bits set.

Patches 3-7 set the System RAM type to System RAM ranges.

Patches 8-10 extend resource interfaces to check System RAM ranges with
the System RAM type.

Patch 11 changes the EINJ driver to allow injecting a memory error to
NVDIMM.

---
v1:
 - Searching for System RAM in the resource table should not require
   strcmp(). (Borislav Petkov)
 - Add a new System RAM type as a modifier to IORESOURCE_MEM.
   (Linus Torvalds)
 - NVDIMM check should remain with strcmp() against "Persistent Memory".
   (Dan Williams)
 - Reset patch version.

prev-v3:
 - Check the param2 value before target memory type. (Tony Luck)
 - Add a blank line before if-statement. Remove an unnecessary brakets.
   (Borislav Petkov)

prev-v2:
 - Change the EINJ driver to call region_intersects_ram() for checking
   RAM with a specified size. (Dan Williams)

---
Toshi Kani (11):
 01/11 resource: Add System RAM resource type
 02/11 resource: make resource flags handled properly
 03/11 x86/e820: Set IORESOURCE_SYSTEM_RAM to System RAM
 04/11 arch: Set IORESOURCE_SYSTEM_RAM to System RAM
 05/11 xen: Set IORESOURCE_SYSTEM_RAM to System RAM
 06/11 kexec: Set IORESOURCE_SYSTEM_RAM to System RAM
 07/11 memory-hotplug: Set IORESOURCE_SYSTEM_RAM to System RAM
 08/11 memremap: Change region_intersects() to use System RAM type
 09/11 resource: Change walk_system_ram to use System RAM type
 10/11 arm/samsung: Change s3c_pm_run_res() to use System RAM type
 11/11 ACPI/EINJ: Allow memory error injection to NVDIMM

---
 arch/arm/kernel/setup.c          |  6 ++---
 arch/arm/plat-samsung/pm-check.c |  4 +--
 arch/arm64/kernel/setup.c        |  6 ++---
 arch/avr32/kernel/setup.c        |  6 ++---
 arch/ia64/kernel/efi.c           |  6 +++--
 arch/ia64/kernel/setup.c         |  6 ++---
 arch/m32r/kernel/setup.c         |  4 +--
 arch/mips/kernel/setup.c         | 10 +++++---
 arch/parisc/mm/init.c            |  6 ++---
 arch/powerpc/mm/mem.c            |  2 +-
 arch/s390/kernel/setup.c         |  8 +++---
 arch/score/kernel/setup.c        |  2 +-
 arch/sh/kernel/setup.c           |  8 +++---
 arch/sparc/mm/init_64.c          |  8 +++---
 arch/tile/kernel/setup.c         | 11 +++++---
 arch/unicore32/kernel/setup.c    |  6 ++---
 arch/x86/kernel/e820.c           | 18 +++++++++++++-
 arch/x86/kernel/setup.c          |  6 ++---
 drivers/acpi/apei/einj.c         | 15 ++++++++---
 drivers/xen/balloon.c            |  2 +-
 include/linux/ioport.h           | 11 ++++++++
 include/linux/mm.h               |  3 ++-
 kernel/kexec_core.c              |  6 ++---
 kernel/kexec_file.c              |  2 +-
 kernel/memremap.c                | 13 +++++-----
 kernel/resource.c                | 54 +++++++++++++++++++++-------------------
 mm/memory_hotplug.c              |  2 +-
 27 files changed, 140 insertions(+), 91 deletions(-)

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]