lkml.org 
[lkml]   [2006]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 2.6.17-rc6 5/8] Add kmemleak support for i386
    Date
    From: Catalin Marinas <catalin.marinas@arm.com>

    This patch modifies the vmlinux.lds.S script and adds the backtrace support
    for i386 to be used with kmemleak.

    Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
    ---

    arch/i386/kernel/vmlinux.lds.S | 4 ++++
    include/asm-i386/processor.h | 12 ++++++++++++
    2 files changed, 16 insertions(+), 0 deletions(-)

    diff --git a/arch/i386/kernel/vmlinux.lds.S b/arch/i386/kernel/vmlinux.lds.S
    index 8831303..370480e 100644
    --- a/arch/i386/kernel/vmlinux.lds.S
    +++ b/arch/i386/kernel/vmlinux.lds.S
    @@ -38,6 +38,7 @@ SECTIONS
    RODATA

    /* writeable */
    + _sdata = .; /* Start of data section */
    .data : AT(ADDR(.data) - LOAD_OFFSET) { /* Data */
    *(.data)
    CONSTRUCTORS
    @@ -140,6 +141,9 @@ SECTIONS
    __per_cpu_start = .;
    .data.percpu : AT(ADDR(.data.percpu) - LOAD_OFFSET) { *(.data.percpu) }
    __per_cpu_end = .;
    + __memleak_offsets_start = .;
    + .init.memleak_offsets : AT(ADDR(.init.memleak_offsets) - LOAD_OFFSET) { *(.init.memleak_offsets) }
    + __memleak_offsets_end = .;
    . = ALIGN(4096);
    __init_end = .;
    /* freed after init ends here */
    diff --git a/include/asm-i386/processor.h b/include/asm-i386/processor.h
    index 805f0dc..9b6568a 100644
    --- a/include/asm-i386/processor.h
    +++ b/include/asm-i386/processor.h
    @@ -743,4 +743,16 @@ #else
    #define mcheck_init(c) do {} while(0)
    #endif

    +#ifdef CONFIG_FRAME_POINTER
    +static inline unsigned long arch_call_address(void *frame)
    +{
    + return *(unsigned long *) (frame + 4);
    +}
    +
    +static inline void *arch_prev_frame(void *frame)
    +{
    + return *(void **) frame;
    +}
    +#endif
    +
    #endif /* __ASM_I386_PROCESSOR_H */
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2006-06-07 00:25    [W:0.024 / U:0.372 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site