Steven Rostedt
2008-Jan-03 06:00 UTC
[RFC PATCH 01/11] Add basic support for gcc profiler instrumentation
[Added Chris Wright, Rusty and Virt list because they were involved with this issue before] On Thu, 3 Jan 2008, Ingo Molnar wrote:> > * Steven Rostedt <rostedt@goodmis.org> wrote: > > > +# function tracing might turn this off: > > +config REGPARM > > + bool > > + depends on !MCOUNT > > + default y > > are you sure -pg really needs this?Nope! Arnaldo and I only carried it because you had it ;-)> I just carried this along the years > and went the path of least resistence, but we should not be > reintroducing the !REGPARM build mode for the kernel. I'd not be > surprised if there were a few issues with REGPARM + mcount, but we have > to figure it out before merging ...Hmm, I know paravirt-ops had an issue with mcount in the RT tree. I can't remember the exact issues, but it did have something to do with the way parameters were passed in. Chris, do you remember what the issues were? I'm also thinking that this is only an i386 issue. Thanks, -- Steve
Chris Wright
2008-Jan-03 10:18 UTC
[RFC PATCH 01/11] Add basic support for gcc profiler instrumentation
* Steven Rostedt (rostedt@goodmis.org) wrote:> Hmm, I know paravirt-ops had an issue with mcount in the RT tree. I can't > remember the exact issues, but it did have something to do with the way > parameters were passed in. > > Chris, do you remember what the issues were?Yes, paravirt ops have a well-specified calling convention (register based). There was a cleanup that Andi did that caused the problem because it removed all the "fastcall" annotations since -mregparm=3 is now always on for i386. Since MCOUNT disables REGPARM the calling convention changes (caller pushes to stack, callee expects register) chaos ensues. I sent a patch to fix that quite some months back, but it went stale and I neglected to update it. Would you like me to dig it up refresh and resend? thanks, -chris
Reasonably Related Threads
- [RFC PATCH 01/11] Add basic support for gcc profiler instrumentation
- [PATCH v3 21/27] x86/ftrace: Adapt function tracing for PIE support
- [PATCH v3 21/27] x86/ftrace: Adapt function tracing for PIE support
- [PATCH v3 21/27] x86/ftrace: Adapt function tracing for PIE support
- warning killing for poor !LANG=C|US people