diff --git a/ChangeLog b/ChangeLog index 1f31dbb78..a24c9e451 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-10-26 Vladimir Serbinenko + + * util/grub-setup.c (setup): Refuse to do a cross-disk embeddingless + install rather than creating a broken install. + 2010-10-26 Vladimir Serbinenko * util/grub-setup.c (argp): Remove misleading example of installing to diff --git a/util/grub-setup.c b/util/grub-setup.c index c3d7dcf43..fa95f94aa 100644 --- a/util/grub-setup.c +++ b/util/grub-setup.c @@ -482,6 +482,12 @@ unable_to_embed: grub_util_error (_("embedding is not possible, but this is required when " "the root device is on a RAID array or LVM volume")); +#ifdef GRUB_MACHINE_PCBIOS + if (dest_dev->disk->id != root_dev->disk->id) + grub_util_error (_("embedding is not possible, but this is required for " + "cross-disk install")); +#endif + grub_util_warn (_("Embedding is not possible. GRUB can only be installed in this " "setup by using blocklists. However, blocklists are UNRELIABLE and " "their use is discouraged."));