Messages in this thread | | | Date | Sat, 23 Jul 2005 03:09:27 -0400 | From | Chuck Ebbert <> | Subject | Re: [patch 2.6.13-rc3a] i386: inline restore_fpu |
| |
On Date: Fri, 22 Jul 2005 at 16:19:25 -0700 (PDT), Linus Torvalds wrote:
> /* > * The "nop" is needed to make the instructions the same > * length. > */ > #define restore_fpu(tsk) \ > alternative_input( \ > "nop ; frstor %1", \ > "fxrstor %1", \ > X86_FEATURE_FXSR, \ > "m" ((tsk)->thread.i387.fsave))
Probably a very minor point, but shouldn't it be
"m" ((tsk)->thread.i387.fxsave))
because that's the largest possible operand that could end up being read?
> Now, we should do the same for "fnsave ; fwait" vs "fxsave ; fnclex" too, > but I was lazy. If somebody wants to try that, it would need an > "alternative_output()" define but should otherwise be trivial too.
Is that function called __save_init_fpu because it saves and then initializes the fpu? Unlike fsave, fxsave does not init the fpu after it saves the state; to make the behavior match it should be "fxsave ; fninit"
__ Chuck - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |