* [Qemu-devel] [PULL 0/2] Monitor patches @ 2015-09-22 12:01 Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 1/2] monitor: allow device_del to accept QOM paths Markus Armbruster ` (2 more replies) 0 siblings, 3 replies; 6+ messages in thread From: Markus Armbruster @ 2015-09-22 12:01 UTC (permalink / raw) To: qemu-devel The following changes since commit 9e72681d16792d0ffc42bab634b1753ff299bdfd: Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2015-09-21' into staging (2015-09-21 22:33:51 +0100) are available in the git repository at: git://repo.or.cz/qemu/armbru.git tags/pull-monitor-2015-09-22 for you to fetch changes up to abadcbc838a3b256819fd8932c34a4af41ec187f: hmp: Restore "info pci" (2015-09-22 11:32:37 +0200) ---------------------------------------------------------------- Monitor patches ---------------------------------------------------------------- Daniel P. Berrange (1): monitor: allow device_del to accept QOM paths Paolo Bonzini (1): hmp: Restore "info pci" hmp-commands-info.hx | 14 ++++++++++++++ hmp-commands.hx | 3 ++- qapi-schema.json | 2 +- qdev-monitor.c | 20 +++++++++++++++----- qmp-commands.hx | 7 ++++++- 5 files changed, 38 insertions(+), 8 deletions(-) -- 2.4.3 ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Qemu-devel] [PULL 1/2] monitor: allow device_del to accept QOM paths 2015-09-22 12:01 [Qemu-devel] [PULL 0/2] Monitor patches Markus Armbruster @ 2015-09-22 12:01 ` Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 2/2] hmp: Restore "info pci" Markus Armbruster 2015-09-22 18:21 ` [Qemu-devel] [PULL 0/2] Monitor patches Peter Maydell 2 siblings, 0 replies; 6+ messages in thread From: Markus Armbruster @ 2015-09-22 12:01 UTC (permalink / raw) To: qemu-devel From: "Daniel P. Berrange" <berrange@redhat.com> Currently device_del requires that the client provide the device short ID. device_add allows devices to be created without giving an ID, at which point there is no way to delete them with device_del. The QOM object path, however, provides an alternative way to identify the devices. Allowing device_del to accept an object path ensures all devices are deletable regardless of whether they have an ID. (qemu) device_add usb-mouse (qemu) qom-list /machine/peripheral-anon device[0] (child<usb-mouse>) type (string) (qemu) device_del /machine/peripheral-anon/device[0] Devices are required to be marked as hotpluggable otherwise an error is raised (qemu) device_del /machine/unattached/device[4] Device 'PIIX3' does not support hotplugging Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-Id: <1441974836-17476-1-git-send-email-berrange@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> [Commit message touched up, accidental white-space change dropped] Signed-off-by: Markus Armbruster <armbru@redhat.com> --- hmp-commands.hx | 3 ++- qapi-schema.json | 2 +- qdev-monitor.c | 20 +++++++++++++++----- qmp-commands.hx | 7 ++++++- 4 files changed, 24 insertions(+), 8 deletions(-) diff --git a/hmp-commands.hx b/hmp-commands.hx index a511004..3a4ae39 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -676,7 +676,8 @@ ETEXI STEXI @item device_del @var{id} @findex device_del -Remove device @var{id}. +Remove device @var{id}. @var{id} may be a short ID +or a QOM object path. ETEXI { diff --git a/qapi-schema.json b/qapi-schema.json index 821362d..527690d 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -1951,7 +1951,7 @@ # # Remove a device from a guest # -# @id: the name of the device +# @id: the name or QOM path of the device # # Returns: Nothing on success # If @id is not a valid device, DeviceNotFound diff --git a/qdev-monitor.c b/qdev-monitor.c index 0bf7f83..eb7aef2 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -771,12 +771,17 @@ void qmp_device_add(QDict *qdict, QObject **ret_data, Error **errp) void qmp_device_del(const char *id, Error **errp) { Object *obj; - char *root_path = object_get_canonical_path(qdev_get_peripheral()); - char *path = g_strdup_printf("%s/%s", root_path, id); - g_free(root_path); - obj = object_resolve_path_type(path, TYPE_DEVICE, NULL); - g_free(path); + if (id[0] == '/') { + obj = object_resolve_path(id, NULL); + } else { + char *root_path = object_get_canonical_path(qdev_get_peripheral()); + char *path = g_strdup_printf("%s/%s", root_path, id); + + g_free(root_path); + obj = object_resolve_path_type(path, TYPE_DEVICE, NULL); + g_free(path); + } if (!obj) { error_set(errp, ERROR_CLASS_DEVICE_NOT_FOUND, @@ -784,6 +789,11 @@ void qmp_device_del(const char *id, Error **errp) return; } + if (!object_dynamic_cast(obj, TYPE_DEVICE)) { + error_setg(errp, "%s is not a hotpluggable device", id); + return; + } + qdev_unplug(DEVICE(obj), errp); } diff --git a/qmp-commands.hx b/qmp-commands.hx index 66f0300..d2ba800 100644 --- a/qmp-commands.hx +++ b/qmp-commands.hx @@ -321,13 +321,18 @@ Remove a device. Arguments: -- "id": the device's ID (json-string) +- "id": the device's ID or QOM path (json-string) Example: -> { "execute": "device_del", "arguments": { "id": "net1" } } <- { "return": {} } +Example: + +-> { "execute": "device_del", "arguments": { "id": "/machine/peripheral-anon/device[0]" } } +<- { "return": {} } + EQMP { -- 2.4.3 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Qemu-devel] [PULL 2/2] hmp: Restore "info pci" 2015-09-22 12:01 [Qemu-devel] [PULL 0/2] Monitor patches Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 1/2] monitor: allow device_del to accept QOM paths Markus Armbruster @ 2015-09-22 12:01 ` Markus Armbruster 2015-09-22 18:21 ` [Qemu-devel] [PULL 0/2] Monitor patches Peter Maydell 2 siblings, 0 replies; 6+ messages in thread From: Markus Armbruster @ 2015-09-22 12:01 UTC (permalink / raw) To: qemu-devel; +Cc: Paolo Bonzini From: Paolo Bonzini <pbonzini@redhat.com> Dropped by commit da76ee76f78b9705e2a91e3c964aef28fecededb's transition to hmp-commands-info.hx. Reported-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <1442589509-10806-1-git-send-email-pbonzini@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com> --- hmp-commands-info.hx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx index 9f5a158..94a2afe 100644 --- a/hmp-commands-info.hx +++ b/hmp-commands-info.hx @@ -183,6 +183,20 @@ STEXI Show i8259 (PIC) state. ETEXI + { + .name = "pci", + .args_type = "", + .params = "", + .help = "show PCI info", + .mhandler.cmd = hmp_info_pci, + }, + +STEXI +@item info pci +@findex pci +Show PCI information. +ETEXI + #if defined(TARGET_I386) || defined(TARGET_SH4) || defined(TARGET_SPARC) || \ defined(TARGET_PPC) || defined(TARGET_XTENSA) { -- 2.4.3 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] Monitor patches 2015-09-22 12:01 [Qemu-devel] [PULL 0/2] Monitor patches Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 1/2] monitor: allow device_del to accept QOM paths Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 2/2] hmp: Restore "info pci" Markus Armbruster @ 2015-09-22 18:21 ` Peter Maydell 2 siblings, 0 replies; 6+ messages in thread From: Peter Maydell @ 2015-09-22 18:21 UTC (permalink / raw) To: Markus Armbruster; +Cc: QEMU Developers On 22 September 2015 at 05:01, Markus Armbruster <armbru@redhat.com> wrote: > The following changes since commit 9e72681d16792d0ffc42bab634b1753ff299bdfd: > > Merge remote-tracking branch 'remotes/armbru/tags/pull-qapi-2015-09-21' into staging (2015-09-21 22:33:51 +0100) > > are available in the git repository at: > > git://repo.or.cz/qemu/armbru.git tags/pull-monitor-2015-09-22 > > for you to fetch changes up to abadcbc838a3b256819fd8932c34a4af41ec187f: > > hmp: Restore "info pci" (2015-09-22 11:32:37 +0200) > > ---------------------------------------------------------------- > Monitor patches > > ---------------------------------------------------------------- > Daniel P. Berrange (1): > monitor: allow device_del to accept QOM paths > > Paolo Bonzini (1): > hmp: Restore "info pci" > Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 6+ messages in thread
* [Qemu-devel] [PULL 0/2] Monitor patches @ 2015-09-04 14:24 Markus Armbruster 2015-09-04 17:54 ` Peter Maydell 0 siblings, 1 reply; 6+ messages in thread From: Markus Armbruster @ 2015-09-04 14:24 UTC (permalink / raw) To: qemu-devel The following changes since commit b041066421e8dcc7d080dfcfd83551c9c9f24ade: Merge remote-tracking branch 'remotes/stefanha/tags/tracing-pull-request' into staging (2015-09-03 16:17:28 +0100) are available in the git repository at: git://repo.or.cz/qemu/armbru.git tags/pull-monitor-2015-09-04 for you to fetch changes up to 62313160cb5b6bdfbd77a063e94a5a7d25e59f2b: hmp: add info iothreads command (2015-09-04 13:26:26 +0200) ---------------------------------------------------------------- Monitor patches ---------------------------------------------------------------- John Snow (1): qmp-shell: add documentation Ting Wang (1): hmp: add info iothreads command hmp-commands.hx | 2 ++ hmp.c | 13 +++++++++++++ hmp.h | 1 + monitor.c | 7 +++++++ scripts/qmp/qmp-shell | 35 +++++++++++++++++++++++++++++++++++ 5 files changed, 58 insertions(+) -- 2.4.3 ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] Monitor patches 2015-09-04 14:24 Markus Armbruster @ 2015-09-04 17:54 ` Peter Maydell 0 siblings, 0 replies; 6+ messages in thread From: Peter Maydell @ 2015-09-04 17:54 UTC (permalink / raw) To: Markus Armbruster; +Cc: QEMU Developers On 4 September 2015 at 15:24, Markus Armbruster <armbru@redhat.com> wrote: > The following changes since commit b041066421e8dcc7d080dfcfd83551c9c9f24ade: > > Merge remote-tracking branch 'remotes/stefanha/tags/tracing-pull-request' into staging (2015-09-03 16:17:28 +0100) > > are available in the git repository at: > > git://repo.or.cz/qemu/armbru.git tags/pull-monitor-2015-09-04 > > for you to fetch changes up to 62313160cb5b6bdfbd77a063e94a5a7d25e59f2b: > > hmp: add info iothreads command (2015-09-04 13:26:26 +0200) > > ---------------------------------------------------------------- > Monitor patches > Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-09-22 18:22 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2015-09-22 12:01 [Qemu-devel] [PULL 0/2] Monitor patches Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 1/2] monitor: allow device_del to accept QOM paths Markus Armbruster 2015-09-22 12:01 ` [Qemu-devel] [PULL 2/2] hmp: Restore "info pci" Markus Armbruster 2015-09-22 18:21 ` [Qemu-devel] [PULL 0/2] Monitor patches Peter Maydell -- strict thread matches above, loose matches on Subject: below -- 2015-09-04 14:24 Markus Armbruster 2015-09-04 17:54 ` Peter Maydell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).