lkml.org 
[lkml]   [2009]   [Feb]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH 11/11] x86: implement x86_32 stack protector
    From
    On Mon, Feb 9, 2009 at 8:39 AM, Tejun Heo <tj@kernel.org> wrote:
    > Impact: stack protector for x86_32
    >
    > Implement stack protector for x86_32. GDT entry 28 is used for it.
    > It's set to point to stack_canary-20 and have the length of 24 bytes.
    > CONFIG_CC_STACKPROTECTOR turns off CONFIG_X86_32_LAZY_GS and sets %gs
    > to the stack canary segment on entry. As %gs is otherwise unused by
    > the kernel, the canary can be anywhere. It's defined as a percpu
    > variable.
    >
    > x86_32 exception handlers take register frame on stack directly as
    > struct pt_regs. With -fstack-protector turned on, gcc copies the
    > whole structure after the stack canary and (of course) doesn't copy
    > back on return thus losing all changed. For now, -fno-stack-protector
    > is added to all files which contain those functions. We definitely
    > need something better.
    >
    > Signed-off-by: Tejun Heo <tj@kernel.org>

    Am I missing something, or does this patch not actually implement the
    offset of the start of the segment by 20 from the stack_canary
    variable?

    --
    Brian Gerst


    \
     
     \ /
      Last update: 2009-02-10 16:27    [W:4.332 / U:0.400 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site