Commit 180379dcefb39e8bd05d562b0685e9084dffcc0a
Committed by
Paul Mackerras
1 parent
e88bcd1b29
Exists in
master
and in
4 other branches
[PATCH] ppc64: Remove physbase from the lmb_property struct
We no longer need the lmb code to know about abs and phys addresses, so remove the physbase variable from the lmb_property struct. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
Showing 5 changed files with 14 additions and 41 deletions Side-by-side Diff
arch/ppc64/kernel/lmb.c
| ... | ... | @@ -37,8 +37,6 @@ |
| 37 | 37 | for (i=0; i < lmb.memory.cnt ;i++) { |
| 38 | 38 | udbg_printf(" memory.region[0x%x].base = 0x%lx\n", |
| 39 | 39 | i, lmb.memory.region[i].base); |
| 40 | - udbg_printf(" .physbase = 0x%lx\n", | |
| 41 | - lmb.memory.region[i].physbase); | |
| 42 | 40 | udbg_printf(" .size = 0x%lx\n", |
| 43 | 41 | lmb.memory.region[i].size); |
| 44 | 42 | } |
| ... | ... | @@ -50,8 +48,6 @@ |
| 50 | 48 | for (i=0; i < lmb.reserved.cnt ;i++) { |
| 51 | 49 | udbg_printf(" reserved.region[0x%x].base = 0x%lx\n", |
| 52 | 50 | i, lmb.reserved.region[i].base); |
| 53 | - udbg_printf(" .physbase = 0x%lx\n", | |
| 54 | - lmb.reserved.region[i].physbase); | |
| 55 | 51 | udbg_printf(" .size = 0x%lx\n", |
| 56 | 52 | lmb.reserved.region[i].size); |
| 57 | 53 | } |
| ... | ... | @@ -97,7 +93,6 @@ |
| 97 | 93 | rgn->region[r1].size += rgn->region[r2].size; |
| 98 | 94 | for (i=r2; i < rgn->cnt-1; i++) { |
| 99 | 95 | rgn->region[i].base = rgn->region[i+1].base; |
| 100 | - rgn->region[i].physbase = rgn->region[i+1].physbase; | |
| 101 | 96 | rgn->region[i].size = rgn->region[i+1].size; |
| 102 | 97 | } |
| 103 | 98 | rgn->cnt--; |
| 104 | 99 | |
| ... | ... | @@ -127,21 +122,12 @@ |
| 127 | 122 | unsigned long i; |
| 128 | 123 | unsigned long mem_size = 0; |
| 129 | 124 | unsigned long size_mask = 0; |
| 130 | -#ifdef CONFIG_MSCHUNKS | |
| 131 | - unsigned long physbase = 0; | |
| 132 | -#endif | |
| 133 | 125 | |
| 134 | 126 | for (i=0; i < lmb.memory.cnt; i++) { |
| 135 | 127 | unsigned long lmb_size; |
| 136 | 128 | |
| 137 | 129 | lmb_size = lmb.memory.region[i].size; |
| 138 | 130 | |
| 139 | -#ifdef CONFIG_MSCHUNKS | |
| 140 | - lmb.memory.region[i].physbase = physbase; | |
| 141 | - physbase += lmb_size; | |
| 142 | -#else | |
| 143 | - lmb.memory.region[i].physbase = lmb.memory.region[i].base; | |
| 144 | -#endif | |
| 145 | 131 | mem_size += lmb_size; |
| 146 | 132 | size_mask |= lmb_size; |
| 147 | 133 | } |
| ... | ... | @@ -164,7 +150,6 @@ |
| 164 | 150 | adjacent = lmb_addrs_adjacent(base,size,rgnbase,rgnsize); |
| 165 | 151 | if ( adjacent > 0 ) { |
| 166 | 152 | rgn->region[i].base -= size; |
| 167 | - rgn->region[i].physbase -= size; | |
| 168 | 153 | rgn->region[i].size += size; |
| 169 | 154 | coalesced++; |
| 170 | 155 | break; |
| 171 | 156 | |
| ... | ... | @@ -191,11 +176,9 @@ |
| 191 | 176 | for (i=rgn->cnt-1; i >= 0; i--) { |
| 192 | 177 | if (base < rgn->region[i].base) { |
| 193 | 178 | rgn->region[i+1].base = rgn->region[i].base; |
| 194 | - rgn->region[i+1].physbase = rgn->region[i].physbase; | |
| 195 | 179 | rgn->region[i+1].size = rgn->region[i].size; |
| 196 | 180 | } else { |
| 197 | 181 | rgn->region[i+1].base = base; |
| 198 | - rgn->region[i+1].physbase = lmb_abs_to_phys(base); | |
| 199 | 182 | rgn->region[i+1].size = size; |
| 200 | 183 | break; |
| 201 | 184 | } |
| 202 | 185 | |
| ... | ... | @@ -304,13 +287,7 @@ |
| 304 | 287 | { |
| 305 | 288 | int idx = lmb.memory.cnt - 1; |
| 306 | 289 | |
| 307 | -#ifdef CONFIG_MSCHUNKS | |
| 308 | - return (lmb.memory.region[idx].physbase + lmb.memory.region[idx].size); | |
| 309 | -#else | |
| 310 | 290 | return (lmb.memory.region[idx].base + lmb.memory.region[idx].size); |
| 311 | -#endif /* CONFIG_MSCHUNKS */ | |
| 312 | - | |
| 313 | - return 0; | |
| 314 | 291 | } |
| 315 | 292 | |
| 316 | 293 | /* |
arch/ppc64/mm/hash_utils.c
| ... | ... | @@ -210,7 +210,7 @@ |
| 210 | 210 | |
| 211 | 211 | /* create bolted the linear mapping in the hash table */ |
| 212 | 212 | for (i=0; i < lmb.memory.cnt; i++) { |
| 213 | - base = lmb.memory.region[i].physbase + KERNELBASE; | |
| 213 | + base = lmb.memory.region[i].base + KERNELBASE; | |
| 214 | 214 | size = lmb.memory.region[i].size; |
| 215 | 215 | |
| 216 | 216 | DBG("creating mapping for region: %lx : %lx\n", base, size); |
arch/ppc64/mm/init.c
| ... | ... | @@ -482,9 +482,9 @@ |
| 482 | 482 | for (i = 1; i < lmb.memory.cnt; i++) { |
| 483 | 483 | unsigned long base, prevbase, prevsize; |
| 484 | 484 | |
| 485 | - prevbase = lmb.memory.region[i-1].physbase; | |
| 485 | + prevbase = lmb.memory.region[i-1].base; | |
| 486 | 486 | prevsize = lmb.memory.region[i-1].size; |
| 487 | - base = lmb.memory.region[i].physbase; | |
| 487 | + base = lmb.memory.region[i].base; | |
| 488 | 488 | if (base > (prevbase + prevsize)) { |
| 489 | 489 | io_hole_start = prevbase + prevsize; |
| 490 | 490 | io_hole_size = base - (prevbase + prevsize); |
| 491 | 491 | |
| ... | ... | @@ -511,11 +511,8 @@ |
| 511 | 511 | for (i=0; i < lmb.memory.cnt; i++) { |
| 512 | 512 | unsigned long base; |
| 513 | 513 | |
| 514 | -#ifdef CONFIG_MSCHUNKS | |
| 515 | - base = lmb.memory.region[i].physbase; | |
| 516 | -#else | |
| 517 | 514 | base = lmb.memory.region[i].base; |
| 518 | -#endif | |
| 515 | + | |
| 519 | 516 | if ((paddr >= base) && |
| 520 | 517 | (paddr < (base + lmb.memory.region[i].size))) { |
| 521 | 518 | return 1; |
| 522 | 519 | |
| 523 | 520 | |
| 524 | 521 | |
| 525 | 522 | |
| 526 | 523 | |
| ... | ... | @@ -556,25 +553,25 @@ |
| 556 | 553 | * present. |
| 557 | 554 | */ |
| 558 | 555 | for (i=0; i < lmb.memory.cnt; i++) { |
| 559 | - unsigned long physbase, size; | |
| 556 | + unsigned long base, size; | |
| 560 | 557 | unsigned long start_pfn, end_pfn; |
| 561 | 558 | |
| 562 | - physbase = lmb.memory.region[i].physbase; | |
| 559 | + base = lmb.memory.region[i].base; | |
| 563 | 560 | size = lmb.memory.region[i].size; |
| 564 | 561 | |
| 565 | - start_pfn = physbase >> PAGE_SHIFT; | |
| 562 | + start_pfn = base >> PAGE_SHIFT; | |
| 566 | 563 | end_pfn = start_pfn + (size >> PAGE_SHIFT); |
| 567 | 564 | memory_present(0, start_pfn, end_pfn); |
| 568 | 565 | |
| 569 | - free_bootmem(physbase, size); | |
| 566 | + free_bootmem(base, size); | |
| 570 | 567 | } |
| 571 | 568 | |
| 572 | 569 | /* reserve the sections we're already using */ |
| 573 | 570 | for (i=0; i < lmb.reserved.cnt; i++) { |
| 574 | - unsigned long physbase = lmb.reserved.region[i].physbase; | |
| 571 | + unsigned long base = lmb.reserved.region[i].base; | |
| 575 | 572 | unsigned long size = lmb.reserved.region[i].size; |
| 576 | 573 | |
| 577 | - reserve_bootmem(physbase, size); | |
| 574 | + reserve_bootmem(base, size); | |
| 578 | 575 | } |
| 579 | 576 | } |
| 580 | 577 | |
| 581 | 578 | |
| ... | ... | @@ -613,10 +610,10 @@ |
| 613 | 610 | int i; |
| 614 | 611 | |
| 615 | 612 | for (i=0; i < lmb.memory.cnt; i++) { |
| 616 | - unsigned long physbase, size; | |
| 613 | + unsigned long base, size; | |
| 617 | 614 | struct kcore_list *kcore_mem; |
| 618 | 615 | |
| 619 | - physbase = lmb.memory.region[i].physbase; | |
| 616 | + base = lmb.memory.region[i].base; | |
| 620 | 617 | size = lmb.memory.region[i].size; |
| 621 | 618 | |
| 622 | 619 | /* GFP_ATOMIC to avoid might_sleep warnings during boot */ |
| ... | ... | @@ -624,7 +621,7 @@ |
| 624 | 621 | if (!kcore_mem) |
| 625 | 622 | panic("mem_init: kmalloc failed\n"); |
| 626 | 623 | |
| 627 | - kclist_add(kcore_mem, __va(physbase), size); | |
| 624 | + kclist_add(kcore_mem, __va(base), size); | |
| 628 | 625 | } |
| 629 | 626 | |
| 630 | 627 | kclist_add(&kcore_vmem, (void *)VMALLOC_START, VMALLOC_END-VMALLOC_START); |
arch/ppc64/mm/numa.c
| ... | ... | @@ -671,7 +671,7 @@ |
| 671 | 671 | * Mark reserved regions on this node |
| 672 | 672 | */ |
| 673 | 673 | for (i = 0; i < lmb.reserved.cnt; i++) { |
| 674 | - unsigned long physbase = lmb.reserved.region[i].physbase; | |
| 674 | + unsigned long physbase = lmb.reserved.region[i].base; | |
| 675 | 675 | unsigned long size = lmb.reserved.region[i].size; |
| 676 | 676 | |
| 677 | 677 | if (pa_to_nid(physbase) != nid && |