[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] qdev: Reset hotplugged devices

From: Blue Swirl
Subject: Re: [Qemu-devel] [PATCH] qdev: Reset hotplugged devices
Date: Thu, 26 Aug 2010 17:39:30 +0000

On Thu, Aug 26, 2010 at 2:29 PM, Avi Kivity <address@hidden> wrote:
>  On 08/26/2010 04:25 PM, Anthony Liguori wrote:
>> On 08/26/2010 08:15 AM, Avi Kivity wrote:
>>>  On 08/25/2010 03:55 PM, Anthony Liguori wrote:
>>>>> Maybe we can merge the patches.
>>>>> As for your patch, I have some comment.
>>>>> - bus itself may want its own handler. At lease pci bus needs it.
>>>>>   And propagating reset signal to children is up to the bus controller.
>>>> I disagree.  Reset should be equivalent to power off + init and it's not
>>>> something that can be selectively propagated.
>>> Not all busses propagate reset - SCSI is an example (I think).
>> We're talking about cold reset vs. warm reset.
>> In the absence of passthrough, I'm struggling to see a useful use-case
>> with warm reset.  However, there are many useful things we can do assuming a
>> cold reset (like MADV_DONTNEED memory on reboot).
>> That's not saying we shouldn't do a warm reset, but I'd 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.
> Pressing the reset button is a warm reset on real machines, therefore it
> should be a warm reset in qemu.

I agree. For example Sparc64 CPU uses different reset vector for warm
and cold reset, so system_reset acts like a reset button.

But most real life chips have only one reset signal pin, CPUs may be
the only cases where multiple reset signals are used. I think current
system_reset matches the need well. For most devices, system_reset
initiates the same procedure for cold or warm reset. Those devices
which care about warm reset can count the number of the resets. The
only problem I see is that there is no way to signal cold reset or
power cycle.

Then there are devices which don't have reset signals at all, like
RAM. Their behavior at reset is different compared to power cycling.
Stateless hardware like ROMs do not care about either.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]