[PATCH v3 14/17] x86, nvdimm, kexec: Use walk_iomem_res_desc() for iomem search
Dave Young
dyoung at redhat.com
Thu Jan 7 04:39:30 PST 2016
On 01/05/16 at 11:54am, Toshi Kani wrote:
> Change the callers of walk_iomem_res() with the following names
> to use walk_iomem_res(), instead.
>
> "ACPI Tables"
> "ACPI Non-volatile Storage"
> "Persistent Memory (legacy)"
> "Crash kernel"
>
> Note, the caller of walk_iomem_res() with "GART" will be removed
> in a later patch.
>
> Cc: Borislav Petkov <bp at alien8.de>
> Cc: Dan Williams <dan.j.williams at intel.com>
> Cc: Dave Young <dyoung at redhat.com>
> Cc: Minfei Huang <mhuang at redhat.com>
> Cc: x86 at kernel.org
> Cc: linux-nvdimm at lists.01.org
> Cc: kexec at lists.infradead.org
> Signed-off-by: Toshi Kani <toshi.kani at hpe.com>
> ---
> arch/x86/kernel/crash.c | 4 ++--
> arch/x86/kernel/pmem.c | 4 ++--
> drivers/nvdimm/e820.c | 2 +-
> kernel/kexec_file.c | 8 ++++----
> 4 files changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c
> index 2c1910f..082373b 100644
> --- a/arch/x86/kernel/crash.c
> +++ b/arch/x86/kernel/crash.c
> @@ -588,12 +588,12 @@ int crash_setup_memmap_entries(struct kimage *image, struct boot_params *params)
> /* Add ACPI tables */
> cmd.type = E820_ACPI;
> flags = IORESOURCE_MEM | IORESOURCE_BUSY;
> - walk_iomem_res("ACPI Tables", flags, 0, -1, &cmd,
> + walk_iomem_res_desc(IORES_DESC_ACPI_TABLES, flags, 0, -1, &cmd,
> memmap_entry_callback);
>
> /* Add ACPI Non-volatile Storage */
> cmd.type = E820_NVS;
> - walk_iomem_res("ACPI Non-volatile Storage", flags, 0, -1, &cmd,
> + walk_iomem_res_desc(IORES_DESC_ACPI_NV_STORAGE, flags, 0, -1, &cmd,
> memmap_entry_callback);
>
> /* Add crashk_low_res region */
> diff --git a/arch/x86/kernel/pmem.c b/arch/x86/kernel/pmem.c
> index 14415af..92f7014 100644
> --- a/arch/x86/kernel/pmem.c
> +++ b/arch/x86/kernel/pmem.c
> @@ -13,11 +13,11 @@ static int found(u64 start, u64 end, void *data)
>
> static __init int register_e820_pmem(void)
> {
> - char *pmem = "Persistent Memory (legacy)";
> struct platform_device *pdev;
> int rc;
>
> - rc = walk_iomem_res(pmem, IORESOURCE_MEM, 0, -1, NULL, found);
> + rc = walk_iomem_res_desc(IORES_DESC_PERSISTENT_MEMORY_LEGACY,
> + IORESOURCE_MEM, 0, -1, NULL, found);
> if (rc <= 0)
> return 0;
>
> diff --git a/drivers/nvdimm/e820.c b/drivers/nvdimm/e820.c
> index b0045a5..95825b3 100644
> --- a/drivers/nvdimm/e820.c
> +++ b/drivers/nvdimm/e820.c
> @@ -55,7 +55,7 @@ static int e820_pmem_probe(struct platform_device *pdev)
> for (p = iomem_resource.child; p ; p = p->sibling) {
> struct nd_region_desc ndr_desc;
>
> - if (strncmp(p->name, "Persistent Memory (legacy)", 26) != 0)
> + if (p->desc != IORES_DESC_PERSISTENT_MEMORY_LEGACY)
> continue;
>
> memset(&ndr_desc, 0, sizeof(ndr_desc));
> diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c
> index c245085..6e31cea 100644
> --- a/kernel/kexec_file.c
> +++ b/kernel/kexec_file.c
> @@ -522,10 +522,10 @@ int kexec_add_buffer(struct kimage *image, char *buffer, unsigned long bufsz,
>
> /* Walk the RAM ranges and allocate a suitable range for the buffer */
> if (image->type == KEXEC_TYPE_CRASH)
> - ret = walk_iomem_res("Crash kernel",
> - IORESOURCE_SYSTEM_RAM | IORESOURCE_BUSY,
> - crashk_res.start, crashk_res.end, kbuf,
> - locate_mem_hole_callback);
> + ret = walk_iomem_res_desc(crashk_res.desc,
> + IORESOURCE_SYSTEM_RAM | IORESOURCE_BUSY,
> + crashk_res.start, crashk_res.end, kbuf,
> + locate_mem_hole_callback);
> else
> ret = walk_system_ram_res(0, -1, kbuf,
> locate_mem_hole_callback);
Reviewed-by: Dave Young <dyoung at redhat.com>
Thanks
Dave
More information about the kexec
mailing list