[lkml]   [2009]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 2/3] x86: Pass in pt_regs pointer for syscalls that need it
    On Wed, Feb 11, 2009 at 9:48 AM, Tejun Heo <> wrote:
    > Tejun Heo wrote:
    >>> I checked the disassembly of these functions and didn't see this
    >>> happen on gcc 4.3.0.
    >> Well, tracking down why run_init_process() is returning 0 with
    >> -fstack-protector wasn't much of fun. These breakages are very subtle
    >> and if we're gonna pass in pointer to pt_regs anyway and thus can
    >> guarantee such breakage can't happen at no additional cost, I think we
    >> should do that even if it means slightly more argument fetching in a
    >> few places.
    > In addition, if we do that, we can remove the horrible
    > asmlinkage_protect() thing altogether.

    Like I said before, the tail-call optimization problem isn't limited
    to just this set of syscalls. There are only two real ways to fix it.
    1) Set up a real stack frame for the syscalls instead of overalying
    pt_regs, or 2) patch gcc to tell it not to touch the args area of the

    Brian Gerst

     \ /
      Last update: 2009-02-11 16:01    [W:0.024 / U:7.836 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site