Hello all,

I have a requirement to use the single-threaded implementation of
multi-core emulation in TCG. This schedules the multiple cores in a
round robin fashion from what I understand, at the end of a set timer
interval.

I want to make a modification to this approach. I would like to
schedule the vCPUs in a round-robin fashion but at the end of every
Translation Block (TB)'s execution.  So, instead of having a timer to
switch the vCPU, I would like to forcefully switch the vCPU when a
translation block has been executed.

What would be the best way to implement this approach? Do I need to
raise an interrupt at the end of the execution of every TB ? Where in
code should I start making changes ? I do not want the functionality
of the original TCG execution driver to change.

Best Regards,
Arnabjyoti Kalita

Reply via email to