Re: [PATCH -rt] CONFIG_PARAVIRT and CONFIG_MCOUNT don't play welltogether

From: Chris Wright
Date: Fri Jun 22 2007 - 11:29:37 EST


* Ingo Molnar (mingo@xxxxxxx) wrote:
> * Chris Wright <chrisw@xxxxxxxxxxxx> wrote:
> > Current -rt is broken when compiling with CONFIG_PARAVIRT and
> > CONFIG_MCOUNT both enabled. Because CONFIG_MCOUNT disables
> > CONFIG_REGPARM, the calling convention must once again be explicit
> > with fastcall. However, this was only half-way addressed in the -rt
> > patch (adding fastcall back to paravirt_ops function ptr declaration
> > but not the actual function definitions) so the compiled kernel has
> > caller putting stuff in registers and callee pulling things from the
> > stack. Impressive how far into boot it can get despite that ;-) Thanks
> > to Steven Rostedt for prodding me and starting the initial debugging.
>
> thanks! I ran into this before and asked for the fastcalls to not be
> removed from upstream paravirt.c but to no avail it seems. It does no
> harm to anyone to keep the 'fastcall' declarations and definitions for
> places where _actual assembly code_ depends on the calling convention.
> Could someone please send this upstream-wards too?

Yes, I agree, it's actually documenting the subtlety of the calling
convention, not just noise in the source. The upstream patch is
different, I'll sort one out.

thanks,
-chris
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/