x86: Include all of .data.* sections in _edata on 64-bit
authorCatalin Marinas <[email protected]>
Tue, 14 Jul 2009 09:52:55 +0000 (10:52 +0100)
committerIngo Molnar <[email protected]>
Sat, 18 Jul 2009 11:59:20 +0000 (13:59 +0200)
The .data.read_mostly and .data.cacheline_aligned sections
aren't covered by the _sdata .. _edata range on x86-64. This
affects kmemleak reporting leading to possible false
positives by not scanning the whole data section.

Signed-off-by: Catalin Marinas <[email protected]>
Tested-by: Alexey Fisher <[email protected]>
Acked-by: Sam Ravnborg <[email protected]>
Cc: Pekka Enberg <[email protected]>
LKML-Reference: <1247565175[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
Cc: Sam Ravnborg <[email protected]>
arch/x86/kernel/vmlinux.lds.S

index 367e878820418789055a6a2da48aa27350ada443..59f31d2dd43567f6c995ccf322f666148cc7fb39 100644 (file)
@@ -112,11 +112,6 @@ SECTIONS
                _sdata = .;
                DATA_DATA
                CONSTRUCTORS
-
-#ifdef CONFIG_X86_64
-               /* End of data section */
-               _edata = .;
-#endif
        } :data
 
 #ifdef CONFIG_X86_32
@@ -156,10 +151,8 @@ SECTIONS
        .data.read_mostly : AT(ADDR(.data.read_mostly) - LOAD_OFFSET) {
                *(.data.read_mostly)
 
-#ifdef CONFIG_X86_32
                /* End of data section */
                _edata = .;
-#endif
        }
 
 #ifdef CONFIG_X86_64