qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Cc: Gerd Hoffmann <kraxel@redhat.com>
Subject: [Qemu-devel] [PATCH 4/6] qdev: add user-specified identifier to devices.
Date: Wed, 15 Jul 2009 13:43:34 +0200	[thread overview]
Message-ID: <1247658216-511-5-git-send-email-kraxel@redhat.com> (raw)
In-Reply-To: <1247658216-511-1-git-send-email-kraxel@redhat.com>

Add id field to DeviceState.  Make "info qtree" print it.

This helps users and management apps identifying devices in monitor
output, which is especially useful with otherwise identical devices
such as two virtio disks.

This patch doesn't add a way to set the id, followup patches will do.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 hw/qdev.c |    6 ++++--
 hw/qdev.h |    1 +
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/hw/qdev.c b/hw/qdev.c
index 53e9b00..aa555fc 100644
--- a/hw/qdev.c
+++ b/hw/qdev.c
@@ -114,7 +114,8 @@ void qdev_init(DeviceState *dev)
 void qdev_free(DeviceState *dev)
 {
     LIST_REMOVE(dev, sibling);
-    free(dev);
+    qemu_free(dev->id);
+    qemu_free(dev);
 }
 
 /* Get a character (serial) device interface.  */
@@ -266,7 +267,8 @@ static void qdev_print_props(Monitor *mon, DeviceState *dev, Property *props,
 static void qdev_print(Monitor *mon, DeviceState *dev, int indent)
 {
     BusState *child;
-    qdev_printf("dev: %s\n", dev->info->name);
+    qdev_printf("dev: %s, id \"%s\"\n", dev->info->name,
+                dev->id ? dev->id : "");
     indent += 2;
     if (dev->num_gpio_in) {
         qdev_printf("gpio-in %d\n", dev->num_gpio_in);
diff --git a/hw/qdev.h b/hw/qdev.h
index 115c2d0..4c6e673 100644
--- a/hw/qdev.h
+++ b/hw/qdev.h
@@ -17,6 +17,7 @@ typedef struct BusInfo BusInfo;
 /* This structure should not be accessed directly.  We declare it here
    so that it can be embedded in individual device state structures.  */
 struct DeviceState {
+    char *id;
     DeviceInfo *info;
     BusState *parent_bus;
     int num_gpio_out;
-- 
1.6.2.5

  parent reply	other threads:[~2009-07-15 11:43 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-15 11:43 [Qemu-devel] [PATCH 0/6] qdev patches: properties, id=<tag>, more device info Gerd Hoffmann
2009-07-15 11:43 ` [Qemu-devel] [PATCH 1/6] qdev: rework device properties Gerd Hoffmann
2012-10-17 20:14   ` Eduardo Habkost
2012-10-17 21:05     ` Stefan Weil
2012-10-17 21:50       ` Eduardo Habkost
2012-10-18  8:07         ` Paolo Bonzini
2012-10-18  6:19     ` Gerd Hoffmann
2012-10-18  6:24     ` Christian Borntraeger
2012-10-18  6:32     ` Jan Kiszka
2012-10-19  7:25       ` Markus Armbruster
2012-10-19  7:23     ` Markus Armbruster
2012-10-19  8:30     ` Michael S. Tsirkin
2012-10-19 17:18     ` Blue Swirl
2012-10-19 18:57       ` Michael Roth
2012-10-22 10:45     ` Amit Shah
2012-10-23  3:14     ` Isaku Yamahata
2009-07-15 11:43 ` [Qemu-devel] [PATCH 2/6] qdev: factor out driver search to qdev_find_info() Gerd Hoffmann
2009-07-15 11:43 ` [Qemu-devel] [PATCH 3/6] qdev: add no_user, alias and desc Gerd Hoffmann
2009-07-15 11:43 ` Gerd Hoffmann [this message]
2009-07-15 11:43 ` [Qemu-devel] [PATCH 5/6] qdev: add id= support for pci nics Gerd Hoffmann
2009-07-15 11:43 ` [Qemu-devel] [PATCH 6/6] qdev: print device id in "info pci" Gerd Hoffmann

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=1247658216-511-5-git-send-email-kraxel@redhat.com \
    --to=kraxel@redhat.com \
    --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 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).