Messages in this thread | | | Date | Thu, 19 Jun 2008 15:32:22 +0100 | From | "Jan Beulich" <> | Subject | Re: [PATCH] x86-64: remove unnecessary ptregs call stubs |
| |
>>> Andi Kleen <andi@firstfloor.org> 19.06.08 14:50 >>> >Ingo Molnar wrote: >> * Jan Beulich <jbeulich@novell.com> wrote: >> >>> A few of the ptregs call stubs are superfluous these days - the called >>> functions don't have a trailing 'struct pt_regs *' parameter anymore. >> >> applied to tip/x86/cleanups - thanks Jan. > >Just want to point out that not having a pt_regs * argument is not necessarily >sufficient for not needing a ptregs stub. Some code also accesses ptregs directly >through the stack top from get_thread_info() and might assume a full one. That said I *think* >it's ok for sigsuspend et.al. as in Jan's patch, but I haven't audited the complete code paths >in question that they never do that. > >Would be good to clarify that in the commit log.
Looking at both the source and disassembly of sys_rt_sigsuspend() and sys32_sigsuspend(), I cannot see anything pt_regs related. All these functions call are copy_from_user(), spin_lock_irq(), recalc_sigpending(), and schedule(), and besides that they just update some global and task state.
Jan
| |