Re: [PATCH -rt] CONFIG_PARAVIRT and CONFIG_MCOUNT don't play well together
From: Chris Wright <hidden>
Date: 2007-06-22 15:29:34
Also in:
lkml
* Ingo Molnar (mingo@elte.hu) wrote:
* Chris Wright [off-list ref] wrote:quoted
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