From: "Vladimir 'φ-coder/phcoder' Serbinenko" <phcoder@gmail.com>
To: The development of GNU GRUB <grub-devel@gnu.org>
Cc: Navdeep Parhar <nparhar@gmail.com>
Subject: Re: [PATCH] grub + FreeBSD's loader(8) + ZFS root
Date: Mon, 27 Feb 2012 01:58:06 +0100 [thread overview]
Message-ID: <4F4AD51E.3070104@gmail.com> (raw)
In-Reply-To: <g2hd04e16b71004071321t2e249d7czeab9400ef428e337@mail.gmail.com>
On 07.04.2010 22:21, Navdeep Parhar wrote:
> 2010/4/7 Vladimir 'φ-coder/phcoder' Serbinenko<phcoder@gmail.com>:
>> 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
> Grub-devel@gnu.org
> http://lists.gnu.org/mailman/listinfo/grub-devel
>
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
prev parent reply other threads:[~2012-02-27 1:17 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-22 23:40 [PATCH] grub + FreeBSD's loader(8) + ZFS root Navdeep Parhar
2010-02-23 3:06 ` Warning messages Seth Goldberg
2010-02-23 8:05 ` Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-07 10:28 ` [PATCH] grub + FreeBSD's loader(8) + ZFS root Vladimir 'φ-coder/phcoder' Serbinenko
2010-04-07 20:21 ` Navdeep Parhar
2012-02-27 0:58 ` Vladimir 'φ-coder/phcoder' Serbinenko [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F4AD51E.3070104@gmail.com \
--to=phcoder@gmail.com \
--cc=grub-devel@gnu.org \
--cc=nparhar@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.