В Sun, 24 May 2015 20:33:57 +0200 Paul Menzel <[email protected]> пишет:
> Dear Andrei, > > > Am Sonntag, den 24.05.2015, 21:23 +0300 schrieb Andrei Borzenkov: > > В Sun, 24 May 2015 14:30:28 +0200 Paul Menzel пишет: > > > > Am Sonntag, den 24.05.2015, 13:15 +0300 schrieb Andrei Borzenkov: > > > > В Sun, 24 May 2015 09:03:40 +0200 Paul Menzel пишет: > > > > > > > > > further trying to bisect the AHCI regression on, that the GRUB payload > > > > > does not detect the AHCI drive [1], I tried to build GRUB from commits > > > > > changing `grub-core/disk/ahci.c`, I built commit dc2a6c8b (Improve > > > > > AHCI > > > > > detection and command issuing.), but it it fails to boot with > > > > > > > > > > Unaligned pointer … > > > > > Aborted. > > > > > > > > > > The same happens, when I just checkout that revision for `ahci.c` and > > > > > leave the rest as is. > > > > > > > > > > $ git checkout dc2a6c8b0e3dfe3bce78dbe0febcd9d4d9038411 -- > > > > > grub-core/disk/ahci.c > > > > > $ ./autogen.sh > > > > > $ ./configure --with-plattform=coreboot > > > > > $ make -j > > > > > $ make default_payload.elf > > > > > > > > > > I’ll attach that version of `ahci.c` to this message. Do you see what > > > > > could be causing that unaligned pointer? > > > > > > > > > > > > > It is not clear - do you mean that this specific revision has this > > > > problem and others not? Or that this problem happens since this > > > > revision? > > > > > > It’s happening whenever `ahci.c` from commit dc2a6c8b is used (with > > > commit dc2a6c8b and master). > > > > It does not really answer my question - do you get this unaligned access > > with current master? > > Sorry for the misunderstand. I do *not* get this unaligned access with > current master. `ahci.c` was rewritten after commit dc2a6c8b. > In this case my primary suspects would be several PCI accesses that had been removed in subsequent commits: +#ifdef GRUB_MACHINE_QEMU + addr = grub_pci_make_address (dev, GRUB_PCI_REG_COMMAND); + grub_pci_write_word (addr, 0x107); +#endif + addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG5); + +#ifdef GRUB_MACHINE_QEMU + grub_pci_write (addr, 0xf4000000); +#endif Those added lines are not present anymore.
pgphZcy8bpPxB.pgp
Description: OpenPGP digital signature
_______________________________________________ Grub-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/grub-devel
