[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH 0/5] RFC: distinguish warm reset from cold reset
[Qemu-devel] Re: [PATCH 0/5] RFC: distinguish warm reset from cold reset.
Mon, 30 Aug 2010 10:04:30 -0300
On Mon, Aug 30, 2010 at 05:35:20PM +0900, Isaku Yamahata wrote:
> On Mon, Aug 30, 2010 at 10:59:19AM +0300, Avi Kivity wrote:
> > On 08/30/2010 10:49 AM, Isaku Yamahata wrote:
> >> 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.
> > What would be the difference between warm and cold reset? Former called
> > on any reset, while the latter called on power up only?
> What I have in mind at the moment is,
> warm reset callback is called on warm reset, not called on power up.
> cold reset callback is called only on power up (and power cycle).
> Hmm, should warm reset handler be called on power up?
> Each cold reset callbacks can call corresponding warm reset handler
> if necessary. So it would be redundant to call qdev_warm_reset() on power up.
> Or would it be more robust to call warm reset in addition to cold reset
> on power on?
I guess a good way to do that would be making "reset" just mean warm reset,
and keep a single list. Those would be called on every kind of reset.
Alternatively, cards that want to have a different power-on code could
then be added to an amendment list, interfaced by a cold-reset API.
[Qemu-devel] Re: [PATCH 0/5] RFC: distinguish warm reset from cold reset., Avi Kivity, 2010/08/30
[Qemu-devel] Re: [PATCH 0/5] RFC: distinguish warm reset from cold reset.,
Glauber Costa <=