Merge commit 'gcl/next' into next
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
#include <linux/string.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#include <asm/sections.h>
|
||||
#include <asm/prom.h>
|
||||
|
@@ -24,7 +24,7 @@
|
||||
#include <linux/init.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#include <asm/processor.h>
|
||||
#include <asm/machdep.h>
|
||||
|
@@ -13,7 +13,7 @@
|
||||
|
||||
#include <linux/crash_dump.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <asm/code-patching.h>
|
||||
#include <asm/kdump.h>
|
||||
#include <asm/prom.h>
|
||||
@@ -33,7 +33,7 @@ unsigned long long elfcorehdr_addr = ELFCORE_ADDR_MAX;
|
||||
#ifndef CONFIG_RELOCATABLE
|
||||
void __init reserve_kdump_trampoline(void)
|
||||
{
|
||||
lmb_reserve(0, KDUMP_RESERVE_LIMIT);
|
||||
memblock_reserve(0, KDUMP_RESERVE_LIMIT);
|
||||
}
|
||||
|
||||
static void __init create_trampoline(unsigned long addr)
|
||||
|
@@ -71,7 +71,7 @@ static int ppc_swiotlb_bus_notify(struct notifier_block *nb,
|
||||
sd->max_direct_dma_addr = 0;
|
||||
|
||||
/* May need to bounce if the device can't address all of DRAM */
|
||||
if ((dma_get_mask(dev) + 1) < lmb_end_of_DRAM())
|
||||
if ((dma_get_mask(dev) + 1) < memblock_end_of_DRAM())
|
||||
set_dma_ops(dev, &swiotlb_dma_ops);
|
||||
|
||||
return NOTIFY_DONE;
|
||||
|
@@ -9,7 +9,7 @@
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <linux/dma-debug.h>
|
||||
#include <linux/gfp.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <asm/bug.h>
|
||||
#include <asm/abs_addr.h>
|
||||
|
||||
@@ -89,7 +89,7 @@ static int dma_direct_dma_supported(struct device *dev, u64 mask)
|
||||
/* Could be improved so platforms can set the limit in case
|
||||
* they have limited DMA windows
|
||||
*/
|
||||
return mask >= (lmb_end_of_DRAM() - 1);
|
||||
return mask >= (memblock_end_of_DRAM() - 1);
|
||||
#else
|
||||
return 1;
|
||||
#endif
|
||||
|
@@ -205,8 +205,7 @@ next_tlb_setup:
|
||||
bdnz+ next_tlb_setup
|
||||
|
||||
/* 7. Jump to our 1:1 mapping */
|
||||
li r6, 0
|
||||
|
||||
mr r6, r25
|
||||
#else
|
||||
#error You need to specify the mapping or not use this at all.
|
||||
#endif
|
||||
@@ -217,7 +216,6 @@ next_tlb_setup:
|
||||
1: mflr r9
|
||||
rlwimi r6,r9,0,20,31
|
||||
addi r6,r6,(2f - 1b)
|
||||
add r6, r6, r25
|
||||
mtspr SPRN_SRR0,r6
|
||||
mtspr SPRN_SRR1,r7
|
||||
rfi /* start execution out of TLB1[0] entry */
|
||||
|
@@ -12,7 +12,7 @@
|
||||
#include <linux/kexec.h>
|
||||
#include <linux/reboot.h>
|
||||
#include <linux/threads.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <linux/of.h>
|
||||
#include <asm/machdep.h>
|
||||
#include <asm/prom.h>
|
||||
@@ -78,11 +78,11 @@ void __init reserve_crashkernel(void)
|
||||
unsigned long long crash_size, crash_base;
|
||||
int ret;
|
||||
|
||||
/* this is necessary because of lmb_phys_mem_size() */
|
||||
lmb_analyze();
|
||||
/* this is necessary because of memblock_phys_mem_size() */
|
||||
memblock_analyze();
|
||||
|
||||
/* use common parsing */
|
||||
ret = parse_crashkernel(boot_command_line, lmb_phys_mem_size(),
|
||||
ret = parse_crashkernel(boot_command_line, memblock_phys_mem_size(),
|
||||
&crash_size, &crash_base);
|
||||
if (ret == 0 && crash_size > 0) {
|
||||
crashk_res.start = crash_base;
|
||||
@@ -145,9 +145,9 @@ void __init reserve_crashkernel(void)
|
||||
"for crashkernel (System RAM: %ldMB)\n",
|
||||
(unsigned long)(crash_size >> 20),
|
||||
(unsigned long)(crashk_res.start >> 20),
|
||||
(unsigned long)(lmb_phys_mem_size() >> 20));
|
||||
(unsigned long)(memblock_phys_mem_size() >> 20));
|
||||
|
||||
lmb_reserve(crashk_res.start, crash_size);
|
||||
memblock_reserve(crashk_res.start, crash_size);
|
||||
}
|
||||
|
||||
int overlaps_crashkernel(unsigned long start, unsigned long size)
|
||||
|
@@ -9,7 +9,7 @@
|
||||
|
||||
#include <linux/threads.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#include <asm/firmware.h>
|
||||
#include <asm/lppaca.h>
|
||||
@@ -127,7 +127,7 @@ void __init allocate_pacas(void)
|
||||
* the first segment. On iSeries they must be within the area mapped
|
||||
* by the HV, which is HvPagesToMap * HVPAGESIZE bytes.
|
||||
*/
|
||||
limit = min(0x10000000ULL, lmb.rmo_size);
|
||||
limit = min(0x10000000ULL, memblock.rmo_size);
|
||||
if (firmware_has_feature(FW_FEATURE_ISERIES))
|
||||
limit = min(limit, HvPagesToMap * HVPAGESIZE);
|
||||
|
||||
@@ -138,7 +138,7 @@ void __init allocate_pacas(void)
|
||||
|
||||
paca_size = PAGE_ALIGN(sizeof(struct paca_struct) * nr_cpus);
|
||||
|
||||
paca = __va(lmb_alloc_base(paca_size, PAGE_SIZE, limit));
|
||||
paca = __va(memblock_alloc_base(paca_size, PAGE_SIZE, limit));
|
||||
memset(paca, 0, paca_size);
|
||||
|
||||
printk(KERN_DEBUG "Allocated %u bytes for %d pacas at %p\n",
|
||||
@@ -158,7 +158,7 @@ void __init free_unused_pacas(void)
|
||||
if (new_size >= paca_size)
|
||||
return;
|
||||
|
||||
lmb_free(__pa(paca) + new_size, paca_size - new_size);
|
||||
memblock_free(__pa(paca) + new_size, paca_size - new_size);
|
||||
|
||||
printk(KERN_DEBUG "Freed %u bytes for unused pacas\n",
|
||||
paca_size - new_size);
|
||||
|
@@ -31,7 +31,7 @@
|
||||
#include <linux/kexec.h>
|
||||
#include <linux/debugfs.h>
|
||||
#include <linux/irq.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#include <asm/prom.h>
|
||||
#include <asm/rtas.h>
|
||||
@@ -98,7 +98,7 @@ static void __init move_device_tree(void)
|
||||
|
||||
if ((memory_limit && (start + size) > memory_limit) ||
|
||||
overlaps_crashkernel(start, size)) {
|
||||
p = __va(lmb_alloc_base(size, PAGE_SIZE, lmb.rmo_size));
|
||||
p = __va(memblock_alloc_base(size, PAGE_SIZE, memblock.rmo_size));
|
||||
memcpy(p, initial_boot_params, size);
|
||||
initial_boot_params = (struct boot_param_header *)p;
|
||||
DBG("Moved device tree to 0x%p\n", p);
|
||||
@@ -411,13 +411,13 @@ static int __init early_init_dt_scan_drconf_memory(unsigned long node)
|
||||
{
|
||||
__be32 *dm, *ls, *usm;
|
||||
unsigned long l, n, flags;
|
||||
u64 base, size, lmb_size;
|
||||
u64 base, size, memblock_size;
|
||||
unsigned int is_kexec_kdump = 0, rngs;
|
||||
|
||||
ls = of_get_flat_dt_prop(node, "ibm,lmb-size", &l);
|
||||
ls = of_get_flat_dt_prop(node, "ibm,memblock-size", &l);
|
||||
if (ls == NULL || l < dt_root_size_cells * sizeof(__be32))
|
||||
return 0;
|
||||
lmb_size = dt_mem_next_cell(dt_root_size_cells, &ls);
|
||||
memblock_size = dt_mem_next_cell(dt_root_size_cells, &ls);
|
||||
|
||||
dm = of_get_flat_dt_prop(node, "ibm,dynamic-memory", &l);
|
||||
if (dm == NULL || l < sizeof(__be32))
|
||||
@@ -442,11 +442,11 @@ static int __init early_init_dt_scan_drconf_memory(unsigned long node)
|
||||
or if the block is not assigned to this partition (0x8) */
|
||||
if ((flags & 0x80) || !(flags & 0x8))
|
||||
continue;
|
||||
size = lmb_size;
|
||||
size = memblock_size;
|
||||
rngs = 1;
|
||||
if (is_kexec_kdump) {
|
||||
/*
|
||||
* For each lmb in ibm,dynamic-memory, a corresponding
|
||||
* For each memblock in ibm,dynamic-memory, a corresponding
|
||||
* entry in linux,drconf-usable-memory property contains
|
||||
* a counter 'p' followed by 'p' (base, size) duple.
|
||||
* Now read the counter from
|
||||
@@ -469,10 +469,10 @@ static int __init early_init_dt_scan_drconf_memory(unsigned long node)
|
||||
if ((base + size) > 0x80000000ul)
|
||||
size = 0x80000000ul - base;
|
||||
}
|
||||
lmb_add(base, size);
|
||||
memblock_add(base, size);
|
||||
} while (--rngs);
|
||||
}
|
||||
lmb_dump_all();
|
||||
memblock_dump_all();
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
@@ -501,14 +501,14 @@ void __init early_init_dt_add_memory_arch(u64 base, u64 size)
|
||||
}
|
||||
#endif
|
||||
|
||||
lmb_add(base, size);
|
||||
memblock_add(base, size);
|
||||
|
||||
memstart_addr = min((u64)memstart_addr, base);
|
||||
}
|
||||
|
||||
u64 __init early_init_dt_alloc_memory_arch(u64 size, u64 align)
|
||||
{
|
||||
return lmb_alloc(size, align);
|
||||
return memblock_alloc(size, align);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_BLK_DEV_INITRD
|
||||
@@ -534,12 +534,12 @@ static void __init early_reserve_mem(void)
|
||||
/* before we do anything, lets reserve the dt blob */
|
||||
self_base = __pa((unsigned long)initial_boot_params);
|
||||
self_size = initial_boot_params->totalsize;
|
||||
lmb_reserve(self_base, self_size);
|
||||
memblock_reserve(self_base, self_size);
|
||||
|
||||
#ifdef CONFIG_BLK_DEV_INITRD
|
||||
/* then reserve the initrd, if any */
|
||||
if (initrd_start && (initrd_end > initrd_start))
|
||||
lmb_reserve(__pa(initrd_start), initrd_end - initrd_start);
|
||||
memblock_reserve(__pa(initrd_start), initrd_end - initrd_start);
|
||||
#endif /* CONFIG_BLK_DEV_INITRD */
|
||||
|
||||
#ifdef CONFIG_PPC32
|
||||
@@ -560,7 +560,7 @@ static void __init early_reserve_mem(void)
|
||||
if (base_32 == self_base && size_32 == self_size)
|
||||
continue;
|
||||
DBG("reserving: %x -> %x\n", base_32, size_32);
|
||||
lmb_reserve(base_32, size_32);
|
||||
memblock_reserve(base_32, size_32);
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -571,7 +571,7 @@ static void __init early_reserve_mem(void)
|
||||
if (size == 0)
|
||||
break;
|
||||
DBG("reserving: %llx -> %llx\n", base, size);
|
||||
lmb_reserve(base, size);
|
||||
memblock_reserve(base, size);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -594,7 +594,7 @@ static inline unsigned long phyp_dump_calculate_reserve_size(void)
|
||||
return phyp_dump_info->reserve_bootvar;
|
||||
|
||||
/* divide by 20 to get 5% of value */
|
||||
tmp = lmb_end_of_DRAM();
|
||||
tmp = memblock_end_of_DRAM();
|
||||
do_div(tmp, 20);
|
||||
|
||||
/* round it down in multiples of 256 */
|
||||
@@ -633,11 +633,11 @@ static void __init phyp_dump_reserve_mem(void)
|
||||
if (phyp_dump_info->phyp_dump_is_active) {
|
||||
/* Reserve *everything* above RMR.Area freed by userland tools*/
|
||||
base = variable_reserve_size;
|
||||
size = lmb_end_of_DRAM() - base;
|
||||
size = memblock_end_of_DRAM() - base;
|
||||
|
||||
/* XXX crashed_ram_end is wrong, since it may be beyond
|
||||
* the memory_limit, it will need to be adjusted. */
|
||||
lmb_reserve(base, size);
|
||||
memblock_reserve(base, size);
|
||||
|
||||
phyp_dump_info->init_reserve_start = base;
|
||||
phyp_dump_info->init_reserve_size = size;
|
||||
@@ -645,8 +645,8 @@ static void __init phyp_dump_reserve_mem(void)
|
||||
size = phyp_dump_info->cpu_state_size +
|
||||
phyp_dump_info->hpte_region_size +
|
||||
variable_reserve_size;
|
||||
base = lmb_end_of_DRAM() - size;
|
||||
lmb_reserve(base, size);
|
||||
base = memblock_end_of_DRAM() - size;
|
||||
memblock_reserve(base, size);
|
||||
phyp_dump_info->init_reserve_start = base;
|
||||
phyp_dump_info->init_reserve_size = size;
|
||||
}
|
||||
@@ -681,8 +681,8 @@ void __init early_init_devtree(void *params)
|
||||
*/
|
||||
of_scan_flat_dt(early_init_dt_scan_chosen, NULL);
|
||||
|
||||
/* Scan memory nodes and rebuild LMBs */
|
||||
lmb_init();
|
||||
/* Scan memory nodes and rebuild MEMBLOCKs */
|
||||
memblock_init();
|
||||
of_scan_flat_dt(early_init_dt_scan_root, NULL);
|
||||
of_scan_flat_dt(early_init_dt_scan_memory_ppc, NULL);
|
||||
|
||||
@@ -690,11 +690,11 @@ void __init early_init_devtree(void *params)
|
||||
strlcpy(boot_command_line, cmd_line, COMMAND_LINE_SIZE);
|
||||
parse_early_param();
|
||||
|
||||
/* Reserve LMB regions used by kernel, initrd, dt, etc... */
|
||||
lmb_reserve(PHYSICAL_START, __pa(klimit) - PHYSICAL_START);
|
||||
/* Reserve MEMBLOCK regions used by kernel, initrd, dt, etc... */
|
||||
memblock_reserve(PHYSICAL_START, __pa(klimit) - PHYSICAL_START);
|
||||
/* If relocatable, reserve first 32k for interrupt vectors etc. */
|
||||
if (PHYSICAL_START > MEMORY_START)
|
||||
lmb_reserve(MEMORY_START, 0x8000);
|
||||
memblock_reserve(MEMORY_START, 0x8000);
|
||||
reserve_kdump_trampoline();
|
||||
reserve_crashkernel();
|
||||
early_reserve_mem();
|
||||
@@ -706,17 +706,17 @@ void __init early_init_devtree(void *params)
|
||||
|
||||
/* Ensure that total memory size is page-aligned, because
|
||||
* otherwise mark_bootmem() gets upset. */
|
||||
lmb_analyze();
|
||||
memsize = lmb_phys_mem_size();
|
||||
memblock_analyze();
|
||||
memsize = memblock_phys_mem_size();
|
||||
if ((memsize & PAGE_MASK) != memsize)
|
||||
limit = memsize & PAGE_MASK;
|
||||
}
|
||||
lmb_enforce_memory_limit(limit);
|
||||
memblock_enforce_memory_limit(limit);
|
||||
|
||||
lmb_analyze();
|
||||
lmb_dump_all();
|
||||
memblock_analyze();
|
||||
memblock_dump_all();
|
||||
|
||||
DBG("Phys. mem: %llx\n", lmb_phys_mem_size());
|
||||
DBG("Phys. mem: %llx\n", memblock_phys_mem_size());
|
||||
|
||||
/* We may need to relocate the flat tree, do it now.
|
||||
* FIXME .. and the initrd too? */
|
||||
|
@@ -22,7 +22,7 @@
|
||||
#include <linux/smp.h>
|
||||
#include <linux/completion.h>
|
||||
#include <linux/cpumask.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#include <asm/prom.h>
|
||||
@@ -969,11 +969,11 @@ void __init rtas_initialize(void)
|
||||
*/
|
||||
#ifdef CONFIG_PPC64
|
||||
if (machine_is(pseries) && firmware_has_feature(FW_FEATURE_LPAR)) {
|
||||
rtas_region = min(lmb.rmo_size, RTAS_INSTANTIATE_MAX);
|
||||
rtas_region = min(memblock.rmo_size, RTAS_INSTANTIATE_MAX);
|
||||
ibm_suspend_me_token = rtas_token("ibm,suspend-me");
|
||||
}
|
||||
#endif
|
||||
rtas_rmo_buf = lmb_alloc_base(RTAS_RMOBUF_MAX, PAGE_SIZE, rtas_region);
|
||||
rtas_rmo_buf = memblock_alloc_base(RTAS_RMOBUF_MAX, PAGE_SIZE, rtas_region);
|
||||
|
||||
#ifdef CONFIG_RTAS_ERROR_LOGGING
|
||||
rtas_last_error_token = rtas_token("rtas-last-error");
|
||||
|
@@ -33,7 +33,7 @@
|
||||
#include <linux/serial_8250.h>
|
||||
#include <linux/debugfs.h>
|
||||
#include <linux/percpu.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <linux/of_platform.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/paca.h>
|
||||
|
@@ -16,7 +16,7 @@
|
||||
#include <linux/root_dev.h>
|
||||
#include <linux/cpu.h>
|
||||
#include <linux/console.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/prom.h>
|
||||
@@ -246,12 +246,12 @@ static void __init irqstack_early_init(void)
|
||||
unsigned int i;
|
||||
|
||||
/* interrupt stacks must be in lowmem, we get that for free on ppc32
|
||||
* as the lmb is limited to lowmem by LMB_REAL_LIMIT */
|
||||
* as the memblock is limited to lowmem by MEMBLOCK_REAL_LIMIT */
|
||||
for_each_possible_cpu(i) {
|
||||
softirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
hardirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -261,15 +261,15 @@ static void __init exc_lvl_early_init(void)
|
||||
unsigned int i;
|
||||
|
||||
/* interrupt stacks must be in lowmem, we get that for free on ppc32
|
||||
* as the lmb is limited to lowmem by LMB_REAL_LIMIT */
|
||||
* as the memblock is limited to lowmem by MEMBLOCK_REAL_LIMIT */
|
||||
for_each_possible_cpu(i) {
|
||||
critirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
#ifdef CONFIG_BOOKE
|
||||
dbgirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
mcheckirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
@@ -34,7 +34,7 @@
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/lockdep.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/kdump.h>
|
||||
#include <asm/prom.h>
|
||||
@@ -148,7 +148,7 @@ early_param("smt-enabled", early_smt_enabled);
|
||||
* the CPU that ignores the top 2 bits of the address in real
|
||||
* mode so we can access kernel globals normally provided we
|
||||
* only toy with things in the RMO region. From here, we do
|
||||
* some early parsing of the device-tree to setup out LMB
|
||||
* some early parsing of the device-tree to setup out MEMBLOCK
|
||||
* data structures, and allocate & initialize the hash table
|
||||
* and segment tables so we can start running with translation
|
||||
* enabled.
|
||||
@@ -394,7 +394,7 @@ void __init setup_system(void)
|
||||
|
||||
printk("-----------------------------------------------------\n");
|
||||
printk("ppc64_pft_size = 0x%llx\n", ppc64_pft_size);
|
||||
printk("physicalMemorySize = 0x%llx\n", lmb_phys_mem_size());
|
||||
printk("physicalMemorySize = 0x%llx\n", memblock_phys_mem_size());
|
||||
if (ppc64_caches.dline_size != 0x80)
|
||||
printk("ppc64_caches.dcache_line_size = 0x%x\n",
|
||||
ppc64_caches.dline_size);
|
||||
@@ -433,10 +433,10 @@ static void __init irqstack_early_init(void)
|
||||
*/
|
||||
for_each_possible_cpu(i) {
|
||||
softirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc_base(THREAD_SIZE,
|
||||
__va(memblock_alloc_base(THREAD_SIZE,
|
||||
THREAD_SIZE, limit));
|
||||
hardirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc_base(THREAD_SIZE,
|
||||
__va(memblock_alloc_base(THREAD_SIZE,
|
||||
THREAD_SIZE, limit));
|
||||
}
|
||||
}
|
||||
@@ -448,11 +448,11 @@ static void __init exc_lvl_early_init(void)
|
||||
|
||||
for_each_possible_cpu(i) {
|
||||
critirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
dbgirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
mcheckirq_ctx[i] = (struct thread_info *)
|
||||
__va(lmb_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
__va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
|
||||
}
|
||||
}
|
||||
#else
|
||||
@@ -477,11 +477,11 @@ static void __init emergency_stack_init(void)
|
||||
* bringup, we need to get at them in real mode. This means they
|
||||
* must also be within the RMO region.
|
||||
*/
|
||||
limit = min(slb0_limit(), lmb.rmo_size);
|
||||
limit = min(slb0_limit(), memblock.rmo_size);
|
||||
|
||||
for_each_possible_cpu(i) {
|
||||
unsigned long sp;
|
||||
sp = lmb_alloc_base(THREAD_SIZE, THREAD_SIZE, limit);
|
||||
sp = memblock_alloc_base(THREAD_SIZE, THREAD_SIZE, limit);
|
||||
sp += THREAD_SIZE;
|
||||
paca[i].emergency_sp = __va(sp);
|
||||
}
|
||||
|
@@ -22,7 +22,7 @@
|
||||
#include <linux/elf.h>
|
||||
#include <linux/security.h>
|
||||
#include <linux/bootmem.h>
|
||||
#include <linux/lmb.h>
|
||||
#include <linux/memblock.h>
|
||||
|
||||
#include <asm/pgtable.h>
|
||||
#include <asm/system.h>
|
||||
@@ -734,7 +734,7 @@ static int __init vdso_init(void)
|
||||
vdso_data->platform = machine_is(iseries) ? 0x200 : 0x100;
|
||||
if (firmware_has_feature(FW_FEATURE_LPAR))
|
||||
vdso_data->platform |= 1;
|
||||
vdso_data->physicalMemorySize = lmb_phys_mem_size();
|
||||
vdso_data->physicalMemorySize = memblock_phys_mem_size();
|
||||
vdso_data->dcache_size = ppc64_caches.dsize;
|
||||
vdso_data->dcache_line_size = ppc64_caches.dline_size;
|
||||
vdso_data->icache_size = ppc64_caches.isize;
|
||||
|
Reference in New Issue
Block a user