++2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
++2011-05-18 Colin Watson <cjwatson@ubuntu.com>
++
++ Improve devmapper support
++
++ * grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Removed.
++ (grub_util_is_lvm): New function.
++ (grub_util_get_dev_abstraction): Assume dmraid if not lvm rather
++ than lvm if not dmraid.
++ Handle mapped md nodes.
++ * grub-core/kern/emu/hostdisk.c (device_is_mapped): Rename to ...
++ (grub_util_device_is_mapped): ... this. Make always available. All users
++ updated.
++ (grub_util_get_dm_node_linear_info) [HAVE_DEVICE_MAPPER]: New function.
++ (convert_system_partition_to_system_disk): Handle lvm, mpath and
++ dmraid nodes.
++ * include/grub/emu/misc.h (grub_util_device_is_mapped): New proto.
++
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify grub-mkrescue (except powerpc) and grrub-mknetdir across platforms
+
+ * grub-core/Makefile.am (platform_DATA): Add modinfo.sh.
+ * grub-core/modinfo.sh.in: New file.
+ * grub-core/Makefile.core.def (modinfo.sh): New script.
+ * util/grub-mknetdir.in: Use modinfo.sh.
+ * util/grub-mkrescue.in: Likewise.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
+ Fix potential usage of Elf32 instead of Elf64 when compiling on
+ 32-bit architecture. Add endianness macros while on it.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use mipsel- rather than mips- in directories involving mipsel ports to
+ allow both endiannesses coexist.
+
+ * configure.ac: proparate target_cpu=mipsel rather than resetting to
+ mips. All conditions adjusted.
+ * tests/util/grub-shell-tester.in: Remove gratuitious target_cpu
+ variable.
+ * util/grub-install.in: Adjust conditions to take renaming into account.
+ * util/grub-mkimage.c (image_targets): Likewise. New target
+ mips-qemu_mips-elf for bigendian mips.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid unnecessary copying on MIPS.
+
+ * grub-core/boot/decompressor/none.c (grub_decompress_core): Exit
+ early if src == dest.
+ * util/grub-mkimage.c (generate_image): Arange for src == dest if
+ compression is none.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Reduce memory footprint on SGI by putting modules before the kernel
+ as opposed to after.
+
+ * grub-core/Makefile.core.def (kernel): Increase linking address.
+ (none_decompress): Likewise.
+ (xz_decompress): Likewise.
+ * grub-core/boot/mips/startup_raw.S: Use prewritten uncompression
+ address.
+ * grub-core/kern/mips/arc/init.c (grub_machine_init): Handle memory
+ layout change.
+ (grub_arch_modules_addr): New function.
+ * grub-core/kern/mips/init.c (grub_arch_modules_addr): Moved from here...
+ * grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): .. here
+ * grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr): ... and
+ here.
+ * grub-core/kern/mips/startup.S (total_size): Rename to ...
+ (grub_total_modules_size): ... this. Make global.
+ [GRUB_MACHINE_ARC]: Don't attempt to move modules out of the bss.
+ * include/grub/offsets.h (GRUB_KERNEL_MIPS_LOONGSON_UNCOMPRESSED_ADDR):
+ New definition.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_ADDR): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_ADDR): Likewise.
+ (GRUB_KERNEL_MACHINE_UNCOMPRESSED_ADDR): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): Increased.
+ * util/grub-mkimage.c (image_target_desc): New flag
+ PLATFORM_FLAGS_MODULES_BEFORE_KERNEL.
+ (image_targets): Set PLATFORM_FLAGS_MODULES_BEFORE_KERNEL on mips-arc.
+ (generate_image): Handle images with modules before kernel.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Prevent potential loss of memory map by overwrite on qemu-mips.
+
+ * grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]:
+ Save ram size in $s4.
+ * grub-core/kern/mips/qemu_mips/init.c (RAMSIZE): Removed.
+ All users changed to grub_arch_memsize.
+ * grub-core/kern/mips/startup.S (grub_arch_machine): Restrict to
+ Loongson.
+ [GRUB_MACHINE_MIPS_QEMU_MIPS]: Save grub_arch_memsize.
+ * grub-core/loader/mips/linux.c (grub_linux_boot): Pass memory size.
+ * include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): New
+ external variable.
+
+2011-05-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Remove grub-dumpbios.
+
+2011-05-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/20_linux_xen.in: Honour GRUB_CMDLINE_LINUX_XEN_REPLACE
+ and GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT, which replace
+ GRUB_CMDLINE_LINUX and GRUB_CMDLINE_LINUX_DEFAULT (complementing the
+ existing options which append).
+ * docs/grub.texi (Simple configuration): Document new options.
+ Reported by: Ian Jackson. Fixes Debian bug #617538.
+
+2011-05-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-fstest.c (cmd_cat): New function.
+ (fstest): Handle CMD_CAT.
+ (options): Add cat.
+ (argp_parser): Handle cat.
+
+2011-05-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-bin2h): Don't install.
+ * docs/man/grub-bin2h.h2m: Remove.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right
+ place.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Reenable qemu-mips port.
+
+ * configure.ac: Handle --target=qemu-mips and --target=qemu_mips.
+ Fix small arc bug while on it.
+ * gentpl.py: Handle qemu_mips.
+ * grub-core/Makefile.am: Likewise.
+ * grub-core/Makefile.core.def: Likewise.
+ * grub-core/disk/ata.c [GRUB_MACHINE_MIPS_QEMU_MIPS]: Remove
+ inappropriate includes.
+ (grub_ata_pciinit) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Removed.
+ (grub_ata_initialize): [GRUB_MACHINE_MIPS_QEMU_MIPS]: Rewritten.
+ * grub-core/kern/main.c (grub_modules_get_end)
+ [GRUB_MACHINE_MIPS_QEMU_MIPS]: Enable.
+ * grub-core/kern/mips/qemu-mips: Moved to ..
+ * grub-core/kern/mips/qemu_mips: ... this.
+ * grub-core/kern/mips/qemu_mips/init.c (grub_get_rtc): Removed.
+ (grub_machine_init): Call terminfo_init and serial_init.
+ * grub-core/kern/mips/startup.S: Change MIPS_LOONGSON to MACHINE.
+ * grub-core/loader/mips/linux.c (params) [GRUB_MACHINE_MIPS_QEMU_MIPS]:
+ New variable.
+ (grub_linux_boot) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle the qemu-mips
+ parameter passing.
+ (grub_linux_unload) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Free params.
+ (grub_cmd_linux) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Handle params.
+ (grub_cmd_initrd) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise.
+ * include/grub/mips/qemu_mips/cmos.h: New file.
+ * include/grub/mips/qemu-mips/kernel.h: Don't include cpu/kernel.h.
+ * include/grub/mips/qemu-mips/memory.h (grub_machine_mmap_iterate):
+ Removed.
+ * include/grub/mips/qemu-mips/serial.h (GRUB_MACHINE_SERIAL_PORTS):
+ Use correct mips-style address.
+ * include/grub/mips/qemu-mips/time.h: Include cpu/time.h.
+ (GRUB_TICKS_PER_SECOND): Removed.
+ (grub_get_rtc): Likewise.
+ (grub_cpu_idle): Likewise.
+ * include/grub/offsets.h (GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ADDR):
+ New definition.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_LINK_ALIGN): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_COMPRESSED_SIZE): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_UNCOMPRESSED_SIZE): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_TOTAL_MODULE_SIZE): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_MOD_ALIGN): Likewise.
+ * util/grub-mkimage.c (image_targets): Add mipsel-qemu_mips-elf.
+
+2011-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ SGI ARCS port.
+
+ * Makefile.util.def (libgrubmods.a): Add dvh.c.
+ * conf/Makefile.common (CCASFLAGS_PLATFORM): Add -mips3 on all mips
+ platforms.
+ * configure.ac: New target mips-arc.
+ * gentpl.py: Likewise.
+ * grub-core/Makefile.am: Likewise.
+ * grub-core/Makefile.core.def: Likewise.
+ (xz_decompress): Remove -D GRUB_MACHINE_LINK_ADDR.
+ (none_decompress): Likewise.
+ (lsdev): New module.
+ (datetime): Use lib/arc/datetime.c on ARC.
+ (part_dvh): New module.
+ * grub-core/commands/arc/lsdev.c: New file.
+ * grub-core/disk/arc/arcdisk.c: Likewise.
+ * grub-core/kern/mips/arc/init.c: Likewise.
+ * grub-core/kern/mips/cache_flush.S: Don't flush non 4-byte
+ aligned addresses.
+ * grub-core/kern/mips/dl.c (grub_arch_dl_check_header): Fix bigendian
+ support.
+ (grub_arch_dl_relocate_symbols): Likewise.
+ * grub-core/kern/mips/loongson/init.c (grub_get_rtc): Moved from here...
+ * grub-core/kern/mips/init.c (grub_get_rtc): ... here.
+ * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Have on all
+ platforms.
+ * grub-core/lib/arc/datetime.c: New file.
+ * grub-core/loader/mips/linux.c: Always include time.h. Don't include
+ pci.h on non-loongson.
+ (envp_off) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove.
+ (grub_linux_boot): Set unused registers to 0.
+ (grub_cmd_linux) [!GRUB_MACHINE_MIPS_LOONGSON]: Remove envp.
+ * grub-core/mmap/mips/loongson/uppermem.c: Moved from here ...
+ * grub-core/mmap/mips/uppermem.c: ...here.
+ * grub-core/partmap/dvh.c: New file.
+ * grub-core/term/arc/console.c: Likewise.
+ * grub-core/term/terminfo.c (ANSI_C0_STR): New const.
+ (grub_terminfo_set_current): Add terminal "arc".
+ (grub_terminfo_readkey): Support ARC sequences.
+ * include/grub/arc/arc.h: New file.
+ * include/grub/arc/console.h: Likewise.
+ * include/grub/disk.h (grub_disk_dev_id): Add
+ GRUB_DISK_DEVICE_ARCDISK_ID.
+ * include/grub/mips/arc/kernel.h: New file.
+ * include/grub/mips/arc/memory.h: Likewise.
+ * include/grub/mips/arc/time.h: Likewise.
+ * include/grub/mips/loongson/kernel.h (grub_halt): Moved from here ...
+ * include/grub/mips/kernel.h (grub_halt): ... here.
+ * include/grub/mips/loongson.h (GRUB_CPU_REGISTER_WRAP): Moved from
+ here...
+ * include/grub/mips/mips.h (GRUB_CPU_REGISTER_WRAP): ... here.
+ (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): Moved from here ...
+ * include/grub/mips/mips.h (GRUB_CPU_LOONGSON_COP0_TIMER_COUNT): .. here
+ * include/grub/mips/loongson/kernel.h (grub_reboot): Removed redundant
+ proto.
+ * include/grub/mips/loongson/memory.h (GRUB_ARCH_LOWMEMVSTART): Moved
+ from here ...
+ * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMVSTART): ... here.
+ (GRUB_ARCH_LOWMEMPSTART): Moved from here ...
+ * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMPSTART): ... here.
+ (GRUB_ARCH_LOWMEMMAXSIZE): Moved from here ...
+ * include/grub/mips/memory.h (GRUB_ARCH_LOWMEMMAXSIZE): ... here.
+ (GRUB_ARCH_HIGHMEMPSTART): Moved from here ...
+ * include/grub/mips/memory.h (GRUB_ARCH_HIGHMEMPSTART): ... here.
+ (grub_phys_addr_t): Moved from here ...
+ * include/grub/mips/memory.h (grub_phys_addr_t): ... here.
+ (grub_vtop): Moved from here ...
+ * include/grub/mips/memory.h (grub_vtop): ... here.
+ (grub_map_memory): Moved from here ...
+ * include/grub/mips/memory.h (grub_map_memory): ... here.
+ (grub_unmap_memory): Moved from here ...
+ * include/grub/mips/memory.h (grub_unmap_memory): ... here.
+ (grub_machine_mmap_iterate): Moved from here ...
+ * include/grub/mips/memory.h (grub_machine_mmap_iterate): ... here.
+ (grub_mmap_get_lower): Moved from here ...
+ * include/grub/mips/memory.h (grub_mmap_get_lower): ... here.
+ (grub_mmap_get_upper): Moved from here ...
+ * include/grub/mips/memory.h (grub_mmap_get_upper): ... here.
+ * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from
+ here ...
+ * include/grub/mips/time.h (grub_arch_cpuclock): ... here.
+ * include/grub/mips/loongson/time.h (grub_get_rtc): Moved from
+ here ...
+ * include/grub/mips/time.h (grub_get_rtc): ... here.
+ * include/grub/mips/loongson/time.h (grub_arch_cpuclock): Moved from
+ here ...
+ * include/grub/mips/time.h (grub_arch_cpuclock): ... here.
+ * include/grub/mips/loongson/time.h (grub_cpu_idle): Moved from
+ here ...
+ * include/grub/mips/time.h (grub_cpu_idle): ... here.
+ * include/grub/offsets.h (GRUB_KERNEL_MIPS_ARC_LINK_ADDR): New
+ definition.
+ (GRUB_KERNEL_MIPS_ARC_LINK_ALIGN): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_COMPRESSED_SIZE): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_UNCOMPRESSED_SIZE): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_TOTAL_MODULE_SIZE): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_MOD_ALIGN): Likewise.
+ (GRUB_MACHINE_LINK_ADDR): Likewise.
+ * include/grub/terminfo.h (GRUB_TERMINFO_READKEY_MAX_LEN): Increased
+ to 6.
+ * util/grub-install.in: Run dvhtool on ARC.
+ * util/grub-mkimage.c (image_targets): Add mips-arc.
+ (generate_image): Handle ECOFF output for mips-arc.
+
+2011-05-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/pci.c (grub_memalign_dma32): Always allocate in 64-byte
+ blocks.
+
+2011-05-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usbhub.c (attach_root_port): Wait 10ms
+ after enabling port.
+
+2011-05-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Skip incorrect USB devices.
+
+ * grub-core/bus/usb/usb.c (grub_usb_device_initialize): Fail if
+ configcnt == 0.
+ * include/grub/usb.h (grub_usb_err_t): New enum value
+ GRUB_USB_ERR_BADDEVICE.
+
+2011-05-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fuloong video init support.
+
+ * include/grub/vga.h (grub_vga_write_arx): inb monochrome address as
+ well.
+ (grub_vga_read_arx): New function.
+ * grub-core/video/sis315pro.c (GRUB_SIS315PRO_MMIO_SPACE): New
+ definition.
+ (framebuffer): New members io, mmioptr and mmiobase.
+ (read_sis_cmd): New function.
+ (write_sis_cmd): Likewise.
+ (grub_video_sis315pro_setup): Do the initialisation. Use 640x480
+ rather than 640x400.
+ * grub-core/video/sis315_init.c: New file.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/cs5536.c: Don't include grub/machine/kernel.h on
+ non-loongson.
+ * grub-core/kern/mips/dl.c (grub_arch_dl_init_linker): Fix argument
+ to grub_dl_register_symbol.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix compilation errors.
+
+ * grub-core/term/ns8250.c (serial_get_divisor): Declare 'port' as
+ potentially unused.
+ * grub-core/loader/i386/linux.c (grub_linux_setup_video):
+ Handle GRUB_VIDEO_DRIVER_SIS315PRO.
+ * grub-core/bus/cs5536.c (grub_cs5536_init_geode): Restrict DIVIL init
+ to loongson machines.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Several FS mtime support.
+
+ * grub-core/fs/affs.c (grub_affs_time): New struct.
+ (grub_affs_file): New field mtime.
+ (grub_fshelp_node): Changed 'block' and 'parent' to more appropriate
+ type. Removed 'size'. New field 'di'. All users updated.
+ (grub_affs_mount): Simplify checsum checking.
+ (grub_affs_iterate_dir): New helper grub_affs_create_node.
+ (grub_affs_dir): Handle mtime.
+ * grub-core/fs/cpio.c (grub_cpio_find_file): Handle mtime.
+ (grub_cpio_dir): Likewise.
+ * grub-core/fs/hfs.c (grub_hfs_dirrec): New fields 'ctime' and 'mtime'.
+ (grub_hfs_filerec): New field mtime.
+ (grub_hfs_dir): Handle mtime.
+ (grub_hfs_mtime): New function.
+ (grub_hfs_fs): Register grub_hfs_mtime.
+ * grub-core/fs/iso9660.c (grub_iso9660_date2): New struct.
+ (grub_iso9660_dir): New field mtime.
+ (grub_fshelp_node): New field dirent.
+ (iso9660_to_unixtime): New function.
+ (iso9660_to_unixtime2): Likewise.
+ (grub_iso9660_read_symlink): Use node->dirent.
+ (grub_iso9660_iterate_dir): Likewise.
+ (grub_iso9660_dir): Set mtime.
+ (grub_iso9660_mtime): New function.
+ (grub_iso9660_fs): Register grub_iso9660_mtime.
+ * grub-core/fs/jfs.c (grub_jfs_time): New struct.
+ (grub_jfs_inode): New fields atime, ctime and mtime.
+ (grub_jfs_dir): Set mtime.
+ * grub-core/fs/minix.c (grub_minix_dir): Likewise.
+ * grub-core/fs/ntfs.c (list_file): Set mtime.
+ (grub_ntfs_dir): Likewise.
+ * grub-core/fs/reiserfs.c (grub_fshelp_node): New field 'mtime'.
+ (grub_reiserfs_iterate_dir): Set mtime.
+ (grub_reiserfs_dir): Likewise.
+ * grub-core/fs/sfs.c (grub_sfs_obj): New field mtime.
+ (grub_fshelp_node): Likewise.
+ (grub_sfs_iterate_dir): Set mtime.
+ (grub_sfs_dir): Likewise.
+ * grub-core/fs/udf.c (grub_udf_dir): Set mtime.
+ * grub-core/fs/xfs.c (grub_xfs_time): New struct.
+ (grub_xfs_inode): New fields atime, mtime, ctime.
+ (grub_xfs_dir): Set mtime.
+ * include/grub/datetime.h (grub_datetime2unixtime): New function.
+ * include/grub/hfs.h (grub_hfs_sblock): New fields ctime and mtime.
+ * include/grub/ntfs.h (grub_fshelp_node): New field mtime.
+
+ Support UDF symlinks.
+
+ * grub-core/fs/udf.c (grub_udf_iterate_dir): Handle symlinks.
+ (grub_ufs_read_symlink): New function. All users updated.
+
+ Check amiga partmap checksum.
+
+ * grub-core/partmap/amiga.c (grub_amiga_rdsk): Pad to 128 bytes.
+ (grub_amiga_partition): Likewise.
+ (amiga_partition_map_checksum): New function.
+ (amiga_partition_map_iterate): Check checksum.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ROMFS support.
+
+ * Makefile.util.def (libgrubmods.a): Add romfs.
+ * grub-core/Makefile.core.def (romfs): New module.
+ * grub-core/fs/romfs.c: New file.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Squashfs v4 support.
+
+ * Makefile.util.def (libgrubmods.a): Add squash4.
+ * grub-core/Makefile.core.def (squash4): New module.
+ * grub-core/fs/squash4.c: New file.
+ * grub-core/io/gzio.c (grub_gzio): New members disk_input_off,
+ disk_input_start, disk_input.
+ (get_byte): Handle disk_input.
+ (grub_zlib_disk_read): New function.
+ * include/grub/deflate.h (grub_zlib_disk_read): New proto.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+2011-05-15 Feiran Zheng <famcool@gmail.com>
+
+ * Makefile.util.def (libgrubmods.a): Add minix3.
+ * grub-core/Makefile.core.def (minix3): New module.
+ * grub-core/fs/minix.c (GRUB_MINIX_MAGIC) [MODE_MINIX3]: New value.
+ (GRUB_MINIX_BSIZE): Removed.
+ (GRUB_MINIX_INODE_DIR_BLOCKS): New definition. All users updated.
+ (grub_minix_ino_t): New type.
+ (grub_minix_le_to_cpu_ino): New macro.
+ (GRUB_MINIX_ZONE2SECT): New definition. All users updated.
+ (grub_minix_sblock) [MODE_MINIX3]: Change for minix3.
+ (grub_minix_data): New field block_size.
+ (grub_minix_read_file): Handle 64-bit correctly.
+ * grub-core/fs/minix3.c: New file.
+
+2011-05-15 Tristan Gingold <gingold@free.fr>
+2011-05-15 Robert Millan <rmh.grub@aybabtu.com>
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ IA64 support.
+
+ * Makefile.util.def (libgrubmods.a): Add grub-core/kern/ia64/dl_helper.c
+ * configure.ac: Add ia64-efi target.
+ Probe for __ia64_trampoline, __udivsi3, __umoddi3, __udivdi3,
+ __divsi3, __modsi3, __umodsi3, __moddi3 and __divdi3 symbols.
+ * gentpl.py: Add ia64_efi platform.
+ Rename x86_efi to efi and Add ia64-efi. All users updated.
+ * grub-core/Makefile.am: Set KERNEL_HEADER_FILES for ia64-efi.
+ * grub-core/Makefile.core.def (kernel.img): Add compile flags for ia64.
+ Remove kern/generic/rtc_get_time_ms.c on EFI.
+ Add kern/ia64/efi/startup.S, kern/ia64/efi/init.c, kern/ia64/dl.c,
+ kern/ia64/dl_helper.c on ia64-efi.
+ Add kern/emu/cache.c on emu.
+ (linux): Use on loader/ia64/efi/linux.c on ia64.
+ * grub-core/gensymlist.sh (grub_register_exported_symbols): Check
+ whether symbol is a function.
+ * grub-core/kern/dl.c [GRUB_MACHINE_EMU]: Include sys/mman.h.
+ (grub_symbol): New field 'isfunc'.
+ (grub_dl_resolve_symbol): Return whole symbol rather than just address.
+ (grub_dl_register_symbol): New argument 'isfunc'. All users updated.
+ (grub_dl_load_segments): Place all sections into the same region.
+ [__ia64__]: Create trampolines and got.
+ [GRUB_MACHINE_EMU]: Call mprotect.
+ (grub_dl_resolve_symbols): Resolve symbol type as well.
+ [__ia64__]: Create function descriptors.
+ * grub-core/kern/efi/efi.c (grub_get_rtc): Renamed to ...
+ (grub_rtc_get_time_ms): ... this. Expressions simplified.
+ (grub_get_rtc): New function.
+ * grub-core/kern/emu/cache.c [__ia64__]: New file.
+ * grub-core/kern/emu/cache.S: Renamed to ...
+ * grub-core/kern/emu/cache_s.S: ... this.
+ [__ia64__]: Add a nop.
+ * grub-core/kern/emu/full.c (grub_arch_dl_get_tramp_got_size)
+ [__ia64__]: New function.
+ * grub-core/kern/emu/lite.c [__ia64__]: Include ../ia64/dl.c.
+ * grub-core/kern/ia64/dl.c: New file.
+ * grub-core/kern/ia64/dl_helper.c: Likewise.
+ * grub-core/kern/ia64/efi/init.c: New file.
+ * grub-core/kern/ia64/efi/startup.S: Likewise.
+ * grub-core/lib/efi/halt.c [__ia64__]: Don't try acpi.
+ * grub-core/lib/ia64/longjmp.S: New file (from glibc).
+ * grub-core/lib/ia64/setjmp.S: Likewise (from glibc).
+ * grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/setjmp.S.
+ * grub-core/loader/ia64/efi/linux.c: New file.
+ * include/grub/dl.h (GRUB_MOD_NAME): Redefined using C rather than asm.
+ (GRUB_MOD_DEP): Likewise.
+ (grub_dl) [__ia64__]: New fields got and tramp.
+ (grub_dl): New field 'base'.
+ (grub_dl_register_symbol): New argument isfunc. All users updated.
+ (GRUB_IA64_DL_TRAMP_ALIGN): New definition.
+ (GRUB_IA64_DL_TRAMP_SIZE): Likewise.
+ (GRUB_IA64_DL_GOT_ALIGN): Likewise.
+ (grub_ia64_dl_get_tramp_got_size): New proto.
+ (GRUB_ARCH_DL_TRAMP_ALIGN) [__ia64__]: Likewise
+ (GRUB_ARCH_DL_GOT_ALIGN) [__ia64__]: Likewise
+ (grub_arch_dl_get_tramp_got_size) [__ia64__]: Likewise
+ * include/grub/efi/api.h: Skip call wrappers on ia64.
+ * include/grub/efi/pe32.h (GRUB_PE32_MACHINE_IA64): New definition.
+ * include/grub/efi/time.h (GRUB_TICKS_PER_SECOND): Change to 1000.
+ * include/grub/elf.h (ELF_ST_INFO): New definition.
+ * include/grub/ia64/efi/kernel.h: New file.
+ * include/grub/ia64/efi/memory.h: Likewise.
+ * include/grub/ia64/efi/time.h: Likewise.
+ * include/grub/ia64/kernel.h: Likewise.
+ * include/grub/ia64/setjmp.h: Likewise (from glibc).
+ * include/grub/ia64/time.h: New file.
+ * include/grub/ia64/types.h: Likewise.
+ * include/grub/libgcc.h (__udivsi3, __umodsi3, __umoddi3, __udivdi3,
+ __moddi3, __divdi3, __divsi3, __modsi3, __ia64_trampoline):
+ New protos.
+ * include/grub/offsets.h (GRUB_KERNEL_IA64_EFI_PREFIX): New definition.
+ (GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise.
+ * include/grub/types.h (PRIxGRUB_ADDR): Likewise.
+ * util/grub-mkimage.c (image_target_desc): New field pe_target.
+ All users updated.
+ (EFI64_HEADER_SIZE): New definition. All users updated.
+ (image_targets): Add ia64-efi.
+ * util/grub-mkimagexx.c (relocate_symbols): New arguments jumpers and
+ jumpers_addr. All users updated.
+ Create function descriptors.
+ (count_funcs): New function.
+ (unaligned_uint32): New struct.
+ (MASK20): New definition.
+ (MASK19): Likewise.
+ (MASKF21): Likewise.
+ (add_value_to_slot_20b): New function.
+ (add_value_to_slot_21_real): Likewise.
+ (add_value_to_slot_21): Likewise.
+ (ia64_kernel_trampoline): New struct.
+ (nopm): New variable.
+ (jump): Likewise.
+ (make_trampoline): New function.
+ (relocate_addresses): Handle ia64.
+ (make_reloc_section): Likewise.
+ (load_image): Likewise.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious
+ warning. Move variables before code while on it.
+
+2011-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fuloong support.
+
+ * configure.ac: Rename yeeloong platform to loongson. All users updated.
+ * grub-core/Makefile.core.def (fwstart_fuloong): New image.
+ * grub-core/boot/mips/loongson/fuloong.S: New file.
+ * grub-core/boot/mips/loongson/fwstart.S: Wait for CS5536 to come up.
+ Explicitly init CS5536.
+ [FULOONG]: Don't use serial until CS5536 is available.
+ Set GPIO based on dumps.
+ (serial_hw_init) [FULOONG]: Handle CS5536 parts.
+ [FULOONG]: Handle GPIO and memory controller differences.
+ Parse machine type in $a2.
+ * grub-core/boot/mips/startup_raw.S: Determine and save the
+ architecture.
+ * grub-core/bus/cs5536.c (gpiodump): Move to fwstart.S.
+ (grub_cs5536_init_geode): Remove gpio part. Conditionalise DIVIL
+ init on architecture type.
+ * grub-core/kern/mips/loongson/init.c (grub_machine_init): Init
+ SIS315E. Don't init at_keyboard on fuloong.
+ (grub_halt): Support Fuloong.
+ * grub-core/kern/mips/startup.S [LOONGSON]: Save $s7.
+ * grub-core/loader/mips/linux.c (LOONGSON_MACHTYPE): Removed.
+ (loongson_machtypes): New array.
+ (grub_cmd_linux) [GRUB_MACHINE_MIPS_LOONGSON]: Pass the right machine
+ type.
+ * grub-core/term/ns8250.c (serial_get_divisor): New parameter port and
+ config. All users updated. Handle CS5536 serial.
+ * grub-core/term/serial.c (grub_serial_register): Conditionalise
+ default port on machine type. Register serial as inactive.
+ * grub-core/video/sis315pro.c: New file.
+ * include/grub/cs5536.h (GRUB_CS5536_MSR_MAILBOX_CONFIG_ENABLED): New
+ definition.
+ (GRUB_CS5536_MSR_MAILBOX_CONFIG): Likewise.
+ (GRUB_CS5536_MSR_DIVIL_LEG_IO_UART1_COM1): Likewise.
+ (GRUB_CS5536_MSR_DIVIL_LEG_IO_UART2_COM3): Likewise.
+ (GRUB_CS5536_MSR_DIVIL_UART1_CONF): Likewise.
+ (GRUB_CS5536_MSR_DIVIL_UART2_CONF): Likewise.
+ * include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_SHUTDOWN_GPIO): Rename
+ to ...
+ (GRUB_CPU_YEELOONG_SHUTDOWN_GPIO): ... this.
+ * include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_YEELOONG): New
+ definition.
+ (GRUB_ARCH_MACHINE_FULOONG): Likewise.
+ (grub_arch_machine): New extern var.
+ * include/grub/mips/loongson/serial.h
+ (GRUB_MACHINE_SERIAL_DIVISOR_115200): Renamed to ...
+ (GRUB_MACHINE_SERIAL_PORT0_DIVISOR_115200): ... this.
+ (GRUB_MACHINE_SERIAL_PORT): Renamed to ...
+ (GRUB_MACHINE_SERIAL_PORT0): ... this.
+ (GRUB_MACHINE_SERIAL_PORT2_DIVISOR_115200): New definition.
+ (GRUB_MACHINE_SERIAL_PORT1): Likewise.
+ (GRUB_MACHINE_SERIAL_PORT2): Likewise.
+ (GRUB_MACHINE_SERIAL_PORTS): Include ports 1 and 2.
+ * include/grub/term.h (grub_term_register_input_inactive): New inline
+ function.
+ (grub_term_register_output_inactive): Likewise.
+ * include/grub/video.h (grub_video_driver_id): New value
+ GRUB_VIDEO_DRIVER_SIS315PRO.
+ * util/grub-mkimage.c (image_target_desc): Rename name to dirname.
+ New field "names". All users updated.
+ New field value IMAGE_FULOONG_FLASH.
+ (generate_image): USe separate fwstart hashes for yeeloong and fuloong.
+
+2011-05-14 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * docs/grub.texi (Invoking grub-install): Fix additional outdated claims
+ and add some clarification.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Autoload gzio since it's needed on some
+ platforms if kernel is compressed.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_memalign): Disable auto-unloadding of
+ unused modules since currently referrence counter isn't reliable and
+ there isn't much memory to recover there anyway.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c (grub_dl_load_file): Decrease ref counter
+ rather than resetting it to allow modules to reference themselves
+ in init.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c (grub_dl_unload): Don't decrease reference
+ counter on dependencies since grub_dl_unref already handles this.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/font/font_cmd.c (loadfont_command): Set grub_errno
+ on error if not already done.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix few potential memory misusage.
+
+ * grub-core/font/font.c (load_font_index): Don't free char_index to
+ avoid double free.
+ (grub_font_load): Zero-fill font at alloc for safety.
+ Close file on error.
+ (free_font): Free bmp_idx.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Installation): Fix several outdated claims.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle module_license on windows.
+
+ * util/grub-pe2elf.c (MODLICENSE_SECTION): New definition. All following
+ sections shifted.
+ (insert_string): Make argument const char * instead of char *.
+ (write_section_data): Handle long section names.
+ Handle module_license.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/menuentry.c (grub_cmd_menuentry): Correctly
+ handle class-free menuentries.
+ (grub_normal_add_menu_entry): Add a check to be sure.
+
+2011-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c (set1_e0_mapping): Fix swap between
+ PgUp and PgDown.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump version to 1.99.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Give ATA device a bit more time on first try in order to allow disks
+ to spin up.
+
+ * grub-core/disk/ata.c (grub_atapi_identify): Use GRUB_ATA_TOUT_DEV_INIT
+ if dev->present is 1. Reset dev->present on failure.
+ (grub_ata_device_initialize): Set dev->present to 1.
+ * include/grub/ata.h (GRUB_ATA_TOUT_DEV_INIT): New value.
+ (grub_ata_device): New member 'present'.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Update hash.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Flush caches on DMA memory.
+
+ * grub-core/kern/mips/cache.S (grub_arch_sync_dma_caches): New function.
+ * grub-core/bus/pci.c (grub_memalign_dma32): Flush caches.
+ (grub_dma_free): Likewise.
+ * include/grub/cache.h (grub_arch_sync_dma_caches): New declaration.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/yeeloong/fwstart.S: Add explicit set mips3
+ to avoid asm treating ld and sd as macros.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/startup_raw.S: Flush cache after loading
+ decompressor.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/startup_raw.S: Use jalr rather than bal to call
+ grub_decompress_core since later would fail if grub_decompress_core
+ is too far.
+
+2011-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/dl.c (grub_arch_dl_relocate_symbols): Handle
+ R_MIPS_JALR since it's used by newer compiler.
+
+2011-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Correctly handle the Linux in root.
+
+2011-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/efi/chainloader.c (grub_chainloader_unload): Set
+ file_path to 0 for surety.
+ (grub_chainloader_boot): Set exit_data to NULL.
+ Unset the loader once done.
+ (grub_cmd_chainloader): Fix confusing error message if file is empty.
+
+2011-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c (fetch_key): Make a printf on
+ unknown key into a dprintf.
+
+2011-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (linux_find_partition): Don't abort
+ on first non-existant partition.
+
+2011-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (open_device): Set data->fd to -1 if
+ openning fails.
+ Reported by: Mark Korenberg.
+
+2011-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (linux_find_partition): Prevent possible
+ overflow.
+
+2011-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (main): Explicitely flush and sync the output
+ before closing to ensure that it will be readable by grub-setup.
+
+2011-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/efi/appleloader.c (MAKE_PIWG_PATH): New macro.
+ (devpath_1): Use MAKE_PIWG_PATH.
+ (devpath_2): Likewise.
+ (devpath_3): Likewise.
+ (devpath_4): Likewise.
+ (devpath_5): Likewise.
+ (devpath_6): Likewise.
+
+ The appleldr.mod was checked that to be binary identical to previous
+ version.
+
+2011-05-05 Zach <mikezackles>
+
+ Support 2010 Macbooks.
+
+ * grub-core/loader/efi/appleloader.c (devpath_6): New variable.
+ (devs): Add devpath_6.
+
+2011-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (main): Use /dev/urandom and not
+ /dev/random. /dev/urandom is good enough for our purposes (salting).
+
+2011-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in (process_input_dir): Include efiemu??.o.
+
+2011-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/legacy_parse.c (grub_legacy_parse): Correctly handle
+ hexadecimal.
+
+2011-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/main.c (grub_efiemu_load_file): Return grub_errno
+ and not 0 on failure.
+
+2011-05-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/fs/i386/pc/pxe.c (grub_pxefs_dir): Return
+ GRUB_ERR_BAD_FS rather than GRUB_ERR_IO if the disk is not a pxe
+ disk; otherwise grub_fs_probe will not fall back to the next
+ filesystem.
+ (grub_pxefs_open): Likewise, for consistency.
+ Reported and tested by: Ezekiel Grave.
+
+2011-05-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * tests/partmap_test.in: Don't hardcode path to parted.
+ Reported by: Peter Hjalmarsson. Fixes Savannah bug #33150.
+
+2011-05-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (GRUB only offers a rescue shell): Suggest the use
+ of `ls' to find out which devices are available.
+
+2011-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Supply target rather
+ than source address for efi mmap buffer.
+
+2011-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/amiga.c (amiga_partition_map_iterate): Fix a
+ wrong action on non-detecting the magic.
+
+2011-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/regex.c: Remove GRUB_MOD_LICENSE since it's
+ already supplied by another part of the module (fixes compilation on
+ FreeBSD).
+
+2011-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Make mdraid UUID
+ match the one used by mdadm.
+
+2011-04-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * po/README: Add instructions for creating po/LINGUAS.
+
+2011-04-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Add "SEE ALSO" sections to most man pages. Fixes Debian bug
+ #551428.
+
+ * docs/man/grub-editenv.h2m (SEE ALSO): New section.
+ * docs/man/grub-emu.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-fstest.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-install.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-macho2img.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-menulst2cfg.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkconfig.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkdevicemap.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkfont.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkimage.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mklayout.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mknetdir.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkpasswd-pbkdf2.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkrelpath.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkrescue.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-ofpathname.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-pe2elf.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-probe.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-reboot.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-script-check.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-set-default.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-setup.h2m (SEE ALSO): Likewise.
+
+2011-04-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/getroot.c
+ (grub_find_root_device_from_mountinfo): Remove non-virtual-device
+ test that was incorrectly reintroduced in r3214.
+ Reported by: Ian Dall. Fixes Savannah bug #33133.
+
+2011-04-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix stack pointer handling in 16-bit relocator.
+
+ * grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move
+ grub_relocator16_sp to %esp rather than %ss, and zero-extend it.
+ Fixes Ubuntu bug #683904.
+
+2011-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump version to 1.99~rc2.
+
+2011-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/dl.h [ASM_FILE]: Adapt for assembly.
+ * grub-core/lib/i386/setjmp.S: Add missing GRUB_MOD_LICENSE.
+ * grub-core/lib/x86_64/setjmp.S: Likewise.
+ * grub-core/lib/mips/setjmp.S: Likewise.
+ * grub-core/lib/powerpc/setjmp.S: Likewise.
+ * grub-core/lib/sparc64/setjmp.S: Likewise.
+
+2011-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/efi/datetime.c: Add missing GRUB_MOD_LICENSE.
+ * grub-core/lib/efi/datetime.c: Likewise.
+
+2011-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_flush):
+ New function.
+ (grub_util_biosdisk_close): Use grub_util_biosdisk_flush.
+ * include/grub/emu/hostdisk.h (grub_util_biosdisk_flush): New proto.
+ * util/grub-setup.c (setup): Use grub_util_biosdisk_flush.
+
+2011-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Preserve previous
+ bitmap.
+ (grub_gfxterm_term_init): Likewise.
+
+2011-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Take into account the decorations the computing menu entry width.
+
+ * grub-core/gfxmenu/widget-box.c (get_border_width): New function.
+ (grub_gfxmenu_create_box): Register get_border_width.
+ * grub-core/gfxmenu/gui_list.c (draw_menu): Use get_border_width
+ if available.
+ * include/grub/gfxwidgets.h (grub_gfxmenu_box): New member
+ get_border_width.
+
+2011-04-18 Endres Puschner <code@e7p.de>
+
+ * grub-core/gfxmenu/icon_manager.c (grub_gfxmenu_icon_manager_get_icon):
+ Don't skip first class.
+
+2011-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Support huge
+ chunks.
+ * include/grub/err.h (grub_err_t): New enum value GRUB_ERR_BUG.
+
+2011-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Complete 64-bit division support.
+
+ * grub-core/kern/misc.c (grub_divmod64): Rename to ...
+ (grub_divmod64_full): ... this. Support 64-bit divisor and reminder.
+ * include/grub/misc.h (grub_divmod64): Rename to ...
+ (grub_divmod64_full): ... this.
+ (grub_divmod64): New inline function.
+
+2011-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Add forgotten comma.
+
+2011-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Update fwstart.img hash after
+ performing the necessary test.
+
+2011-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (multiboot.elf): Add -Wl,--build-id=none.
+ (kfreebsd.elf): Likewise.
+ (pc-chainloader.elf): Likewise.
+ (ntldr.elf): Likewise.
+
+2011-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Identify RAID by its UUID rather than (guessed) name.
+
+ * grub-core/disk/raid.c (ascii2hex): New function.
+ (grub_raid_open): Accept mduuid/%s specification.
+ * grub-core/kern/emu/getroot.c (get_mdadm_name): Revamped into ...
+ (get_mdadm_uuid): ... this.
+ (grub_util_get_grub_dev): Use mduuid/%s if UUID is available.
+
+2011-04-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_image.c (rescale_image): Don't attempt to scale
+ to negative size.
+
+2011-04-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/10_linux.in: Add rootflags=subvol=<name> if / is on a
+ btrfs subvolume.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2011-04-13 Colin Watson <cjwatson@ubuntu.com>
+
+ Rewrite /proc/self/mountinfo handling to cope with bind-mounts and
+ move-mounts appearing out of order. Fixes Ubuntu bug #738345.
+
+ * grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo):
+ Build a list of relevant visible mounts using the mnt_id and
+ parent_mnt_id fields, and then scan that list at the end.
+
+2011-04-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (normal): New section.
+ (normal_exit): New section.
+ (Embedded configuration): Add reference to normal.
+ (GRUB only offers a rescue shell): Likewise.
+ * docs/grub-dev.texi (Error Handling): Fix typo.
+
+2011-04-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: Drop obsolete entry about probe-only btrfs support.
+
+2011-04-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/import_gcry.py: Fix typo.
+
+2011-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: Add btrfs support.
+
+2011-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+2011-04-11 Colin Watson <cjwatson@ubuntu.com>
+
+ BtrFS support. Written by me (Vladimir) with important bugfixes and
+ even more important testing by Colin.
+
+ * Makefile.util.def (libgrubmods.a): Add crc.c and gzio.c
+ * grub-core/Makefile.core.def (btrfs): Add crc.c.
+ * grub-core/fs/btrfs.c: Stub replaced with real implementation.
+ * grub-core/io/gzio.c (grub_gzio): New fields mem_input_size,
+ mem_input_off and mem_input. All users updated to accept in-RAM input.
+ (gzio_seek): New function.
+ (test_zlib_header): Likewise.
+ (grub_gzio_read): Likewise.
+ (grub_zlib_decompress): Likewise.
+ * grub-core/kern/emu/getroot.c (grub_find_root_device_from_mountinfo):
+ Accept partial and non-virtual mounts.
+ (grub_guess_root_device): Do rescanning after device_from_mountinfo to
+ avoid receiving /dev/dm-X as device.
+ * grub-core/kern/emu/misc.c (grub_make_system_path_relative_to_its_root):
+ Handle bind and partial mounts.
+ * grub-core/lib/crc.c: New file.
+ * include/grub/deflate.h: Likewise.
+ * include/grub/emu/misc.h (grub_find_root_device_from_mountinfo): New
+ proto.
+ * include/grub/lib/crc.h: New file.
+
+2011-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement automatic module license checking according to new GNU
+ guidelines.
+
+ * grub-core/kern/dl.c (grub_dl_check_license): New function.
+ (grub_dl_load_core): Use grub_dl_check_license.
+ * include/grub/dl.h (GRUB_MOD_SECTION): New macro.
+ (GRUB_MOD_LICENSE): Likewise.
+ (GRUB_MOD_DUAL_LICENSE): Likewise.
+ All modules updated.
+
+2011-04-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_fs) [GRUB_UTIL]: Set
+ reserved_first_sector to 1. btrfs reserves plenty of space for boot
+ loaders.
+ Reported by: Gene Cumm. Fixes Ubuntu bug #757446.
+
+2011-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (cmd_cmp): Check that sizes match.
+
+2011-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (read_file): Report GRUB error if file opening
+ failed.
+
+2011-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/file.c (grub_file_open): Don't take into account the
+ parenthesis in the middle of the filename.
+
+2011-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/mips/linux.c (grub_cmd_initrd): Use correct limits
+ rather than trying to put initrd way too high.
+ Reported by: Ryan Lortie <desrt@desrt.ca>
+
+2011-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/yeeloong/fwstart.S (no_cs5536): Put back
+ improperly removed string.
+
+2011-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_data): New member
+ is_disk.
+ (grub_util_biosdisk_open): Don't apply ioctl on non-disk devices.
+ (open_device) Likewise.
+ (grub_util_biosdisk_close): Likewise.
+ Reported by: Mark Korenberg.
+
+2011-04-10 Alexander Kurtz <kurtz.alex@googlemail.com>
+
+ * util/grub-mkconfig_lib.in: Add missing quotes.
+
+2011-04-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/gnulib/argp-parse.c (__argp_input): Don't crash if pstate
+ is NULL.
+
+2011-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Dynamically count the number of lines for the lower banner.
+
+ * grub-core/normal/menu_entry.c (per_term_screen): New member
+ num_entries.
+ (print_down): Use num_entries.
+ (update_screen): Likewise.
+ (grub_menu_entry_run): Set num_entries.
+ * grub-core/normal/menu_text.c (menu_viewer_data): New member
+ num_entries.
+ (grub_print_message_indented): Move real part to ...
+ (grub_print_message_indented_real): ... here. Additional argument
+ dry_run.
+ (draw_border): Additional argument num_entries.
+ (print_message): Additional argument dry_run.
+ (print_entries): Receive menu viewer data.
+ (grub_menu_init_page): New argment num_entries.
+ (menu_text_set_chosen_entry): Use num_entries.
+ (grub_menu_try_text): Likewise.
+ * grub-core/normal/term.c (print_ucs4_terminal): New argument dry_run.
+ All users updated.
+ (grub_ucs4_count_lines): New function.
+ * include/grub/term.h (grub_term_cursor_x): Moved from here ..
+ * grub-core/normal/menu_text.c (grub_term_cursor_x): ... to here.
+ * include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): Removed.
+ (grub_term_border_height): Likewise.
+ (grub_term_num_entries): Likewise.
+
+2011-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/yeeloong/fwstart.S: Fix address to error message.
+ Remove now unused string.
+
+2011-04-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub-dev.texi (Finding your way around): Update for 1.99
+ build system.
+ (Getting started): GRUB is developed in Bazaar now, not Subversion.
+
+ (Comment): Fix typo.
+ (Getting started): General copy-editing.
+ (Typical Development Experience): Likewise.
+ (Error Handling): Likewise.
+ (Video API): Likewise.
+
+2011-04-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub-dev.texi: Replace MoinMoin syntax with Texinfo syntax
+ throughout.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (main): Handle special naming of yeeloong
+ directory.
+
+2011-04-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub-dev.texi: Fix spelling of "developer" throughout.
+ * grub-core/fs/i386/pc/pxe.c (parse_dhcp_vendor): Fix spelling of
+ "development".
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (run): Use grub_memcpy rather than
+ grub_strcpy since the lines aren't necessarily 0-terminated.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/legacy_parse.c (legacy_commands): Find doesn't set
+ root on legacy.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/probe.c (options): Argument to set isn't optional.
+ (GRUB_MOD_INIT): DEVICE isn't optional.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (print_ucs4_terminal): Don't try to put the
+ word on new line if it's too long anyway. Fixes a hang.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/util/raid.h (grub_util_raid_getmembers): Make argument
+ const.
+ * util/grub-setup.c (main): Reuse md device name if available.
+ * util/raid.c (grub_util_raid_getmembers): Receive device name and
+ not GRUB name as argument.
+ Based on patch by: Florian Wagner <fwagner>.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
+ Place mbi on low memory for better compatibility.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efiemu/efiemu.h: Use grub_memory_hook_t type.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+2011-04-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * autogen.sh: Ensure that collate and ctype locale is C.
+ * conf/Makefile.common: Likewise.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu.c: Add missing include.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c [GRUB_UTIL]: Add missing include.
+
+2011-04-08 Martin Zuther <mzuther@mzuther.de>
+
+ * util/grub-mkconfig.in: Ignore emacsen backup.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (open_device): Sync on close and not
+ on open.
+ (grub_util_biosdisk_close): Likewise.
+
+2011-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Add missing
+ const attribute and use grub_isdigit.
+
+2011-04-06 Andrey <dev_null@ukr.net>
+
+ * grub-core/video/fb/video_fb.c (grub_video_fb_setup): Silence older
+ gcc warning.
+
+2011-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Add few
+ useful grub_dprintf's.
+
+2011-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/fs.h (grub_dirhook_info): Use unsigned for 1-bit fields.
+
+2011-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/00_header.in: Don't use LANG unless unifont is available.
+
+2011-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Output errors if theme loading failed.
+
+ * grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Move the call to
+ grub_gfxterm_fullscreen on error paths to ...
+ * grub-core/normal/menu.c (menu_init): ...here. Wait after showing
+ theme loading error.
+
+2011-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Let a bit more
+ space for older compilers.
+ (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
+
+2011-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Detect spares
+ and report them as not RAID members since they are useless for GRUB.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
+
+2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Increase LVM implementation robustness in order not to crash on
+ configurations like pvmove. Previously code assumed that in some places
+ only lvs or only pvs are used whereas it seems that they are used
+ interchangeably.
+
+ * grub-core/disk/lvm.c (read_node): New function.
+ (read_lv): Use read_node.
+ (grub_lvm_scan_device): Use only first mirror on pvmove'd lvs.
+ Match volumes only at the end when all lvs are found. Take both
+ pvs (first) and lvs (second) into account.
+ * include/grub/lvm.h (grub_lvm_segment): Merge fields stripe_* and
+ mirror_* into node_*. All users updated.
+ (grub_lvm_stripe): Merge this ...
+ (grub_lvm_mirror): ... and this ...
+ (grub_lvm_node): ... into this. All users updated.
+
+2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/lvm.c (grub_lvm_scan_device): Print errors on the end
+ of function to allow further scanning for LVMs.
+
+2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_read): Don't close
+ on failed seek as it breaks open fd reusage.
+
+2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Add a recommendation to use --recheck before
+ reporting bugs.
+
+2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Vendor power-on buttons): Explain how the numbers
+ are obtained.
+
+2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ GRUB developper manual based on existing Internals section and
+ contributions by the various authors with active copyright assignment.
+
+ * docs/Makefile.am (info_TEXINFOS): Add grub-dev.texi.
+ * docs/font_char_metrics.png: New file.
+ * docs/font_char_metrics.txt: Likewise.
+ * docs/grub-dev.texi: Likewise.
+ * docs/grub.texi (Internals): Move from here ...
+ * docs/grub-dev.texi: ... here.
+
+2011-04-01 Colin Watson <cjwatson@ubuntu.com>
+
+ Store the loopback device as data on loopback grub_disk structures,
+ rather than the file it points to. This fixes use of freed memory
+ if an existing loopback device is replaced.
+
+ * grub-core/disk/loopback.c (grub_loopback_open): Store dev in
+ disk->data, not dev->file.
+ (grub_loopback_read): Adjust file assignment to match.
+ Fixes Ubuntu bug #742967.
+
+2011-04-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/loopback.c (grub_cmd_loopback): Fix a memory leak
+ when replacing an existing device.
+
+2011-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix incorrect types in jfs.c. This enables >2TiB disks and fixes some
+ memory corruptions.
+
+ * grub-core/fs/jfs.c (struct grub_jfs_diropen): Interpret bytes as
+ unsigned.
+ (grub_jfs_lookup_symlink): Make ino a grub_uint32_t rather than int.
+ (grub_jfs_blkno): Use 64-bit quantities for block sectors.
+ (grub_jfs_read_inode): Likewise.
+ (grub_jfs_opendir): Likewise. Remove now useless casts.
+ (grub_jfs_getent): Likewise.
+ Make ino a grub_uint32_t rather than int.
+ (grub_jfs_mount): Ensure that blksize and log2_blksize are consistent.
+ (grub_jfs_read_file): Use 64-bit quantities when necessary. Replace
+ division and module with bit operations.
+ (grub_jfs_find_file): Make ino a grub_uint32_t.
+ (grub_jfs_lookup_symlink): Likewise. Use 64-bit quantities
+
+2011-04-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/normal/menu_entry.c (run): Quieten uninitialised
+ warning. (This was in fact always initialised before use, but GCC
+ wasn't smart enough to prove that.)
+ * grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise.
+
+2011-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_0): Preserve 16-byte
+ stack alignment.
+ (efi_wrap_1): Likewise.
+ (efi_wrap_2): Likewise.
+ (efi_wrap_3): Likewise.
+ (efi_wrap_4): Likewise.
+ (efi_wrap_5): Likewise.
+ (efi_wrap_6): Likewise.
+ (efi_wrap_10): Likewise.
+ Based on information by: Red Hat/Peter Jones.
+
+2011-03-31 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/mmap/efi/mmap.c (grub_mmap_unregister): Remove
+ set-but-not-used variable.
+
+2011-03-31 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Be more explicit about
+ GRUB_DEFAULT, and add an example.
+ Reported by: Leslie Rhorer.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Commands): Link to "GRUB only offers a rescue
+ shell".
+
+2011-03-30 Alexey Shvetsov <alexxy@gentoo.org>
+
+ * util/grub.d/10_linux.in: Add gentoo-specific config filename.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Try alternative config filenames where
+ we parse config file.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2011-03-30 Alexey Shvetsov <alexxy@gentoo.org>
+
+ * util/grub.d/10_linux.in: Add gentoo-specific Linux and initrd names.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (insert_array): Add few potentially
+ useful grub_util_info.
+ (grub_raid_register): Likewise.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev) [__linux__]:
+ Preserve partition number in mdadm code path.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Add
+ few potentially useful grub_util_info.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/lvm.c (grub_lvm_scan_device): Remove spurious \n.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (default): Use @example rather than nested
+ itemized lists to avoid breaking gendocs.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Future): Update.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Environment): New chapter.
+ (Changes from GRUB Legacy): Link to "Environment block" section for
+ details of limitations.
+ (Simple configuration): Likewise. Link to documentation of gfxmode
+ and gfxpayload variables from GRUB_GFXMODE and GRUB_GFXPAYLOAD
+ respectively.
+ (Shell-like scripting): Note that normal variables are stored in the
+ environment.
+ (gettext): Link to documentation of lang and locale_dir.
+ (list_env): New section.
+ (load_env): New section.
+ (save_env): New section.
+
+ (Reporting bugs): Fix typo.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Correctly use "terminal_input" and not "terminal" in
+ the example.
+
+2011-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c (set_scancodes)
+ [!GRUB_MACHINE_MIPS_YEELOONG && !GRUB_MACHINE_QEMU]: Use scancode set 1.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Menu-specific commands): Remove some semantics
+ that were true in GRUB Legacy but not in GRUB 2.
+ (submenu): New section.
+ (false): New section.
+ (read): New section.
+ (true): New section.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Changes from GRUB Legacy): Minor proofreading.
+
+2011-03-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Explain some of the
+ current limitations of grub-mkconfig.
+ Reported by: Leslie Rhorer.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Old macs search for boot.efi rather than for bootia32.efi.
+
+ * util/grub-install.in: Copy bootia32.efi to boot.efi.
+ * util/grub-mkrescue.in: Likewise.
+ Suggested by: Peter Jones.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Accept old-style xen kernels.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/lvm.h (grub_lvm_lv): New field 'visible'.
+ (grub_lvm_segment): New fields 'type', 'mirror_count' and 'mirrors'.
+ (grub_lvm_mirror): New struct.
+ * grub-core/disk/lvm.c (grub_lvm_checkvalue): Commented out.
+ (grub_lvm_iterate): Iterate only visible volumes.
+ (grub_lvm_read): Factor out to ..
+ (read_lv): ... this. Support mirrors.
+ (grub_lvm_read): New wrapper function.
+ (grub_lvm_scan_device): Parse mirrors. Skip everything that isn't
+ stripped or mirrored.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Skip vmlinux-* on x86 platforms.
+
+2011-03-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (loopback): New section.
+
+2011-03-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/loopback.c (GRUB_MOD_INIT): Stop documenting
+ removed -p option.
+
+2011-03-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (BIOS installation): New section, partly based on
+ previous text in other sections.
+ (Installing GRUB using grub-install): Replace BIOS discussion with a
+ cross-reference.
+ (Images): Likewise.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (find_partition_start)
+ [HAVE_DIOCGDINFO]: Add safety checks.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_kfreebsd.in: Allow ufs.ko to be missing as it's
+ per default compiled in kernel and prior to 8.0 isn't shipped at all.
+
+2011-03-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): If
+ real_sb->size is zero (e.g. RAID-0), get the disk size from
+ real_sb->data_size instead.
+ Fixes Ubuntu bug #743136.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/misc.c (grub_normal_print_device_info): Use correct
+ printf clauses for printing size and start.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_read_inode): Fix an overflow.
+ Reported and tested by: Timothy Nikkel.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (dirty_region_add): Move core part to ...
+ (dirty_region_add_real): ... this.
+ (dirty_region_add): Don't discard margin refresh when performing
+ scheduled repaint.
+
+2011-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (allocate_regstart)
+ [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Avoid grub_dprintf since not all
+ terminals are capabple of malloc-free operation.
+ (allocate_inreg) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise.
+ (malloc_in_range) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise.
+
+2011-03-29 Mario Limonciello <Mario_Limonciello@Dell.com>
+
+ * util/grub-setup.c: Copy the partition table zone if floppy support
+ is disabled, even if no partition table is found.
+
+ Otherwise, the BIOS on Dell Latitude E series laptops will freeze
+ during POST if an invalid partition table is contained in the PBR
+ of the active partition when GRUB is installed to a partition.
+
+2011-03-28 Colin Watson <cjwatson@debian.org>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Remove stale
+ comment.
+
+2011-03-28 Colin Watson <cjwatson@debian.org>
+
+ * grub-core/disk/raid.c (grub_raid_register): Adjust debug message
+ to be specific about what kind of RAID device we're scanning for.
+
+2011-03-26 Seth Goldberg <seth.goldberg@oracle.com>
+
+ * grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): Don't
+ return freed string.
+
+2011-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_label): Rtrim the label.
+
+2011-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use libgeom on FreeBSD to detect partitions.
+
+ * Makefile.util.def (grub-mkimage): Add LIBGEOM to ldadd.
+ (grub-mkrelpath): Likewise.
+ (grub-script-check): Likewise.
+ (grub-editenv): Likewise.
+ (grub-mkpasswd-pbkdf2): Likewise.
+ (grub-fstest): Likewise.
+ (grub-mkfont): Likewise.
+ (grub-mkdevicemap): Likewise.
+ (grub-probe): Likewise.
+ (grub-setup): Likewise.
+ (grub-ofpathname): Likewise.
+ (grub-mklayout): Likewise.
+ (example_unit_test): Likewise.
+ (grub-menulst2cfg): Likewise.
+ * grub-core/Makefile.core.def (grub-emu): Likewise.
+ (grub-emu-lite): Likewise.
+ * configure.ac: Check for -lgeom on FreeBSD and set LIBGEOM.
+ * grub-core/kern/emu/hostdisk.c [FreeBSD]: Include libgeom.h. Don't
+ define HAVE_DIOCGDINFO.
+ (follow_geom_up) [FreeBSD]: New function.
+ (find_partition_start) [FreeBSD]: Rewritten using follow_geom_up.
+ (convert_system_partition_to_system_disk) [FreeBSD]: Likewise.
+ (grub_util_biosdisk_get_grub_dev) [FreeBSD]: Use FreeBSD path
+ unconditionally of HAVE_DIOCGDINFO.
+
+2011-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix FreeBSD compilation problem.
+
+ * grub-core/kern/emu/hostdisk.c (MAJOR) [FreeBSD]: New definition.
+ (FLOPPY_MAJOR) [FreeBSD]: Likewise.
+
+2011-03-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/video/fb/video_fb.c (grub_video_fb_get_info_and_fini):
+ Switch back to page zero before loading a kernel, since some kernel
+ drivers expect that.
+ Thanks to: Felix Kuehling.
+
+2011-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_addr)
+ [DEBUG_RELOCATOR]: Reuse grub_mm_check.
+ (grub_relocator_alloc_chunk_align) [DEBUG_RELOCATOR]: Likewise.
+
+2011-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/mm.h (GRUB_MM_CHECK): Rename to ...
+ (grub_mm_check): ... this. MAke a function-like macro and use GRUB_FILE.
+
+2011-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (allocate_inreg): Avoid dprintf unless
+ DEBUG_RELOCATOR is defined since gfxterm can't cope with output when
+ malloc is disabled.
+
+2011-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Account
+ for modules headers when counting the needed allocation size.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (calculate_normal_character_width): Return 8
+ if no ASCII character is found to prevent crash.
+
+2011-03-23 Alexander Kurtz <kurtz.alex@googlemail.com>
+
+ * grub-core/video/bitmap.c (match_extension): Ignore case.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (init_line): Fix off-by-one error.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/parser.y: Declare "time" as valid argument.
+
+2011-03-23 Peter Jones <pjones@redhat.com>
+
+ Fix incorrect assert failure reporting.
+
+ * grub-core/tests/example_functional_test.c (example_test): Add
+ a failure comment.
+ * grub-core/tests/lib/test.c (add_failure): Renamed to ...
+ (failure_start): ...this. Check that malloc succeeded.
+ Don't call xvasprintf. Return failure struct.
+ (failure_append_vtext): New function.
+ (failure_append_text): Likewise.
+ (add_failure): Likewise.
+ (grub_test_assert_helper): Likewise.
+ * include/grub/test.h (grub_test_assert_helper): New declaration.
+ (grub_test_assert): Macro rewritten.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c (GRUB_MOD_INIT): Export pager variable.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/pc/biosnum.c: Add missing include.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/usbms.c (grub_usbms_reset): Transform USB-style error
+ into GRUB-style one.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Return usb-style
+ error and not grub_errno.
+ * grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/uhci.c (grub_uhci_detect_dev): Return
+ GRUB_USB_SPEED_NONE in case of failure and not the error code.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/i386/pc/cfgtables.c
+ (grub_machine_efiemu_init_tables): Make declaration a prototype.
+ * grub-core/loader/xnu.c (grub_xnu_lock): Likewise.
+ (grub_xnu_unlock): Likewise.
+ * grub-core/normal/cmdline.c (grub_cmdline_get/cl_set_pos_all): Likewise.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usb.c (attach_hooks): Make static.
+ * grub-core/bus/usb/usbhub.c (hubs): Likewise.
+ * grub-core/commands/hashsum.c (aliases): Likewise.
+ * grub-core/commands/setpci.c (pci_registers): Likewise.
+ * grub-core/disk/usbms.c (attach_hook): Likewise.
+ * grub-core/fs/zfs/zfs.c (decomp_table): Likewise.
+ (zio_checksum_table): Likewise.
+ * grub-core/gettext/gettext.c (grub_gettext_msg_list): Likewise.
+ * grub-core/gfxmenu/gfxmenu.c (cached_view): Likewise.
+ * grub-core/lib/legacy_parse.c (legacy_commands): Likewise.
+ * grub-core/lib/relocator.c (leftovers): Likewise.
+ (extra_blocks): Likewise.
+ * grub-core/loader/i386/bsd.c (relocator): Likewise.
+ * grub-core/loader/i386/multiboot_mbi.c (modules): Likewise.
+ (modules_last): Likewise.
+ * grub-core/loader/i386/xnu.c (table_aliases): Likewise.
+ (devices): Likewise.
+ * grub-core/loader/multiboot_mbi2.c (modules): Likewise.
+ (modules_last): Likewise.
+ * grub-core/normal/auth.c (users): Likewise.
+ * grub-core/normal/context.c (initial_menu): Likewise.
+ (current_menu): Likewise.
+ * grub-core/normal/crypto.c (crypto_specs): Likewise.
+ * grub-core/term/serial.c (grub_serial_ports): Likewise.
+ (grub_serial_terminfo_input_template): Likewise.
+ (grub_serial_terminfo_output_template): Likewise.
+ (grub_serial_terminfo_input): Likewise.
+ (grub_serial_terminfo_output): Likewise.
+ (registered): Likewise.
+ * grub-core/term/usb_keyboard.c (attach_hook): Likewise.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/bochs.c (grub_video_bochs_setup): Use
+ grub_video_mode_type_t.
+ * grub-core/video/cirrus.c (grub_video_cirrus_setup): Likewise.
+ * grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Likewise.
+ * grub-core/video/i386/pc/vga.c (grub_video_vga_setup): Likewise.
+
+2011-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Correct the x86-64 name as x86_64.
+
+2011-03-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/boot/i386/pc/lnxboot.S (real_code_2): Ensure that the
+ initial chunk read from the kernel always includes GRUB's multiboot
+ header, which is now outside the first sector.
+
+2011-03-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/loader/i386/linux.c (find_efi_mmap_size): Page-align
+ cached mmap_size, so that this works correctly when called multiple
+ times.
+ Reported by: Daniel Kahn Gillmor. Should fix Debian bug #616638.
+
+2011-03-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Tidy up formatting.
+
+2011-03-07 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/fs/zfs/zfs.c (zap_leaf_lookup):
+ Set-but-not-used variable removed.
+
+2011-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Workaround yet another IEEE1275 bug.
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
+ GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS.
+ * grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate): Ignore
+ adress_cells and size:cells if GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS
+ is set.
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS on powermacs.
+
+2011-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/msdos.c (pc_partition_map_embed): Fix off by one
+ error.
+
+2011-02-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/20_linux_xen.in: Bail out early if linux_list is
+ empty, since in that case we can only generate either nothing or a
+ syntactically invalid configuration file.
+ Reported by: Michal Suchanek. Fixes Debian bug #612898.
+
+2011-02-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Kernel): Add reference to grub-mkrescue.
+ (Making a GRUB bootable CD-ROM): Likewise.
+ (Invoking grub-mkrescue): New section.
+ Reported by: Yann Dirson. Fixes Debian bug #612585.
+
+2011-02-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Remove unnecessary brackets from tr
+ arguments.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ Reported by: Jamie Heilman. Fixes Debian bug #612564.
+
+2011-02-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/file.h (not_easly_seekable): Rename to ...
+ (not_easily_seekable): ... this. Update all users.
+
+2011-01-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Making a GRUB bootable CD-ROM): Update to describe
+ grub-mkrescue.
+
+2011-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Refuse to create the images
+ bigger than the actual flash (512K) in Loongson machines. 512K is also
+ the biggest chip supported by them.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c: Include config-util.h explicitly.
+
+2011-01-22 Anthony DeRobertis <anthony@derobert.net>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Check
+ super_offset field.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Ignore install device on platforms
+ where it doesn't make sense. Always use UUIDs except on pc, efi and
+ sparc64.
+ Reported by: Daniel Kahn Gillmor.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/bonito.c (write_bases): Fix direction of the shift.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/bsdlabel.c: Include grub/emu/misc.h and not grub/util/misc.h.
+ (iterate_real): Don't rely on partition being non-NULL.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/argv.c (round_up_exp): unsigned is 32-bit on all
+ supported platforms. Put a compile time assert for this rather than
+ generate a warning with 32-bit shift.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/scsi.c (grub_scsi_read): Fix binary and check and make
+ logical expression more readable.
+
+2011-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (insert_array): Ensure uniqueness of p->number
+ even if some elements have a name.
+ Reported by: Alexander GQ Gerasiov.
+
+2011-01-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Consider a
+ path unreadable if `grub-probe -t abstraction' fails, for example if
+ memberlist fails on an LVM volume group.
+ Reported by: Darius Jahandarie.
+
+2011-01-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Document
+ GRUB_PRELOAD_MODULES.
+
+2011-01-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Remove nonexistent grub-pbkdf2.
+
+2011-01-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump version to 1.99~rc1.
+
+2011-01-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Check fwstart.img checksum
+ for safety.
+
+2011-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/yeeloong/init.c (grub_machine_init): Init boot
+ module.
+
+2011-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (fwstart): Add lost LDFLAGS.
+
+2011-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Quote bootpath and
+ diskdevid.
+
+2011-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix compilation on cygwin.
+
+ * conf/Makefile.common (STRIPFLAGS_KERNEL): Add -F elf32-i386 and
+ -R .drectve on cygwin.
+ * conf/i386-pc-cygwin-img-ld.sc: Merge rdata and pdata into data.
+ * configure.ac: Use $(top_builddir) in TARGET_OBJ2ELF.
+ (COND_CYGWIN): New condition.
+ * grub-core/Makefile.am (%.mod): Set TARGET_OBJ2ELF.
+ * grub-core/genmod.sh.in: Use ${TARGET_OBJ2ELF} and
+ not @TARGET_OBJ2ELF@.
+ * util/grub-pe2elf.c (write_symbol_table): Use pe_symtab->type and not
+ type to determine whether aux is to be used.
+
+2011-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Use the
+ realpath'ed device string.
+ Handle floppy (somewhat).
+ Issue error in unknown case rather than garbage.
+ Reported by: Axel Beckert.
+
+2011-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/00_header.in (load_video): Handle the case when no video
+ drivers available.
+ Thanks to: Axel Beckert.
+
+2011-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (write_font_pf2): Use appropriate type for data
+ variable. Fixes problem on big endian platforms.
+
+2011-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (ieee1275_fb): Disable on sparc.
+ It doesn't work well there.
+
+2011-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/context.c (grub_env_context_close): Silence spurious
+ warning.
+ * grub-core/normal/menu.c (grub_menu_execute_entry): Likewise.
+ * grub-core/partmap/msdos.c (pc_partition_map_embed): Use unsigned
+ counter.
+
+2011-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use alias->path rather than buggy "canon".
+
+ * grub-core/disk/ieee1275/ofdisk.c (ofdisk_hash_add_real): New function.
+ (ofdisk_hash_add): New argument curcan. All users updated.
+
+2011-01-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Fall back to `true' if `makeinfo' does not exist.
+
+2011-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32): Apply
+ loadmask before doing any calculations. Use correct type for offset.
+ (grub_linux_load64): Likewise.
+
+2011-01-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mklayout.c (console_grub_equivalences_shift): Terminate
+ with NULL.
+ (console_grub_equivalences_unshift): Likewise.
+ Reported by: Daniel Dehennin.
+
+2011-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/i386/pc/pxe.c (set_mac_env): Export variable.
+ (set_env_limn_ro): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * grub-core/hook/datehook.c (GRUB_MOD_INIT): Likewise. Change to
+ ARRAY_SIZE while on it.
+ (GRUB_MOD_FINI): Change to ARRAY_SIZE.
+ * grub-core/normal/context.c (grub_env_export): Move from here ...
+ * grub-core/kern/env.c (grub_env_export): ... here.
+ * grub-core/normal/context.c (grub_cmd_export): Skip exporting root and
+ prefix.
+ * grub-core/kern/main.c (grub_main): Export root and prefix.
+ * include/grub/env.h (grub_env_export): Export.
+ Reported by: Seth Goldberg.
+
+2011-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
+ Take into account space used by ELF sections and multiboot palette.
+ Reported by: Grégoire Sutre.
+
+2011-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * BUGS: New file.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Pass more appropriate video id to Linux.
+
+ * grub-core/loader/i386/linux.c (grub_linux_setup_video): Use
+ grub_video_get_driver_id and variable gfxpayloadforcelfb to
+ fill have_vga.
+ (grub_linux_boot): Rely on grub_linux_setup_video to fill have_vga and
+ shift params->lfb_size.
+ * include/grub/i386/linux.h: Make an enume out of have_vga values.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-menulst2cfg.c: Add missing include of misc.h.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Use comma as
+ separator and pass bootpath/devid even if only one of them is available.
+ Reported by: Seth Goldberg.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't use post-4G memory on EFI even if 64-bit since some non-compliant
+ implementations bug on them.
+
+ * grub-core/kern/efi/mm.c (grub_efi_allocate_pages): Skip post-4G
+ memory.
+ (filter_memory_map): Likewise.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-kbdcomp.in: Add missing prefix and exec_prefix variables.
+ Reported by: nebuchadnezzar.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-kbdcomp.in: Add missing transform and bindir variables.
+ Reported by: nebuchadnezzar.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Submenu default support.
+
+ * grub-core/normal/menu.c (grub_menu_execute_entry): New parameter
+ auto_boot. All users updated.
+ Declared static.
+ Handle chosen and default with submenus.
+ (grub_menu_execute_with_fallback): Declared static.
+ Don't notify failure if autobooted. Upper level does it.
+ (menuentry_eq): New function.
+ (get_entry_number): Use menuentry_eq.
+ (show_menu): New parameter "autobooted". All users updated.
+ (grub_show_menu): Likewise.
+ * include/grub/normal.h (grub_show_menu): Likewise.
+ * include/grub/menu.h (grub_menu_execute_entry): Removed.
+ (grub_menu_execute_with_fallback): Likewise.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mklayout.c (usage): Update help text.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/legacycfg.c (legacy_file): Trim the line.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-menulst2cfg.c (main): Trim the line.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): Removed.
+ (grub_machine_init): Don't check amount of low memory as reportedly
+ INT 12h can be broken and if low memory is too low we wouldn't have
+ gotten into grub_machine_init anyway.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/mmap.c (grub_get_conv_memsize): New function.
+ (grub_machine_mmap_iterate): Take low memory into account
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_mount): Transform out of range into
+ badfs.
+ Reported by: TiCPU.
+
+2011-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (insert_array): Display RAID name in duplicate
+ members errors.
+
+2011-01-09 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub.d/10_netbsd.in (netbsd_load_fs_module): New function.
+ (netbsd_entry): Use netbsd_load_fs_module() to load filesystem module.
+
+2011-01-09 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Handle
+ openbsd and netbsd types being in part_bsd module.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * config.h.in (_LARGEFILE_SOURCE): Add missing define.
+ (_FILE_OFFSET_BITS): Likewise.
+ Reported by: Seth Goldberg.
+
+2011-01-08 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * configure.ac: Check for libdevmapper header.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (dmu_read): Use void * for some pointers to
+ avoid aliasing.
+ (fzap_lookup): Likewise.
+ (dnode_get): Likewise.
+ (make_mdn): Likewise.
+ (zfs_mount): Likewise.
+ (fzap_iterate): Use temporary pointer to avoid aliasing.
+ (grub_zfs_read): Likewise.
+ * grub-core/loader/i386/xnu.c (grub_xnu_boot): Likewise.
+ * grub-core/loader/xnu.c (grub_cmd_xnu_kernel): Use void * for some
+ pointers to avoid aliasing.
+ (grub_cmd_xnu_kernel64): Likewise.
+ (grub_xnu_load_driver): Likewise.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/terminal.c (grub_cmd_terminal_input): Silence
+ aliasing warning.
+ (grub_cmd_terminal_output): Likewise.
+ Reported and tested by: Grégoire Sutre.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c (grub_keyboard_getkey): Silence spurious
+ warning.
+ Reported and tested by: Grégoire Sutre.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Do CPU substitution even if it's specified explicitly.
+ Reported and tested by: Alain Greppin.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am (rs_decoder.S): Force compilation with -Os.
+ Reported and tested by: Alain Greppin.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Satisfy some bison versions need for inttypes.h.
+
+ * grub-core/lib/posix_wrap/inttypes.h: New file.
+ * grub-core/lib/posix_wrap/sys/types.h (int8_t): New type.
+ (int16_t): Likewise.
+ (int32_t): Likewise.
+ (int64_t): Likewise.
+ Reported and tested by: Alain Greppin.
+
+2011-01-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta):
+ Silence spurious warning.
+ Reported and tested by: Alain Greppin.
+
+2011-01-07 Szymon Janc <szymon@janc.net.pl>
+
+ * docs/grub.texi (Support automatic decompression): Update with xz
+ decompression support.
+
+2011-01-07 Szymon Janc <szymon@janc.net.pl>
+
+ Improve loaders' kernel command line handling.
+
+ * grub-core/lib/cmdline.c: New file.
+ * include/grub/lib/cmdline.h: Likewise.
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Use
+ grub_create_loader_cmdline to create kernel command line.
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_linux): Likewise.
+ * grub-core/Makefile.core.def (linux16): Add lib/cmdline.c on i386_pc.
+ (linux): Add lib/cmdline.c on common.
+
+2011-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Take into account that
+ inopos might be unaligned.
+
+2011-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing
+ endian transformations.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
+ Based on report by: Doug Nazar.
+
+2011-01-07 Doug Nazar <nazard.michi@gmail.com>
+
+ * grub-core/disk/raid5_recover.c (grub_raid5_recover): Add missing
+ array->members[i].start_sector.
+ * grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
+
+2011-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Handle NetBSD and OpenBSD disklabels.
+ Reported and tested by: Grégoire Sutre.
+
+2011-01-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * tests/util/grub-shell.in: Set serial terminfo type to `dumb', to
+ avoid causing test failures by clearing the screen.
+
+2011-01-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo):
+ Fix prefix check to handle the case where dir ends with a slash
+ (most significantly, "/" itself).
+ Reported by: Michael Vogt.
+
+2011-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Run terminfo_cls on initing terminfo output to clear the screen and
+ move the cursor to (0,0).
+
+ * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_init_output):
+ Call grub_terminfo_output_init.
+ * grub-core/term/serial.c (grub_serial_term_output): Set .init.
+ * grub-core/term/terminfo.c (grub_terminfo_output_init): New function.
+ * include/grub/terminfo.h (grub_terminfo_output_init): New declaration.
+
+2011-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Determine ofpathname, nvsetenv and efibootmgr
+ only when needed.
+
+2011-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_terminfo_readkey): Handle keys with
+ CTRL.
+
+2011-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ The E820 type 5 is BADRAM, not EXEC_CODE.
+
+ * grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
+ (GRUB_E820_BADRAM): New define.
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Translate code
+ into reserved. Propagate BADRAM.
+ * grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
+ (GRUB_E820_BADRAM): New define.
+
+2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/efi/relocator.c (grub_relocator_firmware_fill_events):
+ Ignore the memory post-4G.
+ (grub_relocator_firmware_alloc_region): Additional debug statement.
+
+2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Check md/%s
+ names.
+ Reported by: David Pravec.
+
2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Workaround buggy