diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-03 20:12:13 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-03 20:12:13 -0400 |
commit | 7f0ef0267e20d62d45d527911a993b1e998f4968 (patch) | |
tree | de51abc7da5903f59d83e23937f22420164c9477 /arch/sparc | |
parent | 862f0012549110d6f2586bf54b52ed4540cbff3a (diff) | |
parent | 9307c29524502c21f0e8a6d96d850b2f5bc0bd9a (diff) |
Merge branch 'akpm' (updates from Andrew Morton)
Merge first patch-bomb from Andrew Morton:
- various misc bits
- I'm been patchmonkeying ocfs2 for a while, as Joel and Mark have been
distracted. There has been quite a bit of activity.
- About half the MM queue
- Some backlight bits
- Various lib/ updates
- checkpatch updates
- zillions more little rtc patches
- ptrace
- signals
- exec
- procfs
- rapidio
- nbd
- aoe
- pps
- memstick
- tools/testing/selftests updates
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (445 commits)
tools/testing/selftests: don't assume the x bit is set on scripts
selftests: add .gitignore for kcmp
selftests: fix clean target in kcmp Makefile
selftests: add .gitignore for vm
selftests: add hugetlbfstest
self-test: fix make clean
selftests: exit 1 on failure
kernel/resource.c: remove the unneeded assignment in function __find_resource
aio: fix wrong comment in aio_complete()
drivers/w1/slaves/w1_ds2408.c: add magic sequence to disable P0 test mode
drivers/memstick/host/r592.c: convert to module_pci_driver
drivers/memstick/host/jmb38x_ms: convert to module_pci_driver
pps-gpio: add device-tree binding and support
drivers/pps/clients/pps-gpio.c: convert to module_platform_driver
drivers/pps/clients/pps-gpio.c: convert to devm_* helpers
drivers/parport/share.c: use kzalloc
Documentation/accounting/getdelays.c: avoid strncpy in accounting tool
aoe: update internal version number to v83
aoe: update copyright date
aoe: perform I/O completions in parallel
...
Diffstat (limited to 'arch/sparc')
-rw-r--r-- | arch/sparc/kernel/leon_smp.c | 3 | ||||
-rw-r--r-- | arch/sparc/mm/init_32.c | 37 | ||||
-rw-r--r-- | arch/sparc/mm/init_64.c | 26 |
3 files changed, 9 insertions, 57 deletions
diff --git a/arch/sparc/kernel/leon_smp.c b/arch/sparc/kernel/leon_smp.c index 6cfc1b09ec25..d7aa524b7283 100644 --- a/arch/sparc/kernel/leon_smp.c +++ b/arch/sparc/kernel/leon_smp.c | |||
@@ -254,15 +254,12 @@ void __init leon_smp_done(void) | |||
254 | /* Free unneeded trap tables */ | 254 | /* Free unneeded trap tables */ |
255 | if (!cpu_present(1)) { | 255 | if (!cpu_present(1)) { |
256 | free_reserved_page(virt_to_page(&trapbase_cpu1)); | 256 | free_reserved_page(virt_to_page(&trapbase_cpu1)); |
257 | num_physpages++; | ||
258 | } | 257 | } |
259 | if (!cpu_present(2)) { | 258 | if (!cpu_present(2)) { |
260 | free_reserved_page(virt_to_page(&trapbase_cpu2)); | 259 | free_reserved_page(virt_to_page(&trapbase_cpu2)); |
261 | num_physpages++; | ||
262 | } | 260 | } |
263 | if (!cpu_present(3)) { | 261 | if (!cpu_present(3)) { |
264 | free_reserved_page(virt_to_page(&trapbase_cpu3)); | 262 | free_reserved_page(virt_to_page(&trapbase_cpu3)); |
265 | num_physpages++; | ||
266 | } | 263 | } |
267 | /* Ok, they are spinning and ready to go. */ | 264 | /* Ok, they are spinning and ready to go. */ |
268 | smp_processors_ready = 1; | 265 | smp_processors_ready = 1; |
diff --git a/arch/sparc/mm/init_32.c b/arch/sparc/mm/init_32.c index af472cf7c69a..db6987082805 100644 --- a/arch/sparc/mm/init_32.c +++ b/arch/sparc/mm/init_32.c | |||
@@ -288,10 +288,6 @@ static void map_high_region(unsigned long start_pfn, unsigned long end_pfn) | |||
288 | 288 | ||
289 | void __init mem_init(void) | 289 | void __init mem_init(void) |
290 | { | 290 | { |
291 | int codepages = 0; | ||
292 | int datapages = 0; | ||
293 | int initpages = 0; | ||
294 | int reservedpages = 0; | ||
295 | int i; | 291 | int i; |
296 | 292 | ||
297 | if (PKMAP_BASE+LAST_PKMAP*PAGE_SIZE >= FIXADDR_START) { | 293 | if (PKMAP_BASE+LAST_PKMAP*PAGE_SIZE >= FIXADDR_START) { |
@@ -323,15 +319,12 @@ void __init mem_init(void) | |||
323 | 319 | ||
324 | max_mapnr = last_valid_pfn - pfn_base; | 320 | max_mapnr = last_valid_pfn - pfn_base; |
325 | high_memory = __va(max_low_pfn << PAGE_SHIFT); | 321 | high_memory = __va(max_low_pfn << PAGE_SHIFT); |
326 | 322 | free_all_bootmem(); | |
327 | totalram_pages = free_all_bootmem(); | ||
328 | 323 | ||
329 | for (i = 0; sp_banks[i].num_bytes != 0; i++) { | 324 | for (i = 0; sp_banks[i].num_bytes != 0; i++) { |
330 | unsigned long start_pfn = sp_banks[i].base_addr >> PAGE_SHIFT; | 325 | unsigned long start_pfn = sp_banks[i].base_addr >> PAGE_SHIFT; |
331 | unsigned long end_pfn = (sp_banks[i].base_addr + sp_banks[i].num_bytes) >> PAGE_SHIFT; | 326 | unsigned long end_pfn = (sp_banks[i].base_addr + sp_banks[i].num_bytes) >> PAGE_SHIFT; |
332 | 327 | ||
333 | num_physpages += sp_banks[i].num_bytes >> PAGE_SHIFT; | ||
334 | |||
335 | if (end_pfn <= highstart_pfn) | 328 | if (end_pfn <= highstart_pfn) |
336 | continue; | 329 | continue; |
337 | 330 | ||
@@ -341,39 +334,19 @@ void __init mem_init(void) | |||
341 | map_high_region(start_pfn, end_pfn); | 334 | map_high_region(start_pfn, end_pfn); |
342 | } | 335 | } |
343 | 336 | ||
344 | codepages = (((unsigned long) &_etext) - ((unsigned long)&_start)); | 337 | mem_init_print_info(NULL); |
345 | codepages = PAGE_ALIGN(codepages) >> PAGE_SHIFT; | ||
346 | datapages = (((unsigned long) &_edata) - ((unsigned long)&_etext)); | ||
347 | datapages = PAGE_ALIGN(datapages) >> PAGE_SHIFT; | ||
348 | initpages = (((unsigned long) &__init_end) - ((unsigned long) &__init_begin)); | ||
349 | initpages = PAGE_ALIGN(initpages) >> PAGE_SHIFT; | ||
350 | |||
351 | /* Ignore memory holes for the purpose of counting reserved pages */ | ||
352 | for (i=0; i < max_low_pfn; i++) | ||
353 | if (test_bit(i >> (20 - PAGE_SHIFT), sparc_valid_addr_bitmap) | ||
354 | && PageReserved(pfn_to_page(i))) | ||
355 | reservedpages++; | ||
356 | |||
357 | printk(KERN_INFO "Memory: %luk/%luk available (%dk kernel code, %dk reserved, %dk data, %dk init, %ldk highmem)\n", | ||
358 | nr_free_pages() << (PAGE_SHIFT-10), | ||
359 | num_physpages << (PAGE_SHIFT - 10), | ||
360 | codepages << (PAGE_SHIFT-10), | ||
361 | reservedpages << (PAGE_SHIFT - 10), | ||
362 | datapages << (PAGE_SHIFT-10), | ||
363 | initpages << (PAGE_SHIFT-10), | ||
364 | totalhigh_pages << (PAGE_SHIFT-10)); | ||
365 | } | 338 | } |
366 | 339 | ||
367 | void free_initmem (void) | 340 | void free_initmem (void) |
368 | { | 341 | { |
369 | num_physpages += free_initmem_default(POISON_FREE_INITMEM); | 342 | free_initmem_default(POISON_FREE_INITMEM); |
370 | } | 343 | } |
371 | 344 | ||
372 | #ifdef CONFIG_BLK_DEV_INITRD | 345 | #ifdef CONFIG_BLK_DEV_INITRD |
373 | void free_initrd_mem(unsigned long start, unsigned long end) | 346 | void free_initrd_mem(unsigned long start, unsigned long end) |
374 | { | 347 | { |
375 | num_physpages += free_reserved_area(start, end, POISON_FREE_INITMEM, | 348 | free_reserved_area((void *)start, (void *)end, POISON_FREE_INITMEM, |
376 | "initrd"); | 349 | "initrd"); |
377 | } | 350 | } |
378 | #endif | 351 | #endif |
379 | 352 | ||
diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c index 04fd55a6e461..a9c42a7ffb6a 100644 --- a/arch/sparc/mm/init_64.c +++ b/arch/sparc/mm/init_64.c | |||
@@ -2045,7 +2045,6 @@ static void __init register_page_bootmem_info(void) | |||
2045 | } | 2045 | } |
2046 | void __init mem_init(void) | 2046 | void __init mem_init(void) |
2047 | { | 2047 | { |
2048 | unsigned long codepages, datapages, initpages; | ||
2049 | unsigned long addr, last; | 2048 | unsigned long addr, last; |
2050 | 2049 | ||
2051 | addr = PAGE_OFFSET + kern_base; | 2050 | addr = PAGE_OFFSET + kern_base; |
@@ -2061,12 +2060,7 @@ void __init mem_init(void) | |||
2061 | high_memory = __va(last_valid_pfn << PAGE_SHIFT); | 2060 | high_memory = __va(last_valid_pfn << PAGE_SHIFT); |
2062 | 2061 | ||
2063 | register_page_bootmem_info(); | 2062 | register_page_bootmem_info(); |
2064 | totalram_pages = free_all_bootmem(); | 2063 | free_all_bootmem(); |
2065 | |||
2066 | /* We subtract one to account for the mem_map_zero page | ||
2067 | * allocated below. | ||
2068 | */ | ||
2069 | num_physpages = totalram_pages - 1; | ||
2070 | 2064 | ||
2071 | /* | 2065 | /* |
2072 | * Set up the zero page, mark it reserved, so that page count | 2066 | * Set up the zero page, mark it reserved, so that page count |
@@ -2079,19 +2073,7 @@ void __init mem_init(void) | |||
2079 | } | 2073 | } |
2080 | mark_page_reserved(mem_map_zero); | 2074 | mark_page_reserved(mem_map_zero); |
2081 | 2075 | ||
2082 | codepages = (((unsigned long) _etext) - ((unsigned long) _start)); | 2076 | mem_init_print_info(NULL); |
2083 | codepages = PAGE_ALIGN(codepages) >> PAGE_SHIFT; | ||
2084 | datapages = (((unsigned long) _edata) - ((unsigned long) _etext)); | ||
2085 | datapages = PAGE_ALIGN(datapages) >> PAGE_SHIFT; | ||
2086 | initpages = (((unsigned long) __init_end) - ((unsigned long) __init_begin)); | ||
2087 | initpages = PAGE_ALIGN(initpages) >> PAGE_SHIFT; | ||
2088 | |||
2089 | printk("Memory: %luk available (%ldk kernel code, %ldk data, %ldk init) [%016lx,%016lx]\n", | ||
2090 | nr_free_pages() << (PAGE_SHIFT-10), | ||
2091 | codepages << (PAGE_SHIFT-10), | ||
2092 | datapages << (PAGE_SHIFT-10), | ||
2093 | initpages << (PAGE_SHIFT-10), | ||
2094 | PAGE_OFFSET, (last_valid_pfn << PAGE_SHIFT)); | ||
2095 | 2077 | ||
2096 | if (tlb_type == cheetah || tlb_type == cheetah_plus) | 2078 | if (tlb_type == cheetah || tlb_type == cheetah_plus) |
2097 | cheetah_ecache_flush_init(); | 2079 | cheetah_ecache_flush_init(); |
@@ -2131,8 +2113,8 @@ void free_initmem(void) | |||
2131 | #ifdef CONFIG_BLK_DEV_INITRD | 2113 | #ifdef CONFIG_BLK_DEV_INITRD |
2132 | void free_initrd_mem(unsigned long start, unsigned long end) | 2114 | void free_initrd_mem(unsigned long start, unsigned long end) |
2133 | { | 2115 | { |
2134 | num_physpages += free_reserved_area(start, end, POISON_FREE_INITMEM, | 2116 | free_reserved_area((void *)start, (void *)end, POISON_FREE_INITMEM, |
2135 | "initrd"); | 2117 | "initrd"); |
2136 | } | 2118 | } |
2137 | #endif | 2119 | #endif |
2138 | 2120 | ||