All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Wolf <kwolf@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, kraxel@redhat.com
Subject: [Qemu-devel] Re: [PATCH 07/14] ide: Change ide_init_drive() to require valid dinfo argument
Date: Tue, 01 Jun 2010 16:57:27 +0200	[thread overview]
Message-ID: <4C051FD7.6050606@redhat.com> (raw)
In-Reply-To: <1275053935-10627-8-git-send-email-armbru@redhat.com>

Am 28.05.2010 15:38, schrieb Markus Armbruster:
> IDEState members drive_serial_str and version are now left empty until
> an actual drive is connected.  Before, they got a default value that
> was overwritten when a drive got connected.  Doesn't matter, because
> they're used only while a drive is connected.
> 
> Signed-off-by: Markus Armbruster <armbru@redhat.com>
> ---
>  hw/ide/core.c |   47 +++++++++++++++++++++++++----------------------
>  1 files changed, 25 insertions(+), 22 deletions(-)
> 
> diff --git a/hw/ide/core.c b/hw/ide/core.c
> index 443ff10..f72d37f 100644
> --- a/hw/ide/core.c
> +++ b/hw/ide/core.c
> @@ -2601,30 +2601,29 @@ void ide_init_drive(IDEState *s, DriveInfo *dinfo, const char *version)
>      int cylinders, heads, secs;
>      uint64_t nb_sectors;
>  
> -    if (dinfo && dinfo->bdrv) {
> -        s->bs = dinfo->bdrv;
> -        bdrv_get_geometry(s->bs, &nb_sectors);
> -        bdrv_guess_geometry(s->bs, &cylinders, &heads, &secs);
> -        s->cylinders = cylinders;
> -        s->heads = heads;
> -        s->sectors = secs;
> -        s->nb_sectors = nb_sectors;
> -        /* The SMART values should be preserved across power cycles
> -           but they aren't.  */
> -        s->smart_enabled = 1;
> -        s->smart_autosave = 1;
> -        s->smart_errors = 0;
> -        s->smart_selftest_count = 0;
> -        if (bdrv_get_type_hint(s->bs) == BDRV_TYPE_CDROM) {
> -            s->is_cdrom = 1;
> -            bdrv_set_change_cb(s->bs, cdrom_change_cb, s);
> -        }
> -        strncpy(s->drive_serial_str, drive_get_serial(s->bs),
> -                sizeof(s->drive_serial_str));
> +    s->bs = dinfo->bdrv;
> +    bdrv_get_geometry(s->bs, &nb_sectors);
> +    bdrv_guess_geometry(s->bs, &cylinders, &heads, &secs);
> +    s->cylinders = cylinders;
> +    s->heads = heads;
> +    s->sectors = secs;
> +    s->nb_sectors = nb_sectors;
> +    /* The SMART values should be preserved across power cycles
> +       but they aren't.  */
> +    s->smart_enabled = 1;
> +    s->smart_autosave = 1;
> +    s->smart_errors = 0;
> +    s->smart_selftest_count = 0;
> +    if (bdrv_get_type_hint(s->bs) == BDRV_TYPE_CDROM) {
> +        s->is_cdrom = 1;
> +        bdrv_set_change_cb(s->bs, cdrom_change_cb, s);
>      }
> -    if (strlen(s->drive_serial_str) == 0)
> +    strncpy(s->drive_serial_str, drive_get_serial(s->bs),
> +            sizeof(s->drive_serial_str));
> +    if (*s->drive_serial_str) {

This should be the other way round. It breaks the serial number in both
cases.

Kevin

  reply	other threads:[~2010-06-01 14:57 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-28 13:38 [Qemu-devel] [PATCH 00/14] Block-related fixes and cleanups Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 01/14] blockdev: Belatedly remove MAX_DRIVES Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 02/14] blockdev: Belatedly remove driveopts Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 03/14] usb: Remove unused usb_device_add() parameter is_hotplug Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 04/14] ide: Remove useless IDEDeviceInfo members unit, drive Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 05/14] ide: Remove redundant IDEState member conf Markus Armbruster
2010-05-31 14:56   ` [Qemu-devel] " Kevin Wolf
2010-05-31 15:47     ` Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 06/14] ide: Split ide_init1() off ide_init2() Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 07/14] ide: Change ide_init_drive() to require valid dinfo argument Markus Armbruster
2010-06-01 14:57   ` Kevin Wolf [this message]
2010-06-01 18:29     ` [Qemu-devel] " Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 08/14] ide: Split non-qdev code off ide_init2() Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 09/14] qdev: New qdev_prop_set_string() Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 10/14] qdev: Don't leak string property value on hot unplug Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 11/14] ide: Turn drive serial into a qdev property ide-drive.serial Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 12/14] ide: Fix info qtree for ide-drive.ver Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 13/14] scsi: Turn drive serial into a qdev property scsi-disk.serial Markus Armbruster
2010-05-28 13:38 ` [Qemu-devel] [PATCH 14/14] scsi: Fix info qtree for scsi-disk.ver Markus Armbruster
2010-05-31  9:19 ` [Qemu-devel] Re: [PATCH 00/14] Block-related fixes and cleanups Gerd Hoffmann
2010-06-01  6:33   ` Jes Sorensen

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=4C051FD7.6050606@redhat.com \
    --to=kwolf@redhat.com \
    --cc=armbru@redhat.com \
    --cc=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 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.