]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
sparc64: Use kernel page tables for vmemmap.
authorDavid S. Miller <davem@davemloft.net>
Thu, 25 Sep 2014 04:20:14 +0000 (21:20 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Oct 2014 16:43:18 +0000 (09:43 -0700)
commit1bbd6776e3957b0a9f8006e2d38a71149f705ca6
tree8c400a306b25d216815d501e121aa7fc302867aa
parent92566c44de4e7373ffa0c42b73bfefd921171531
sparc64: Use kernel page tables for vmemmap.

[ Upstream commit c06240c7f5c39c83dfd7849c0770775562441b96 ]

For sparse memory configurations, the vmemmap array behaves terribly
and it takes up an inordinate amount of space in the BSS section of
the kernel image unconditionally.

Just build huge PMDs and look them up just like we do for TLB misses
in the vmalloc area.

Kernel BSS shrinks by about 2MB.

Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Bob Picco <bob.picco@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/sparc/kernel/ktlb.S
arch/sparc/mm/init_64.c
arch/sparc/mm/init_64.h