grub:phcoder/gnuroot

Last commit made on 2017-01-27
Get this branch:
git clone -b phcoder/gnuroot https://git.launchpad.net/grub

Branch merges

Branch information

Name:
phcoder/gnuroot
Repository:
lp:grub

Recent commits

3ffd821... by phcoder

wip fs-tester

79fc008... by phcoder

Don't use -mlong-calls on arm.

We don't really need it and it's flaky and creates
bogus symbols with clang.

bf9c561... by phcoder

configure: Disable movw/movt with clang.

Those relocations are not compatible with PE and also
not compatible with custom uboot relocator.
Disable them.

afa9dda... by phcoder

grub-fs-tester: Delete directory once we're done.

cde63a3... by phcoder

grub-fs-tester: Accomodate for slower systems.

fstime can be more different with xz squashfs.
Allow difference up to 3 seconds.
This code is ugly now but rewriting it now is not on the
table.

bf0e59c... by phcoder

grub-fs-tester: Accomodate for testing in proot containers.

proot creates hidden files with .proot prefix and name
derived from real file name. So decrease file name length
and path depth. For some reason depth 85 also results in
undeleteable directory, so use 84 instead of 85.

a2932fb... by Andrei Borzenkov

osdep/linux: handle autofs entries in /proc/self/mountinfo

These entries have placeholder for device name and so are useless for our
purpose. grub failed with something like

grub-install: error: failed to get canonical path of `systemd-1'.

When we see autofs entry, record it (to keep parent-child relationship) but
continue to look for real mount. If it is found, we process it as usual. If
only autofs entry exists, attempt to trigger mount by opening mount point
and retry. Mount point itself is then kept open to avoid timeout.

Recent systemd is by default using automount for /boot/efi so this should
become more popular problem on EFI systems.

Closes: 49942

972765f... by Andrei Borzenkov

linux: fix "vga=XX deprecated" warning for text mode

Arguments were in reverse order which resulted in

text is deprecated. Use set gfxpayload=vga=0 before linux command instead.

07662af... by Andrei Borzenkov

configure: fix check for sys/sysmacros.h under glibc 2.25+

glibc 2.25 still includes sys/sysmacros.h in sys/types.h but also emits
deprecation warning. So test for sys/types.h succeeds in configure but later
compilation fails because we use -Werror by default.

While this is fixed in current autoconf GIT, we really cannot force everyone
to use bleeding edge (that is not even released right now). So run test under
-Werror as well to force proper detection.

This should have no impact on autoconf 2.70+ as AC_HEADER_MAJOR in this version
simply checks for header existence.

Reported and tested by Khem Raj <email address hidden>

562c406... by Michael Chang <email address hidden>

Fix fwpath in efi netboot

The path returned by grub_efi_net_config has already been stripped for the
directory part extracted from cached bootp packet. We should just return the
result to avoild it be stripped again.

It fixed the problem that grub.efi as NBP image always looking for grub.cfg and
platform directory in upper folder rather than current one it gets loaded while
$prefix is empty. The behavior is inconsistent with other architecture and how
we would expect empty $prefix going to be in general.

The only exception to the general rule of empty $prefix is that when loaded
from platform directory itself, the platform part is stripped thus upper folder
is used for looking up files. It meets the case for how grub-mknetdir lay out
the files under tftp root directory, but also hide away this issue to be
identified as it appears to be just works.

Also fix possible memory leak by moving grub_efi_get_filename() call after
grub_efi_net_config().