1. 07 Sep, 2017 3 commits
    • Konrad Rzeszutek Wilk's avatar
      Use grub-file to figure out whether multiboot2 should be used for Xen.gz · b4d709b6
      Konrad Rzeszutek Wilk authored
      The multiboot2 is much more preferable than multiboot. Especiall
      if booting under EFI where multiboot does not have the functionality
      to pass ImageHandler.
      Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Reviewed-by: default avatarDaniel Kiper <daniel.kiper@oracle.com>
      b4d709b6
    • Konrad Rzeszutek Wilk's avatar
      Fix util/grub.d/20_linux_xen.in: Add xen_boot command support for aarch64 · a8e0f1ad
      Konrad Rzeszutek Wilk authored
      Commit d33045ce introduced
      the support for this, but it does not work under x86 (as it stops
      20_linux_xen from running).
      
      The 20_linux_xen is run under a shell and any exits from within it:
      
      (For example on x86):
      + /usr/bin/grub2-file --is-arm64-efi /boot/xen-4.9.0.gz
      [root@tst063 grub]# echo $?
      1
      
      will result in 20_linux_xen exiting without continuing
      and also causing grub2-mkconfig to stop processing.
      
      As in:
      
       [root@tst063 grub]# ./grub-mkconfig | tail
       Generating grub configuration file ...
       Found linux image: /boot/vmlinuz-4.13.0-0.rc5.git1.1.fc27.x86_64
       Found initrd image: /boot/initramfs-4.13.0-0.rc5.git1.1.fc27.x86_64.img
       Found linux image: /boot/vmlinuz-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2
       Found initrd image: /boot/initramfs-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2.img
       		echo	'Loading Linux 0-rescue-ec082ee24aea41b9b16aca52a6d10cc2 ...'
       		linux	/vmlinuz-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2 root=/dev/mapper/fedora_tst063-root ro single
       		echo	'Loading initial ramdisk ...'
       		initrd	/initramfs-0-rescue-ec082ee24aea41b9b16aca52a6d10cc2.img
       	}
       }
      
       ### END /usr/local/etc/grub.d/10_linux ###
      
       ### BEGIN /usr/local/etc/grub.d/20_linux_xen ###
      
       root@tst063 grub]#
      
      And no more.
      
      This patch wraps the invocation of grub-file to be a in subshell
      and to process the return value in a conditional. That fixes
      the issue.
      
      RH-BZ 1486002: grub2-mkconfig does not work if xen.gz is installed.
      
      CC: Fu Wei <fu.wei@linaro.org>
      Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Reviewed-by: default avatarDaniel Kiper <daniel.kiper@oracle.com>
      a8e0f1ad
    • Vladimir Serbinenko's avatar
      Fix compilation for x86_64-efi. · 78d2b81b
      Vladimir Serbinenko authored
      78d2b81b
  2. 05 Sep, 2017 1 commit
  3. 30 Aug, 2017 9 commits
  4. 14 Aug, 2017 10 commits
  5. 07 Aug, 2017 13 commits
    • Pete Batard's avatar
      io: add a GRUB_GZ prefix to gzio specific defines · 1deebd85
      Pete Batard authored
      * This is done to avoid a conflict with a PACKED define in the EDK2
      1deebd85
    • Pete Batard's avatar
      core: use GRUB_TERM_ definitions when handling term characters · bdd89d23
      Pete Batard authored
      * Also use hex value for GRUB_TERM_ESC as '\e' is not in the C standard and is not understood by some compilers
      bdd89d23
    • Leif Lindholm's avatar
      efi: change heap allocation type to GRUB_EFI_LOADER_CODE · f8263306
      Leif Lindholm authored
      With upcoming changes to EDK2, allocations of type EFI_LOADER_DATA may
      not return regions with execute ability. Since modules are loaded onto
      the heap, change the heap allocation type to GRUB_EFI_LOADER_CODE in
      order to permit execution on systems with this feature enabled.
      
      Closes: 50420
      Signed-off-by: default avatarLeif Lindholm <leif.lindholm@linaro.org>
      f8263306
    • Leif Lindholm's avatar
      arm64 linux loader: improve type portability · 91212e0a
      Leif Lindholm authored
      In preparation for turning this into a common loader for 32-bit and 64-bit
      platforms, ensure the code will compile cleanly for either.
      Signed-off-by: default avatarLeif Lindholm <leif.lindholm@linaro.org>
      91212e0a
    • Leif Lindholm's avatar
      efi: Add GRUB_PE32_MAGIC definition · c5841ba7
      Leif Lindholm authored
      Add a generic GRUB_PE32_MAGIC definition for the PE 'MZ' tag and delete
      the existing one in arm64/linux.h.
      
      Update arm64 Linux loader to use this new definition.
      Signed-off-by: default avatarLeif Lindholm <leif.lindholm@linaro.org>
      c5841ba7
    • Leif Lindholm's avatar
      efi: move fdt helper library · 8c9465fa
      Leif Lindholm authored
      There is nothing ARM64 (or even ARM) specific about the efi fdt helper
      library, which is used for locating or overriding a firmware-provided
      devicetree in a UEFI system - so move it to loader/efi for reuse.
      
      Move the fdtload.h include file to grub/efi and update path to
      efi/fdtload.h in source code referring to it.
      Signed-off-by: default avatarLeif Lindholm <leif.lindholm@linaro.org>
      8c9465fa
    • Vladimir Serbinenko's avatar
      Remove grub_efi_allocate_pages. · 4bc909bf
      Vladimir Serbinenko authored
      grub_efi_allocate_pages Essentially does 2 unrelated things:
      * Allocate at fixed address.
      * Allocate at any address.
      
      To switch between 2 different functions it uses address == 0 as magic
      value which is wrong as 0 is a perfectly valid fixed adress to allocate at.
      4bc909bf
    • Leif Lindholm's avatar
      efi: refactor grub_efi_allocate_pages · dd5fde2d
      Leif Lindholm authored
      Expose a new function, grub_efi_allocate_pages_real(), making it possible
      to specify allocation type and memory type as supported by the UEFI
      AllocatePages boot service.
      
      Make grub_efi_allocate_pages() a consumer of the new function,
      maintaining its old functionality.
      
      Also delete some left-around #if 1/#else blocks in the affected
      functions.
      Signed-off-by: default avatarLeif Lindholm <leif.lindholm@linaro.org>
      dd5fde2d
    • Vladimir Serbinenko's avatar
      Fail if xorriso failed. · e66dc5d7
      Vladimir Serbinenko authored
      If xorriso failed most likely we didn't generate a meaningful image.
      e66dc5d7
    • Vladimir Serbinenko's avatar
      mkrescue: Check xorriso presence before doing anything else. · 9e962fd3
      Vladimir Serbinenko authored
      mkrescue can't do anything useful without xorriso, so abort early if it's
      not available.
      9e962fd3
    • Pali Rohár's avatar
      * grub-core/fs/udf.c: Add support for UUID · 435fa75e
      Pali Rohár authored
      Use same algorithm as in libblkid from util-linux v2.30.
      
      1. Take first 16 bytes from UTF-8 encoded string of VolumeSetIdentifier
      2. If all bytes are hexadecimal digits, convert to lowercase and use as UUID
      3. If first 8 bytes are not all hexadecimal digits, convert those 8 bytes
         to their hexadecimal representation, resulting in 16 bytes for UUID
      4. Otherwise, compose UUID from two parts:
         1. part: converted first 8 bytes (which are hexadecimal digits) to lowercase
         2. part: encoded following 4 bytes to their hexadecimal representation (16 bytes)
      
      So UUID would always have 16 hexadecimal digits in lowercase variant.
      
      According to UDF specification, first 16 Unicode characters of
      VolumeSetIdentifier should be unique value and first 8 should be
      hexadecimal characters.
      
      In most cases all 16 characters are hexadecimal, but e.g. MS Windows
      format.exe set only first 8 as hexadecimal and remaining as fixed
      (non-unique) which violates specification.
      435fa75e
    • Pali Rohár's avatar
      udf: Fix reading label, lvd.ident is dstring · 76188809
      Pali Rohár authored
      UDF dstring has stored length in the last byte of buffer. Therefore last
      byte is not part of recorded characters. And empty string in dstring is
      encoded as empty buffer, including first byte (compression id).
      76188809
    • Pete Batard's avatar
      zfs: remove size_t typedef and use grub_size_t instead · fa427862
      Pete Batard authored
      * Prevents some toolchains from issuing a warning on size_t redef.
      fa427862
  6. 03 Aug, 2017 1 commit
  7. 09 Jul, 2017 3 commits