diff options
Diffstat (limited to 'arch/tile/mm/init.c')
-rw-r--r-- | arch/tile/mm/init.c | 26 |
1 files changed, 5 insertions, 21 deletions
diff --git a/arch/tile/mm/init.c b/arch/tile/mm/init.c index 2749515a0547..e182958c707d 100644 --- a/arch/tile/mm/init.c +++ b/arch/tile/mm/init.c | |||
@@ -562,7 +562,7 @@ static void __init kernel_physical_mapping_init(pgd_t *pgd_base) | |||
562 | prot = ktext_set_nocache(prot); | 562 | prot = ktext_set_nocache(prot); |
563 | } | 563 | } |
564 | 564 | ||
565 | BUG_ON(address != (unsigned long)_stext); | 565 | BUG_ON(address != (unsigned long)_text); |
566 | pte = NULL; | 566 | pte = NULL; |
567 | for (; address < (unsigned long)_einittext; | 567 | for (; address < (unsigned long)_einittext; |
568 | pfn++, address += PAGE_SIZE) { | 568 | pfn++, address += PAGE_SIZE) { |
@@ -720,7 +720,7 @@ static void __init init_free_pfn_range(unsigned long start, unsigned long end) | |||
720 | } | 720 | } |
721 | init_page_count(page); | 721 | init_page_count(page); |
722 | __free_pages(page, order); | 722 | __free_pages(page, order); |
723 | totalram_pages += count; | 723 | adjust_managed_page_count(page, count); |
724 | 724 | ||
725 | page += count; | 725 | page += count; |
726 | pfn += count; | 726 | pfn += count; |
@@ -821,7 +821,6 @@ static void __init set_max_mapnr_init(void) | |||
821 | 821 | ||
822 | void __init mem_init(void) | 822 | void __init mem_init(void) |
823 | { | 823 | { |
824 | int codesize, datasize, initsize; | ||
825 | int i; | 824 | int i; |
826 | #ifndef __tilegx__ | 825 | #ifndef __tilegx__ |
827 | void *last; | 826 | void *last; |
@@ -846,26 +845,14 @@ void __init mem_init(void) | |||
846 | set_max_mapnr_init(); | 845 | set_max_mapnr_init(); |
847 | 846 | ||
848 | /* this will put all bootmem onto the freelists */ | 847 | /* this will put all bootmem onto the freelists */ |
849 | totalram_pages += free_all_bootmem(); | 848 | free_all_bootmem(); |
850 | 849 | ||
851 | #ifndef CONFIG_64BIT | 850 | #ifndef CONFIG_64BIT |
852 | /* count all remaining LOWMEM and give all HIGHMEM to page allocator */ | 851 | /* count all remaining LOWMEM and give all HIGHMEM to page allocator */ |
853 | set_non_bootmem_pages_init(); | 852 | set_non_bootmem_pages_init(); |
854 | #endif | 853 | #endif |
855 | 854 | ||
856 | codesize = (unsigned long)&_etext - (unsigned long)&_text; | 855 | mem_init_print_info(NULL); |
857 | datasize = (unsigned long)&_end - (unsigned long)&_sdata; | ||
858 | initsize = (unsigned long)&_einittext - (unsigned long)&_sinittext; | ||
859 | initsize += (unsigned long)&_einitdata - (unsigned long)&_sinitdata; | ||
860 | |||
861 | pr_info("Memory: %luk/%luk available (%dk kernel code, %dk data, %dk init, %ldk highmem)\n", | ||
862 | (unsigned long) nr_free_pages() << (PAGE_SHIFT-10), | ||
863 | num_physpages << (PAGE_SHIFT-10), | ||
864 | codesize >> 10, | ||
865 | datasize >> 10, | ||
866 | initsize >> 10, | ||
867 | (unsigned long) (totalhigh_pages << (PAGE_SHIFT-10)) | ||
868 | ); | ||
869 | 856 | ||
870 | /* | 857 | /* |
871 | * In debug mode, dump some interesting memory mappings. | 858 | * In debug mode, dump some interesting memory mappings. |
@@ -1024,16 +1011,13 @@ static void free_init_pages(char *what, unsigned long begin, unsigned long end) | |||
1024 | pte_clear(&init_mm, addr, ptep); | 1011 | pte_clear(&init_mm, addr, ptep); |
1025 | continue; | 1012 | continue; |
1026 | } | 1013 | } |
1027 | __ClearPageReserved(page); | ||
1028 | init_page_count(page); | ||
1029 | if (pte_huge(*ptep)) | 1014 | if (pte_huge(*ptep)) |
1030 | BUG_ON(!kdata_huge); | 1015 | BUG_ON(!kdata_huge); |
1031 | else | 1016 | else |
1032 | set_pte_at(&init_mm, addr, ptep, | 1017 | set_pte_at(&init_mm, addr, ptep, |
1033 | pfn_pte(pfn, PAGE_KERNEL)); | 1018 | pfn_pte(pfn, PAGE_KERNEL)); |
1034 | memset((void *)addr, POISON_FREE_INITMEM, PAGE_SIZE); | 1019 | memset((void *)addr, POISON_FREE_INITMEM, PAGE_SIZE); |
1035 | free_page(addr); | 1020 | free_reserved_page(page); |
1036 | totalram_pages++; | ||
1037 | } | 1021 | } |
1038 | pr_info("Freeing %s: %ldk freed\n", what, (end - begin) >> 10); | 1022 | pr_info("Freeing %s: %ldk freed\n", what, (end - begin) >> 10); |
1039 | } | 1023 | } |