On Tue, 21 Sep 2010, Jun Zhu (Intern) wrote:
> disk = [ 'phy:sdb1,xvdb,w',] or disk = ['phy:va/*'] can be parsed by xm, but
> cannot be used by xl. This patch makes libxl uses config file compatible with
> xm's config file.
>
> Signed-off-by:Jun Zhu <Jun.Zhu@xxxxxxxxxx>
>
> diff -r f8f4221267a2 tools/libxl/xl_cmdimpl.c
> --- a/tools/libxl/xl_cmdimpl.c Tue Sep 21 17:48:36 2010 +0100
> +++ b/tools/libxl/xl_cmdimpl.c Tue Sep 21 17:53:03 2010 +0100
> @@ -781,7 +781,10 @@ static void parse_config_data(const char
> p = strtok(NULL, ",");
> while (*p == ' ')
> p++;
> - disk->physpath= strdup(p);
> + if (disk->phystype == PHYSTYPE_PHY && strncmp(p, "/dev",
> strlen("/dev")))
> + asprintf(&disk->physpath, "/dev/%s", p);
> + else
> + disk->physpath= strdup(p);
> p = strtok(NULL, ",");
> while (*p == ' ')
> p++;
strncmp is not enough here: you need to check for the existence of the
device and if it is not present than you can try prepending "/dev" and
see if the new device is present.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|