WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [PATCH 3/3] xen-blkfront: Fix minor offset calculation f

To: Stefan Bader <stefan.bader@xxxxxxxxxxxxx>
Subject: [Xen-devel] Re: [PATCH 3/3] xen-blkfront: Fix minor offset calculation for emulated IDE disks
From: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Date: Thu, 14 Jul 2011 18:34:37 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Stabellini <Stefano.Stabellini@xxxxxxxxxxxxx>, Stefano
Delivery-date: Thu, 14 Jul 2011 10:31:03 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1310650247-7366-1-git-send-email-stefan.bader@xxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <4E1EEEA1.9050102@xxxxxxxxxxxxx> <1310650247-7366-1-git-send-email-stefan.bader@xxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Alpine 2.00 (DEB 1167 2008-08-23)
On Thu, 14 Jul 2011, Stefan Bader wrote:
> Before this a block device defined as hda1 in the configuration files
> would be mapped to hda, as well as hda2.
> 

Don't you mean xvda and xvda2?

Besides hda1 doesn't mean anything for an HVM guest, it is not an
allowed disk configuration.
It is also a bug in the toolstack that propagates such nonsense to
xenstore so I would rather fix xend and/or libxenlight.


> Signed-off-by: Stefan Bader <stefan.bader@xxxxxxxxxxxxx>
> ---
>  drivers/block/xen-blkfront.c |   12 +++++++-----
>  1 files changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
> index 6e46edb..77489f1 100644
> --- a/drivers/block/xen-blkfront.c
> +++ b/drivers/block/xen-blkfront.c
> @@ -449,15 +449,17 @@ static int xen_translate_vdev(int vdevice, int *minor, 
> unsigned int *offset)
>       major = BLKIF_MAJOR(vdevice);
>       *minor = BLKIF_MINOR(vdevice);
>       switch (major) {
> +             /* For IDE the assumption seems to be 64 partitions (including
> +              * the whole device) per disk. */
>               case XEN_IDE0_MAJOR:
>                       *offset = (*minor / 64) + EMULATED_HD_DISK_NAME_OFFSET;
> -                     *minor = ((*minor / 64) * PARTS_PER_DISK) +
> -                             EMULATED_HD_DISK_MINOR_OFFSET;
> +                     *minor = *minor + EMULATED_HD_DISK_MINOR_OFFSET;
>                       break;
>               case XEN_IDE1_MAJOR:
> -                     *offset = (*minor / 64) + 2 + 
> EMULATED_HD_DISK_NAME_OFFSET;
> -                     *minor = (((*minor / 64) + 2) * PARTS_PER_DISK) +
> -                             EMULATED_HD_DISK_MINOR_OFFSET;
> +                     *offset = (*minor / 64) + 2 +
> +                               EMULATED_HD_DISK_NAME_OFFSET;
> +                     *minor = *minor + (2 * 64) +
> +                              EMULATED_HD_DISK_MINOR_OFFSET;
>                       break;
>               case XEN_SCSI_DISK0_MAJOR:
>                       *offset = (*minor / PARTS_PER_DISK) + 
> EMULATED_SD_DISK_NAME_OFFSET;
> -- 
> 1.7.4.1
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>