Upgrade to 4.4.50-rt62
[kvmfornfv.git] / kernel / arch / parisc / kernel / vmlinux.lds.S
index 0dacc5c..60771df 100644 (file)
@@ -60,7 +60,7 @@ SECTIONS
                EXIT_DATA
        }
        PERCPU_SECTION(8)
-       . = ALIGN(PAGE_SIZE);
+       . = ALIGN(HUGEPAGE_SIZE);
        __init_end = .;
        /* freed after init ends here */
 
@@ -88,8 +88,9 @@ SECTIONS
        /* Start of data section */
        _sdata = .;
 
-       RO_DATA_SECTION(8)
-
+       /* Architecturally we need to keep __gp below 0x1000000 and thus
+        * in front of RO_DATA_SECTION() which stores lots of tracepoint
+        * and ftrace symbols. */
 #ifdef CONFIG_64BIT
        . = ALIGN(16);
        /* Linkage tables */
@@ -104,6 +105,8 @@ SECTIONS
        }
 #endif
 
+       RO_DATA_SECTION(8)
+
        /* unwind info */
        .PARISC.unwind : {
                __start___unwind = .;
@@ -116,7 +119,7 @@ SECTIONS
         * that we can properly leave these
         * as writable
         */
-       . = ALIGN(PAGE_SIZE);
+       . = ALIGN(HUGEPAGE_SIZE);
        data_start = .;
 
        EXCEPTION_TABLE(8)
@@ -135,8 +138,11 @@ SECTIONS
        _edata = .;
 
        /* BSS */
-       BSS_SECTION(PAGE_SIZE, PAGE_SIZE, 8)
+       BSS_SECTION(PAGE_SIZE, PAGE_SIZE, PAGE_SIZE)
+
+       /* bootmap is allocated in setup_bootmem() directly behind bss. */
 
+       . = ALIGN(HUGEPAGE_SIZE);
        _end = . ;
 
        STABS_DEBUG