* grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Use comma as

separator and pass bootpath/devid even if only one of them is available.
	Reported by: Seth Goldberg.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2011-01-10 23:56:11 +01:00
parent ae67942e78
commit b3ff6ff056
2 changed files with 14 additions and 15 deletions

View file

@ -1,3 +1,9 @@
2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Use comma as
separator and pass bootpath/devid even if only one of them is available.
Reported by: Seth Goldberg.
2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
Don't use post-4G memory on EFI even if 64-bit since some non-compliant

View file

@ -364,21 +364,14 @@ grub_cmd_zfs_bootfs (grub_command_t cmd __attribute__ ((unused)), int argc,
grub_free (nv);
grub_free (nvlist);
if (bootpath && devid)
{
bootfs = grub_xasprintf ("zfs-bootfs=%s/%llu bootpath=%s diskdevid=%s",
poolname, (unsigned long long) mdnobj,
bootpath, devid);
if (!bootfs)
return grub_errno;
}
else
{
bootfs = grub_xasprintf ("zfs-bootfs=%s/%llu",
poolname, (unsigned long long) mdnobj);
if (!bootfs)
return grub_errno;
}
bootfs = grub_xasprintf ("zfs-bootfs=%s/%llu%s%s%s%s",
poolname, (unsigned long long) mdnobj,
bootpath ? ",bootpath=" : "",
bootpath ? : "",
devid ? ",diskdevid=" : "",
devid ? : "");
if (!bootfs)
return grub_errno;
if (argc >= 2)
grub_env_set (args[1], bootfs);
else