Hi Sorry for the delay, some of the topics of the previous call: Record of sessions: - What do peple think? This makes things easier for people that can't attend due to whatever reason. Mainly TZ problems. - Should we do another one next week? Which one? TDX migration VFIO/VPDA/Vhost migration qemu single binary - The future of icount icount and determism determinism with icount: imposible icount without determisim: interesting and useful can we consider and icount while also doing a multithread. Probably yes and lots of advantages in lot of fields. icount now simple implementation of decrementing a counter each time one block is executed. Now looks like a 50Mhz cpu. instrument with plugins different parts of qemu rigth now tcg plugins only do passive "things" be able to intrument small things. icount in main code only for counting insttructions. Everything else to plugins. Use round robin to make multithread/core deterministic. Help with debugging CPU's. Plugins that control the flow of time. Is that ok with the community. Use this to glue two emulators together? Do we have an agenda for next weeks KVM call yet? If there is space I'd like to take some time to discuss the future direction of icount. Specifically I believe there might be some proposals for how we could support icount with MTTCG worth discussing. From my point of view icount provides too things: - a sense of time vaguely related to execution rather than wall clock - determinism I would love to divorce the former from icount and punt it to plugins. The plugin would be free to instrument as heavily or lightly as it sees fit and provide its best guess as to guest time on demand. I wrote this idea up as a card in Linaro's JIRA if anyone is interested: https://linaro.atlassian.net/browse/QEMU-481 Being able to punt cost modelling and sense of time into plugins would allow the core icount support to concentrate on determinism. Then any attempt to enable icount for MTTCG would then have to ensure it stays deterministic. Richard and I have discussed the problem a few times and weren't sure it was solvable but I'm totally open to hearing ideas on how to do it. Fundamentally I think we would have to ensure any TB's doing IO would have to execute in an exclusive context. The TCG code already has mechanisms to ensure all IO is only done at the end of blocks so it doesn't seem a huge leap to ensure we execute those blocks exclusively. However there is still the problem of what to do about other pure computation threads getting ahead or behind of the IO blocks on subsequent runs. Anyway does anyone else have ideas to bring to the discussion? Later, Juan.