All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Mark Burton" <mark.burton@greensocs.com>,
	"QEMU Developers" <qemu-devel@nongnu.org>,
	"Alistair Francis" <alistair.francis@xilinx.com>,
	"Cédric Le Goater" <clg@kaod.org>,
	"KONRAD Frederic" <fred.konrad@greensocs.com>
Subject: Re: [Qemu-devel] [PATCH v3 00/10] Clock framework API.
Date: Thu, 15 Jun 2017 17:15:30 +0200	[thread overview]
Message-ID: <20170615151530.GC12347@toto> (raw)
In-Reply-To: <CAFEAcA-zhur3vO8G_CPQuyEU3p7e81cixiZ58sFs96e+av4Mbg@mail.gmail.com>

On Thu, Jun 15, 2017 at 04:04:56PM +0100, Peter Maydell wrote:
> On 15 June 2017 at 15:57, Edgar E. Iglesias <edgar.iglesias@gmail.com> wrote:
> > On Thu, Jun 15, 2017 at 03:40:40PM +0100, Peter Maydell wrote:
> >> Unfortunately we make no guarantees at all about migration order
> >> for devices as far as I'm aware, so devices have to cope regardless.
> >
> >
> > How does this work for interrupts/gpios?
> 
> Interrupts/gpios (qemu_irqs) don't have any internal state,
> so all that is needed is for both devices to correctly migrate
> their idea of their internal state, and it doesn't matter which
> order that happens in. (Typically in QEMU devices track the state
> of their inbound interrupt lines even if in real hardware there's
> no flop doing that.)
> 
> The difference here is that the clock objects themselves have
> internal state. That's not necessarily a bad idea, but it does
> mean that something's got to migrate that state or otherwise
> regenerate it. (Anthony once proposed that we should change qemu_irq
> objects to have internal state, because that's effectively what real
> hardware is and it would save the need for each device to track its
> input line state and be notified if the line didn't actually change
> state. It would just have been an enormous upheaval and migration
> compat break...)

Thanks. I didn't realize that the internal clock state would be used in a
way that is not deriveable from other device state & input clocks.
I'm not sure this is a use-case we need to support, thoughts?

Maybe there's some value in keeping interrupt and clock handling alike,
e.g removing the internal state from clocks.

I need to have another look at the series before I comment too much
since I don't remember the details...

Best regards,
Edgar

  reply	other threads:[~2017-06-15 15:15 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-28 10:02 [Qemu-devel] [PATCH v3 00/10] Clock framework API fred.konrad
2017-02-28 10:02 ` [Qemu-devel] [PATCH v3 01/10] qemu-clk: introduce qemu-clk qom object fred.konrad
2017-02-28 10:02 ` [Qemu-devel] [PATCH v3 02/10] qemu-clk: allow to add a clock to a device fred.konrad
2017-02-28 10:02 ` [Qemu-devel] [PATCH v3 03/10] qemu-clk: allow to bind two clocks together fred.konrad
2017-02-28 10:02 ` [Qemu-devel] [PATCH v3 04/10] qemu-clk: introduce an init array to help the device construction fred.konrad
2017-02-28 10:03 ` [Qemu-devel] [PATCH v3 05/10] qdev-monitor: print the device's clock with info qtree fred.konrad
2017-02-28 10:03 ` [Qemu-devel] [PATCH v3 06/10] docs: add qemu-clock documentation fred.konrad
2017-06-15 15:44   ` Edgar E. Iglesias
2017-02-28 10:03 ` [Qemu-devel] [PATCH v3 07/10] introduce fixed-clock fred.konrad
2017-02-28 10:03 ` [Qemu-devel] [PATCH v3 08/10] introduce zynqmp_crf fred.konrad
2017-02-28 10:03 ` [Qemu-devel] [PATCH v3 09/10] zynqmp: add the zynqmp_crf to the platform fred.konrad
2017-02-28 10:03 ` [Qemu-devel] [PATCH v3 10/10] zynqmp: add reference clock fred.konrad
2017-05-24  7:35 ` [Qemu-devel] [PATCH v3 00/10] Clock framework API KONRAD Frederic
2017-06-06 15:18   ` Peter Maydell
2017-06-08  7:54     ` KONRAD Frederic
2017-06-13 10:33       ` Peter Maydell
2017-06-14 11:54         ` Paolo Bonzini
2017-06-14 13:10           ` KONRAD Frederic
2017-06-15 14:40           ` Peter Maydell
2017-06-15 14:49             ` Paolo Bonzini
2017-06-15 14:57             ` Edgar E. Iglesias
2017-06-15 15:04               ` Peter Maydell
2017-06-15 15:15                 ` Edgar E. Iglesias [this message]
2017-06-15 15:38                   ` KONRAD Frederic
2017-06-23  9:51                   ` Peter Maydell
2017-06-23 12:38                     ` KONRAD Frederic
2017-06-23 12:47                       ` Peter Maydell
2017-06-23 13:07                         ` KONRAD Frederic
2017-06-23 13:58                           ` Peter Maydell
2017-06-27  7:04                             ` KONRAD Frederic
2017-06-27  9:34                               ` Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170615151530.GC12347@toto \
    --to=edgar.iglesias@xilinx.com \
    --cc=alistair.francis@xilinx.com \
    --cc=clg@kaod.org \
    --cc=edgar.iglesias@gmail.com \
    --cc=fred.konrad@greensocs.com \
    --cc=mark.burton@greensocs.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.