On 06/25/2012 05:17 PM, Gleb Natapov wrote: > On Mon, Jun 25, 2012 at 04:40:35PM +0300, Avi Kivity wrote: >> On 06/25/2012 04:12 PM, Gleb Natapov wrote: >> >> >> Right. But I think we can have x86_linearize() that doesn't take a >> >> context parameter, only ops. >> >> >> > All ops take context parameter though. >> > >> >> context is meaningful for: >> - saving state between executions (decode/execute/execute) >> - passing state that is not provided via callbacks (regs/mode/flags) >> - returning results >> >> Only the second is relevant, and we're trying to get rid of that too. >> > Callbacks were passed pointer to vcpu, but they were changed to get ctxt > to better encapsulate emulator.c from rest of the KVM. Are you suggesting > this was a mistake and we need to rework callbacks to receive pointer > to vcpu again? I hope not :) Ouch. I guess we have to pass the context, but not initialize any of it except ops. Later we can extend x86_decode_insn() and the other functions to follow the same rule. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html