Message ID | 20241219153857.57450-1-philmd@linaro.org (mailing list archive) |
---|---|
Headers | show |
Series | hw/misc/vmcoreinfo: Convert from QDev to plain Object | expand |
On Thu, Dec 19, 2024 at 04:38:47PM +0100, Philippe Mathieu-Daudé wrote: > No reason for vmcoreinfo to be based on QDev, since it > doesn't use any QDev API. Demote to plain Object. I'm not especially convinced by that rationale, at least in the short term[1]. As a user of QEMU, I would tend to view -device as being the way to create devices that are visible to the guest, and -object as being for dealing with host backends. vmcoreinfo is quite an unusal device, in that if only exists as a fwcfg field, but that's an internal impl detail from a user's POV, and it is still a guest visible device type. So while it may not leverage QDev API, I still feel it is more of a fit for -device, than -object. Is there any functional benefit to moving it to -object, that outweighs the disruption ? With regards, Daniel [1] I say "short term", because overall I'm of the opinion that -device, -machine, -cpu, -chardev, etc should not exist, and -object ought to be made capable of instantiating any type of object whatever subclass it might be. I doubt that will change any time in the forseeable future though, so it is more of a hypothetical point.
On Thu, 19 Dec, 2024, 9:27 pm Daniel P. Berrangé, <berrange@redhat.com> wrote: > On Thu, Dec 19, 2024 at 04:38:47PM +0100, Philippe Mathieu-Daudé wrote: > > No reason for vmcoreinfo to be based on QDev, since it > > doesn't use any QDev API. Demote to plain Object. > > I'm not especially convinced by that rationale, at least in the short > term[1]. > > As a user of QEMU, I would tend to view -device as being the way to > create devices that are visible to the guest, and -object as being > for dealing with host backends. > > vmcoreinfo is quite an unusal device, in that if only exists as a > fwcfg field, but that's an internal impl detail from a user's POV, > and it is still a guest visible device type. > > So while it may not leverage QDev API, I still feel it is more of > a fit for -device, than -object. +1 to this. Is there any functional benefit > to moving it to -object, that outweighs the disruption ? >
On 19/12/24 16:57, Daniel P. Berrangé wrote: > On Thu, Dec 19, 2024 at 04:38:47PM +0100, Philippe Mathieu-Daudé wrote: >> No reason for vmcoreinfo to be based on QDev, since it >> doesn't use any QDev API. Demote to plain Object. > > I'm not especially convinced by that rationale, at least in the short > term[1]. > > As a user of QEMU, I would tend to view -device as being the way to > create devices that are visible to the guest, and -object as being > for dealing with host backends. Hmm. > vmcoreinfo is quite an unusal device, in that if only exists as a > fwcfg field, but that's an internal impl detail from a user's POV, > and it is still a guest visible device type. > > So while it may not leverage QDev API, I still feel it is more of > a fit for -device, than -object. Is there any functional benefit > to moving it to -object, that outweighs the disruption ? No. Patches 1-5 are still useful cleanups although. > [1] I say "short term", because overall I'm of the opinion that > -device, -machine, -cpu, -chardev, etc should not exist, and > -object ought to be made capable of instantiating any type of > object whatever subclass it might be. I doubt that will change > any time in the forseeable future though, so it is more of a > hypothetical point. Agreed.