- 27 Feb, 2016 8 commits
-
-
Leif Lindholm authored
Returned from the OpenProtocol operation, the grub_efi_block_io_media structure contains the io_align field, specifying the minimum alignment required for buffers used in any data transfers with the device. Make grub_efidisk_readwrite() allocate a temporary buffer, aligned to this boundary, if the buffer passed to it does not already meet the requirements. Also sanity check the io_align field in grub_efidisk_open() for power-of-two-ness and bail if invalid.
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
This is a no-op on x86 but necessarry on ARM and may be necessarry on MIPS.
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
kernel_type may be set to the type of failed kernel. This patching-up is easier than to reflow kernel loading routines.
-
Vladimir Serbinenko authored
This just pollutes serial console.
-
Andrei Borzenkov authored
-
Andrei Borzenkov authored
Map EFI_NO_MEDIA to GRUB_ERR_OUT_OF_RANGE that is ignored by diskfilter. This actually matches pretty close (we obviously attempt to read outside of media) and avoids adding more error codes. This affects only internally initiated scans. If read/write from removable is explicitly requested, we still return an error and text explanation is more clear for user than generic error. Reported and tested by Andreas Loew <Andreas.Loew@gmx.net>
-
- 26 Feb, 2016 2 commits
-
-
Vladimir Serbinenko authored
-
Josef Bacik authored
ipv6 routing in grub2 is broken, we cannot talk to anything outside our local network or anything that doesn't route in our global namespace. This patch fixes this by doing a couple of things 1) Read the router information off of the router advertisement. If we have a router lifetime we need to take the source address and create a route from it. 2) Changes the routing stuff slightly to allow you to specify a gateway _and_ an interface. Since the router advertisements come in on the link local address we need to associate it with the global address on the card. So when we are processing the router advertisement, either use the SLAAC interface we create and add the route to that interface, or loop through the global addresses we currently have on our interface and associate it with one of those addresses. We need to have a special case here for the default route so that it gets used, we do this by setting the masksize to 0 to mean it encompasses all networks. The routing code will automatically select the best route so if there is a closer match we will use that. With this patch I can now talk to ipv6 addresses outside of my local network. Thanks, Signed-off-by:
Josef Bacik <jbacik@fb.com>
-
- 24 Feb, 2016 2 commits
-
-
Vladimir Serbinenko authored
-
Andrei Borzenkov authored
grub_device_iterate() ignores device when iterator returns 1, not 0. Reported by Carlos E. R. <robin.listas@telefonica.net>
-
- 23 Feb, 2016 4 commits
-
-
Andrei Borzenkov authored
Documentation says, bootloader should set reserved field to zero. Reported by Wink Saville <wink@saville.com>
-
Vladimir Serbinenko authored
Add dprintf's on common error paths and remove some entries which are too noisy.
-
Vladimir Serbinenko authored
This prevents non-PCI machines from having USB.
-
Vladimir Serbinenko authored
This ensures that abort message is actually visible to the user.
-
- 22 Feb, 2016 2 commits
-
-
Eric Snowberg authored
Prevent buffer over-read in grub_machine_mmap_iterate. This was causing phys_base from being calculated properly. This then caused the wrong value to be placed in ramdisk_image within struct linux_hdrs. Which prevented the ramdisk from loading on boot. Newer SPARC systems contain more than 8 available memory entries. For example on a T5-8 with 2TB of memory, the memory layout could look like this: T5-8 Memory reg 00000000 30000000 0000003f b0000000 00000800 00000000 00000040 00000000 00001000 00000000 00000040 00000000 00001800 00000000 00000040 00000000 00002000 00000000 00000040 00000000 00002800 00000000 00000040 00000000 00003000 00000000 00000040 00000000 00003800 00000000 00000040 00000000 available 00003800 00000000 0000003f ffcae000 00003000 00000000 00000040 00000000 00002800 00000000 00000040 00000000 00002000 00000000 00000040 00000000 00001800 00000000 00000040 00000000 00001000 00000000 00000040 00000000 00000800 00000000 00000040 00000000 00000000 70000000 0000003f 70000000 00000000 6eef8000 00000000 00002000 00000000 30400000 00000000 3eaf6000 name memory Signed-off-by:
Eric Snowberg <eric.snowberg@oracle.com> -
Thomas Huth authored
When running grub in a VGA console of a KVM pseries guest on PowerPC, you can see the cursor sweeping over the whole line when entering a character in editor mode. This is visible because grub always refreshes the whole line when entering a character in editor mode, and drawing characters is quite a slow operation with the firmware used for the powerpc pseries guests (SLOF). To avoid this ugliness, the cursor should be disabled when refreshing the screen contents during update_screen(). Signed-off-by:
Thomas Huth <thuth@redhat.com>
-
- 17 Feb, 2016 2 commits
-
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
-
- 14 Feb, 2016 1 commit
-
-
Vladimir Serbinenko authored
Via C3 has problems with cache coherency when transitioning between the modes, so flush it around bios calls.
-
- 13 Feb, 2016 1 commit
-
-
Eric Snowberg authored
This prevents a problem where grub was being overwritten since grub_phys_start does not start at a zero offset within the memory map.
-
- 12 Feb, 2016 11 commits
-
-
Toomas Soome authored
-
Daniel Kiper authored
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
Now we're able to load kernels up to El Capitan.
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
lexer calls yylex_fatal on fatal internal errors. yylex_fatal itself is declared as noreturn and calls exit. Returning from noreturn function has unpredictable consequences.
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
-
- 11 Feb, 2016 2 commits
-
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
Without this info recent kernels crash as they allocate no heap.
-
- 03 Feb, 2016 1 commit
-
-
Andrei Borzenkov authored
all_video module does not have any code or data and exists solely for .moddeps section to pull in dependencies. This makes all symbols unneeded. While in current binutils (last released version as of this commit is 2.26) ``strip --strip-unneeded'' unintentionally adds section symbols for each existing section, this behavior was considered a bug and changed in commit 14f2c699ddca1e2f706342dffc59a6c7e23e844c to completely strip symbol table in this case. Older binutils (verified with 2.17) and some other toolchains (at least elftoolchain r3223M), both used in FreeBSD, remove symbol table in all_video as well. Relax run-time check and do not return error for modules without symbol table. Add additional checks to module verifier to make sure such modules a) have non-empty .moddeps section. Without either externally visible symbols or .moddeps modules are completely useless and should not be built. b) do not have any relocations. Closes: 46986 v2: add run-time check for empty symbol table if relocations are present as suggested by Vladimir.
-
- 22 Jan, 2016 4 commits
-
-
Vladimir Serbinenko authored
-
Vladimir Serbinenko authored
-
Robert Elliott authored
-
Michael Chang authored
-