On Thu, Sep 23, 2010 at 6:54 AM, Colin Watson <cjwat...@ubuntu.com> wrote: > On Wed, Sep 22, 2010 at 03:16:24PM -0400, Patrick Doyle wrote: >> I don't know where to turn here. It seems that every thread I've >> found that describes this ends with "and now it works", but I can't >> seem to get there. >> >> I have installed 64-bit Ubuntu 10.04 on a Macbook5,2. I would like to >> boot this without the acpi=off parameter that is currently required. >> Once, in the past, I installed grub-efi in the /efi folder and was >> able to boot a 32-bit Ubuntu installation on this hardware. But I >> have since installed the 64-bit version and can no longer get it to >> boot. It gets as far as displaying the message about loading initrd >> and stops there. > > Unlike on BIOS systems, on EFI systems the bit length of the kernel must > match the bit length of the firmware (at least on Linux; Vladimir tells > me that the XNU kernel in Darwin does some horrible things to work > around this restriction). Thus there are two possibilities: > > 1) You have 32-bit EFI, and won't be able to boot a 64-bit kernel from > it. > > 2) You have 64-bit EFI, and your previous 32-bit kernel was actually > silently falling back to BIOS compatibility mode. > > In either case, I'd recommend trying an ordinary BIOS version of GRUB > instead (i.e. the grub-pc package); you'll need to create a BIOS Boot > Partition (http://grub.enbug.org/BIOS_Boot_Partition), install GRUB to > that partition rather than to the MBR, and tell rEFIt to boot from that > partition. > Hi Colin, Thank you for the reply. I am able to boot either the 32-bit or the 64-bit kernel via grub when it is installed in /dev/sda3 (my Linux partition). But I have to set acpi=off (or maxcpus=1) in order to boot the kernel. (This is a known issue, see https://bugzilla.kernel.org/show_bug.cgi?id=13170 and https://bugs.launchpad.net/acpi/+bug/341230). However as I've been reading around, it seems that some folks have been able to boot with full capabilities (i.e. ACPI and both cores) when booting via EFI. I thought I had been able to do that once last week, but in the process of trying to get both Ubuntu and XP (and MAC OS) to all boot peacefully together, I reinstalled various different times and didn't keep as careful notes as I wished I had.
Anyway, I'm at the point now where (I believe) I've tried compiling a 32-bit version of grub (1.98 straight from the tarball), installing it in /efi/grub on my Mac partition, and seeing an error that 32-bit mode wasn't supported. I've compiled a 64-bit version of grub and can bring up boot menus with that, but things hang when I attempt to launch the kernel. I've tried both 32 and 64 bit kernels (full installations, actually) as well as ext2 and ext4 root file systems. Nothing I try seems to be able to reproduce what I thought I saw work once before. So I'm looking for tips for things to try and ways to attempt to debug this issue. I suspect that folks who got this working in the past were using older versions/releases of MacOS, grub, or the kernel, and I wonder if I'm (re)breaking new ground just by trying this with Snow Leopard, grub 1.98, and Ubuntu 10.04. I've tried compiling grub trunk with platform=efi, fetched with bzr, but the compile failed. (I don't have my computer in front of me right now, so I can't tell you exactly what failed -- I'll double check that, unless that was to be expected). The one other thing I can think of is to apt-get all of the updates for my 32-bit install. (In order to save time, I've been trying different configurations just with the versions of code on the install CD). I'm certain that when I thought I saw this work once before, I would have seen it do so after I'd installed updates. Can you tell me if 1.98 supports ext4? I've seen some (older) web pages that claim that it doesn't. It would be nice to eliminate one variable from consideration. This might not be the correct forum to ask this, but does anybody know what installing the "grub-efi-amd64" package really does for Ubuntu? Does it replace the grub-pc package that was presumably installed off the CD? Should I be using that instead of compiling my own version of grub-1.98 (in a VMware box on my Mac) and placing my own version in /efi/grub? Should I expect to install grub-efi-amd64 in /dev/sda3 and be able to boot directly from that? Thanks again for any tips. --wpd _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel