All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
	"qemu-devel@nongnu.org Developers" <qemu-devel@nongnu.org>,
	"Andreas Färber" <afaerber@suse.de>
Subject: Re: [Qemu-devel] [PATCH memory v4 00/10] Memory Region QOMification
Date: Fri, 06 Jun 2014 16:52:27 +0200	[thread overview]
Message-ID: <5391D5AB.8030508@redhat.com> (raw)
In-Reply-To: <CAEgOgz7SRS0nvN=LB5SKgztuM6=L659MfP2FxCvZUgvsSV6Evg@mail.gmail.com>

Il 06/06/2014 15:36, Peter Crosthwaite ha scritto:
>> However, I'd rather have the concept bake for a bit by starting with
>> read-only properties.
>
> The just a matter of pulling our the setters?

Yes.  You can leave in all the preparatory refactoring.

> I guess it can be done
> but I don't fully understand the motivation.

I'm not sure what the interactions should be between the setters and, 
for example, the "realized" property.  In addition, some memory regions 
(for example PCI BARs) are meant to be moved around by the guest, not 
the host.

By comparison, with getters only not many things can go wrong.

>>  I think there are some concepts in the "container"
>> property that can be generalized.
>
> Can you elaborate this a little more?

Basically the container property acts as a kind of "backdoor" to express 
many:1 relations (which are a bit ugly to express with the current QOM 
property model).  If object X is on the 1 side and object Y is on the 
"many" side, you then write the path to Y to a property of X.

There are obvious similarity between the container/address/visible 
properties of a MemoryRegion are very similar to bus/addr/realized that 
we have for -device.  I think we should try and understand better what 
this similarity means, and whether this approach to many:1 relations 
could become a more central part of QOM.

Paolo

  reply	other threads:[~2014-06-06 14:52 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-06  6:11 [Qemu-devel] [PATCH memory v4 00/10] Memory Region QOMification Peter Crosthwaite
2014-06-06  6:12 ` [Qemu-devel] [PATCH memory v4 01/10] memory: Simplify mr_add_subregion() if-else Peter Crosthwaite
2014-06-06  6:13 ` [Qemu-devel] [PATCH memory v4 02/10] qom: add a generic mechanism to resolve paths Peter Crosthwaite
2014-06-06  6:13 ` [Qemu-devel] [PATCH memory v4 03/10] qom: object: Ignore refs/unrefs of NULL Peter Crosthwaite
2014-06-06  6:14 ` [Qemu-devel] [PATCH memory v4 04/10] qom: Publish object_resolve_link Peter Crosthwaite
2014-06-06  6:14 ` [Qemu-devel] [PATCH memory v4 05/10] memory: Coreify subregion add functionality Peter Crosthwaite
2014-06-06  6:15 ` [Qemu-devel] [PATCH memory v4 06/10] memory: MemoryRegion: factor out memory region re-adder Peter Crosthwaite
2014-06-06  6:15 ` [Qemu-devel] [PATCH memory v4 07/10] memory: MemoryRegion: QOMify Peter Crosthwaite
2014-06-06  6:16 ` [Qemu-devel] [PATCH memory v4 08/10] memory: MemoryRegion: Add container and addr props Peter Crosthwaite
2014-06-06  6:17 ` [Qemu-devel] [PATCH memory v4 09/10] memory: MemoryRegion: Add may-overlap and priority props Peter Crosthwaite
2014-06-06  6:17 ` [Qemu-devel] [PATCH memory v4 10/10] memory: MemoryRegion: Add size property Peter Crosthwaite
2014-06-06  9:36 ` [Qemu-devel] [PATCH memory v4 00/10] Memory Region QOMification Paolo Bonzini
2014-06-06 13:36   ` Peter Crosthwaite
2014-06-06 14:52     ` Paolo Bonzini [this message]
2014-06-06 23:50       ` Peter Crosthwaite
2014-06-07 11:30         ` Paolo Bonzini

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=5391D5AB.8030508@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=afaerber@suse.de \
    --cc=peter.crosthwaite@xilinx.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.