qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] ide: Adds "model=s" option, allowing the user t


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH] ide: Adds "model=s" option, allowing the user to override the default disk model name "QEMU HARDDISK"
Date: Sun, 11 Mar 2012 12:56:07 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.2) Gecko/20120215 Thunderbird/10.0.2

Am 10.03.2012 20:56, schrieb Floris Bos:
> Some Linux distributions use the 
> /dev/disk/by-id/scsi-SATA_name-of-disk-model_serial addressing scheme
> when refering to partitions in /etc/fstab and elsewhere.
> This causes problems when starting a disk image taken from an existing 
> physical server under qemu,
> because when running under qemu name-of-disk-model is always "QEMU HARDDISK"
> This patch introduces a model=s option which in combination with the existing 
> serial=s option can be used to
> fake the disk the operating system was previously on, allowing the OS to boot 
> properly.
> 
> Cc: address@hidden
> Signed-off-by: Floris Bos <address@hidden>

Patch looks good to me, except for some formal issues
scripts/checkpatch.pl should warn about:

> diff --git a/blockdev.c b/blockdev.c
> index d78aa51..66fcc14 100644
> --- a/blockdev.c
> +++ b/blockdev.c

> @@ -534,6 +536,8 @@ DriveInfo *drive_init(QemuOpts *opts, int default_to_scsi)
>      dinfo->refcount = 1;
>      if (serial)
>          strncpy(dinfo->serial, serial, sizeof(dinfo->serial) - 1);
> +    if (model)
> +        strncpy(dinfo->model, model, sizeof(dinfo->model) - 1);

Please use braces for new ifs.

>      QTAILQ_INSERT_TAIL(&drives, dinfo, next);
>  
>      bdrv_set_on_error(dinfo->bdrv, on_read_error, on_write_error);

> diff --git a/hw/ide/core.c b/hw/ide/core.c
> index 4d568ac..2a38030 100644
> --- a/hw/ide/core.c
> +++ b/hw/ide/core.c

> @@ -1977,7 +1993,8 @@ void ide_init2_with_non_qdev_drives(IDEBus *bus, 
> DriveInfo *hd0,
>          if (dinfo) {
>              if (ide_init_drive(&bus->ifs[i], dinfo->bdrv,
>                                 dinfo->media_cd ? IDE_CD : IDE_HD, NULL,
> -                               *dinfo->serial ? dinfo->serial : NULL) < 0) {
> +                               *dinfo->serial ? dinfo->serial : NULL,
> +                                                        *dinfo->model ? 
> dinfo->model : NULL) < 0) {

Indentation uses tabs here; please use spaces.

>                  error_report("Can't set up IDE drive %s", dinfo->id);
>                  exit(1);
>              }

Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]