Hello, Eric!

>       Just wondering if you were able to find a way to identify
> NetBSD kernels.  Need any help with anything?

No, I haven't found any way to identify NetBSD kernels.
Currently the situation is the following:

GRUB-0.5.92 and the forthcoming GRUB-0.5.93 assume all a.out files to be
NetBSD kernels unless identified as anything else. Support for NetBSD has
a serious bug that prevents relatively large kernels (including GENERIC
NetBSD-1.4.1) from booting. ELF NetBSD kernels are not supported.

The current CVS code has the bug with large kernels fixed. ELF format is
still not supported.

There is a patch that assumes all ELF files to be NetBSD kernels. GRUB
with that patch can load NetBSD-1.4K
However, the patch has not been applied to the CVS sources because the
maintainer of GRUB OKUJI Yoshinori <[EMAIL PROTECTED]> doesn't
like such assumptions (though they are made for a.out kernels)

I don't know what to do. I see several options (in the decending order of
my preference)

1) Make NetBSD kernels multiboot-compliant. IMO, it would be good both
for NetBSD and for the Multiboot standard, but I'm affraid I don't have
enough time to do is and persuade people to apply my patch.

2) Insist on applying my patch. As soon as yet another OS switches to ELF,
the problem will arise again, but maybe either NetBSD kernels or that 
other OS will provide easy and reliable means to identify it.

3) Scan the kernel for the string "NetBSD" or for some pieces of code
typical for NetBSD kernels.

4) Introduce a command "netbsdkernel" in GRUB so that anything would be
assumes to be a NetBSD kernel.

5) Have an utility to "brand" NetBSD kernels. GRUB will not load a kernel
without such branding.

Pavel Roskin

Reply via email to