This patch set distinguish warm reset from cold reset by introducing warm reset callback handler. The first 4 patches are trivial clean up patches. The last patch of 5/5 is RFC patch.
The following thread arose cold reset vs warm reset issues. http://lists.nongnu.org/archive/html/qemu-devel/2010-08/msg00186.html The summary is - warm reset is wanted in qemu - Pressing the reset button is a warm reset on real machines - Sparc64 CPU uses different reset vector for warm and cold reset, so system_reset acts like a reset button - Bus reset can be implemented utilizing qdev frame work instead of implemeting it each bus layer independently. - The modification should be incremental. Anthony would like to see that as an incremental addition to what we have today (like introducing a propagating warm reset callback) and thinking through what the actual behavior should and shouldn't be. If the direction is okay, The next step would be a patch(set) for qdev which would introduce qdev_cold_reset(), qdev_warm_reset(), DeviceInfo::cold_reset and DeviceInfo::warm_reset and would obsolete qdev_reset() and DeviceInfo::reset. Isaku Yamahata (5): sysemu.h, vl.c: static'fy qemu_xxx_requested(). vl.c: consolidate qemu_xxx_requested() logic. vl.c: consolidate qemu_system_xxx_request() logic. vl.c: factor out qemu_reguster/unregister_reset(). RFC: distinguish warm reset from cold reset. hw/hw.h | 7 +++ sysemu.h | 8 ++-- vl.c | 163 ++++++++++++++++++++++++++++++++++++++++++++++---------------- 3 files changed, 133 insertions(+), 45 deletions(-)