qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "andrzej zaborowski" <balrogg@gmail.com>
To: Qemu mailing list <qemu-devel@nongnu.org>
Subject: [Qemu-devel] Block device id's
Date: Tue, 4 Dec 2007 02:47:36 +0100	[thread overview]
Message-ID: <fb249edb0712031747q1312850am5a82f8c1305e2056@mail.gmail.com> (raw)

Hi,
  the -drive patch changed the name strings to for block devices to
"drive<n>", which carries about as much information as a serial
number. With the previous naming the devices were easier to
distinguish in the output of "info block" so I would like to change
the naming and propose "<interface><index>" (for example "floppy0")
for the devices that have only one bus and else
"<interface><bus_id>-<media><unit_id>" (for example "ide0-hd0"):

--- a/vl.c
+++ b/vl.c
@@ -4844,6 +4844,8 @@ static int drive_init(const char *str, int snapshot, QEMUM
achine *machine)
 {
     char buf[128];
     char file[1024];
+    char devname[128];
+    const char *mediastr = "";
     BlockInterfaceType interface;
     enum { MEDIA_DISK, MEDIA_CDROM } media;
     int bus_id, unit_id;
@@ -4875,9 +4877,11 @@ static int drive_init(const char *str, int snapshot, QEMU
Machine *machine)
         !strcmp(machine->name, "versatileab")) {
         interface = IF_SCSI;
         max_devs = MAX_SCSI_DEVS;
+        strcpy(devname, "scsi");
     } else {
         interface = IF_IDE;
         max_devs = MAX_IDE_DEVS;
+        strcpy(devname, "ide");
     }
     media = MEDIA_DISK;

@@ -4900,6 +4904,7 @@ static int drive_init(const char *str, int snapshot, QEMUM
achine *machine)
     }

     if (get_param_value(buf, sizeof(buf), "if", str)) {
+        strncpy(devname, buf, sizeof(devname));
         if (!strcmp(buf, "ide")) {
            interface = IF_IDE;
             max_devs = MAX_IDE_DEVS;
@@ -5057,7 +5062,10 @@ static int drive_init(const char *str, int snapshot, QEMU
Machine *machine)

     /* init */

-    snprintf(buf, sizeof(buf), "drive%d", nb_drives);
+    if (interface == IF_IDE || interface == IF_SCSI)
+        mediastr = (media == MEDIA_CDROM) ? "-cd" : "-hd";
+    snprintf(buf, sizeof(buf), max_devs ? "%1$s%4$i%2$s%3$i" : "%s%s%i",
+             devname, mediastr, unit_id, bus_id);
     bdrv = bdrv_new(buf);
     drives_table[nb_drives].bdrv = bdrv;
     drives_table[nb_drives].interface = interface;

I would like to commit this if there are no other propositions.
Regards

                 reply	other threads:[~2007-12-04  1:47 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=fb249edb0712031747q1312850am5a82f8c1305e2056@mail.gmail.com \
    --to=balrogg@gmail.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).