Changes from v2: Set the timers to NULL when unrealizing them, as the data structure is still intact.
Split out the removal of the mutex from ipmi_bmc_sim to its own patch. I did figure out a way to test these. You can set the realize bool in the qapi for the device to cause it to be realized/unrealized. This has kind of opened a can of worms for me, though. Looking at a lot of the devices, there is no unrealize function and that can leave a lot of things hanging. And for ISA bus devices, there is no way to unregister ports. I have a separate patch to make the BMCs not hot-pluggable and fix up a few other small things I saw as a result of understanding this better. But those probably don't belong here. Thanks, -corey