grub-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] grub + FreeBSD's loader(8) + ZFS root


From: Vladimir 'φ-coder/phcoder' Serbinenko
Subject: Re: [PATCH] grub + FreeBSD's loader(8) + ZFS root
Date: Mon, 27 Feb 2012 01:58:06 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:8.0) Gecko/20120216 Icedove/8.0

On 07.04.2010 22:21, Navdeep Parhar wrote:
2010/4/7 Vladimir 'φ-coder/phcoder' Serbinenko<address@hidden>:
Navdeep Parhar wrote:
Hello grub-devel,

Right now it's not possible to boot using FreeBSD's loader(8) from a ZFS
root filesystem.  Grub doesn't indicate to the loader that there is a
ZFS root involved and consequently the loader fails to find the kernel.
The attached patch fixes this.  It does not affect those that boot the
kernel directly.  This is only for users that want to boot using
FreeBSD's loader.

Why would you want to?  IMHO it is much simpler to boot indirectly using
the loader because in that case grub does not have to deal with
device.hints, kernel modules, kFreeBSD.xxx style variables,
/boot/zfs/zpool.cache, etc.  As a FreeBSD user, I'm used to putting this
information in the "normal" config files (/boot/loader.conf, device.hints,
etc.) and not in a grub.cfg file. Grub only needs to know where the loader
is, nothing else:

menuentry "FreeBSD 8" {
        search -s -l fbsd8
        kfreebsd -D /@/boot/zfsloader
}
(fbsd8 is the name of the ZFS root pool)


Eternal chainloading isn't the way to go. It limits grub usefullness and
scope and is to be used only when no alternative exists. In this case
the right direction would be to make a small C module to parse boot(8)
config or a shell script for 30_osprober.in to do the same job
Sure, chainloading doesn't have to be the preferred way of booting an
OS, but it shouldn't fail without a good reason either.  Right now
FreeBSD can be chainloaded from a UFS root but not from ZFS root.
That's all that I'm trying to fix here.  This patch doesn't imply that
chainloading is *the* way to load FreeBSD - just that it is a usable
alternate to direct loading, even from a ZFS root.
I've added this patch but only because since we support aout /boot/loader it makes little sense not to support zfsloader but it's not a recommended way to boot in either case.
Regards,
Navdeep


_______________________________________________
Grub-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/grub-devel



--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko




reply via email to

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