[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP
From: |
Juraj Marcin |
Subject: |
Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP |
Date: |
Thu, 8 Aug 2024 17:28:11 +0200 |
On Thu, Aug 8, 2024 at 2:18 PM Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Tue, 6 Aug 2024 at 17:08, Juraj Marcin <jmarcin@redhat.com> wrote:
> >
> > Some devices need to distinguish cold start reset from waking up from a
> > suspended state. This patch adds new value to the enum, and updates the
> > i386 wakeup method to use this new reset type.
> >
> > Signed-off-by: Juraj Marcin <jmarcin@redhat.com>
> > ---
> > docs/devel/reset.rst | 7 +++++++
> > hw/i386/pc.c | 2 +-
> > include/hw/resettable.h | 2 ++
> > 3 files changed, 10 insertions(+), 1 deletion(-)
> >
> > diff --git a/docs/devel/reset.rst b/docs/devel/reset.rst
> > index 9746a4e8a0..30c9a0cc2b 100644
> > --- a/docs/devel/reset.rst
> > +++ b/docs/devel/reset.rst
> > @@ -44,6 +44,13 @@ The Resettable interface handles reset types with an
> > enum ``ResetType``:
> > value on each cold reset, such as RNG seed information, and which they
> > must not reinitialize on a snapshot-load reset.
> >
> > +``RESET_TYPE_WAKEUP``
> > + This type is used when the machine is woken up from a suspended state
> > (deep
> > + sleep, suspend-to-ram). Devices that must not be reset to their initial
> > state
> > + after wake-up (for example virtio-mem) can use this state to
> > differentiate
> > + cold start from wake-up can use this state to differentiate cold start
> > from
> > + wake-up.
>
> I feel like this needs more clarity about what this is, since
> as a reset type it's a general behaviour, not a machine
> specific one. What exactly is "wakeup" and when does it happen?
> How does it differ from what you might call a "warm" reset,
> where the user pressed the front-panel reset button?
> Why is virtio-mem in particular interesting here?
Thank you for the feedback!
I have rewritten the paragraph:
This type is called for a reset when the system is being woken up from
a suspended state using the ``qemu_system_wakeup()`` function. If the
machine type needs to reset in its ``MachineClass::wakeup()`` method,
this reset type should be used so that devices can differentiate
system wake-up from other reset types. For example, a virtio-mem
device must not unplug its memory during wake-up, as that would clear
the guest RAM.
Is it clearer? Thank you!
>
> thanks
> -- PMM
>
--
Juraj Marcin
- [PATCH 0/4] virtio-mem: Implement support for suspend+wake-up with plugged memory, Juraj Marcin, 2024/08/06
- [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, Juraj Marcin, 2024/08/06
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, David Hildenbrand, 2024/08/06
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, Peter Maydell, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP,
Juraj Marcin <=
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, David Hildenbrand, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, Peter Maydell, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, David Hildenbrand, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, Peter Maydell, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, David Hildenbrand, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, Peter Maydell, 2024/08/08
- Re: [PATCH 2/4] reset: Add RESET_TYPE_WAKEUP, David Hildenbrand, 2024/08/08
- [PATCH 1/4] reset: Use ResetType for qemu_devices_reset() and MachineClass->reset(), Juraj Marcin, 2024/08/06