summaryrefslogtreecommitdiffstats
path: root/ChangeLog-2015
diff options
context:
space:
mode:
Diffstat (limited to 'ChangeLog-2015')
-rw-r--r--ChangeLog-201555487
1 files changed, 55487 insertions, 0 deletions
diff --git a/ChangeLog-2015 b/ChangeLog-2015
new file mode 100644
index 0000000..869f6bf
--- /dev/null
+++ b/ChangeLog-2015
@@ -0,0 +1,55487 @@
+2015-01-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/file_filter/file: Really add missing file.
+
+2015-01-23 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/xen/xendisk.c: Accept hdX as disk names on Xen to
+ allow legacy menu.lst processing.
+
+2015-01-22 Felix Janda <felix.janda@posteo.de>
+
+ Remove direct _llseek code and require long filesystem libc.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove potential division by 0 in gfxmenu.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_text.c (grub_menu_init_page): Avoid
+ returning 0 geometry to avoid divisions by 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/cputime.c (grub_util_get_cpu_time_ms): Cache
+ sc_clk_tck and check it for sanity.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/mm.c (grub_efi_get_memory_map): Never return a
+ descriptor_size==0 to avoid potential divisions by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/haiku/getroot.c (grub_util_find_partition_start_os):
+ Avoid division by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/generic/rtc_get_time_ms.c (grub_rtc_get_time_ms): Avoid
+ division by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (guessfsb): Avoid division by 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/tsc.c (calibrate_tsc): Ensure that
+ no division by 0 occurs.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_div_roundup): Remove as it's unused.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c: Avoid division by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid division by zero in serial.
+
+ * grub-core/term/serial.c (grub_cmd_serial): Ensure speed is not 0.
+ * grub-core/term/ns8250.c (serial_get_divisor): Exit if speed is 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/jpeg.c: Avoid sivision by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c: Validate volumes to avoid division
+ by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/term.h: Avoid returining 0-sized terminal
+ as it may lead to division by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs.c: Avoid divisions by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c: Avoid divisions by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Check that hash len is not 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/linux/blocklist.c (grub_install_get_blocklist): Check
+ blocksize validity.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/i386/pc/biosdisk.c: Check disk size sanity.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/nand.c (grub_nand_open): Check block size
+ validity.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Do not
+ divide by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c (grub_hfs_mount): Additional filesystem
+ sanity checks.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c: Additional filesystem
+ sanity checks.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_mount): Additional
+ checks for superblock validity.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_mount): Check
+ that sblock.ino_per_group is not 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Reject NILFS2 superblocks with over 1GiB blocks.
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_valid_sb): Check that
+ block size is <= 1GiB.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ata.c (grub_ata_setaddress): Check that geometry
+ is sane when using CHS addressing.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/AFSplitter.c (AF_merge): Check that mdlen is not 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/play.c (grub_cmd_play): Avoid
+ division by zero.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_maxpacket): Avoid
+ potentially returning 0.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c (grub_minix_read_file): Avoid reading past
+ the end of file.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (grub_fshelp_read_file): Don't attempt to read
+ past the end of file.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/lexer.c (grub_script_lexer_yywrap): Update len
+ synchronously with line.
+
+2015-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace explicit sizeof divisions by ARRAY_SIZE.
+
+2015-01-19 Kris Moore <kris@pcbsd.org>
+
+ * grub-core/disk/geli.c: Support GELI v6 and v7.
+
+2014-12-09 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/term/serial.c (grub_cmd_serial): Fix --rtscts
+ option processing.
+
+2014-12-07 David Kozub <zub.272@gmail.com>
+
+ * grub-core/kern/arm/misc.S: fix unaligned 64bit local variable
+ in __aeabi_uidivmod
+ Fixes Savannah bug #43632.
+
+2014-12-07 Peter Nelson <peterdn>
+
+ * grub-core/fs/ext2.c (grub_ext2_read_block): Support large sparse
+ chunks.
+
+2014-12-07 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mkconfig_lib.in (version_test_gt): Remove redundant
+ non-portable '-n' echo option.
+ * util/grub.d/10_kfreebsd.in: Change how list is built to avoid
+ non-portable 'echo -n.
+ * util/grub.d/10_linux.in: Likewise (closes 43668).
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Print spaces directly to avoid
+ non-portable 'echo -n'.
+
+2014-12-07 Curtis Larsen <larsen@dixie.edu>
+
+ * grub-core/net/tcp.c (grub_net_recv_tcp_packet): Fix double
+ free when multiple empty segments were received (closes 42765).
+
+2014-12-05 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * tests/util/grub-shell.in: Support --files also for netboot.
+ * tests/file_filter_test.in: New file with file filters tests.
+ * Makefile.util.def: Add file_filter_test.
+ * conf/Makefile.extra-dist: ... and here.
+ * tests/file_filter/file.gz: Test file for file_filter_test.
+ * tests/file_filter/file.gz.sig: Likewise.
+ * tests/file_filter/file.lzop: Likewise.
+ * tests/file_filter/file.lzop.sig: Likewise.
+ * tests/file_filter/file.xz: Likewise.
+ * tests/file_filter/file.xz.sig: Likewise.
+ * tests/file_filter/keys: Likewise.
+ * tests/file_filter/keys.pub: Likewise.
+ * tests/file_filter/test.cfg: Likewise.
+ * grub-core/commands/verify.c: Fix memory corruption doing
+ signature check for network files (closes 43601).
+
+2014-12-01 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/loader/i386/xen_fileXX.c (grub_xen_get_infoXX): Fix
+ memory leak (CID 73645, 73782).
+ * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Fix memory leak
+ (CID 73635).
+
+2014-11-30 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/lib/syslinux_parse.c (free_menu): Do not free
+ inline array (CID 73610).
+
+2014-11-28 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/io/lzopio.c (test_header): Fix double free (CID 73665)
+ * grub-core/disk/geli.c (configure_ciphers): Fix memory leaks
+ (Coverity CID 73813, 73710)
+ * grub-core/disk/luks.c (configure_ciphers): Fix memory leaks
+ and use after free (Coverity CID 73813, 73710, 73730)
+ * grub-core/disk/luks.c (luks_recover_key): Fix memory leak (Coverity
+ CID 73854)
+ * util/grub-install-common.c (grub_install_get_target): Check return
+ value of grub_util_fd_read (Coverity CID 73819).
+ * util/grub-mkstandalone.c (add_tar_file): Fix out of bound access
+ to hd.magic (Coverity CID 73587, 73888, bug 43690).
+
+2014-11-20 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * tests/util/grub-fs-tester.in: Consistently print output
+ of grub ls if test fails.
+
+2014-11-07 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/kern/efi/init.c: check value of *path before
+ dereferencing.
+
+2014-11-03 Michael Chang <mchang@suse.com>
+
+ * grub-core/net/icmp6.c (grub_net_recv_icmp6_packet): Fix size
+ of neighbor solicitation packet in grub_netbuff_pull.
+
+2014-10-14 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/loader/arm/linux.c: Use full initializer for initrd_ctx to
+ avoid fatal warnings with older gcc (probably before 4.7).
+ * grub-core/loader/arm64/linux.c: Likewise.
+ * grub-core/loader/i386/linux.c: Likewise.
+ * grub-core/loader/i386/pc/linux.c: Likewise.
+ * grub-core/loader/ia64/efi/linux.c: Likewise.
+ * grub-core/loader/mips/linux.c: Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c: Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c: Likewise.
+
+2014-09-25 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix in-tree --platform=none
+
+ * configure.ac: Only remove include/grub/cpu and
+ include/grub/machine in the --platform=none case, not all of
+ include/grub.
+
+2014-09-23 Colin Watson <cjwatson@ubuntu.com>
+
+ Add a new "none" platform that only builds utilities
+
+ * configure.ac: Add "none" platform. Default to it for unsupported
+ CPUs rather than stopping with a fatal error. Don't downgrade
+ x86_64-none to i386. Define COND_real_platform Automake conditional
+ if the platform is anything other than "none". Don't do any include
+ directory linking for "none".
+ * Makefile.am: Skip building grub-core and all bootcheck targets if
+ !COND_real_platform.
+ * include/grub/time.h: Don't include <grub/cpu/time.h> if GRUB_UTIL
+ is defined.
+
+2014-09-22 Andrei Borzenkov <arvidjaar@gmail.com>
+
+ Use grub_cpu_to_XXX_compile_time for constants.
+
+2014-09-21 Valentin Dornauer <valentin@unimplemented.org>
+
+ The AML parser implements only a small subset of possible AML
+ opcodes. On the Fujitsu Lifebook E744 this and another bug in
+ the parser (incorrect handling of TermArg data types) would lead
+ to the laptop not turning off (_S5 not found).
+
+ * grub-core/commands/acpihalt.c: Support OpAlias in the AML parser;
+ in skip_ext_op(), handle some Type2Opcodes more correctly (TermArgs
+ aren't always simply strings!); Add function to skip TermArgs
+ * include/grub/acpi.h: Add new opcodes
+
+2014-09-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c: Don't drop to rescue console in
+ case of password-protected prompt and no menu entries.
+
+2014-09-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/keylayouts.c: Ignore unknown keys.
+
+2014-09-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gmodule.pl.in: Accept newer binutils which output
+ empty column rather than 0x0.
+
+2014-09-21 Michael Chang <mchang@suse.com>
+
+ * grub-core/osdep/unix/config.c: Remove extraneous comma.
+
+2014-09-21 Peter Jones <pjones@redhat.com>
+
+ * grub-core/loader/arm/linux.c: Initialized initrd_ctx so
+ we don't free a random pointer from the stack.
+ * grub-core/loader/arm64/linux.c: Likewise.
+ * grub-core/loader/i386/linux.c: Likewise.
+ * grub-core/loader/i386/pc/linux.c: Likewise.
+ * grub-core/loader/ia64/efi/linux.c: Likewise.
+ * grub-core/loader/mips/linux.c: Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c: Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c: Likewise.
+
+2014-09-15 Khem Raj <raj.khem@gmail.com>
+
+ * grub-core/kern/emu/hostfs.c: use _DEFAULT_SOURCE in addition to
+ _BSD_SOURCE to avoid warnings under glibc 2.20+.
+
+2014-09-08 Michael Chang <mchang@suse.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_extent_read): Fix extent size
+ check; comparing &data->extent against addresses in the region it
+ points to is unpredictable.
+
+2014-09-07 Colin Watson <cjwatson@ubuntu.com>
+
+ Support grub-emu on x32 (ILP32 but with x86-64 instruction set)
+
+ * configure.ac: Remove -m64 from checks for -mcmodel=large and
+ -mno-red-zone. These are always either unnecessary (x86_64-emu) or
+ already in TARGET_CFLAGS at this point, and they produce incorrect
+ results when building for x32.
+ * grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Cast
+ pointers to Elf64_Xword via grub_addr_t, in order to work on x32.
+ * include/grub/x86_64/types.h (GRUB_TARGET_SIZEOF_VOID_P,
+ GRUB_TARGET_SIZEOF_LONG): Define to 4 on x32.
+
+2014-09-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Remove several unnecessary semicolons.
+
+2014-08-25 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
+ Initialise pend to pacify GCC.
+
+2014-08-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mkconfig.in: Fix typo (gettext_print instead of
+ gettext_printf).
+
+2014-08-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c: Retry probing keyboard if
+ scancode setup failed.
+
+2014-08-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk_common.c: Clump disk size to 1EiB.
+
+2014-08-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Add
+ safety to avoid triggerring VirtualBox bug.
+
+2014-08-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cbfs.c: Don't probe disks of unknow size.
+
+ Fixes hang on virtualbox.
+
+2014-07-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/10_hurd.in: Make kernel list progression not fail on
+ kernels whose paths contain regex metacharacters.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+ Reported by: Heimo Stranner.
+
+2014-06-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub-dev.texi (Finding your way around): The build system no
+ longer uses AutoGen directly.
+
+2014-06-21 Роман Пехов <roman_pekhov>
+
+ * grub-core/commands/loadenv.c (check_blocklists): Fix overlap check.
+
+2014-06-21 Glenn Washburn <development@efficientek.com>
+
+ * util/grub-install.c: Fix handling of --disk-module.
+
+2014-06-21 Stephane Rochoy <sheda>
+
+ * grub-core/loader/i386/bsd.c (grub_netbsd_boot): Pass pointer to
+ EFI system table.
+
+2014-06-21 Stephane Rochoy <sheda>
+
+ * grub-core/commands/efi/lsefisystab.c (grub_cmd_lsefisystab): Show
+ EFI system table physical address.
+
+2014-06-21 Trevor Woerner <trevor.woerner@linaro.org>
+
+ * util/grub-gen-asciih.c (add_glyph): Fix uninitialised variable.
+
+2014-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c (grub_pubkey_open): Trust procfs.
+
+2014-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c (grub_pubkey_open): Fix memdisk
+ check.
+
+2014-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (__bzero): Don't compile in GRUB_UTIL.
+
+ Reported by: Yves Blusseau <blusseau@zetam.org>.
+
+2014-04-20 Piotr Krysiuk <piotras@gmail.com>
+
+ * grub-core/lib/i386/relocator.c: Allow loading old kernels by placing
+ GDT in conventional memory.
+
+2014-04-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/30_os-prober.in: Tolerate devices with no filesystem
+ UUID. Other parts of grub-mkconfig tolerate these, they were
+ previously allowed here up to commit
+ 55e706c918922def17f5012c23cfe88c4c645208, and they can arise in
+ practice when the system has active LVM snapshots.
+ Fixes Ubuntu bug #1287436.
+
+2014-04-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/lvm.c (grub_lvm_detect): Search for
+ "logical_volumes" block a little more accurately.
+
+2014-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/syslinux_parse.c: Fix timeout quoting.
+
+2014-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/libgcc.h: Remove ctzsi2 and ctzdi2. They're no longer
+ pulled from libgcc.
+
+2014-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace few instances of memcmp/memcpy in the code that should be
+ grub_memcmp/grub_memcpy.
+
+2014-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/linux/getroot.c (grub_util_part_to_disk): Support NVMe
+ device names.
+
+2014-03-31 Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
+
+ btrfs: fix get_root key comparison failures due to endianness
+
+ * grub-core/fs/btrfs.c (get_root): Convert
+ GRUB_BTRFS_ROOT_VOL_OBJECTID to little-endian.
+
+2014-03-31 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix partmap, cryptodisk, and abstraction handling in grub-mkconfig.
+
+ Commit 588744d0dc655177d5883bdcb8f72ff5160109ed caused grub-mkconfig
+ no longer to be forgiving of trailing spaces on grub-probe output
+ lines, which among other things means that util/grub.d/10_linux.in
+ no longer detects LVM. To fix this, make grub-probe's output
+ delimiting more consistent. As a bonus, this improves the coverage
+ of the -0 option.
+
+ Fixes Debian bug #735935.
+
+ * grub-core/disk/cryptodisk.c
+ (grub_util_cryptodisk_get_abstraction): Add a user-data argument.
+ * grub-core/disk/diskfilter.c (grub_diskfilter_get_partmap):
+ Likewise.
+ * include/grub/cryptodisk.h (grub_util_cryptodisk_get_abstraction):
+ Update prototype.
+ * include/grub/diskfilter.h (grub_diskfilter_get_partmap): Likewise.
+ * util/grub-install.c (push_partmap_module, push_cryptodisk_module,
+ probe_mods): Adjust for extra user-data arguments.
+ * util/grub-probe.c (do_print, probe_partmap, probe_cryptodisk_uuid,
+ probe_abstraction): Use configured delimiter. Update callers.
+
+2014-03-31 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-probe,c (options): Make -0 work again (broken by
+ conversion to argp).
+ (main): Simplify logic.
+
+2014-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c: Fix the case when end of leftover is used.
+
+2014-03-26 Fu Wei <fu.wei@linaro.org>
+
+ * grub-core/loader/arm64/linux.c: Remove redundant "0x".
+
+2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/openbsd_bootarg.h: Add addr and frequency fields.
+ * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Fill addr field.
+
+ Suggested by: Markus Müller.
+
+2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/mmap.c: Fallback to EISA memory map
+ if E820 failed to return any regions.
+
+2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/mmap/i386/uppermem.c (lower_hook) [COREBOOT]: Ignore low
+ tables for low memory calculations.
+
+2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi): Limit
+ location to 640K.
+
+2014-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/coreboot/mmap.c: Filter out 0xa0000-0x100000
+ region.
+
+2014-02-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Ignore NPORTS field and rely on PI
+ exclusively.
+
+2014-02-04 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Add bootpath parser for open firmware.
+
+ It enables net boot even when there is no bootp/dhcp server.
+
+ * grub-core/net/drivers/ieee1275/ofnet.c: Add grub_ieee1275_parse_bootpath
+ and call it at grub_ieee1275_net_config_real.
+ * grub-core/kern/ieee1275/init.c: Add bootpath to
+ grub_ieee1275_net_config.
+ * include/grub/ieee1275/ieee1275.h: Likewise.
+
+
+2014-02-04 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Add grub_env_set_net_property function.
+
+ * grub-core/net/bootp.c: Remove set_env_limn_ro.
+ * grub-core/net/net.c: Add grub_env_set_net_property.
+ * include/grub/net.h: Likewise.
+
+2014-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c: Build fix for argp.h with older gcc.
+
+2014-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c: Build fix for argp.h with older gcc.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Increase timeout. Some SSDs take up to
+ 7 seconds to recover if last poweroff was bad.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Properly handle transactions with no
+ transferred data.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Add safety cleanups.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Allocate and clean space for all possible 32
+ slots to avoid pointing to uninited area.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Do not enable I/O decoding and keep
+ enabling busmaster for the end.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c: Downgrade warnings about unhandled features
+ to debug.
+
+2014-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c: Tolerate missing keyboard.
+
+2014-01-29 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * .gitignore: add missing files and .exe variants.
+
+2014-01-26 Mike Gilbert <floppym@gentoo.org>
+
+ grub-install: support for partitioned partx loop devices.
+
+ * grub-core/osdep/linux/getroot.c (grub_util_part_to_disk): Detect
+ /dev/loopX as being the parent of /dev/loopXpY.
+
+2014-01-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/serial.c (grub_serial_register): Fix invalid free.
+ Ensure that pointers are inited to NULL and that pointers are not
+ accessed after free.
+
+2014-01-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * include/grub/crypto.h: Replace __attribute__ ((format (printf)) with
+ __attribute__ ((format (__printf__)) to fix compilation under MinGW-w64.
+ * include/grub/emu/misc.h: ... and here.
+ * include/grub/err.h: ... and here.
+ * util/import_gcry.py: ... and here (in files g10lib.h).
+
+2014-01-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mkimage.c: Make prefix argument mandatory.
+
+2014-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix several translatable strings.
+
+ Suggested by: D. Prévot.
+
+2014-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.c: List available targets.
+
+2014-01-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.c (write_to_disk): Add an info message.
+
+2014-01-21 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * Makefile.am: Allow adding extra files to generated Windows ZIP
+ archive by setting GRUB_WINDOWS_EXTRA_DIST.
+
+2014-01-21 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * configure.ac: Look for DejaVuSans also in /usr/share/fonts/truetype.
+ Show detected font path in summary.
+
+2014-01-21 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * grub-core/net/arp.c (grub_net_arp_send_request): Increase network try
+ interval gradually.
+ * grub-core/net/icmp6.c (grub_net_icmp6_send_request): Likewise.
+ * grub-core/net/net.c (grub_net_fs_read_real): Likewise.
+ * grub-core/net/tftp.c (tftp_open): Likewise.
+ * include/grub/net.h (GRUB_NET_INTERVAL_ADDITION): New define.
+
+2014-01-21 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * grub-core/net/net.c (receive_packets): Change stop condition to avoid
+ infinite loops.
+
+ In net/net.c there is a while (1) that only exits if there is a stop
+ condition and more then 10 packages or if there is no package received.
+
+ If GRUB is idle and enter in this loop, the only condition to leave is
+ if it doesn't have incoming packages. In a network with heavy traffic
+ this never happens.
+
+2014-01-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/osdep/freebsd/hostdisk.c (grub_util_fd_open): Ignore
+ EPERM when modifying kern.geom.debugflags. It is only a problem for
+ such things as installing GRUB to the MBR, in which case there'll be
+ an error later anyway, not for opening files during tests.
+
+2014-01-18 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/Makefile.am: Build grub_emu_init.[ch] from MODULE_FILES
+ instead of MOD_FILES.
+ * grub-core/genemuinit.sh: Simplify stripping of suffix so it works
+ both with and without .exe.
+ * grub-core/genemuinitheader.sh: Same.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.c: Fix a typo.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c (read_config_file): Buffer config file.
+ Reduces boot time.
+
+2014-01-18 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * acinclude.m4 (grub_CHECK_LINK_DIR): Check that we can also remove
+ symbolic link to directory. It fails in Msys shell on Windows 2003.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (default_payload.elf): Add modules
+ multiboot cbmemc linux16 gzio echo help.
+
+2014-01-18 Mike Gilbert <floppym@gentoo.org>
+
+ * Makefile.util.def: Link grub-ofpathname with zfs libs.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/macbless.c: Rename FILE and DIR to avoid
+ conflicts.
+
+ Reported by: Andrey Borzenkov.
+
+2014-01-18 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * include/grub/misc.h: Move macros for compiler features to ...
+ * include/grub/compiler.h: ... new file.
+ * include/grub/list.h: Include <grub/compiler.h> instead of <grub/misc.h>.
+ * grub-core/commands/fileXX.c: Include <grub/misc.h>.
+ * grub-core/efiemu/prepare.c: Include <grub/misc.h>.
+ * grub-core/loader/i386/xen_file.c: Include <grub/misc.h>.
+ * grub-core/loader/i386/xen_fileXX.c: Include <grub/misc.h>.
+ * grub-core/video/capture.c: Include <grub/misc.h>.
+ * include/grub/command.h: Include <grub/misc.h>.
+ * include/grub/dl.h: Include <grub/misc.h>.
+ * include/grub/procfs.h: Include <grub/misc.h>.
+
+2014-01-18 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * configure.ac: Add support for BUILD_EXEEXT and use it ...
+ * Makefile.am: ... here.
+ * Makefile.util.def: ... and here.
+ * grub-core/Makefile.am: ... and here.
+
+2014-01-18 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * include/grub/osdep/hostfile_windows.h: Use _W64 instead of
+ FILE_OFFSET_BITS to differentiate between native MinGW and Mingw W64.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c: Recognize keys F1-F12.
+
+2014-01-18 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * configure.ac: Add support for BUILD_LDFLAGS.
+ * Makefile.am: Use BUILD_LDFLAGS for build time programs here ...
+ * grub-core/Makefile.am: ... and here.
+ * INSTALL: Mention BUILD_LDFLAGS.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mount.c: Extend GCC warning workaround to grub-mount.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/efi.c: Ensure that the result starts with /
+ and has no //.
+
+2014-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: Add few missing entries.
+
+2014-01-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in (make_timeout): Use && rather than test
+ -a.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/10_netbsd.in (netbsd_load_fs_module): Use || rather
+ than test -o.
+ * util/grub.d/30_os-prober.in: Use && rather than test -a, and ||
+ rather than test -o.
+
+2014-01-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/osdep/freebsd/hostdisk.c (grub_util_fd_open): Remove
+ redundant preprocessor conditional.
+
+2014-01-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-macbless): Change mansection to 8.
+
+2014-01-07 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/loader/arm64/linux.c: correctly set device path end length.
+
+2014-01-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install.c: Use bootaa64.efi instead of bootaarch64.efi on
+ arm64 to comply with EFI specification. Also use grubaa64.efi for
+ consistency.
+ * util/grub-mkrescue.c: Change to use bootaa64.efi too.
+
+2014-01-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * include/grub/osdep/hostfile_windows.h: Do not redefine fseeko/ftello
+ on MinGW-64 when compiling for 32 bits.
+
+2013-12-30 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/Makefile.core.def: strip .eh_frame section for arm64-efi.
+
+2013-12-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: Add few missing entries. Correct existing ones.
+
+2013-12-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't abort() on unavailable coreboot tables if not running on coreboot.
+
+2013-12-28 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/kern/emu/misc.c: Remove unused error.h; fixes compilation
+ on mingw.
+
+2013-12-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: The cmosclean command in fact dates back to 1.99. Remove
+ mention of it from 2.02.
+
+2013-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache_armv6.S: Remove .arch directive.
+
+ As these functions are used on pre-ARMv6 CPUs as well we don't want
+ to make assembler assume that architecture is higher than default one.
+
+2013-12-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: First draft of 2.02 entry.
+
+2013-12-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * INSTALL (Cross-compiling the GRUB): Fix some spelling mistakes.
+ * docs/grub.texi (Getting the source code): Likewise.
+
+2013-12-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/osdep/windows/platform.c (get_platform): Fix EFI
+ detection.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Set version to 2.02~beta2.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (name_devices): Skip Apple ghosts.
+
+2013-12-24 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-probe.c: Improve help message and simplify list handling.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix buffer overflow in grub_efi_print_device_path.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Show SATA device path.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Revert grub-file usage in grub-mkconfig.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make newly-created files other than grub.cfg world-readable.
+
+2013-12-24 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub.d/00_header.in: Improve compatibility with old config.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make rijndael.c respect aliasing rules.
+
+ Trivial backport of dfb4673da8ee52d95e0a62c9f49ca8599943f22e.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_util_device_is_mapped_stat available in grub-emu core.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add -Qn to TARGET_CFLAGS if it's supported.
+ Fixes compilation on cygwin.
+
+ Reported by: Andrey Borzenkov.
+ Suggested by: Andrey Borzenkov.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Save TARGET_CC version in modinfo.sh.
+
+ Suggested by: Andrey Borzenkov.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_util_devmapper_part_to_disk and grub_util_find_partition_start
+ follow the same algorithm to avoid method mismatch. Don't assume
+ DMRAID- UUID to mean full disk but instead check that mapping is linear.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Declare GRUB_EFI_VENDOR_APPLE_GUID.
+
+2013-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Dump type and vendor specific data when printing device path.
+
+2013-12-23 Colin Watson <cjwatson@debian.org>
+
+ Update some documentation to refer to Git rather than Bazaar.
+
+ * docs/grub.texi (Obtaining and Building GRUB): Refer to Git rather
+ than Bazaar.
+ * po/README: Likewise. Fix spelling mistake.
+
+2013-12-23 Colin Watson <cjwatson@ubuntu.com>
+
+ Don't distribute config.h.
+
+ * Makefile.am (platform_HEADERS): Move to ...
+ (nodist_platform_HEADERS): ... here. Fixes gettext_strings_test
+ failure when building from a distributed tarball.
+
+2013-12-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Fix spelling.
+ * grub-core/commands/parttool.c: Fix grammar.
+ * grub-core/disk/ldm.c: Use consistent capitalisation for "LDM
+ Embedding Partition".
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ARM64 support for grub-mkrescue.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Install modinfo.sh to keep build information around.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/modinfo.sh.in: Add build config information.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ARM64 grub-file and grub-mkconfig support.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove leftover options defines.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/arm64/linux.h: Remove leftovers. Add missing prefixes.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/arm64/linux.c: Add missing bracket.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add arm64-efi recognition to grub-file.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ia64-efi recognition in grub-file.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Recognize raspberry pi kernel in grub-file.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable cache on ARM U-Boot port.
+
+ Without it the port is reidiculously slow.
+
+2013-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ARM cache maintainance.
+
+ More code was converted from ASM to C for easier handling.
+
+2013-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache.c (grub_arm_disable_caches_mmu): Use v6
+ algorithm on v5.
+
+ Suggested by: Leif Lindholm.
+
+2013-12-22 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mkconfig.in: Fix Xen platform conditions.
+
+2013-12-22 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mkrescue.c: Split single help message string in several
+ strings used in previous shell version.
+
+2013-12-22 Leif Lindholm <leif.lindholm@linaro.org>
+
+ Add arm64 Linux loader.
+
+2013-12-22 Leif Lindholm <leif.lindholm@linaro.org>
+
+ Add grub_fdt_create_empty_tree() and grub_fdt_set_prop64().
+
+2013-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add module loading and parsing boot time checkpoints.
+
+2013-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/arm/linux.c: Pass arguments through on ATAG
+ platforms.
+
+2013-12-22 Lars Wendler <polynomial-c@gentoo.org>
+
+ * util/grub-mkconfig.in: Skip non-executable files.
+
+2013-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Workaround buggy timer in raspberry pie by using our own timer
+ implementation.
+
+2013-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/arm/uboot/kernel.h (GRUB_KERNEL_MACHINE_HEAP_SIZE):
+ Increase to 16 MiB to allow loading the whole memdisk.
+
+2013-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ARM Linux Loader on non-FDT platforms.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Choose link format based on host_os on emu.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/getroot.c: Non-unix build fix.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/main.c: Build fix for emu.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Build fixes for argp.h with older gcc.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-glue-efi.c: Use "universal binary" rather "fat binary"
+ in strings.
+
+ Suggested by: David Prévot.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/crypto.h (grub_crypto_xor): Fix cast-align warning.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable -Wformat=2 if it's supported.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -Wmissing-include-dirs -Wmissing-prototypes
+ -Wmissing-declarations if supported.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/macbless.c (grub_mac_bless_inode): Pass inode as
+ u32 as both HFS and HFS+ have 32-bit inodes.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_strtol): Fix overflow.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/term.h (grub_unicode_estimate_width): Use grub_size_t
+ as return type in both conditionals.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/video.h (grub_video_rgba_color_rgb): Fix prototype
+ to use uint8_t for color.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c (grub_util_get_image_size): Check for overflow.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid6_recover.c (grub_raid_block_mulx): Use grub_size_t
+ for size.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/lvm.c: Use grub_size_t for sizes and grub_ssize_t
+ for pointer difference.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Skip sample keys.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c (grub_qsort_strcmp): Don't discard const attribute.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove duplicate warning arguments.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing static qualifiers.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing includes.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Inline printf templates when possible to enable format checking.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/crypto.h: Don't discard const attribute.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (grub_cmd_dhcpopt): Use snprintf where it
+ was intended.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/crypto.c: Don't discard const attribute.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/disk.c: Fix potential overflow.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c: Don't discard const attribute.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c: Don't discard const attribute.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk.c: Fix potential overflow.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common: Don't include non-existing directory
+ grub-core/lib/libgcrypt-grub/include.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Clarify several translatable messages.
+
+2013-12-21 David Prévot <david@tilapin.org>
+
+ Correct some translatable strings.
+
+2013-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.c: Rephrase mkrescue description.
+
+2013-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+2013-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Clarify several translatable messages.
+
+2013-12-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Be more verbose about some configure failures.
+
+2013-12-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix various build problems on GNU/Hurd.
+
+ * grub-core/osdep/unix/getroot.c (strip_extra_slashes): Move inside
+ !defined (__GNU__).
+ (xgetcwd): Likewise.
+ * include/grub/emu/hostdisk.h (grub_util_hurd_get_disk_info)
+ [__GNU__]: Add prototype.
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__GNU__]: Format
+ long int using %ld rather than %d.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.c: Inform user about install platform.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Set version to 2.02~beta1.
+
+2013-12-18 Allen Pais <allen.pais@oracle.com>
+2013-12-18 Bob Picco <bob.picco@oracle.com>
+
+ * grub-core/boot/sparc64/ieee1275/boot.S: Fix order of fields.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_zlib_decompress handle incomplete chunks.
+
+ Fixes squash4.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am: Don't attempt to export grub_bios_interrupt
+ on i386-multiboot.
+
+2013-12-18 Aleš Nesrsta <starous@volny.cz>
+
+ * grub-core/disk/usbms.c: Retry on unknown errors.
+ Reuse the same tag on retries.
+
+2013-12-18 Aleš Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/ehci.c: Fix handling of newborn transfers.
+
+ Avoid confusing them with already completed transfers.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove xen VFB.
+
+ Due to XEN bug it prevents Linux boot. Remove it at least, until
+ workaround is found.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/exclude.pot: Add 2 missing excludes.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing license section in macbless.mod and macho.mod.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Allow compilation without thumb-interwork as long as no thumb is
+ involved or only thumb2 is used.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Update comment as to why sparc64 clang isn't usable.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add __attribute__ ((sysv_abi)) only if it's really needed.
+
+ Some compilers don't support it.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/syslinux_parse.c: Declare timeout unsigned.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove -Wold-style-definition.
+
+ Not very useful and interaction of it with regexp depends on GCC
+ version.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_util_get_windows_path_real static.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/fileXX.c: Silence cast-align.
+ * grub-core/loader/i386/xen_fileXX.c: Likewise.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Use explicit cast
+ rather than LL suffix.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): Remove leftover.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/arm/linux.c: Use common initrd functions.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Decrease number of strings to translate.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/dl.c: Remove unnecessarry execution mode check.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Mark strings for translation and add remaining ones to exclude list.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-file.c (main): Fix sizeof usage.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Silence spurious warning.
+
+2013-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove check_nt_hiberfil as it's been superseeded by file command.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/osdetect.cfg: Add isolinux config to detected OSes.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement syslinux parser.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/legacycfg.c: Use 32-bit Linux protocol on non-BIOS.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support cpuid --pae.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use AT keyboard on Yeeloong 3A.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add Yeeloong 3A reboot and halt.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add Radeon Yeeloong 3A support.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add bonito 3A support.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/machoXX.c: Fix compilation on non-i386.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xen_fileXX.c: Silence cast-align.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/macho.c: Fix compilation on non-i386.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing format_arg attribute to check that printf with translated
+ messages has proper arguments.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use grub_xasprintf to format translated error messages containing
+ 64-bit quantity.
+
+2013-12-17 Jon McCune <jonmccune@google.com>
+
+ Fix double-free introduced by commit 33d02a42d64cf06cada1c389
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify message for unsupported relocation.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Mark miscompile error for translation.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use %I64 and not %ll when using OS printf if compiling for windows.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Update Mac code to match new register_efi prototype.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement better integration with Mac firmware.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c: Implement special value for
+ load_addr.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Include serial module in default_payload.elf.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add explicit thumb interwork bx in asm files.
+
+ Shouldn't matter for armv >= 5 but let's be safe.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement Truecrypt ISO loader.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c: Ensure at least a single space between commands.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement grub_file tool and use it to implement generating of config
+ in separate root.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Change to v1 xen grants.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/xen/relocator.S: Fix hypercall ABI violation.
+
+ GRUB relied on %ebx being preserved across hypercall which isn't true.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/x86_64/xen/relocator.S: Fix hypercall ABI violation.
+
+ GRUB relied on %rdi being preserved across hypercall which isn't true.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement XEN VFB support.
+
+2013-12-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove grub_bios_interrupt on coreboot.
+
+ It's not used currently and cannot be used safely currently.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Update exclude.pot and mark few strings for translation.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c: Fix incorrect file usage in fallback code.
+
+ Reported by: Jon McCune
+
+2013-12-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/osdep/linux/platform.c (grub_install_get_default_x86_platform):
+ Add verbose information which firmware directories were tried.
+
+2013-12-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/osdep/unix/exec.c (grub_util_exec_redirect_all): New
+ function to optionally redirect all three standard descriptors.
+ Redefine grub_util_exec, grub_util_exec_redirect and
+ grub_util_exec_redirect_null to use it.
+ * include/grub/emu/exec.h: Define it.
+ * include/grub/osdep/exec_unix.h: Delete, it is unused.
+ * grub-core/osdep/linux/platform.c (grub_install_get_default_x86_platform):
+ Use grub_util_exec_redirect_all to redirect error to NULL.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/sleep_test.c: Silence spurious warning.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_xen_hypercall on i386 cdecl rather than stdcall to avoid
+ linker trying to "fixup" the code.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/x86_64/xen/startup.S: Align stack.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add support for converting PE+ to Elf64.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/minicmd.c (grub_mini_cmd_dump): Handle LLP case.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove practice of assigning random const pointers to device id.
+
+ This is not required as cache code already checks driver id as well.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/x86_64/types.h: Define sizeof (long) as 4 when compiling
+ with mingw.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h: Don't use call wrappers when compiled with
+ mingw or cygwin as API already matches.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/errno.h: Undefine errno before redefining.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h: Define (u)intn_t based on pointer size and
+ not on long.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle X86_64_PC64 relocation.
+
+ Those are generated by some cygwin compilers.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Determine the need for mingw-related stubs at compile time rather than
+ using not very significant $target_os.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmod.sh.in: Strip before converting to ELF as strip
+ may not work with ELF.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use unix functions for temporary files and special files on cygwin.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Define functions explicitly rather than using --defsym in tests
+ whenever possible. Respect locality in remaining cases.
+
+2013-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmoddep.awk: Remove explicit getline < /dev/stdin.
+
+2013-12-15 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/osdep/windows/platform.c (grub_install_register_efi): Handle
+ unlikely errors when getting EFI variables and make exhaustive search
+ for all BootNNNN variables to find matching one.
+
+2013-12-15 Ian Campbell <ijc@hellion.org.uk>
+
+ * grub-core/kern/uboot/init.c: Fix units of uboot timer.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New functional test for sleep function.
+
+ This test allows to check sleep without qemu. Keep qemu version as
+ well as functional test won't notice if all clocks are going too fast
+ or too slow.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add explicit sysv_abi on amd64 asm routines.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/efi/lsefisystab.c: Use %lld to show
+ num_table_entries.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/test.h: Use gnu_printf rather than printf on GRUB
+ functions.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c: Use grub_addr_t rather than long when
+ appropriate.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c: Use %p rather than %lx for pointers.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/elfXX.c: Use grub_addr_t rather than long when
+ appropriate.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/loopback.c: Use sequential IDs rather than pointer.
+
+ In case of quick removal of loopback and adding another one it may
+ get same ID, confusing the cache system.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpi.c: Use grub_addr_t rather than long when
+ appropriate.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/coreboot/cbtable.c: Use char * arithmetic rather
+ than converting to long.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/cryptodisk.c: Rename "n" to "last_cryptodisk_id".
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c (relocate_addresses): Display offset rather
+ than almost useless pointer.
+
+2013-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add gcc_struct to all packed structures when compiling with mingw.
+
+ Just "packed" doesn't always pack the way we expect.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/coreboot/lbio.h: Add missing attribute (packed).
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-pe2elf.c: Fix handling of .bss.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement windows flavour of EFI install routines.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.extra-dist: Adjust path to conf/i386-cygwin-img-ld.sc.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Change grub_install_register_efi interface to pass GRUB device.
+
+ This allows grub_install_register_efi to request partition info
+ directly.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Workaround cygwin bug when using \\?\Volume{GUID} syntax.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Do not use TCHAR string functions as they are not available on cygwin.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Workaround windows bug when querying EFI system partition parameters.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/qemu/init.c (resource): Decrease struct size
+ by using bitfields.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/qemu/boot.S: Add missing EXT_C.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make i386-* other than i386-pc compileable under cygwin.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix definition of grub_efi_hard_drive_device_path. Take care that
+ existing code would work even if by some reason bogus definition is
+ used by EFI implementations.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/hostdisk.c: Fix cygwin compilation.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/blocklist.c: Add missing cast in printf
+ invocation.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/config.c: Remove trailing newline from distributor in simple
+ parsing.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h: Rename protocol and interface to avoid
+ conflict.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * .gitignore: add .exe variants. add missing files. remove few outdated
+ entries.
+
+2013-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/exec.c: Use unix version on cygwin.
+
+2013-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement multiboot2 EFI BS specification.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c: Fix premature line wrap and crash.
+ Crash happened only in some cases like a string starting at the
+ half of the screen of same length.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efiemu/efiemu.h: Sync configuration table declaration
+ with EFI counterpart.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Propagate the EFI commits to x86-efi specific parts.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/efi/lssal.c: Fix terminating condition.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Introduce grub_efi_packed_guid and use it where alignment is not
+ guaranteed.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (grub_efi_device_path): Define length as
+ unaligned u16 rather than u8[2].
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Add checks
+ for relocation range.
+
+2013-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ia64/dl.c (grub_arch_dl_relocate_symbols): Handle
+ non-function pcrel21b relocation. It happens with .text.unlikely
+ section.
+
+2013-12-10 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * make MAX_USABLE_ADDRESS platform-specific
+ * grub-core/kern/efi/mm.c: add Vladimir's new BYTES_TO_PAGES_DOWN macro.
+
+2013-12-10 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/lib/fdt.c: change memcpy => grub_memcpy
+
+2013-12-09 Jon McCune <jonmccune@google.com>
+
+ * Add --no-rs-codes flag to optionally disable reed-solomon codes
+ in grub-install and grub-bios-setup for x86 BIOS targets.
+
+2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing compile and link options for sparc64-emu.
+
+2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement sparc64 trampolines (needed for sparc64-emu).
+
+2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Check
+ range of R_SPARC_HI22.
+ Implement R_SPARC_LM22.
+
+2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/powerpc/dl_helper.c (grub_arch_dl_get_tramp_got_size):
+ Do not explicitly check for symbol table as it's already checked in
+ platform-independent layer.
+
+2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/cache.c [__ia64__]: Use our cache cleaning routine
+ on ia64 as __clear_cache is a dummy on ia64.
+
+2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
+ Do not explicitly check for symbol table as it's already checked in
+ platform-independent layer.
+
+2013-12-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Add missing newline to output.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ia64/efi/init.c (grub_arch_sync_caches): Move to ...
+ * grub-core/kern/ia64/cache.c (grub_arch_sync_caches): ... here.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/main.c: Silence missing prototypes to allow emu
+ compilation with GCC <= 4.2.
+ * grub-core/kern/emu/argp_common.c: Likewise.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/kernel.h [__sparc__]: Restrict sparc64-ieee1275 to
+ right platform rather than leaking to sparc64-emu.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/emuconsole.c: Remove unsigned comparison >= 0.
+ But ensure that the variables in question are indeed unsigned.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/lite.c: Add missing include of ../ia64/dl_helper.c.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove grub_memalign on emu.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ia64/efi/init.c: Fix alignment code so it doesn't
+ truncate incomplete lines but instead flushes them.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move OS-dependent mprotect for module loading to grub-core/osdep/*/dl.c
+ and implement windows variant.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix mips-emu compilation.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for freetype library usability.
+
+2013-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make arm-emu work.
+
+2013-12-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c: Replace stpcpy with grub_stpcpy.
+
+2013-12-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Environment): Update color_normal and color_highlight
+ defaults (light-gray instead of white).
+
+2013-12-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/normal/main.c (INIT): Set default color to light-gray
+ to match GRUB_TERM_DEFAULT_NORMAL_COLOR (i.e. rescue mode), Linux
+ and apparently BIOS defaults.
+
+2013-12-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Transform -C option to grub-mkstandalone to --core-compress available
+ in all grub-install flavours.
+
+2013-12-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge GRUBFS and GRUB_FS variables.
+
+2013-12-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ Revert commit 69ca97c820, it caused failures when using OS device name
+ in grub-install. Instead just strip off parenthesis in grub-install
+ if (hdX) was passed.
+
+2013-12-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install.c (push_partmap_module): Add helper to convert
+ partmap names to module names and use it in probe_mods(). Fixes
+ failure to find partmap modules in diskfilter case.
+
+2013-12-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Make unifont mandatory on coreboot.
+
+2013-12-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Skip unifont 6.3 pcf and bdf.
+
+2013-12-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am: Remove partial font files if generation failed.
+
+2013-12-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/misc.c (grub_qsort_strcmp): Add qsort helper function to sort
+ strings.
+ * include/grub/util/misc.h: Define it ...
+ * util/grub-install.c (device_map_check_duplicates): ... and use it.
+
+2013-12-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Fix use of grub-probe instead of
+ ${grub_probe}.
+
+2013-12-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't add -mlong-calls when compiling with clang.
+
+2013-12-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Fix a typo.
+
+2013-12-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Revamp relocation handling.
+
+ Move more code to common dl.c. Add missing veneers for arm and arm64.
+ Decreases kernel size by 70 bytes on i386-pc (40-50 compressed)
+
+2013-12-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c: Fix reloc section generation for ia64.
+
+2013-12-05 Mike Gilbert <floppym@gentoo.org>
+
+ * INSTALL: Raise minimum python version to 2.6.
+ * gentpl.py: Use python3-style print function.
+
+2013-12-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.c: Mention Boot* variable.
+
+2013-12-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/osdep/linux/hostdisk.c
+ (grub_util_find_partition_start_os): Initialise start to avoid
+ spurious compiler warning.
+
+2013-12-05 Colin Watson <cjwatson@ubuntu.com>
+
+ On Linux, read partition start offsets from sysfs if possible, to
+ cope with block device drivers that don't implement HDIO_GETGEO.
+ Fixes Ubuntu bug #1237519.
+
+ * grub-core/osdep/linux/hostdisk.c (sysfs_partition_path): New
+ function.
+ (sysfs_partition_start): Likewise.
+ (grub_util_find_partition_start_os): Try sysfs_partition_start
+ before HDIO_GETGEO.
+
+2013-12-05 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/kern/fdt.c: Update struct size when adding node.
+
+2013-12-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle unaligned .bss on sparc64.
+
+ Current code improperly assumes that both __bss_start and _end are
+ aligned to 8-bytes. Eliminating this assumption and explicitly align
+ modules.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/sparc64/ieee1275/boot.S [CDBOOT]: Move scratchpad
+ so it doesn't land in the middle of loaded image.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Move all warning options that may be absent in
+ gcc >= 3.1 to optional.
+
+ Note: while this allows to compile with older GCC, official requirements
+ remain the same and no support for older GCC.
+
+2013-12-04 Colin Watson <cjwatson@ubuntu.com>
+
+ Copying the themes directory in grub-shell isn't
+ parallel-test-friendly and breaks on the second test when the source
+ directory is read-only (as in "make distcheck"). Instead, add a
+ hidden --themes-directory option to grub-mkrescue et al, and use it
+ in grub-shell.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CFLAGS_GNULIB): Remove -Wno-old-style-definition
+ as it's no longer necessarry.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Allow compilation with older GCC for ARM.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -no-integrated-as if {addme|ame} isn't supported.
+ * INSTALL: Note that GRUBwas successfully compiled with clang 3.2 for
+ ppc.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/main.c: Ignore missing prototype for main.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Pass font config to config.h and not by TARGET_CFLAGS as adding
+ arguments doesn't work if TARGET_CFLAGS is specified on command
+ line.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -Wvla if compiler supports it.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/emuconsole.c (grub_console_putchar):
+ Remove variable length arrays.
+ * grub-core/term/efi/console.c (grub_console_putchar): Likewise.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/qemu/init.c: Remove variable length arrays.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/types.h: Declare all byteswaps as inline functions
+ except compile-time ones.
+
+ Solves variable shadowing in constructions like
+ cpu_to_le (le_to_cpu(x) + 1).
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/efi.c: Remove variable length arrays.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/uboot/init.c (uboot_timer_ms): Fix overflow after 71
+ minutes.
+
+2013-12-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c: Remove variable length arrays.
+ * grub-core/net/drivers/ieee1275/ofnet.c: Likewise.
+
+2013-12-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/Makefile.core.def (setjmp): Distribute
+ lib/arm64/setjmp.S.
+
+2013-12-03 Colin Watson <cjwatson@ubuntu.com>
+
+ Add a new timeout_style environment variable and a corresponding
+ GRUB_TIMEOUT_STYLE configuration key for grub-mkconfig. This
+ controls hidden-timeout handling more simply than the previous
+ arrangements, and pressing any hotkeys associated with menu entries
+ during the hidden timeout will now boot the corresponding menu entry
+ immediately.
+
+ GRUB_HIDDEN_TIMEOUT=<non-empty> + GRUB_TIMEOUT=<non-zero> now
+ generates a warning, and if it shows the menu it will do so as if
+ the second timeout were not present. Other combinations are
+ translated into reasonable equivalents.
+
+ Based loosely on work by Franz Hsieh. Fixes Ubuntu bug #1178618.
+
+2013-12-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/config.c: Add missing pointer adjustment.
+ Reported by: qwertial
+
+2013-11-30 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/kern/arm64/dl_helper.c: Include grub/arm64/reloc.h
+ directly, not via `cpu' link, to fix libgrub.pp generation.
+
+2013-11-30 Leif Lindholm <leif.lindholm@linaro.org>
+
+ New port arm64-efi.
+
+2013-11-30 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (sleep): Document exit codes.
+
+2013-11-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Ensure that -mno-unaligned-access or some equivalent option is used.
+
+2013-11-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt/mpi/longlong.h: Fix compilation error with
+ -march=armv3.
+
+2013-11-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove leftover GRUB_IA64_DL_TRAMP_SIZE.
+
+2013-11-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub-dev.texi (Font Metrics): Exclude @image command from DVI
+ builds, since we don't have an EPS version of font_char_metrics.png.
+ Add leading dot to image extension per the Texinfo documentation.
+
+2013-11-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-gen-asciih.c: Include FT_SYNTHESIS_H rather than
+ <freetype/ftsynth.h>, fixing build with FreeType 2.5.1.
+ * util/grub-gen-widthspec.c: Likewise.
+ * util/grub-mkfont.c: Likewise.
+
+2013-11-29 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-setup.c (main): Move parsing of (hdX) syntax to ...
+ * util/setup.c (SETUP): ... here. Fixes regression: grub-install
+ failed to install on (hdX).
+ * util/grub-setup.c (get_device_name): Remove, not needed after
+ above change.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostfs.c (is_dir): Remove variable length arrays.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c: Remove variable length arrays.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/linux/ofpath.c: Check return value of read.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/mkimage.c (grub_install_generate_image): Use grub_crypto_hash for
+ computing crc32 rather than handling with md fundtions directly.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/mkimage.c (grub_install_generate_image): Use grub_crypto_hash for
+ checking fwstart.img rather than md fundtions directly.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c (main): Check that fread succeeded.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common: Remove -mexplicit-relocs and
+ -DUSE_ASCII_FALLBACK on yeeloong.
+
+ -DUSE_ASCII_FALLBACK is already added by font snippets.
+ -mexplicit-relocs isn't needed is compiler/assemblera are
+ configured properly.
+ If they're not we shouldn't attempt to fix it by ourselves.
+ Binary compare between before and after shows no difference.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def: Remove libgnulib.a and use its
+ sources in dependencies directly.
+
+ This was the only instance of "library" in core config. A bug was
+ reported that -fno-stack-protector wasn't passed to it. Instead of
+ figuring out why it failed just remove this construction used
+ needlessly.
+
+2013-11-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/password.c (grub_password_get): Check that
+ fgets succeeded.
+
+2013-11-27 Francesco Lavra <francescolavra.fl@gmail.com>
+
+ * docs/grub.texi (ls): Fix command description in case of a device name
+ passed as argument.
+
+2013-11-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate variable length arrays in grub_vsnprintf_real.
+
+ A bit tricky because this function has to continue to work without
+ heap for short strings. Fixing prealloc to 32 arguments is reasonable
+ but make all stack references use 32-bit offset rather than 8-bit one.
+ So split va_args preparsing to separate function and put the prealloc
+ into the caller.
+
+2013-11-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Introduce grub_util_file_sync and use it instead of fsync(fileno(f)).
+ Fixes build for windows.
+
+2013-11-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Don't generate platform-dependent conditionals for
+ platform-independent targets.
+
+2013-11-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/osdep/unix/exec.c (grub_util_exec_redirect): Remove
+ references to mdadm from otherwise generic code.
+ (grub_util_exec_pipe): Likewise.
+ (grub_util_exec_pipe_stderr): Likewise.
+ * grub-core/osdep/unix/getroot.c (grub_util_pull_lvm_by_command):
+ This function calls vgs, not mdadm; adjust variable names
+ accordingly.
+
+2013-11-27 Colin Watson <cjwatson@ubuntu.com>
+
+ Generate Makefile.*.am directly from gentpl.py, eliminating the use
+ of Autogen. The Autogen definitions files remain intact as they
+ offer a useful abstraction.
+
+2013-11-27 Colin Watson <cjwatson@ubuntu.com>
+
+ Add grub_util_disable_fd_syncs call to turn grub_util_fd_sync calls
+ into no-ops, and use it in programs that copy files but do not need
+ to take special care to sync writes (grub-mknetdir, grub-rescue,
+ grub-mkstandalone).
+
+2013-11-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * tests/util/grub-fs-tester.in: Execute xorriso from $PATH rather
+ than hardcoding /usr/local/bin/xorriso.
+
+2013-11-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add PCI command activation to all PCI drivers as required for coreboot
+ and maybe some other firmwares.
+
+2013-11-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am: Reduce gratuituous differences between Apple
+ and non-Apple variants of efiemu compile.
+
+2013-11-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * configure.ac: Add explicit check for linking format of
+ efiemu64; save it as EFIEMU64_LINK_FORMAT.
+ * grub-core/Makefile.am: Use EFIEMU64_LINK_FORMAT instead of
+ hardcoding linking format.
+
+2013-11-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mknetdir.c: Look for platform directories under pkglibdir
+ and not pkgdatadir.
+
+2013-11-25 Colin Watson <cjwatson@ubuntu.com>
+2013-11-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add a --locale-directory option to grub-install and related tools.
+
+ * include/grub/util/install.h (GRUB_INSTALL_OPTIONS): Add
+ --locale-directory option.
+ (enum grub_install_options): Add
+ GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY.
+ * util/grub-install-common.c (grub_install_help_filter): Handle
+ GRUB_INSTALL_OPTIONS_LOCALE_DIRECTORY.
+ (grub_install_parse): Likewise.
+ (get_localedir): New function to check for a user-provided option
+ before trying grub_util_get_localedir.
+ (copy_locales): Use get_localedir rather than
+ grub_util_get_localedir. Handle differing locale directory layouts.
+ (grub_install_copy_files): Likewise.
+
+2013-11-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/platform.c (get_ofpathname): Trim ending newline.
+ Don't rely on PATH_MAX.
+
+2013-11-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmoddep.awk: Use more portable && rather than and.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S [__APPLE__]: Create _edata by placing
+ an object after data. While it doesn't seem right solution, it
+ works well enough and OSX isn't main compilation platform.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Add -ed2016 in order to make objconv accept our binary.
+ While it doesn't seem right solution, it works well enough and
+ OSX isn't main compilation platform.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -static to LDFLAGS when using apple linker to
+ prevent it from pulling in dynamic linker.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Apple assembly doesn't handle symbol arithmetic well. So define an
+ offset symbol in boot.S and use it.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Apple assembly doesn't handle symbol arithmetic well. So instead
+ of getting addres of kernel_sector + 4 define kernel_sector_high.
+ It also makes code more readable.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ With Apple assembly in .macro environvemnt you have to use $$ instead
+ of $. So introduce new preprocessor macro MACRO_DOLLAR(x) which expands
+ to $$x on Apple and to $x on everything else.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am: Use correct TARGET_OBJCONV rather than
+ OBJCONV.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gdb/i386/machdep.S: Use xorl %eax, %eax on both Apple
+ and non-Apple. This instruction is shorter and faster,
+ so no reason not to use it on both.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c: Use section _text, _text rather than
+ .text when compiling for Apple.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/arc/console.c: Add missing cast to silence warning.
+
+2013-11-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/boot.S: Fix floppy probe. Due to missing
+ %dx restore the probe worked on non-existant drive. Reorganize the
+ code a little bit to free 2 bytes necessary for push/pop.
+
+2013-11-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
+ Add missing cast to silence warning.
+
+2013-11-23 Keshav Padram Amburay <the.ridikulus.rat@gmail.com>
+
+ * util/grub-install.c (update_nvram): Support --no-nvram flag
+ for EFI targets.
+
+2013-11-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Add note about sparc64/ia64 with clang (unsupported).
+
+2013-11-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/garbage-gen.c: Add missing include of sys/time.h.
+
+2013-11-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't add -mflush-func if it's not supported by compiler.
+
+2013-11-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move common BIOS/coreboot memory map declarations to
+ include/grub/i386/memory_raw.h and eliminate duplicate declarations.
+
+2013-11-22 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * Makefile.am: Add util/garbage-gen.c to EXTRA_DIST.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Document why older clang versions aren't appropriate.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Document about clang for mips.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt/mpi/longlong.h: Use C version with mips
+ clang.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add *-xen to the list of grub-install-common platforms.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Do not enforce -mcmodel=large. It's not necessarry with
+ 3 last commits.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/xen/init.c: Do not map more pages than we can address.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/mm.c: Limit allocations to 2GiB when not compiling
+ with -mcmodel=large.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Add
+ range-checking for 32-bit quantities.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Compile with -fPIC when compiling with clang on
+ mips.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -no-integrated-as on mips(el) to TARGET_CCASFLAGS
+ when compiling with clang.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ clang emits calls to abort () under some unknown conditions.
+ Export abort () when compiling with clang.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub-dev.texi: Document stack and heap sizes.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/pc/memory.h: Decrease
+ GRUB_MEMORY_MACHINE_SCRATCH_SIZE and increase
+ GRUB_MEMORY_MACHINE_PROT_STACK_SIZE.
+ The binary doesn't change (checked). It's more to better reflect actual
+ usage.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Ensure
+ at compile time that enough of scratch size is available.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/x86_64/efi/callwrap.S: Fix stack alignment.
+ Previously we misaligned stack by 8 in startup.S and compensated
+ for it in callwrap.S. According to ABI docs (EFI and sysv amd64)
+ right behaviour is to align stack in startup.S and keep it aligned
+ in callwrap.S. startup.S part was committed few commits before. This
+ takes care of callwrap.S.
+ Reported by: Gary Lin.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/startup_raw.S: Handle the case of gap between
+ .data and .bss. May happen if compiler and assembly use different
+ alignment.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ On MIPS handle got16 relocations to local symbols in an ABI-compliant
+ way.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add support for a new magic symbol _gp_disp on mips to handle PIC
+ binaries.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use $t9 for indirect calls from asm to C as PIC ABI requires.
+
+2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove -march=mips3 from TARGET_CCASFLAGS as it creates linking problem
+ when rest of GRUB is compiled for hisher stepping. Instead use
+ .set mips3/.set mips1 around cache and sync opcodes.
+
+2013-11-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify GOT/trampoline handling between PPC, MIPS and IA64 as they
+ do essentially the same thing, do it in similar way.
+
+2013-11-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.c (main): If a source directory is not
+ specified, read platform-specific files from subdirectories of
+ pkglibdir, not pkgdatadir.
+
+2013-11-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/normal/progress.c: Remove unused file.
+
+2013-11-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/crypto.c (grub_crypto_hash): Remove variable length
+ array.
+
+2013-11-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig.in: Say explicit "grub configuration" rather
+ than grub.cfg.
+
+2013-11-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * coreboot.cfg: Add missing file.
+
+2013-11-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am: Allow STRIP to be empty when creating windowszip.
+
+2013-11-19 Axel Kellermann <axel.kellermann@gmx.de>
+
+ * util/grub.d/30_os-prober.in: Add GRUB_OS_PROBER_SKIP_LIST to
+ selectively skipping systems.
+
+2013-11-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-mkimage): Add
+ grub-core/osdep/aros/config.c to extra_dist.
+ * conf/Makefile.extra-dist (EXTRA_DIST): Add docs/autoiso.cfg,
+ docs/osdetect.cfg, grub-core/gnulib-fix-null-deref.diff,
+ grub-core/gnulib-fix-width.diff, grub-core/gnulib-no-abort.diff, and
+ grub-core/gnulib-no-gets.diff.
+
+2013-11-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add automated filesystem checking based on scripts I've used now for
+ quite some time locally. Most of the test require root so they are
+ skipped when run without necessarry privelegies.
+
+2013-11-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.c (main): Adjust info messages to match
+ installed paths of grub-bios-setup and grub-sparc64-setup.
+
+2013-11-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install-common.c (copy_locales): Consistently use
+ grub_util_get_localedir () rather than LOCALEDIR.
+ (grub_install_copy_files): Likewise.
+
+2013-11-19 Josh Triplett <josh@joshtriplett.org>
+
+ * grub-core/kern/x86_64/efi/startup.S (_start): Align the stack to a
+ 16-byte boundary, as required by the x86-64 ABI, before calling
+ grub_main. In some cases, GCC emits code that assumes this
+ alignment, which crashes if not aligned. The EFI firmware is also
+ entitled to assume that stack alignment without checking.
+
+2013-11-18 Josh Triplett <josh@joshtriplett.org>
+
+ * grub-core/mmap/efi/mmap.c (grub_mmap_register): Round up/down to
+ 4k page boundaries as expected by firmware rather than 1k
+ boundaries.
+ (grub_mmap_malign_and_register): Likewise.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_func_test.in: Decrease RAM size to 512M. With less
+ fragmentation 512M is enough.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_real_malloc): Decrease cut-off of moving the
+ pointer to 32K. This is the size of cache element which is the most
+ common allocation >1K. This way the pointer is always around blocks
+ of 32K and so we keep performance while decreasing fragmentation.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_real_malloc): Don't update the pointer to
+ current memory when allocating large chunks. This significantly
+ decreases memory fragmentation.
+
+2013-11-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * tests/gzcompress_test.in: Skip if gzip is not installed (unlikely,
+ but for symmetry).
+ * tests/lzocompress_test.in: Skip if lzop is not installed.
+ * tests/xzcompress_test.in: Skip if xz is not installed.
+
+2013-11-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.c (main): Fix typo.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Update
+ clock frequency to 200 MHz,
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Increase console size to 1024x1024.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (default_payload.elf): Add pata to loaded modules.
+ Load config file from (cbfsdisk)/etc/grub.cfg.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install-common.c (grub_install_copy_files): Fix module
+ destination directory.
+
+2013-11-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * tests/util/grub-shell.in: Don't fail on emu platform if po/*.gmo
+ files have not been built.
+
+2013-11-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/osdep/unix/hostdisk.c (grub_util_make_temporary_file):
+ Handle errors from mkstemp.
+ (grub_util_make_temporary_dir): Handle errors from mkdtemp.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Use -cdrom and don't force cdrom
+ on primary master on pseries.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/videotest_checksum.c: Don't reload unifont if it's
+ already loaded. This saves memory needed for tests,
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c (main): Fix a typo to make yeeloong part
+ work again.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_cmd_terminfo): Fix a typo to make -g
+ work again.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: For powerpc tests put the CD-ROM as primary
+ master since with some combinations of qemu and firmware only primary
+ IDE channel is available.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/gfxterm_menu.c: Skip high-resolution tests on
+ low-memory platforms where we don't have enough memory for them.
+ * grub-core/tests/videotest_checksum.c: Likewise.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/cmdline_cat_test.c: Don't reload unifont if it's
+ already loaded. This saves memory needed for tests,
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of install lists.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/sparc64/setjmp.S: Force spilling of current window.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ On i386-ieee1275 we run in paged mode. So we need to explicitly map
+ the devices before accessing them.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (grub_mm_check_real): Accept const char *
+ as file argument.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Plug memory leak.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/file.c (grub_file_open): Free file->name on failure.
+ (grub_file_close): Free file->name.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c (free_pk): Plug memory leak.
+ (grub_load_public_key): Likewise.
+ (grub_verify_signature_real): Likewise.
+ (grub_cmd_verify_signature): Likewise.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/legacycfg.c (grub_legacy_check_md5_password): Plug
+ memory leak.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/powerpc/setjmp.S (grub_setjmp): Save r31.
+ (grub_longjmp): Restore r31.
+ * include/grub/powerpc/setjmp.h (grub_jmp_buf): Reserve space for r31.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c (make_image_fwdisk_abs): Insert all partmap
+ modules to be in line with make_image_abs.
+
+2013-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/mips/setjmp.h (grub_jmp_buf): Fix buffer size.
+
+ setjmp.S uses 12 entries but buffer is declared with only 11 entries.
+
+2013-11-17 Ian Campbell <ijc@hellion.org.uk>
+
+ * grub-core/disk/uboot/ubootdisk.c: Include SCSI disks.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_func_test.in: Increase memory reservation as on EFI we need
+ to leave some memory to firmware.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/cmdline_cat_test.c (cmdline_cat_test): Ignore errors
+ of loading gfxterm as gfxterm is embed in kernel on some platforms.
+ * grub-core/tests/gfxterm_menu.c (gfxterm_menu): Likewise.
+ Load gfxmenu.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/core_compress_test.in: Use full arguments as grub-mkimage-extra
+ now needs full arguments.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c (main): Add trailing \n in
+ .disk_label.contentDetails to be in line with previous shell script.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.c (main): Use right source file for bootinfo.txt.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install-common.c (grub_install_parse): Recognize
+ --compress=none like shell script did.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h: Replace check for __sparc64__ with one for
+ __sparc__ as __sparc64__ isn't actually defined.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Use escc-ch-b on powerpc. This is missing
+ counterpart of fixing the naming of escc ports.
+
+2013-11-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install-common.c (platforms): Fix the order of entries and
+ remove useless field val.
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.c: Add new option --no-bootsector to skip
+ installing of bootsector. Accept --grub-setup=/bin/true as
+ backwards-compatible synonym.
+
+2013-11-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install.c (device_map_check_duplicates): Fix incorrect
+ order of qsort arguments (number of elements vs. element size).
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rewrite grub-install, grub-mkrescue, grub-mkstandalone and grub-mknetdir
+ the function of these files exceeds what can be sanely handled in shell
+ in posix-comaptible way. Also writing it in C extends the functionality
+ to non-UNIX-like OS and minimal environments.
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache.S: Don't switch back to ARM mode when
+ compiling to thumb2.
+ * grub-core/kern/arm/cache_armv7.S: Likewise.
+ * grub-core/lib/arm/setjmp.S: Likewise.
+
+2013-11-16 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/kern/arm/uboot/startup.S: delete superflouous save of r8
+ in grub_uboot_syscall
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Decrease stack usage in lexer.
+
+ We have only 92K of stack and using over 4K per frame is wasteful
+
+ * grub-core/script/yylex.l (yyalloc), (yyfree), (yyrealloc): Declare
+ as macros so that compiler would remove useless structure on stack.
+ Better solution would be to fix flex not to put this structure on
+ the stack but flex is external program.
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Decrease stack usage in signature verification.
+
+ We have only 92K of stack and using over 4K per frame is wasteful
+
+ * grub-core/commands/verify.c (grub_load_public_key): Allocate on heap
+ rather than stack.
+ (grub_verify_signature_real): Likewise.
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Decrease stack usage in mdraid 0.9x.
+
+ We have only 92K of stack and using over 4K per frame is wasteful
+
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Allocate on heap
+ rather than stack.
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Decrease stack usage in BtrFS.
+
+ We have only 92K of stack and using over 4K per frame is wasteful
+
+ * grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Allocate on heap
+ rather than stack.
+
+2013-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Decrease stack usage in JFS.
+
+ We have only 92K of stack and using over 4K per frame is wasteful
+
+ * grub-core/fs/jfs.c (getblk): Allocate on heap rather than on
+ stack. Note: this function is recursive.
+ (grub_jfs_read_inode): Read only part we care about.
+
+2013-11-16 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/kern/arm/uboot/startup.S: fix grub_uboot_syscall va_arg
+ handling
+
+2013-11-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * configure.ac: Restore -nostdlib for libgcc symbols tests.
+
+2013-11-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Environment): Document cmdpath.
+
+2013-11-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/kern/mips/arc/init.c (grub_machine_get_bootlocation):
+ Remove "unused" attribute from arguments, they are used.
+
+2013-11-15 Colin Watson <cjwatson@debian.org>
+
+ * .gitignore: Only ignore grub-mk* at the top level.
+
+2013-11-15 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-reboot.in (usage): Fix a typo.
+
+2013-11-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace libgcc version of ctz with our own.
+
+ On upcoming arm64 port libgcc ctz* are not usable in standalone
+ environment. Since we need ctz* for this case and implementation is
+ in C we may as well use it on all concerned platforms.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Probe for linking format rather than guessing it based
+ on target_os.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/xen/xendisk.c (grub_xendisk_fini): Set state to
+ "1" prior to handoff.
+
+ Reported by: M A Young.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/xen/init.c (grub_xenstore_write_file): Don't add
+ \0 to all files.
+
+ Reported by: M A Young.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/bsd/hostdisk.c (grub_util_get_fd_size_os): Fix
+ compilation on NetBSD.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * acinclude.m4: Don't add -P on initial nm test.
+
+ Note: even though this patch postdates Andrey's it bears 14 Nov as
+ date due to timezone difference.
+
+2013-11-15 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/Makefile.core.def (signature_test): Add missing
+ tests/signatures.h.
+
+2013-11-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install_header: Set localedir here, since this file is
+ where it's used.
+ * util/grub-install.in: Remove setting of localedir.
+ * util/grub-mkrescue.in: Likewise.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (default_payload.elf): Add uhci, ohci and usb_keyboard.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Move nm checks to the end.
+ Call grub_PROG_NM_WORKS.
+ * acinclude.m4: New check grub_PROG_NM_WORKS.
+ Use $TARGET_CFLAGS -c when compiling test binary.
+
+2013-11-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__GNU__]: Remove
+ unused variables.
+
+2013-11-14 Matthew Garrett <mjg@redhat.com>
+
+ * grub-core/kern/main.c (grub_set_prefix_and_root): Set variable
+ cmdpath to firmware directory.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/efi.c (grub_efi_get_filename): Reset the pointer
+ at the start of second iteration.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am (efiemu64.o): Explicitly set link format.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (default_payload.elf): New target for easier coreboot
+ build.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache_armv6.S: Remove special handling for
+ clang (not necessarry with -no-integrated-as).
+ * include/grub/symbol.h [__arm__]: Likewise.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Use -no-integrated-as on arm with clang.
+ * INSTALL: Mention ARM compilation with clang.
+
+2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CCASFLAGS_PLATFORM) [COND_arm]: Add
+ -mthumb-interwork.
+
+2013-11-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_read_block): Factor out common
+ code for indirect block handling.
+
+ Saves 185 bytes on compressed image.
+
+2013-11-13 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Fix make clean.
+
+ * Makefile.am: Remove build-grub-* in make clean.
+
+2013-11-13 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ New files to gitignore.
+
+ * .gitignore: Add build-grub-gen-asciih, build-grub-gen-widthspec,
+ build-grub-mkfont, and grub-emu-lite. Remove .bzrignore.
+
+2013-11-13 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * grub-core/kern/arm/misc.S: Make thumb2-compatible.
+
+2013-11-13 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * .gitignore: fix rules for .dep* and add *.a post git migration
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac (AM_INIT_AUTOMAKE): Require at least version 1.10.1,
+ to match INSTALL.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/misc.c: Don't redirect divisions in the
+ GRUB_UTIL case.
+ * include/grub/misc.h: Likewise.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/osdep/unix/emuconsole.c (put): Pacify the compiler on
+ systems that require checking the return value of write.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in (efi_quiet): Fix inverted logic: make
+ efibootmgr quiet when --debug is not used, rather than when it is.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * gentpl.py (define_macro_for_platform_dependencies): Remove
+ first (and thus unused) of two definitions for this function.
+ (platform_dependencies): Likewise.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * acinclude.m4 (grub_apple_cc): Remove; since the removal of nested
+ functions, we only need to check this for the target, not the host.
+ * configure.ac (grub_apple_cc): Likewise.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache.c (probe_caches): Move asm part to ...
+ * grub-core/kern/arm/cache_armv6.S: ... here. This allows this
+ asm to stay in arm even if surrounding is thumb.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/misc.S: Add __muldi3 and __aeabi_lmul. Those
+ helper functions are needed for thumb.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Make
+ level / 3 division explicitly unsigned. Saves few bytes.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (ZAP_LEAF_NUMCHUNKS): Use unsigned arithmetics.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/datetime.c (grub_get_weekday): Use if rather than
+ division.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/uboot/init.c: Move grub_uboot_machine_type and
+ grub_uboot_boot_data to asm part.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/uboot/startup.S: Remove = by replacing with
+ literal load.
+ (grub_uboot_syscall): Save/restore r9 and align stack.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache.S: Replace = with explicit litteral load.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/symbol.h (END) [__arm__]: New macros. Replace all .end
+ occurencies with END.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-editenv.c (help_filter, argp): Document how to delete
+ the whole environment block.
+ Reported by Dan Jacobson. Fixes Debian bug #726265.
+
+2013-11-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Internationalisation, Supported kernels): Fix
+ sectioning.
+
+2013-11-13 Josh Triplett <josh@joshtriplett.org>
+
+ * grub-core/normal/term.c (grub_set_more): Use bool logic rather than
+ increment/decrement.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache_armv6.S [__clang__]: Don't add .armv6 when
+ compiling with clang.
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/uboot/startup.S: Use .org rather than assigning
+ ".".
+
+2013-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Redirect all divisions to grub_divmod64.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/tparm.c (tparam_internal): Use unsigned divisions.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing includes of loader.h.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Allow disabling themes.
+
+2013-11-12 Lukas Schwaighofer <lukas@schwaighofer.name>
+
+ * util/grub.d/20_linux_xen.in: Don't decompress initrd.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c: Don't poll non-functional AT controller
+ until it becomes operational.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (legacy_password_test): Disable
+ on platforms where no legacycfg is compiled.
+ * grub-core/tests/lib/functional_test.c: Tolerate failure to
+ load legacy_password_test.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/prepare.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror): Silence
+ strict-aliasing warning.
+ (fsync): Silence cast warning.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c: Remove variable length arrays.
+ Load gcry_dsa/gcry_rsa automatically.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/signature_test.c: New test.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/cryptodisk.c (luks_script_get): Adapt to new procfs
+ API.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/legacy_password_test.c (vectors): Make static.
+ * grub-core/tests/pbkdf2_test.c (vectors): Likewise.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/setjmp_test.c: Reset counter to 0 before starting.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/proc.c: Allow \0 in proc files.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/xnu_uuid_test.c: Fix assert message.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/xnu_uuid_test.c: Fix copyright year.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/crypto.c (grub_crypto_cbc_decrypt): Remove variable
+ length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/AFSplitter.c: Remove variable length arrays.
+ * grub-core/disk/cryptodisk.c: Likewise.
+ * grub-core/disk/geli.c: Likewise.
+ * grub-core/disk/luks.c: Likewise.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/legacy_password_test.c: New test.
+ * grub-core/commands/legacycfg.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/pbkdf2.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/pbkdf2_test.c: New test.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/xzembed/xz_dec_stream.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/lzopio.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/crypto.h: Add maximums on hash size and cipher block
+ size.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/xnu_uuid.c: Remove variable length arrays.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/xnu_uuid_test.c: New test.
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hashsum.c: Remove unneeded memset (zalloc already
+ covers it).
+
+2013-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hashsum.c: Remove variable length arrays.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/gfxterm_menu.c (gfxterm_menu): Handle out-of-memory
+ condition.
+ * tests/grub_func_test.in: Increase memory allocation.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/getroot.c [HAVE_STRUCT_STATFS_F_FSTYPENAME
+ && HAVE_STRUCT_STATFS_F_MNTFROMNAME]: Include sys/param.h and
+ sys/mount.h.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/apple/hostdisk.c (grub_util_get_fd_size): Rename to ..
+ (grub_util_get_fd_size_os): ...this.
+ (grub_hostdisk_flush_initial_buffer): New empty function.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gensyminfo.sh.in: Handle the case of portable output
+ without --defined-only.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/relocator_common.S [__APPLE__ && __x86_64__]: Use
+ rip-relative addressing in prologue.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h [__APPLE__]: Do not add regparm(0) on x86_64.
+ * grub-core/kern/misc.c (__bzero) [__APPLE__]: New function.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__APPLE__]:
+ Add missing semicolon.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-macho2img.c: Use plain fopen rather than grub_util_fopen.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for lzma.h for enabling liblzma and allow
+ manual disabling.
+
+2013-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing includes of loader.h.
+
+2013-11-11 Fam Zheng <famcool@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Add minix entry.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/coreboot/chainloader.c (load_segment): Use
+ right buffer for temporary load.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/coreboot/chainloader.c: Support tianocore.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/coreboot/chainloader.c: Support lzma-compressed
+ payload.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/lib/LzmaDec.h: Fix to include LzmaTypes.h and
+ not Types.h.
+ * grub-core/lib/LzmaDec.c: Fix prologue to make it compileable in GRUB
+ environment.
+ (LzmaDec_InitDicAndState): Make static.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c (generate_elf): Fix module address on coreboot.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/escc.c (GRUB_MOD_INIT): Fix order of channels.
+
+ Reported by: Aaro Koskinen <aaro.koskinen@iki.fi>
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub-dev.texi: Replace bzr references with git ones.
+
+2013-11-10 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Simple configuration): Remove reference to
+ grub-reboot from saved default entry description - grub-default
+ does not use it anymore.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Make efiemu test cflags match the cflags efiemu is
+ compiled with.
+
+2013-11-10 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Simple configuration): Document GRUB_DISABLE_SUBMENU.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix grub_machine_fini bitrot.
+
+ Reported by: Glenn Washburn.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove leftover -fnested-funcions -Wl,-allow_execute.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am (efiemu): Remove leftover -DAPPLE_CC and
+ -DELF.
+ * grub-core/efiemu/runtime/config.h: Use __i386__ and __x86_64__
+ instead of ELF*.
+
+2013-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Restore CFLAGS to TARGET_CFLAGS before external tests.
+ Add -march=core2 when testing compile of efiemu64.
+
+ Thanks Andrey Borzenkov for spotting this.
+
+2013-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add new ports: i386-xen and x86_64-xen. This allows running GRUB in
+ XEN PV environment and load kernels.
+
+2013-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c: Handle space in command line.
+ * grub-core/loader/multiboot_mbi2.c: Likewise.
+
+2013-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/cmdline.c (grub_loader_cmdline_size): Fix empty cmdline
+ handling.
+
+2013-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/cmostest.c: Add new command "cmosset".
+
+ Tested by: Denis 'GNUtoo' Carikli.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/datetime.c (grub_get_weekday): Use unsigned types.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_circular_progress.c (parse_angle):
+ Use to get rounded angle rather than truncated.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/serial.c: Add option for enabling/disabling
+ RTS/CTS flow control.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt/cipher/idea.c (mul_inv): Remove signed
+ divisions.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt/mpi/mpih-div.c (_gcry_mpih_divrem):
+ Use grub_fatal rather than divide by zero.
+ * grub-core/lib/libgcrypt/mpi/mpi-pow.c (gcry_mpi_powm): Likewise.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/gui.h (grub_fixed_sfs_divide): Round rather than
+ truncate.
+ (grub_fixed_fsf_divide): Likewise.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_list.c (draw_scrollbar): Avoid
+ division by-zero and senseless negative divisions.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_circular_progress.c (circprog_paint): Avoid
+ division by-zero and senseless negative divisions.
+ (circprog_set_property): Don't accept negative num_ticks.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Avoid
+ division by-zero and senseless negative divisions.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Use elf_*_fbsd on kfreebsd.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/div_test.c: New test.
+
+2013-11-08 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_box.c: Updated to work with area status.
+ * grub-core/gfxmenu/gui_canvas.c: Likewise.
+ * grub-core/gfxmenu/view.c: Likewise.
+ * grub-core/video/fb/video_fb.c: Introduce new functions:
+ grub_video_set_area_status, grub_video_get_area_status,
+ grub_video_set_region, grub_video_get_region.
+ * grub-core/video/bochs.c: Likewise.
+ * grub-core/video/capture.c: Likewise.
+ * grub-core/video/video.c: Likewise.
+ * grub-core/video/cirrus.c: Likewise.
+ * grub-core/video/efi_gop.c: Likewise.
+ * grub-core/video/efi_uga.c: Likewise.
+ * grub-core/video/emu/sdl.c: Likewise.
+ * grub-core/video/radeon_fuloong2e.c: Likewise.
+ * grub-core/video/sis315pro.c: Likewise.
+ * grub-core/video/sm712.c: Likewise.
+ * grub-core/video/i386/pc/vbe.c: Likewise.
+ * grub-core/video/i386/pc/vga.c: Likewise.
+ * grub-core/video/ieee1275.c: Likewise.
+ * grub-core/video/i386/coreboot/cbfb.c: Likewise.
+ * include/grub/video.h: Likewise.
+ * include/grub/video_fb.h: Likewise.
+ * include/grub/fbfill.h: Updated render_target structure.
+ grub_video_rect_t viewport, region, area
+ int area_offset_x, area_offset_y, area_enabled
+ * include/grub/gui.h: New helper function
+ grub_video_bounds_inside_region.
+ * docs/grub-dev.texi: Added information about new functions.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_real_malloc): Use AND rather than MOD
+ for alignment.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Add
+ missing attribute.
+ * grub-core/gdb/cstub.c (grub_gdb_trap): Likewise.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_divmod64): Don't fallback to
+ simple division on arm and ia64.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/misc.S (__aeabi_unwind_cpp_pr0): Add dummy to
+ link with libgcc.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/symbol.h (FUNCTION), (VARIABLE): Fix precedence logic.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/symbol.h (FUNCTION), (VARIABLE) [__arm__]: Use % as
+ prefix symbol, not @.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Add note about older gcc and clang.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Boot as hdd on ppc by default.
+
+2013-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_module): Fix
+ NULL pointer dereference.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am: Do not include libgcc.h when compiling with
+ clang.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/powerpc/dl.c: Add missing pragma to silence cast-align
+ warnings.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (grub_net_route_unregister): Remove unused
+ function.
+ * grub-core/loader/i386/xnu.c (hextoval): Likewise.
+ * grub-core/disk/geli.c (ascii2hex): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Run linker tests without -Werror.
+ Define TARGET_LDFLAGS_STATIC_LIBGCC and TARGET_LIBGCC.
+ Change all occurences of -static-libgcc resp -lgcc to
+ TARGET_LDFLAGS_STATIC_LIBGCC resp TARGET_LIBGCC.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't add -no-itegrated-as on clang on non-x86.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Allow compiling with clang (not really supported though).
+
+ * conf/Makefile.common (CFLAGS_PLATFORM): Don't add -mrtd -mregparm=3
+ unconditionally.
+ * configure.ac: Add -no-integrated-as when using clangfor asm files.
+ Add -mrtd -mregparm=3 on i386 when not using clang.
+ * grub-core/kern/misc.c (grub_memset): Add volatile when on clang.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/cmain.c: Add explicit attribute on asm
+ bindings.
+ * grub-core/lib/reed_solomon.c: Likewise.
+ * include/grub/i386/gdb.h: Likewise.
+ * include/grub/i386/pc/int.h: Likewise.
+ * include/grub/i386/pc/pxe.h: Likewise.
+ * include/grub/ieee1275/ieee1275.h: Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Import libgcrypt 1.5.3.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't add -Wcast-align on x86.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -freg-struct-return on all platforms that
+ support it.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * acinclude.m4: Use -Werror on parameter tests.
+ * configure.ac: Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * acinclude.m4: Add missing TARGET_CCASFLAGS on asm tests.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check that -malign-loops works rather than assuming that
+ either -falign-loops or -malign-loops work.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove -fnested-functions. We don't need it anymore.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Prevent cflags leaking to subsequent tests by always
+ resetting cflags to target_cflags in target tests.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/parser.c (grub_parser_split_cmdline): Remove nested
+ function.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Remove nested functions.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_parse): Remove nested function.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get):
+ Remove nested functions.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/test_sha512sum.in: Make it work on emu.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (bidi_line_wrap): Eliminate nested
+ functions.
+ (grub_bidi_line_logical_to_visual): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove vestiges of -Wunsafe-loop-optimisations.
+
+ * conf/Makefile.common (CFLAGS_GNULIB): Remove
+ -Wno-unsafe-loop-optimisations.
+ * grub-core/commands/legacycfg.c: Remove -Wunsafe-loop-optimisations
+ pragma.
+ * grub-core/io/gzio.c: Likewise.
+ * grub-core/script/parser.y: Likewise.
+ * grub-core/script/yylex.l: Likewise.
+ * util/grub-mkfont.c: Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (process_cursive): Remove nested function.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_dprintf): Use unnamed vararg.
+ (grub_boot_time): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/symbol.h (FUNCTION): Use @function rather than
+ "function".
+ (VARIABLE): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (OFFSET_OF): Explicitly cast to grub_size_t.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (set_env_limn_ro): Make pointer const.
+ (parse_dhcp_vendor): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c (relocate_symbols): Remove unneeded brackets.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (main_context), (secondary_context):
+ Define after defining type and not before.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Return right error
+ type.
+ (grub_gcm_decrypt): Likewise.
+ (algo_decrypt): Likewise.
+ (grub_zfs_decrypt_real): Transform error type.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/geli.c (geli_rekey): Fix error return type.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/usbms.c (grub_usbms_cbi_cmd): Fix error type.
+ (grub_usbms_cbi_reset): Likewise.
+ (grub_usbms_bo_reset): Likewise.
+ (grub_usbms_reset): Likewise.
+ (grub_usbms_attach): Likewise.
+ (grub_usbms_transfer_cbi): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/lzopio.c (test_header): Simplify code and remove useless
+ "checksum = checksum;".
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix type of
+ entry_type.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel): Fix
+ BIOS disk check.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/ehci.c (grub_ehci_restore_hw): Return right enum
+ type.
+ (grub_ehci_fini_hw): Likewise.
+ * grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/usb.h (grub_usb_controller_dev): Make portstatus
+ return grub_usb_err_t for cosistency. All users updated.
+
+2013-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/mkimage.c (SzAlloc): Use attribute unused rather than dubious
+ assigning to itself.
+
+2013-11-05 Gustavo Luiz Duarte <gustavold@linux.vnet.ibm.com>
+2013-11-05 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Issue separate DNS queries for ipv4 and ipv6
+
+ Adding multiple questions on a single DNS query is not supportted by
+ most DNS servers. This patch issues two separate DNS queries
+ sequentially for ipv4 and then for ipv6.
+
+ Fixes: https://savannah.gnu.org/bugs/?39710
+
+ * grub-core/net/bootp.c (parse_dhcp_vendor): Add DNS option.
+ * grub-core/net/dns.c (grub_dns_qtype_id): New enum.
+ * (grub_net_dns_lookup): Now using separated dns packages.
+ * (grub_cmd_nslookup): Add error condition.
+ * (grub_cmd_list_dns): Print DNS option.
+ * (grub_cmd_add_dns): Add four parameters: --only-ipv4, --only-ipv6,
+ --prefer-ipv4, and --prefer-ipv6.
+ * include/grub/net.h (grub_dns_option_t): New enum.
+ * (grub_net_network_level_address): option added.
+
+2013-11-05 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/video/fb/video_fb.c: Merge two blit functions
+ into one.
+
+2013-11-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c: Add sequences for home and end.
+
+2013-11-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/legacy_parse.c: Fix handling of hercules and add
+ graphics console.
+
+2013-11-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/i386/pc/vga.c: Fix double bufferring and
+ add mode 0x12.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Vendor power-on keys): Add XPS M1330M based on old
+ e-mail by Per Öberg.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/nthibr.c (GRUB_MOD_INIT): Fix typo in command
+ name.
+
+2013-11-04 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * configure.ac: Explicitly disable emusdl, emuusb and emupci on non-
+ emu platforms.
+ * grub-core/Makefile.core.def: Enable emupci and emuucb only for emu.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Document usage of menuentry id.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Add few mentions about EFI, debug and videoinfo.
+
+2013-11-04 Peter Lustig <peter.lustig.7db@gmail.com>
+
+ * grub-core/commands/i386/nthibr.c: New command.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/video_checksum.c: Add 2560x1440 mode to testing.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/term.h (grub_term_coordinate): Extend to 16-bit per
+ coordinate.
+
+2013-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support GRUB_DISABLE_SUBMENU config.
+
+ Inspired by patch from Prarit Bhargava.
+
+2013-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Mention RSA support.
+
+2013-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c: Add RSA support.
+
+2013-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c (grub_ahci_pciinit): Detect ATAPI devices.
+ * grub-core/disk/ata.c (grub_ata_identify): Use atapi_identify if
+ device is known to be ATAPI.
+
+2013-11-03 Mike Frysinger <vapier>
+
+ * configure.ac: Don't add target-prefix.
+
+2013-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/loadenv.c (grub_cmd_save_env): Remove unset
+ variables.
+
+2013-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (grub_gettext_init_ext): Ignore errors
+ if language is English.
+
+2013-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/linux/getroot.c: Fix cast-align problems.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't add -m32/-m64 on emu.
+
+2013-11-02 neil
+
+ * grub-core/osdep/linux/blocklist.c: Include linux/types.h for some
+ broken linux headers.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Add unhiding of partition if on msdos.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (grub_reed_solomon_recover): Don't do
+ Reed-Solomon recovery if more than half of redundancy info is 0.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mount.c: Handle symlinks to directories.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (find_file): Save ctx->next when calling
+ find_file recursively for symlink.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Copy themes.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c (locate_sections): Reject mislinked images.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Use 0x8000 for address instead of 8000.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/sparc64/ieee1275/linux.c (get_physbase): Fix
+ signature.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_readwrite): Remove unused
+ variable.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac (TARGET_CFLAGS): Add -march=i386 on i386.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfspluscomp.c (hfsplus_read_compressed_real): Call
+ file_progress_read_hook.
+ * grub-core/fs/ntfscomp.c (hfsplus_read_compressed_real): Likewise.
+
+2013-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CFLAGS_PLATFORM): Remove poisoning of float
+ and double.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/tar.c (grub_cpio_read): Add read_hook.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rewrite blocklist functions in order to get progress when
+ reading large extents and decrease amount of blocklist hook calls.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/serial.c (options), (grub_cmd_serial): Fix handling
+ of SI suffixes.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support --base-clock for serial command to handle weird cards with
+ non-standard base clock.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_read_symlink): Use memcpy rather
+ strncpy.
+ * grub-core/fs/jfs.c (grub_jfs_lookup_symlink): Likewise.
+ * grub-core/kern/misc.c (grub_strncpy): Move from here ...
+ * include/grub/misc.h (grub_strncpy): ... to here. Make inline.
+ * grub-core/net/net.c (grub_net_addr_to_str): Use COMPILE_TIME_ASSERT
+ + strcpy rather than strncpy.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (nvpair_name): Use correct type for size.
+ (check_pool_label): Likewise. Fixes overflow.
+ (nvlist_find_value): Fix comparison.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_strcat): Removed. All users changed to
+ more appropriate functions.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/efi.c (grub_efi_get_filename): Avoid inefficient
+ realloc.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Do not use UUID search on EFI.
+
+2013-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c: Unify section-finding algorithm. Saves 30 bytes
+ on core size.
+
+2013-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_realloc): Don't copy more data than we have.
+
+2013-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/gzio.c (huft_build): Use zalloc for safety.
+ (initialize_tables): reset tl and td to NULL after freeing.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c: Implement network tag.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c: Add EFI memory map to the list
+ of supported tags.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c: Implement EFI memory map.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot.c: Add support for multiboot kernels
+ quirks.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (allocate_pages): Allocate at least
+ a page in protected space.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot.c (grub_cmd_module): Don't attempt to
+ allocate space for zero-sized modules.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/xnu_resume.c (grub_xnu_resume): Reject empty images.
+
+2013-10-28 Francesco Lavra <francescolavra.fl@gmail.com>
+
+ * grub-core/lib/fdt.c: Fix miscellaneous bugs.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/progress.c (grub_file_progress_hook_real): Add missing
+ safeguards. Fixes a crash with i386/pc/console.c.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/hostdisk.h: Add proper declaration for grub_host_init
+ and grub_hostfs_init.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_check_file_presence): Use
+ windows method on other platforms without good stat as well.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/linux/getroot.c: Add new btrfs defines.
+
+2013-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make / in btrfs refer to real root, not the default volume.
+ Modify mkrelpath to work even if device is mounted with subvolid option.
+
+2013-10-28 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * Makefile.util.def: Add grub-core/kern/disk_common.c to library
+ extra_dist.
+ * grub-core/Makefile.core.def: Add kern/disk_common.c to disk module
+ extra_dist.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (main): Show error message when FT_Set_Pixel_Sizes
+ fails.
+
+2013-10-27 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * docs/autoiso.cfg: New file.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove leftover COND_BUILD_GRUB_MKFONT and
+ COND_GRUB_PE2ELF conditions.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_cmd_openbsd): Accept "sd", "cd",
+ "vnd", "rd" and "fd" disks.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move grub_disk_write out of kernel into disk.mod.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Unify int and wchar
+ handling.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_abort): Make static
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Don't attempt to
+ transform invalid unicode codepoints.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
+ \0 checking.
+
+2013-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/legacy_parse.c: Add support for "nd" disk.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Consolidate cpuid code.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move cpuid code to cpuid.h and TSC code to tsc.c.
+
+2013-10-26 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub.d/00_header.in: Don't use LANG if it's not set.
+
+2013-10-26 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub-mkconfig.in: Replace $0 with $self.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+
+2013-10-26 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * docs/osdetect.cfg: New file.
+
+2013-10-26 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * tests/util/grub-shell.in: Add new --debug option.
+
+2013-10-26 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * tests/test_unset.in: New test.
+
+2013-10-26 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * tests/test_sha512sum.in: New test.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c: Replace strncat with memcpy.
+ * include/grub/misc.h: Remove strncat.
+ * grub-core/lib/posix_wrap/string.h: Likewise.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/tftp.c: Retransmit ack when rereceiving old packet.
+ Try to handle more than 0xFFFF packets.
+ Reported by: Bernhard Übelacker <bernhardu>.
+ He also spotted few overflows in first version of this patch.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/date_unit_test.c: New test.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/datetime.c (grub_unixtime2datetime): Fix mishandling
+ of first three years after start of validity of unixtime.
+
+2013-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (get_logical_num_lines): Use unsigned
+ division as the one making more sense.
+ (update_screen): Likewise.
+ (complete): Likewise.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (complete): Make sure that width is >0.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make char and string width grub_size_t rather than grub_ssize_t.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (grub_history_get): Make argument into
+ unsigned.
+ (grub_history_replace): Likewise.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid6_recover.c: Use unsigned arithmetics when
+ appropriate.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/bitmap_scale.c: Use unsigned arithmetics when
+ appropriate.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/fb/fbblit.c: Use (255 ^ x) rather than (255 - x).
+ Use unsigned divisions rather than signed variants.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/png.c (grub_png_convert_image): Use
+ unsigned arithmetics.
+ Add missing break.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/jpeg.c: Use unsigned where appropriate.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (xor_out): Use unsigned modular arithmetics
+ rather than signed one.
+ (recovery): Likewise.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/dns.c (hash): Use unsigned arithmetic.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/gzio.c (test_zlib_header): Use undigned modulo rather
+ than signed.
+
+2013-10-25 Jon McCune <jonmccune@google.com>
+
+ * docs/grub.texi: Cleanup security documentation around signatures.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (EXT2_BLOCK_SIZE): Make unsigned.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/gptsync.c (lba_to_chs): Use proper types rather
+ than int.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CPPFLAGS_KERNEL): Add -DGRUB_KERNEL=1.
+ * include/grub/dl.h (GRUB_MOD_INIT), (GRUB_MOD_FINI): Define
+ functions when compiling for kernel.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/progress.c (grub_file_progress_hook_real): Cast to
+ unsigned long long when using %llu.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/progress.c (grub_file_progress_hook_real): Refresh
+ terminal after updating progress.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S (grub_gate_a20): Remove
+ argument. We don't disable Gate A20 in this code.
+
+2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/qemu/boot.S: Ensure that A20 is enabled.
+ Conceptually based on change in branch "vbe-on-coreboot".
+
+2013-10-24 Robert Millan <rmh@gnu.org>
+
+ * grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Replace
+ numeric constants with their symbolic equivalent.
+ Taken from branch "vbe-on-coreboot".
+
+2013-10-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Fix ordering and use pxref rather than xref.
+
+2013-10-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/progress.c (grub_file_progress_hook_real): Use
+ divmod64 for offset division.
+
+2013-10-22 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Rename .bzrignore to .gitignore. Add "*.o" rule.
+
+ * .bzrignore: Renamed to...
+ * .gitignore: ...this.
+
+2013-10-22 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Add new progress module that displays the load progress of files.
+
+ * grub-core/lib/progress.c: New file.
+ * grub-core/Makefile.core.def (progress): New module.
+ * grub-core/kern/file.c (grub_file_open): File name added.
+ * (grub_file_read): Progress hook added.
+ * grub-core/fs/cbfs.c (grub_cbfs_read): Likewise.
+ * grub-core/fs/cpio_common.c (grub_cpio_read): Likewise.
+ * grub-core/net/net.c (grub_net_fs_read_real): Likewise.
+ * include/grub/file.h (struct grub_file): Add progress module members.
+ * include/grub/term.h (struct grub_term_output): Likewise.
+ * grub-core/osdep/unix/emuconsole.c (grub_console_term_output):
+ Terminal velocity added.
+ * grub-core/osdep/windows/emuconsole.c (grub_console_term_output): Likewise.
+ * grub-core/term/arc/console.c (grub_console_term_output): Likewise.
+ * grub-core/term/efi/console.c (grub_console_term_output): Likewise.
+ * grub-core/term/gfxterm.c (grub_video_term): Likewise.
+ * grub-core/term/i386/coreboot/cbmemc.c (grub_cbmemc_term_output): Likewise.
+ * grub-core/term/i386/pc/console.c (grub_console_term_output): Likewise.
+ * grub-core/term/i386/pc/vga_text.c (grub_vga_text_term): Likewise.
+ * grub-core/term/ieee1275/console.c (grub_console_term_output): Likewise.
+ * grub-core/term/morse.c (grub_audio_term_output): Likewise.
+ * grub-core/term/serial.c (grub_serial_term_output): Likewise.
+ * grub-core/term/spkmodem.c (grub_spkmodem_term_output): Likewise.
+ * grub-core/term/uboot/console.c (uboot_console_term_output): Likewise.
+
+2013-10-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Verify signatures of signatures unless --skip-sig is specified.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Remove needless explicit
+ \0 checking.
+
+ Saves 70 bytes on compressed image.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_strtoull): Remove needless *ptr != 0
+ check.
+
+ Saves 10 bytes on compressed image.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_isprint): Move to ...
+ * include/grub/misc.h (grub_isprint): ... here. Make inline.
+
+ Saves 20 bytes on compressed image due to remving exporting.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (grub_ntfs_mount): Remove redundant check.
+
+ Saves 5 bytes on compressed image.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c: Move common UTF-16 handling to a separate
+ function get_utf8.
+
+ Saves 379 bytes on compressed image.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c: Handle 48-bit MFT no.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (read_run_data): Rewrite using bitfields.
+
+ Saves 40 bytes on compressed image.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (grub_ntfs_iterate_dir): Use grub_uint8_t for
+ mask rather than 64-bit type.
+
+ Saves 20 bytes on compressed image.
+
+2013-10-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (read_data): Move code for compressed data to ...
+ * grub-core/fs/ntfscomp.c (ntfscomp): ... here.
+
+ Saves 273 bytes on compressed image.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk.c (grub_disk_write): Use malloc/free instead of
+ variable length arrays.
+
+ Saves 50 bytes on compressed image.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c: Remove variable length arrays.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c: Remove variable length arrays.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c: Add comment about fixed allocation size.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs.c: Remove variable length arrays.
+ Reduces zfs.mod by 160 bytes (208 compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (check_pool_label): Fix memory leak.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/arp.c: Remove variable length arrays.
+ * grub-core/net/bootp.c: Likewise.
+ * grub-core/net/dns.c: Likewise.
+ * grub-core/net/icmp6.c: Likewise.
+ * grub-core/net/net.c: Likewise.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c: Remove variable length arrays.
+ Increases ntfs.mod by 64 bytes (but decreases by 3 when
+ compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c: Remove variable length arrays.
+ Reduces hfs.mod by 8 bytes (52 compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/udf.c: Remove variable length arrays.
+ Increases udf.mod by 128 bytes (but decreases by 13 when
+ compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c: Remove variable length arrays.
+ Increases iso9660.mod by 200 bytes (but decreases by 79 when
+ compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c: Remove variable length arrays.
+ Increases nilfs2.mod by 24 bytes (but decreases by 115 when
+ compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c: Remove variable length arrays.
+ Reduces xfs.mod by 40 bytes (43 compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c: Remove variable length arrays.
+ Reduces fshelp.mod by 116 bytes (23 compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/completion.c: Remove variable length arrays.
+ * grub-core/normal/menu_entry.c: Likewise.
+
+ Reduces normal.mod by 496 bytes.
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c: Remove variable length arrays. Reduces jfs.mod
+ by 356 bytes (158 compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c: Remove variable length arrays. Reduces jfs.mod
+ by 364 bytes (169 compressed).
+
+2013-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c: Remove variable length arrays. Reduces afs.mod and
+ bfs.mod size by 556 resp 740 bytes (288 resp 334 compressed).
+ * include/grub/types.h (grub_unaligned_uint64_t): New type.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Lift 255x255 erminal sie restriction to 65535x65535. Also change from
+ bitmasks to small structures of size chosen to fit in registers.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common: Use -freg-struct-return on i386. This
+ decreases code size and improves performance.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/exec.c: Fix compilation error on emu.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Fix formatting of
+ "(null)" string.
+ Simplify expressions to save around 256 bytes in kernel.img.
+ * tests/printf_unit_test.c (printf_test): Add "(null)" tests.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/video_checksum.c (grub_video_capture_write_bmp):
+ Use GRUB_UTIL_FD_O_* rather than O_*.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add haiku-specific functions.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c: Remove few leftover includes.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move stat () and device mode checking into OS-dependent files as
+ long as performance doesn't suffer.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split make_system_path_relative_to_its_root into separate file
+ relpath.c from getroot.c as it's common between unix and haiku
+ but otherwise haiku doesn't use any functions from unix getroot.c.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/aros/hostdisk.c (grub_util_is_directory):
+ New function.
+ (grub_util_is_special_file): Likewise.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/getroot.c: Move exec functions to ...
+ * osdep/unix/exec.c: ... here. Add few additional exec_* variants.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Define size_t to
+ grub_size_t. This fixes the case when size_t mismatches grub_size_t.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c (make_reloc_section): Fix memory leak.
+ (load_image): Likewise.
+
+2013-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-render-label.c: Move backend part to ...
+ * util/render-label.c: ... here.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/random.c: Use unix/random.c on haiku. Haiku uses
+ yarrow (by B. Schneier et al) for its /dev/urandom (similar to FreeBSD).
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/generic/blocklist.c: Add missing include to string.h.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Handle
+ CD-ROM in case when it's declared as having subpartitions.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't add -lm on haiku.
+
+ * configure.ac: Define BUILD_LIBM to -lm on most platforms
+ and empty on haiku.
+ * grub-core/Makefile.am (gentrigtables): Use $(BUILD_LIBM) rather than
+ -lm.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Use -melf_*_haiku as target on haiku.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def: Add util/setup.c to extra_dist.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Pass
+ unknown types through.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/getroot.c (grub_util_check_block_device): Remove.
+ (grub_util_check_char_device): Likewise.
+ * include/grub/emu/getroot.h: Likewise.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Use define for defining
+ memset rather than inline static function.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/xzembed/xz_config.h: Enable all bcj filters when
+ not doing embedded decompressor.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ldm.c: Rename variables and arguments to prevent
+ shadowing.
+ * grub-core/kern/disk.c: Likewise.
+ * grub-core/kern/misc.c: Likewise.
+ * include/grub/parser.h: Likewise.
+ * include/grub/script_sh.h: Likewise.
+ * include/grub/zfs/zfs.h: Likewise.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/luks.c (configure_ciphers): Fix spurious warning.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs_lz4.c: Check that __INTEL_COMPILER is
+ defined before trying to use it.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_create_node): Fix uninited value
+ warning.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/dl.h: Remove double declaration of GRUB_MOD_DEP.
+ Use __unused__ rather than __used__ on gcc < 3.2.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/setjmp.h: Define RETURNS_TWICE. Keep it empty for
+ gcc < 4.0.
+ * include/grub/*/setjmp.h: USe RETURNS_TWICE.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/dmraid_nvidia.c: Fix potentially uninited "layout".
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h: Don't use warn_unused_result on gcc < 3.4.
+ * include/grub/emu/misc.h: Likewise.
+
+2013-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/i386/pc/vga_text.c: Remove extra declaration of
+ cur_color.
+
+2013-10-18 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/tests/checksums.h: Regenerated due to progress bar
+ get_minimal_size changes.
+
+2013-10-17 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Added `tr' command support.
+
+ * grub-core/commands/tr.c: New file.
+ * grub-core/Makefile.core.def: Build rules for new module.
+
+ * tests/grub_cmd_tr.in: New test.
+ * Makefile.util.def: Build rules for new test.
+
+2013-10-17 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_progress_bar.c: Sanity checks added.
+
+2013-10-17 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_progress_bar.c: New option ``highlight_overlay``
+ * docs/gurb.texi: Likewise.
+
+2013-10-17 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_progress_bar.c (draw_pixmap_bar): Fixed bug.
+ Pixmap highlighted section with east and west slices was displayed
+ incorrectly due to negative width of the central slice.
+
+2013-10-17 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * docs/grub.texi: Graphical options information update.
+ Removed outdated. Updated current. Inserted missed.
+
+2013-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Mention few new platform-specific commands.
+
+2013-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/yylex.l: Fix LSQBR2 and RSQBR2. It's not
+ currently used so this doesn't really have any effect.
+ Reported by: Douglas Ray <dougray>
+
+2013-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * autogen.sh: Don't set LC_CTYPE as it doesn't create problem for
+ compilation but prevents gcc from displaying messages in non-Latin
+ alphabets.
+ * conf/Makefile.common: Likewise.
+
+2013-10-16 Hiroyuki YAMAMORI
+
+ Handle Japanese special keys.
+ Reported by: Hiroyuki YAMAMORI.
+ Codes supplied by: Hiroyuki YAMAMORI.
+
+2013-10-16 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: Scrollbar sanity checks added.
+
+2013-10-16 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: New option `item_pixmap_style`.
+ * docs/grub.texi: Likewise.
+
+2013-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/hostdisk.c (grub_util_fd_read): Return correct
+ value in case of incomplete read.
+ (grub_util_fd_write): Likewise.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/editenv.c (grub_util_create_envblk_file): Use grub_util_rename.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-editenv.c (create_envblk_file): More from here ...
+ * util/editenv.c (grub_util_create_envblk_file): ... to here.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/unix/getroot.c (grub_guess_root_devices):
+ canonicalize file name before doing the rest.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/osdep/hostfile_windows.h: Add missing ftello for
+ mingw32.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Define grub_util_is_directory/regular/special_file and
+ use OS-dependent versions rather than to rely on stat().
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c: Move backend part to ...
+ * util/mkimage.c: ... here.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Allow compilation with mingw64 albeit with warnings due to lack of
+ %llx/%llu.
+
+ * grub-core/gnulib/msvc-inval.c: Use __cdecl rather than cdecl.
+ * grub-core/lib/posix_wrap/wchar.h: Define wint_t.
+ * grub-core/lib/posix_wrap/wctype.h: Define wctype_t.
+ * include/grub/osdep/hostfile_windows.h: Don't define fseeko/ftello
+ on mingw64.
+ * include/grub/types.h: Allow sizeof (long) != sizeof (void *).
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove leftover references to some of the system headers.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/geli.c (grub_util_get_geli_uuid): Close handle after
+ read.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/cryptodisk.c: Use grub_util_fd_strerror instead
+ of strerror.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split out blocklist retrieving from setup.c to
+ grub-core/osdep/blocklist.c and add windows implementation since
+ generic version doesn't work on NTFS on Windows due to aggressive
+ unflushable cache.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split grub-setup.c into frontend (grub-setup.c) and backend (setup.c)
+ files.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/hostdisk.c (grub_util_fd_strerror):
+ Cut tailing newline. Remove arbitrary limitation. Always use
+ grub_util_tchar_to_utf8.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Handle %% properly.
+ * tests/printf_unit_test.c (printf_test): Add %% tests.
+ Reported by: Paulo Flabiano Smorigo.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: Really
+ implement fsync.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for nvlist_lookup_string in nvpair since we
+ use nvlist_lookup_string and don't use nvlist_print.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add wrappers around rename, unlink, mkdir, opendir, readdir and
+ closedir to handle filename charset translation.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/hostdisk.h: Move file operations to
+ * include/grub/emu/hostfile.h: ... here.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/hostdisk.c (canonicalize_file_name): Handle
+ unicode path.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/checksums.h: Regenerate due to swiss.sed change.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move cpu time retrieval to separate grub_util_get_cpu_time_ms
+ and remove export.h.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/error.c: Removed.
+ * grub-core/Makefile.core.def (kernel): Don't add error.c and progname.c
+ explicitly as it's already in libgnu.a.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/emuconsole.c: Add missing config.h and
+ config-util.h include.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split emunet into platform-dependent and GRUB-binding parts. Keep
+ platform-dependent part in kernel for easy access to OS functions.
+
+2013-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/video_checksum.c: Use grub_util_fd_* rather than
+ open/read/write.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/emuconsole.c: New file.
+
+2013-10-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * conf/Makefile.extra-dist: Add osdep/*/init.c
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am: Use TARGET_OBJCOPY when doing objcopy for target.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-probe.c (probe): Separate different drives in hint-str
+ by spaces and not newlines.
+ * util/grub-mkconfig_lib.in: Handle multidevice filesystem.
+
+2013-10-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name):
+ Handle CD-ROMs.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Pass-through unknown E820 types. It required reorganisation of mmap
+ module.
+
+2013-10-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * Makefile.util.def: Add osdep/init.c to grub-mount files.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_util_fd_seek match behaviour of other grub_util_fd_* and
+ fseeko.
+
+2013-10-14 qwertial <qwertial>
+
+ * grub-core/gdb_grub.in: Fix overflow and wrong field.
+
+2013-10-14 Jon McCune <jonmccune@google.com>
+
+ * docs/grub.texi: Document new signatures possibility.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Define GRUB_UTIL_FD_O_* and always use them with grub_util_fd_open.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/osdep/hostfile_windows.h (grub_util_utf8_to_tchar): Add
+ missing prototype.
+ (grub_util_tchar_to_utf8): Likewise.
+
+2013-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def: Add osdep/init.c on emu.
+ * grub-core/kern/emu/main.c: Add missing include.
+ * grub-core/osdep/basic/init.c (grub_util_host_init) [!GRUB_UTIL]:
+ Don't call grub_util_init_nls.
+ * grub-core/osdep/windows/init.c (grub_util_host_init) [!GRUB_UTIL]:
+ Likewise.
+
+2013-10-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c (grub_util_get_image_size): Use FILE functions rather than
+ stat.
+
+2013-10-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-editenv.c: Remove leftover set_program_name and init_nls.
+
+2013-10-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h: Use gnu_printf only on gcc 4.4 or later.
+
+2013-10-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add a wrapper for fopen. On unix-like systems just pass-through. On
+ windows use unicode version.
+
+2013-10-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move set_program_name and init_nls to host_init. On windows
+ fix in this fuction console and argument charset as well.
+
+2013-10-12 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ Fix inconsistent use of GRUB_CRYPTODISK_ENABLE and
+ GRUB_ENABLE_CRYPTODISK.
+
+ * util/grub-install.in: Rename all GRUB_CRYPTODISK_ENABLE to
+ GRUB_ENABLE_CRYPTODISK.
+ * util/grub-mkconfig_lib.in: Likewise.
+
+2013-10-12 Christian Cier-Zniewski <c.cier@gmx.de>
+
+ * docs/grub.texi (Vendor power-on keys): Add Dell Latitude E4300.
+
+2013-10-12 Melki Christian <Christian.melki@saabgroup.com>
+
+ * grub-core/term/at_keyboard.c [DEBUG_AT_KEYBOARD]: Fix compilation
+ error when enabling debug.
+
+2013-10-12 Ilya Bakulin <Ilya_Bakulin@genua.de>
+
+ * configure.ac: Use -melf_*_obsd on openbsd.
+
+2013-10-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/dl_helper.c: Use more proper %p for pointer.
+
+2013-10-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h: Use gnu_printf rather than printf as format
+ template since our functions are independent of libc.
+
+2013-10-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Move copying of partition table as
+ futher up as possible to avoid possible overwrite by floppy routines.
+
+2013-10-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c: Fix handling of exfat contiguous files.
+
+2013-10-10 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: New option `scrollbar_thumb_overlay`.
+ * docs/grub.texi: Likewise.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (make_device_name): Remove dos_part and bsd_part as
+ it's mostly unused. Move vestiges to the callers.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c: Remove temporary buffers for hex
+ version of salt and hash. Use grub_snprintf rather than snprintf.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Fix problem with braces.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.extra-dist: Fix extra-dist list.
+ * grub-core/Makefile.core.def: Likewise.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Document disk names used on Windows and AROS.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/aros/getroot.c: Change to //: prefix as discussed
+ with AROS devs.
+ * grub-core/osdep/aros/hostdisk.c: Likewise.
+
+2013-10-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid including hostfile.h when not necessarry as it pulls
+ in OS-specific headers which may redefine generic names
+ like "far".
+
+2013-10-09 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: New options for scrollbar padding:
+ scrollbar_left_pad, scrollbar_right_pad, scrollbar_top_pad,
+ scrollbar_bottom_pad
+ * docs/grub.texi: Likewise.
+
+2013-10-09 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c (list_destroy): Fixed memory leak.
+
+2013-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move OS-dependent file definitions to include/grub/osdep/hostfile*.h.
+
+2013-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/hostdisk.h (grub_hostdisk_linux_find_partition):
+ Removed.
+ * grub-core/osdep/linux/hostdisk.c (grub_hostdisk_linux_find_partition):
+ Made static.
+
+2013-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/getroot.h (grub_util_find_hurd_root_device): Remove
+ leftover.
+
+2013-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move OS-specific driver configuration to grub_util_fd_open. This
+ moves OS-dependent parts from kern/emu/hostdisk.c to
+ grub-core/osdep/*/hostdisk.c.
+
+2013-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Use size_t instead of
+ grub_size_t.
+ * util/grub-mkimagexx.c (locate_sections): Likewise.
+ (load_image): Likewise.
+
+2013-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c (grub_util_write_image_at): Don't use PRIxGRUB_SIZE for
+ size_t.
+ (grub_util_write_image): Likewise.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/basic/random.c: New file. Abort on an attempt to
+ get random when no RNG is available.
+ * grub-core/osdep/random.c: Use basic/random.c on OS out of whitelist.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/util/lvm.h: Removed.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c (fsync) [__MINGW32__]: Move to ...
+ * grub-core/osdep/windows/hostdisk.c (fsync) [__MINGW32__]: ... here.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/osdep/windows/sleep.c: Add missing config.h.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c (grub_get_rtc): Remove (it's a leftover).
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/emu/emunet.c: Move to ..
+ * grub-core/osdep/linux/emunet.c: ..here.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c: Move to ...
+ * grub-core/osdep/linux/ofpath.c: ..here, split stub into ...
+ * grub-core/osdep/basic/ofpath.c: ..here.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move password-querying (util-version) routines to grub-core/osdep.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move sleep routines to grub-core/osdep.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move OS-dependent files to grub-core/osdep and document it.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c (canonicalize_file_name): Move to ...
+ * grub-core/kern/emu/hostdisk_*.c (canonicalize_file_name): ... here.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/misc.S: Remove leftover ARM and THUMB.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c: Remove leftover inclusion of malloc.h.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/setjmp.h: Remove leftover GRUBOF.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/raid.c: Fold into ...
+ * util/getroot_linux.c: ... here. Make all functions static.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs_lz4.c: Switch from ad-hoc endiannes and width
+ macros to GRUB ones.
+
+2013-10-08 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c (draw_scrollbar): Fixed rare
+ occasional bug. If there are too many boot entries or too low
+ scrollbar height then we need to use another formula to calculate
+ the position and size of the scrollbar thumb.
+
+2013-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/random_unix.c: Add NetBSD, Solaris and Mac OS X to verified list.
+
+2013-10-08 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: New option `scrollbar-slice`.
+ * docs/grub.texi: Likewise.
+
+2013-10-08 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: Draw the scrollbar in a separate
+ viewport.
+
+2013-10-08 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c (list_get_minimal_size): Corrected
+ minimal width calculations.
+
+2013-10-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Update note on colors on emu console.
+
+2013-10-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_get_file_block): Give GRUB_ERR_BAD_FS
+ for quadruple indirect rather than GRUB_ERR_NOT_IMPLEMENTED_YET as
+ it's FS and not GRUB limitation.
+
+2013-10-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/efi/startup.S: Remove thumb leftover.
+
+2013-10-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/efi/init.c: Rewrite timer fucntion.
+
+2013-10-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/10_hurd.in: Use `version_find_latest` to sort gnumach
+ kernels by version order.
+
+2013-10-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/random_unix.c: Add kFreeBSD to the list of secure RNG.
+
+2013-10-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add AROS hostdisk and getroot routines.
+
+2013-10-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make cryptodisk and diskfilter probe data retrievable programmatically
+ and not just printable.
+
+2013-10-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split random retrieving code into separate files.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/dl.c (do_relocations): Accept and ignore
+ R_ARM_V4BX.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/video_checksum.c: Increase robustness to out of memory
+ condition.
+ * grub-core/tests/fake_input.c: Likewise.
+ * grub-core/tests/cmdline_cat_test.c: Likewise.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/capture.c: Do not do finalization when .fini
+ is called as there is explicit capture_end.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c: Add flag "functional" to skip input when
+ changing windows to avoid crash.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/arm/cache.c: Add v5 write-through cache support.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/exclude.pot: Add several strings to exclude.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/gettext_strings_test.in: Add getroot_*.c to exclude list.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * autogen.sh: Add ./util/grub-gen-widthspec.c and
+ ./util/grub-gen-asciih.c to exclude list.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/theme_loader.c (theme_set_string): Fix memory leak
+ and don't mark error strings for translation.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/uboot/ubootdisk.c (uboot_disk_open): Use grub_error
+ properly in case of missing block size.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arm/setjmp.S: Add missing license section.
+
+2013-10-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/swiss.sed: Add replacement for key names and for term computer.
+
+2013-10-02 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/theme_loader.c: New global options for the
+ theme background image handling. desktop-image-scale-method,
+ desktop-image-h-align, desktop-image-v-align.
+ * grub-core/gfxmenu/view.c: Likewise.
+ * include/gfxmenu_view.h: Likewise.
+ * include/bitmap_scale.h: Proportional scale functions introduced.
+ * grub-core/video/bitmap_scale.c: Likewise. Verification checks are
+ put in a separate functions. GRUB_ERR_BUG is set for grub_error in
+ cases of unexpected input variables for scale functions.
+ * docs/grub.texi: Updated documentation for new options.
+
+2013-10-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/png.c: Support narrow (4-/2-/1-bpp) PNG.
+
+2013-10-01 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/tests/checksums.h: Corrected due to changes in
+ bilinear interpolation function.
+
+2013-10-01 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/video/bitmap_scale.c (scale_bilinear): Increased precision
+ to eliminate artefacts in bilinear interpolation.
+
+2013-09-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/tga.c: Support paletted tga.
+
+2013-09-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/jpeg.c (grub_jpeg_decode_data): Remove
+ incorrect cbcr setting when in color mode.
+
+2013-09-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/png.c: Support paletted images and clean up
+ greyscale support.
+
+2013-09-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_terminfo_readkey): Fix
+ usage of wrong table which resulted in mishandling of 4-byte
+ sequences.
+
+2013-09-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c: Add Home and End key sequences.
+
+2013-09-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/png.c (grub_png_decode_image_header):
+ Fix formula for computing total number of bytes.
+
+2013-09-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/tga.c: Reorganize to separate RLE and
+ image processing, fix big-endian and support grayscale.
+
+2013-09-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/fb/video_fb.c (grub_video_fb_create_render_target):
+ Correctly will with maximum transparency when using index color.
+
+2013-09-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/png.c: Support grayscale
+
+2013-09-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/jpeg.c: Support grayscale.
+
+2013-09-26 Jon McCune <jonmccune@google.com>
+
+ * grub-core/commands/loadenv.c: Support skipping signature check
+ and variable names filtering.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk_unix.c: Declare AROS as non-unix.
+ * grub-core/kern/emu/hostfs.c: Likewise.
+ * util/getroot_unix.c: Likewise.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/hostdisk.h (GRUB_FD_STAT_IS_FUNTIONAL): New define.
+ Migrate all explicit defines to this new one.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Use
+ grub_util_fd_strerror when using grub_util_fd_*.
+ (grub_util_fd_open_device): Likewise.
+ (grub_util_biosdisk_read): Likewise.
+ (grub_util_biosdisk_write): Likewise.
+ * grub-core/kern/emu/hostdisk_unix.c (grub_util_fd_open): New function.
+ (grub_util_fd_strerror): Likewise.
+ (grub_util_fd_sync): Likewise.
+ (grub_util_fd_close): Likewise.
+ * grub-core/kern/emu/hostdisk_windows.c (grub_util_fd_sync): Likewise.
+ (grub_util_fd_close): Likewise.
+ (grub_util_fd_strerror): Likewise.
+ * include/grub/emu/hostdisk.h (grub_util_fd_close): Make into real
+ function proto rather than macro.
+ (grub_util_fd_sync): Likewise.
+ (grub_util_fd_open): Likewise.
+ (grub_util_fd_strerror): New proto.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_biosdisk_is_present): Don't do stat on
+ platforms on which it doesn't work.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Move struct
+ stat immediately to where it's used.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_check_block_device): Move to ...
+ * util/getroot_unix.c (grub_util_check_block_device): ... here.
+ * util/getroot.c (grub_util_check_char_device): Move to ...
+ * util/getroot_unix.c (grub_util_check_char_device): ... here.
+
+2013-09-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_close): Fix
+ disk closing logic.
+
+2013-09-24 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Simple configuration): Document GRUB_ENABLE_CRYPTODISK.
+
+2013-09-24 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (File name syntax): Document ZFS filenames
+ (/volume@snapshot/...).
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk_windows.c (grub_util_get_windows_path):
+ Always return full path. Fixes a problem with mkrelpath.
+
+2013-09-23 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * util/grub-install.in: Add GPT PReP support.
+ * util/grub-probe.c (probe): Support GPT partition type.
+ (main): Support -t gpt_parttype.
+
+2013-09-23 Aleš Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/ehci.c: SMI disabled in all cases
+
+2013-09-23 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfs.c (check_pool_label): Check nvlist.
+
+2013-09-23 Tim Hardeck <thardeck>
+
+ * util/grub.d/10_hurd.in: Filter out character for the class.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2013-09-23 Melki Christian <Christian.melki@saabgroup.com>
+
+ * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Fix the type of
+ "changed".
+
+2013-09-23 Josh Triplett <josh@joshtriplett.org>
+
+ * grub-core/boot/i386/pc/lnxboot.S: Re-add support for recording the
+ boot partition.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (libgrubmods.a): Remove CFLAGS_POSIX as this lib
+ doesn't use posix_wrap. Keep literal -fno-builtin however.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CPPFLAGS_LIBFDT): Remove leftover.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+2013-09-23 neil
+
+ * configure.ac: Do not enable -Wmissing-noreturn as its
+ usefulness is limited and creates problems on some OS notably with
+ code generated by bison.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+2013-09-23 neil
+
+ * configure.ac: Do not explicitly enable -Waddress as it's not
+ supported by all gcc and when it is, it's already enabled by -Wall.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/efi_gop.c (grub_video_gop_setup): Fix a typo which
+ desactivated use of EDID at all.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+2013-09-23 neil
+
+ * grub-core/loader/multiboot.c (grub_multiboot_set_console): Always use
+ video if no text is available.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+2013-09-23 neil
+
+ * configure.ac: Substitute TARGET_RANLIB.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+2013-09-23 neil
+
+ * grub-core/genmod.sh.in: Remove ./ from TARGET_OBJ2ELF. Add quotes.
+
+ Based on patches from AROS.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+2013-09-23 neil
+
+ * grub-core/Makefile.am: Override STRIP and RANLIB.
+ * configure.ac: compute TARGET_RANLIB.
+ * INSTALL: Document TARGET_RANLIB
+
+ Based on patches from AROS.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev): Do not assume
+ that floppies are unpartitioned.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot_unix.c [__MINGW32__ || __CYGWIN__]:
+ Define dummy grub_util_pull_lvm_by_command to decrease number of #if's.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/sys/types.h: Use OpenBSD approach: it's
+ less nice but more portable.
+ * grub-core/lib/posix_wrap/wchar.h: Likewise.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/cryptodisk.h (grub_cryptodisk): Use grub_util_fd_t
+ for cheat_fd.
+ * grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Use grub_util_*
+ functions.
+ (grub_cryptodisk_cheat_insert): Likewise.
+ (grub_cryptodisk_close): Likewise.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/misc.h: Remove leftover cygwin definitions.
+ Use windows path for DEFAULT_DIRECTORY.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/setjmp.h: Remove useless #if MINGW where original
+ difference was likely just gcc version, not anything mingw-related.
+
+2013-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use Winapi on both cygwin and mingw32 to share more code between both.
+
+2013-09-22 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install.in: Add --grub-editenv option.
+ * util/grub-install_header (grub_compress_file): Explicitly check for
+ plain file to avoid cp error.
+
+2013-09-22 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Device syntax): Document new LVM UUID based device
+ names; fix LVM driver name (lvm, not lv).
+ * util/grub-probe.c (probe_abstraction): Support lvmid/xxx device
+ names.
+
+2013-09-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c: Disentagle into a series of OS-specific
+ files rather than one file with loads of #if's.
+ * util/getroot.c: Likewise.
+
+2013-09-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/sys/types.h: Use stddef on *BSD.
+
+2013-09-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (grub_get_random): Add windows and
+ GNU/Hurd to the list of checked PRNG.
+
+2013-09-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: On FreeBSD use -melf_*_fbsd format.
+
+2013-09-21 Ales Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/ehci.c: Corrected EHCI QH handling (async./sync.)
+
+2013-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c: Handle non-md UUIDs.
+ * grub-core/disk/lvm.c: Add LVM UUIDs.
+ * util/getroot.c: Use LVM UUIDs whenever possible.
+
+2013-09-19 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Networking commands): Add documentation for
+ network related commands.
+
+2013-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_open_dm): Check major rather than the name
+ to determine if device is handled by devmapper.
+ (convert_system_partition_to_system_disk): Likewise.
+ (get_dm_uuid): Don't check explicitly if device is mapped, it's
+ already done in grub_util_open_dm.
+
+2013-09-19 Leif Lindholm <leif.lindholm@linaro.org>
+
+ * kern/arm/cache.S: Correct access to ilinesz/dlinesz variables.
+ Clean up stack manipulation (sync_caches_armv*)
+
+2013-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/lvm.c: Remove since unused. Remove remaining references.
+
+2013-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle the case of partitioned LVM properly.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
+ Stop on meeting LVM, mpath or DMRAID.
+ (grub_hostdisk_os_dev_to_grub_drive): Canonicalize os device.
+ (read_device_map): Likewise.
+ * util/getroot.c (convert_system_partition_to_system_disk): Assume that
+ device is full disk rather than erroring out on LVM and similar cases.
+
+2013-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in: Keep supplied pkgdatadir if any.
+
+2013-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_mm_init_region): Skip regions less than
+ 4K before the end.
+ Reported by: Leif Lindholm
+
+2013-09-18 Pawel Wojtalczyk <eyak@wp.pl>
+2013-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/efi/console.c (grub_console_getkey): Accept VT100-style
+ codes.
+
+2013-09-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name_iter):
+ Remove no-longer-true __attribute__ ((unused)) on disk parameter.
+
+2013-09-18 Douglas Ray <dougray@cpan.org>
+
+ * util/grub-mkpasswd-pbkdf2.c (grub_get_random): Declare OpenBSD PRNG
+ as secure.
+
+2013-09-18 Aleš Nesrsta <starous@volny.cz>
+
+ * docs/grub.texi: Fix broken link.
+
+2013-09-18 Melki Christian <Christian.melki@saabgroup.com>
+
+ * grub-core/bus/usb/usb.c (grub_usb_device_initialize): Add condition
+ to break endless loop.
+
+2013-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c: Fix several printf formats.
+ * util/grub-mkimage.c: Likewise.
+ * util/grub-mkimagexx.c: Likewise.
+ * util/grub-script-check.c: Likewise.
+
+2013-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/xzembed/xz_dec_lzma2.c: Make -Wattributes not cause
+ error.
+
+2013-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * config.h.in [GRUB_BUILD]: Explicitly undefine ENABLE_NLS.
+
+2013-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_find_device): Use cygwin_conv_path ratherthan
+ removed in current versions cygwin_conv_*.
+
+2013-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Disable efiemu runtime on cygwin.
+
+2013-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.extra-dist: Add missing util/grub-gen-asciih.c,
+ util/grub-gen-widthspec.c and util/grub-pe2elf.c.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (grub_password_get): Remove extraneous
+ error message.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/crypto.c (grub_password_get) [GRUB_UTIL]: Add
+ windows variant.
+ * util/grub-mkpasswd-pbkdf2.c: Add windows flavour for retrieving random
+ data.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -Wl,-melf_i386 and -Wl,-melf_x86_64 systematically
+ when on x86 and not cygwin.
+ * conf/Makefile.common: Remove unsystematic -Wl,-melf_i386 and
+ -Wl,-melf_x86_64.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Set CPP to build one when checkoing for freetype for
+ build.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c [!GRUB_BUILD]: Define my_argp_state.
+ [!GRUB_BUILD]: Remove has_argument.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath) [_WIN32]:
+ Replace with a dummy.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't change host_os from mingw to cygwin.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Change target_os from windows to cygwin.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle grub-pe2elf and grub-mkfont for cases when build != host.
+
+ * Makefile.am (build-grub-mkfont): Don't include gnulib.
+ (build-grub-gen-asciih): Likewise.
+ (build-grub-gen-widthspec): Likewise.
+ * Makefile.util.def (grub-pe2elf): Remove.
+ * config.h.in [GRUB_BUILD]: Use build rather than host constants.
+ * configure.ac: Separate tests for build.
+ Move ./build-grub-pe2elf to grub-core.
+ Fix typo.
+ * grub-core/Makefile.am (build-grub-pe2elf): New target.
+ * grub-core/kern/emu/misc.c (xasprintf): Don't compile if GRUB_BUILD is
+ defined.
+ * include/grub/types.h [GRUB_BUILD]: Use build rather than host
+ constants.
+ * util/grub-mkfont.c [GRUB_BUILD]: Simplify not to rely on argp.
+ * util/grub-pe2elf.c: Simplify not to rely on getopt.
+ * util/misc.c (program_name) [GRUB_BUILD]: Define to static string.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size): Adapt for
+ mingw32 as well based on grub_util_get_disk_size.
+ * util/misc.c (grub_util_get_disk_size): Removed. all users switched to
+ grub_util_get_fd_size.
+ (sync): Removed.
+ (fsync): Moved to ...
+ * grub-core/kern/emu/misc.c (fsync): ... here.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/mm.h (grub_extend_alloc): Remove.
+ * grub-core/loader/i386/pc/plan9.c: Use own version of
+ grub_extend_alloc with appropriate types.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CFLAGS_GCRY): Add -Wno-redundant-decls.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c: Include sys/wait.h only when we need waitpid.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix dependencies on cygwin.
+
+ * gentpl.py: Support variable dependencies. Add $TARGET_OBJ2ELF to
+ dependencies when used and defined.
+ * grub-core/Makefile.core.def (regexp): Add dependency on libgnulib.a.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/zfs/spa.h (zio_cksum): Add explicit members for mac.
+ * grub-core/fs/zfs/zfs.c (zio_read): Don't use casts to retrieve mac.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/mm.c (grub_memalign): Don't define if there is no
+ implementation available to cause compile-time rather than runtime
+ error.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c: Don't check for symlinks on windows.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Mention unavailability of man pages when cross-compiling.
+
+2013-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/crypto.h: Don't declare gcry_log_bug, gcry_log_printf
+ and gcry_log_bug.
+ * grub-core/lib/libgcrypt_wrap/mem.c: Include g10lib.h
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Document cross-compilation.
+ * acinclude.m4: Determine whether nm support -P and --defined-only.
+ * configure.ac: Add TARGET_ to all variables pertaining to target
+ that don't have it yet.
+ * gentpl.py: Likewise.
+ * grub-core/Makefile.am: Likewise.
+ * grub-core/genmod.sh.in: Likewise.
+ * grub-core/gensyminfo.sh.in: Handle OpenBSD and other non-GNU nm
+ as well.
+
+2013-08-21 Ilya Bakulin <Ilya_Bakulin@genua.de>
+
+ * configure.ac: Remove -Wempty-body. It's not essential and needs
+ recent gcc.
+
+2013-08-21 Ilya Bakulin <Ilya_Bakulin@genua.de>
+
+ * grub-core/kern/emu/hostdisk.c: Add conditionals for OpenBSD.
+ * util/getroot.c: Likewise.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Add needed explicit cast.
+ * grub-core/lib/backtrace.c: Likewise.
+ * grub-core/net/ip.c: Likewise.
+ * grub-core/net/tcp.c: Likewise.
+ * grub-core/net/udp.c: Likewise.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/wchar.h: Fix typo.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Add final newline in visibility.h.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common: Fix typo.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-mkfont): Add missing libgnu.a.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (widthspec.h): Fix typo.
+ * util/grub-gen-widthspec.c: Likewise.
+
+2013-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move ascii.h and widthspec.h generation to a separate build-time-only
+ tool.
+
+2013-08-16 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
+ Always fill bootdisk info and improve check for NetBSD disklabel.
+
+2013-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.extra-dist: Add util/bin2h.c.
+ Reported by: floppym.
+
+2013-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Make unifont mandatory for powerpc-ieee1275.
+
+2013-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Disable unifont and starfield if no freetype was found.
+
+2013-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/wchar.h: Fix wchar_t and mbstate_t conflict
+ on NetBSD and OpenBSD.
+
+2013-08-15 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: Baseline misplacement fixed.
+
+2013-08-15 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: The number of color mappings is
+ reduced. Inheritant options are processed during the theme loading.
+
+2013-08-15 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: Minimal width fixed.
+
+2013-08-14 Avik Sil <aviksil@in.ibm.com>
+
+ * grub-core/net/tftp.c: Send tftp ack packet before closing the socket.
+
+2013-08-14 Avik Sil <aviksil@in.ibm.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c: Get proper mac address when
+ using qemu.
+
+2013-08-14 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * .bzrignore: Add bootinfo.txt, grub.chrp, gnulib/float.h, and
+ remove-potcdate.sed.
+
+2013-08-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Remove
+ unused attribute from pull argument.
+
+2013-08-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/getroot.c (grub_util_is_imsm): Fix descriptor and
+ memory leak.
+
+2013-08-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/getroot.c (pull_lvm_by_command): add --separator option
+ to vgs call to disable padding of output to 10 characters.
+
+2013-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c (grub_device_mapper_supported): Move from
+ here ...
+ * grub-core/kern/emu/hostdisk.c (grub_device_mapper_supported): ... to
+ here.
+
+2013-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/pc/biosdisk.h (grub_biosdisk_drp): Fix device_path
+ length.
+
+2013-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of build-time grub-bin2h and grub-mkfont when doing
+ full Canadian cross. Tested with build=x86_64, host=arm,
+ target=ppc-ieee1275.
+
+2013-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Error if no $BUILD_CC could be found.
+ Reported by: DevHC.
+
+2013-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/coreboot/init.c: Fix compilation on
+ i386-multiboot.
+
+2013-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/vga_init.c: Fix compilation on qemu-mips.
+ * grub-core/kern/mips/qemu_mips/init.c: Likewise.
+
+2013-08-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev): Zero out
+ grub_errno in the case where we handle GRUB_ERR_UNKNOWN_DEVICE by
+ falling back to the partition device, otherwise a later call to this
+ function may fail spuriously.
+ Reported by Axel Beckert. Fixes Debian bug #708614.
+
+2013-08-12 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * autogen.sh: Replace find -not by the POSIX-compliant find !.
+
+2013-08-12 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Prevent shadowing of stdlib's devname(3) on BSD.
+
+ * grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Rename devname
+ and devlast to diskname and disklast, respectively.
+
+2013-08-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Fix detection of Emacs autosave files.
+
+2013-08-08 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * docs/grub.texi: Introduce terminal window position options:
+ terminal-left: terminal window's left position
+ terminal-top: terminal window's top position
+ terminal-width: terminal window's width
+ terminal-height: terminal window's height
+ terminal-border: terminal window's border width
+ * grub-core/gfxmenu/theme-loader.c: Likewise.
+ * include/grub/gfxmenu_view.h: Likewise.
+ * po/exlude.pot: Likewise.
+ * grub-core/gfxmenu/view.c: Likewise.
+ Also updated minimal window size.
+ Also terminal_sanity_check function has been introduced.
+ * grub-core/tests/checksums.h: Update (terminal window height
+ is adjusted now for low resolution screen)
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/checksums.h: Update (1-pixel difference in marker
+ position).
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/exclude.pot: Add few recent exceptions.
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_func_test.in: Add unicode.pf2.
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Start with
+ standard rather than noral color, in line with other terminals.
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/dfly.c: Simplify dprintfs for easier gettext
+ analysis.
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/arm/linux.c: Change printf to dprintf.
+
+2013-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (check_feature): Cleanup and remove
+ inappropriate printf.
+
+2013-07-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * .bzrignore: Remove grub-core/lib/dtc-grub,
+ grub-core/Makefile.libfdt.def
+ * conf/Makefile.extra-dist: Remove grub-core/Makefile.libfdt.def.
+
+2013-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/video.h (grub_video_register): Keep double-linked as
+ well as single-linked invariants.
+ Reported by: qwertial.
+
+2013-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/nativedisk.c (get_uuid): Handle
+ GRUB_DISK_DEVICE_UBOOTDISK_ID.
+
+2013-07-25 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/widget-box.c: Fixed draw function. Now it takes
+ maximum of NW, N, NE heights instead of N's height and maximum of
+ NW, W, SW widths instead of W's width. (So the box will be always
+ correctly drawn)
+
+2013-07-20 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/partmap/bsdlabel.c (netopenbsdlabel_partition_map_iterate):
+ Fix misuse of variable count.
+
+2013-07-18 Leif Lindholm <leif.lindholm@arm.com>
+2013-07-18 Francesco Lavra <francescolavra.fl@gmail.com>
+2013-07-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New ports to arm-uboot and arm-efi.
+ Mostly by Leif Lindholm with some additions from
+ Francesco Lavra and cleanup by Vladimir Serbinenko.
+
+2013-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_elfxx.c: Check eip after v2p translation
+ and not before.
+ Reported by: Leon Drugi.
+
+2013-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/powerpc/ieee1275/startup.S: Handle unaligned bss.
+ Reported by: Paulo Flabiano Smorigo.
+
+2013-07-14 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: USe viewport when drawing strings.
+
+2013-07-14 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: Fix height calculation.
+
+2013-07-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c: Stylistic fixes.
+
+2013-07-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c: Run emacs indent on file.
+
+2013-07-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/net/bootp.c: Export net_* variables.
+ * grub-core/net/net.c: Likewise.
+
+2013-07-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c: Remove brackets around return value.
+
+2013-07-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs_lz4.c: Add missing packed attribute.
+
+2013-07-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (nvlist_next_nvpair): Fix improper cast.
+
+2013-07-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs_lz4.c: Remove restrict keyword.
+
+2013-07-14 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfs.c (nvlist_next_nvpair): Error is encode_size
+ <= 0.
+
+2013-07-14 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfs.c: Split nvpair iterators into separate
+ functions.
+
+2013-07-14 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfs_lz4.c: New file.
+ * grub-core/fs/zfs/zfs.c: Tie up lz4 decompression.
+
+2013-07-14 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfs.c: Check for feature compatibility.
+
+2013-07-14 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfs.c (uberblock_verify): Accept version 5000.
+ (check_pool_label): Likewise.
+ * include/grub/zfs/zfs.h: Rewrite SPA_VERSION_* macros.
+
+2013-07-14 Massimo Maggi <me@massimo-maggi.eu>
+
+ * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Fix RAIDZ reporting.
+
+2013-07-13 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Commands): Document postition parameters
+ for menuentry command.
+
+2013-07-13 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mknetdir.in: Remove stray line from help output.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove early sm712 init as there is no reason for it (the "watchdog"
+ effect was due to wrong GPIO map).
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/pcidump.c: Remove static variables.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/sleep.c: Refresh screen before sleeping.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Move delimiter after the infos.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usbhub.c: Fix recheck logic.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (write_font_ascii_bitmap): Fix handling of glyphs
+ not filling whole 8x16 space.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (bidi_line_wrap): Fix spurios warning.
+
+2013-07-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Indicate which liblzma is used if any.
+
+2013-06-21 Paul Wise <pabs3@bonedaddy.net>
+2013-06-21 Craig Sanders <savannah@taz.net.au>
+
+ * util/grub-reboot.in: Document submenu usage.
+
+2013-06-25 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Update with a number of new test-related files.
+
+2013-06-25 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-script-check.c: Fail on scripts containing no
+ commands, to guard against corrupted grub-mkconfig setups that
+ produce no useful output.
+ * tests/grub_script_no_commands.in: New test.
+ * Makefile.util.def (grub_script_no_commands): Add.
+ Reported by Hans Putter. Fixes Debian bug #713886.
+
+2013-06-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/diskfilter.c: Forgot to remove comment
+ from previous commit.
+
+2013-06-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use
+ grub_term_normal_color, do not hardcode GRUB_TERM_DEFAULT_NORMAL_COLOR.
+
+2013-06-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * conf/Makefile.extra-dist: Add grub-core/fs/cpio_common.c.
+
+2013-06-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/diskfilter.c (scan_devices): Iteratively
+ rescan diskfilter devices until nothing new is found.
+
+2013-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix casts when compiling coreboot-specific code for 64-bit EFI.
+
+2013-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't try to detect cbfs on *-emu.
+
+2013-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c: USe right background color when scrolling.
+
+2013-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add support for processed coreboot payload chainloading.
+
+2013-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable coreboot information commands even when not loaded as
+ coreboot payload (e.g. when loaded from SeaBIOS-as-payload).
+
+2013-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support for cbfs. Also factor out the part which is common
+ for all archives to a separate module. This splits tar from cpio
+ as they are very different but keeps cpio, cpio_be, odc and newc
+ together since they're very similar.
+
+2013-06-15 David Michael <fedora.dm0@gmail.com>
+
+ * configure.ac (FREETYPE): Change AC_CHECK_PROGS to AC_CHECK_TOOLS.
+ (freetype_cflags,freetype_libs): Change freetype-config to $FREETYPE.
+
+2013-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_script_eval.in: Really add the eval test.
+
+2013-06-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move flavour-specific parts out of common cpio.c file and
+ rename remaining to cpio_common.c
+
+2013-06-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_execute_sourcecode): Split
+ off new function grub_script_execute_new_scope. Change callers to use
+ either of them as appropriate.
+ * grub-core/commands/eval.c: New command eval.
+ * docs/grub.texi (Commands): Document it.
+
+2013-06-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/kern/corecmd.c (grub_core_cmd_set): Use grub_env_get
+ to fetch values when listing.
+
+2013-06-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ Fix make dist on non-pc.
+
+2013-06-07 Francesco Lavra <francescolavra.fl@gmail.com>
+
+ * grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix handling of paths
+ without a device name.
+
+2013-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove enable_executable_check as it's not needed anymore.
+ Reported by: dougray.
+
+2013-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (insert_array): Fix order to discover
+ ambigouos RAID before discovering RAIDs on top of it.
+ Reported by: bodom.
+
+2013-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix typo (failback vs fallback).
+
+2013-05-31 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Add support for probing EFI
+ System Partition (as of os-prober 1.58).
+
+2013-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add yet another path to unifont. For parabola.
+
+2013-05-30 Josh Triplett <josh@joshtriplett.org>
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Fix Ctrl-u
+ handling to copy the killed characters to the kill buffer as
+ UCS4 stored as grub_uint32_t rather than as 8-bit characters
+ stored as char. Eliminates UCS4 truncation and corruption
+ observed when killing characters with Ctrl-u and yanking them
+ back with Ctrl-y.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Detach optional parts of gfxterm and integrate in with coreboot init.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move blit and fill dispatcher to appropriate files to decrease export
+ and relocation overhead.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/font/font.c, include/grub/font.h: Inline simple font
+ functions.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am: Fix compilation problem with some
+ automake versions.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add Ubuntu path to unifont and report unifont path used.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am, conf/Makefile.common: Fix compilation problem with some
+ automake versions.
+
+2013-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c: Fix handling of DSDT in presence of
+ SSDT.
+
+2013-05-15 Radosław Szymczyszyn <lavrin@gmail.com>
+
+ * grub-core/partmap/dfly.c: New partition map.
+
+2013-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/corecmd.c (grub_core_cmd_ls): Fix empty path
+ checking.
+ Reported by: Francesco Lavra.
+
+2013-05-14 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * gentpl.py: Replace EXTRA_DIST with dist_noinst_DATA or
+ dist_<directory>_DATA. EXTRA_DIST is ignored by automake inside
+ false conditions.
+ * conf/Makefile.common: define dist_grubconf_DATA
+
+2013-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Progressively skip menu elements on small terminals rather
+ than crashing.
+
+2013-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Fix off-by-one error
+ to avoid losing last column.
+
+2013-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/exclude.pot: Add missing string "%C".
+
+2013-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Remove the temporary directory on grub-emu
+ after the test.
+
+2013-05-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Gettextize "Not found" message.
+
+2013-05-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix distfiles list.
+ Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
+
+2013-05-11 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * grub-core/net/bootp.c (grub_cmd_bootp): Check if there is any card
+ present.
+ * include/grub/err.h (grub_err_t): New enum value GRUB_ERR_NET_NO_CARD.
+
+2013-05-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/setjmp_test.c: Ignore missing noreturn.
+
+2013-05-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfspluscomp.c (grub_hfsplus_compress_attr): Add packed
+ attribute since structure is not necessarily aligned.
+
+2013-05-11 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Device syntax): Clarify description of network
+ drives.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Redirect xasprintf to grub_xvasprintf rather than having #ifdef's
+ for vasprintf presence.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Handle efibootmgr presence check.
+ Reported by: Leif Lindholm.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/testspeed.c: Reuse formatting string to decrease
+ new strings to translate.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Replace `STR' with `STRING' to avoid adding
+ yet another string (pun intended) to translate.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES-shell.in: Autogenerate it.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (grub_net_open_real): Autoload network modules.
+
+2013-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c: Rename ANSI_C0 to ANSI_CSI to avoid
+ misnomer.
+
+2013-05-08 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Network): Add description of net_default_interface,
+ net_default_ip and net_default_mac. Rewrite variables description
+ to emphasize that they are per-interface.
+
+2013-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New test: cmdline and cat.
+
+2013-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/cat.c: Show UTF-8 characters.
+
+2013-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common: Poison float and double on non-emu.
+
+2013-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't disable extended registers on emu.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't use extended registers on x86_64.
+ Reported by: Peter Jones.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/efi/console.c: Fix compile error.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Compressed HFS+ support.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videoinfo.c: Use "paletted" rather than "packed
+ pixel".
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Menu color test.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/setjmp_test.c: New test.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New variables 'net_default_*' to determine MAC/IP of default interface.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/gettext_strings_test.in: A test to check for strings not
+ marked for translation.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * autogen.sh: Exclude unused libgcrypt files from translation.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Simplify few strings.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Mark few forgotten strings for translation.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/linux.c: Use grub_dprintf for debug statements
+ rather than printf.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/readers/jpeg.c: Use grub_dprintf for debug statements
+ rather than printf.
+ * grub-core/video/readers/tga.c: Likewise.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/priority_queue_unit_test.cc: New test.
+
+2013-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/font/font.c: Use grub_dprintf for debug statements rather
+ than printf.
+
+2013-05-06 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ Reimplement grub-reboot to not depend on saved_entry. Use next_entry
+ variable for one time boot menu entry.
+
+2013-05-05 Bean <bean123ch@gmail.com>
+
+ * grub-core/commands/testspeed.c: New command testspeed.
+
+2013-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Factor-out human-size printing.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Agglomerate more mallocs to speed-up gfxterm.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Speed-up gfxterm by slightly agglomerating mallocs.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ More video checks.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Speed-up gfxterm by saving intermediate results in index+alpha
+ format.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/lib/functional_test.c: Don't stop on first failed
+ test.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_text.c (menu_clear_timeout): Clear second
+ line of timeout as it may contain the rest of long line.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c: Fix freed memory dereference.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix several memory leaks.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu.c (run_menu): Fix timeout reference point.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c: Try $lang.gmo as well.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix test -a and -o precedence.
+ Reported by: adrian15.
+
+2013-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/font/font.c (grub_font_construct_glyph): Fix memory leak.
+
+2013-05-03 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ Rename grub-core/tests/checksums.c into grub-core/tests/checksums.h
+ and add it as source to functional_test module.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/video_checksum.c: Don't set GENERATE_MODE.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New series of tests for gfxterm and gfxmenu.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Allow specifying
+ the theme path relative to $prefix/themes.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/fb/fbblit.c (grub_video_fbblit_blend_BGR888_RGBA8888):
+ Fix order bug.
+ (grub_video_fbblit_blend_RGB888_RGBA8888): Likewise.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/gui.h (grub_gfxmenu_timeout_unregister): Free cb
+ descriptor.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/view.c (grub_gfxmenu_view_new): Clear
+ grub_gfxmenu_timeout_notifications.
+ (grub_gfxmenu_view_destroy): Likewise.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (print_ucs4_real): Fix startwidth in dry run.
+
+2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Several fixes to ieee1275 and big-endian video.
+
+2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing exports on mips.
+
+2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/tests/videotest_checksum.c (videotest_checksum): Error out
+ if no unifont is found.
+ Restore original keyboard.
+
+2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_linux_setup_video): Add
+ GRUB_VIDEO_ADAPTER_CAPTURE: to handled drived ids.
+
+2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ First automated video test (running videotest and comparing results)
+
+2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videotest.c: Reduce flickering and draw 6 squares
+ instead of 2 to have full RGB/CMY test pattern.
+
+2013-04-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add few more tests.
+
+2013-04-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/arc/arc.h: Account for missing "other" peripheral on
+ ARCS. All users updated.
+
+2013-04-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/loongson/init.c: Support halt for loongson 2E.
+
+2013-04-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/amiga.c: Fix size of checksummed block.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Use -mcmodel=large on x86_64-emu as well.
+ Reported by: qwertial.
+
+2013-04-29 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/circular_progress.c: Set start_angle in degrees
+ with syntax "XXX deg"/"XXX °".
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make PCI init in i386-qemu port more robust.
+
+2013-04-29 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_list.c: Refresh first_shown_entry value when
+ cached view is reused.
+ * grub-core/gfxmenu/view.c: Call the refresh procedure for all
+ open boot menus.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify more code in grub-install_header.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add few new tests.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enforce disabling of firmware disk drivers when native drivers kick in.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/nativedisk.c: Customize the list of modules on
+ platform. Don't try to search for disks already using native drivers.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/uhci.c: Fix DMA handling and enable on all PCI
+ platforms.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_arglist_to_argv): Fix
+ handling of variables containing backslash.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/list.h (FOR_LIST_ELEMENTS_SAFE):Fix a NULL pointer
+ dereference.
+ Reported by: qwertial.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/arc/init.c: Fix prefix detection.
+
+2013-04-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_show_help): Fix a NULL pointer
+ dereference.
+ Reported by: qwertial.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Add a comment about usefullness of nativedisk.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/nativedisk.c: Ignore unknown filesystem error.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New command `nativedisk'.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/lzopio.c: Use GRUB_PROPERLY_ALIGNED_ARRAY.
+ * grub-core/loader/i386/bsd.c: Likewise.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Fix compilation for amd64 (format warnings).
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (GRUB_EFI_DEVICE_PATH_LENGTH): Use
+ grub_get_unaligned16 rather than shifts.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/file.c: Use const char * rather than casting to
+ non-const.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/probe.c: Add missing grub_device_close.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * INSTALL: Document linguas.sh.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove POTFILES.in and regenerate it in autogen.sh.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move --directory/--override-directorry to grub-install_header and unify.
+
+2013-04-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/morse.c: Macroify dih and dah.
+
+2013-04-27 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * include/grub/macho.h: Set GRUB_MACHO_FAT_EFI_MAGIC as unsigned.
+
+2013-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ns8250.c: Systematically probe ports by writing
+ to SR before using them.
+
+2013-04-27 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * util/ieee1275/ofpath.c (of_path_of_scsi): Fix path output for sas
+ disks.
+ (check_sas): Get sas_adress info.
+
+2013-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c (grub_ahci_pciinit): Fix handling of empty
+ ports.
+
+2013-04-27 Leon Drugi <eyak>
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Fix cast in
+ BSS clearing.
+
+2013-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Core compression test.
+
+2013-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement grub_machine_get_bootlocation for ARC.
+
+2013-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Improve AHCI detection and command issuing.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix pseries test.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make 'make check' work on emu.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace libcurses with our own vt100 handling for the ease of testing
+ and decreasing prerequisites.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def: Fix grub-emu and grub-emu-lite sources.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (exec_pipe): Put proper #if's so that its users don't
+ compile when not needed.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/pseries_test.in: New test.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add test to check that different boot mediums work.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Rename i386-ieee1275 core image due to
+ ofw limited ISO support.
+
+2013-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Fix loongson conditional.
+
+2013-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable mipsel-arc.
+
+2013-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add serial on ARC platform.
+
+2013-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/powerpc/bootinfo.txt.in: Missing update from previous
+ commit.
+
+2013-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/partmap_test.in: Add missing double semicolon.
+
+2013-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Fix loongson filename.
+
+2013-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Move all files that don't have a location
+ set in stone under /boot/grub. Use ISO hard links rather than copies
+ to save some space.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/console.c (grub_console_dimensions): Ignore
+ bogus SLOF values.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make check work on mips-arc.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Alias sashARCS as sash.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/arc/console.c: Assume that console is 80x24 vt100 if
+ it's serial.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix target fo qemu_mips.
+ Fix extension on EFI.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_text.c (print_entry): Put an asterisk
+ in front of chosen entry to mark it even if highlighting is lost.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Default to
+ gfxpayload=keep if cbfb is active.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ata.c (grub_ata_real_open): Use grub_error properly.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing video ids to coreboot and ieee1275 video.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Add mips-arc support.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c (grub_dl_resolve_symbols): Handle malloc failure.
+
+2013-04-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move mips-arc link address. Previous link address was chosen
+ in belief that RAM on SGI platforms grows down while in fact it
+ grows up from an unusual base.
+
+2013-04-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/arc/arcdisk.c (grub_arcdisk_iterate_iter):
+ Fix a type which prevented CD-ROM and floppy boot.
+
+2013-04-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support coreboot framebuffer.
+
+ * grub-core/video/i386/coreboot/cbfb.c: New file.
+
+2013-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_mm_init_region): Fix condition for
+ detecting too small regions.
+
+2013-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (legacycfg): Enable on EFI.
+
+2013-04-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/efi/relocator.c (grub_relocator_firmware_alloc_region):
+ Remove dprintf.
+ * grub-core/lib/relocator.c (malloc_in_range): Likewise.
+
+2013-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/init.c (grub_claim_heap): Improve handling
+ of GRUB_IEEE1275_FLAG_FORCE_CLAIM.
+ * grub-core/loader/powerpc/ieee1275/linux.c
+ (grub_linux_claimmap_iterate): Handle GRUB_IEEE1275_FLAG_FORCE_CLAIM.
+
+2013-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
+ Look for /boot-rom as well as /rom/boot-rom.
+
+2013-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videotest.c (grub_cmd_videotest): Fix error
+ handling when creating text_layer failed.
+ * grub-core/video/video.c (grub_video_create_render_target):
+ Set result to 0 on error.
+ (grub_video_delete_render_target): Do not dereference NULL.
+
+2013-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/elfXX.c (grub_elfXX_load): Handle
+ GRUB_ELF_LOAD_FLAGS_30BITS and GRUB_ELF_LOAD_FLAGS_62BITS.
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32),
+ (grub_linux_load64): Mask out 2 high bits.
+
+2013-04-19 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Add onstr to linux entries in one
+ more place.
+
+2013-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add support for pseries and other bootinfo machines to grub-mkrescue.
+
+ Tested by: Paulo Flabiano Smorigo.
+
+2013-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Add GPT for EFI boot.
+
+2013-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c: Detect floppies by ACPI ID.
+ It improves performance in qemu.
+
+2013-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * build-aux/snippet: Add missing gnulib files.
+
+2013-04-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c: Really limit transfer chunk size.
+
+2013-04-16 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * autogen.sh: Use "-f" in addition for "-h" when checking file presence.
+
+2013-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+2013-04-15 Peter Jones <pjones@redhat.com>
+
+ * grub-core/disk/efi/efidisk.c: Limit disk read or write chunk to 0x500
+ sectors.
+ Based on patch by Peter Jones.
+
+2013-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix DMRAID partition handling.
+
+2013-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_cmd_date.in: Skip on sparc64.
+
+2013-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_script_expansion.in: Use fixed-string grep to skip over
+ firmware error messages.
+
+2013-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_devalias_next): Make
+ source and destination differ.
+
+2013-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c: Fix CD-ROM and boot device
+ detection.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/sys/types.h: Make WORDS_BIGENDIAN definition
+ match config-util.h to avoid warnings and increase compatibility.
+
+2013-04-14 Szymon Janc <szymon@janc.net.pl>
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add option to compress files on install/image creation.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub-dev.texi: Rearrange menu to match the section order.
+ Reported by: Bryan Hundven.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c: Remove useless leftover pointer.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move GRUB out of system area when using xorriso 1.2.9 or later.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_cmd_date.in: Add missing exit 1.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/partmap_test.in: Skip on sparc64.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support grub-shell on sparc64.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support mkrescue on sparc64.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Allow IEEE1275 ports on path even if it wasn't detected automatically.
+ Needed on OpenBIOS due to incomplete device tree.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c: Iterate over bootpath even if it
+ would be otherwise excluded.
+
+2013-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options):
+ Inline name defines used only once.
+
+2013-04-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix memory leaks in ofnet.
+ Reported by: Francesco Lavra.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/man/grub-glue-efi.h2m: Add missing file.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Fix wrong architecture for ppc dir.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Better support Apple Intel Macs on CD.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace stpcpy with grub_stpcpy in tools.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle Japanese special keys.
+ Reported by: Hiroyuki YAMAMORI.
+ Codes supplied by: Hiroyuki YAMAMORI.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c: Document memdisk implying --prefix.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/ehci.c (grub_ehci_fini_hw): Ignore errors, not
+ much we can do about it anyway.
+
+2013-04-12 Aleš Nesrsta <starous@volny.cz>
+
+ Fix handling of split transfers.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/http.c: Fix bad free.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c: Don't attempt to send more
+ than buffer size.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Disable partmap check on i386-ieee1275 due to openfirmware issues.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Fix it on powerpc.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Turn off QEMU ACPI-way since new releases don't have shutdown port
+ anymore.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Update coreboot status info.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_cmd_date.in: New test for datetime.
+
+2013-04-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/partmap_test.in: Fix missing qemudisk setting.
+
+2013-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support i386-ieee1275 grub-mkrescue and make check on it.
+
+2013-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge powerpc grub-mkrescue flavour with common. Use xorriso HFS+
+ feature for it.
+
+2013-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Fix description of GRUB_CMDLINE_XEN and
+ GRUB_CMDLINE_XEN_DEFAULT.
+ Reported by: Marc Warne (GigaTux) <gigatux>
+
+2013-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Import new gnulib.
+
+2013-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use ACPI shutdown intests as traditional port was removed.
+
+2013-04-11 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Add onstr to entries for visual
+ distinction.
+
+2013-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix missing PVs if they don't contain "interesting" LV. Closes #38677.
+ Fix few warining messages and leaks while on it.
+
+2013-04-09 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * autogen.sh: Use "-h", not "-f", to test for existence of symbolic
+ links under grub-core/lib/libgcrypt-grub/mpi.
+
+2013-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ia64-efi image generation on big-endian machines. Deduplicate
+ some code while on it.
+ Reported by: Leif Lindholm.
+
+2013-04-08 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/Makefile.core.def: Add kern/elfXX.c to elf module
+ as extra_dist.
+
+2013-04-08 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/term/i386/pc/console.c: Fix cursor moving algorithm.
+
+2013-04-08 Bryan Hundven <bryanhundven@gmail.com>
+
+ * docs/grub-dev.texi: Move @itemize after @subsection to satisfy
+ texinfo-5.1.
+
+2013-04-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c: Few more fixes for menu entry editor
+ rendering.
+ Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
+
+2013-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c: Few more fixes for menu entry editor
+ rendering.
+ Reported by: Andrey Borzenkov <arvidjaar@gmail.com>
+
+2013-04-06 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * conf/Makefile.extra-dist (EXTRA_DIST): Add
+ grub-core/lib/libgcrypt/src/gcrypt.h.in and util/import_gcrypth.sed.
+
+2013-04-06 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install_header: Use @PACKAGE@.mo in message catalog name
+ instead of hardcoding grub.mo.
+
+2013-04-05 Fedora Ninjas <grub2-owner@fedoraproject.org>
+
+ * util/grub.d/30_os-prober.in: Support btrrfs linux-prober extensions.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use GRUB_PROPERLY_ALIGNED_ARRAY in grub-core/disk/cryptodisk.c and
+ grub-core/disk/geli.c.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c: Prefer enum to #define.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpi.c: Use sizeof rather than hardcoding the size.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace 8 with GRUB_CHAR_BIT in several places when appropriate.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add new defines GRUB_RSDP_SIGNATURE_SIZE and GRUB_RSDP_SIGNATURE.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c: Use GRUB_CHAR_BIT.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/bsdlabel.h: Use enums.
+
+2013-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move GRUB_CHAR_BIT to types.h.
+
+2013-04-04 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi: Document more user commands.
+
+2013-04-04 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi: Document menuentry --id option.
+
+2013-04-04 Francesco Lavra <francescolavra.fl@gmail.com>
+
+ * util/grub-mkimage.c: Introduce new define EFI32_HEADER_SIZE.
+
+2013-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify file copying setup across different install scripts. Add
+ options for performing partial install.
+
+2013-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+2013-04-04 Peter Jones <pjones@redhat.com>
+
+ * grub-core/disk/efi/efidisk.c: Handle partitions on non-512B disks.
+
+2013-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use TSC as a possible time source on i386-ieee1275.
+
+2013-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_readwrite_packetize):
+ Init err.
+
+2013-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Handle some corner cases.
+
+2013-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/locale.h [GRUB_UTIL]: Include host locale.h.
+
+2013-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c: Save verified file to avoid it being
+ tampered with after verification was done.
+
+2013-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/i386/pc/console.c (grub_console_getwh): Decrease
+ reported width by one to compensate for curesor algorithm problem.
+
+2013-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix screen corruption in menu entry editor and simplify the code
+ flow while on it.
+
+2013-04-03 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-mount.c (fuse_init): Return error if fuse_main
+ failed.
+
+2013-04-03 Francesco Lavra <francescolavra.fl@gmail.com>
+
+ * include/grub/elf.h: Add missing ARM relocation codes and fix
+ existing ones.
+
+2013-04-03 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_progress_bar.c: Handle padding sizes.
+
+2013-04-03 Vladimir Testov <vladimir.testov@rosalab.ru>
+2013-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_circular_progress.c: Take both width and height
+ into account when calculating radius.
+
+2013-04-03 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/view.c: Fix off-by-one error.
+
+2013-04-03 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/gui_circular_progress.c: Fix off-by-one error.
+
+2013-04-01 Radosław Szymczyszyn <lavrin@gmail.com>
+
+ * grub-core/partmap/apple.c (apple_partition_map_iterate): Add
+ missing closing bracket.
+
+2013-04-01 Radosław Szymczyszyn <lavrin@gmail.com>
+
+ * INSTALL: Mention xorriso requirement.
+
+2013-03-31 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/commands/verify.c: Fix hash algorithms values for
+ the first three hashes - they start with 1, not with 0.
+
+2013-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/mm.c (grub_efi_finish_boot_services):
+ Try terminating EFI services several times due to quirks in some
+ implementations.
+
+2013-03-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/acpihalt.c (skip_ext_op): Add support for
+ skipping Event, Device, Processor, PowerRes, ThermalZone, and
+ BankField extended opcodes.
+ (get_sleep_type): Add minimal scope handling (just enough to
+ handle setting the scope to the root path).
+ (grub_acpi_halt): Parse any SSDTs as well as the DSDT.
+ * include/grub/acpi.h: Add enumeration values for Event, Device,
+ Processor, PowerRes, ThermalZone, and BankField extended opcodes.
+
+2013-03-26 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * grub-core/gfxmenu/font.c (grub_font_get_string_width): Fix
+ memory leak.
+
+2013-03-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Give more time for AHCI request.
+
+2013-03-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu.c: Wait if there were errors shown at "boot"
+ command.
+
+2013-03-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace the region at 0 from coreboot tables to available in BSD
+ memory map.
+
+2013-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Automatically add no-real-mode edd=off on
+ non-BIOS platforms.
+
+2013-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (vga): Disable on coreboot and multiboot
+ platforms.
+
+2013-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix
+ handling of multi-device filesystems.
+
+2013-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (vbe): Disable on coreboot and multiboot
+ platforms.
+
+2013-03-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add new 'proc' filesystem framework and put luks_script into it.
+
+2013-03-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c: Increase robustness on coreboot
+ and qemu.
+
+2013-03-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c: Fix incorrect handling of special volumes.
+
+2013-03-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add ability to generate newc additions on runtime.
+
+2013-03-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/coreboot/cbls.c: Fix typos and wrong
+ description.
+
+2013-03-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+
+2013-03-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c (hashes): Add several hashes
+ from the spec.
+
+2013-03-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Slight improve in USB-related boot-time checkpoints.
+
+2013-03-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/boottime.c: Fix copyright header.
+
+2013-03-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New commands cbmemc, lscoreboot, coreboot_boottime to inspect
+ coreboot tables content. Support for cbmemc.
+
+2013-03-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix a conflict between ports structures with 2 controllers of
+ same kind.
+
+2013-03-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/boottime.h: Add missing file.
+
+2013-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Initialize USB ports in parallel to speed-up boot.
+
+2013-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix USB devices not being detected when requested
+ due to delayed attach.
+
+2013-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement boot time analysis framework.
+
+2013-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove get_endpoint_descriptor and change all functions needing
+ descriptor to just receive it as argument rather than endpoint
+ address.
+
+2013-03-19 Aleš Nesrsta <starous@volny.cz>
+
+ Better estimate the maximum USB transfer size.
+
+2013-03-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Resend a packet if we got the wrong buffer in status.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Use
+ multiplication rather than division.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_list_alloc): Use shifts rather
+ than divisions.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c (grub_verify_signature): Use unsigned
+ operations to have intended shifts and not divisions.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/pc/plan9.c (fill_disk): Fix types to use
+ intended shifts rather than division.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/datetime.h (grub_datetime2unixtime): Fix unixtime
+ computation for some years before epoch. Avode confusing division
+ while on it.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/i386/pc/vbe.c
+ (grub_video_vbe_print_adapter_specific_info): Replace division by
+ shifts.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Adjust types in gdb module to have intended unsigned shifts rather than
+ signed divisions.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c (grub_hfs_read_file): Avoid divmod64 since the
+ maximum size is 4G - 1 on hfs
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid costly 64-bit division in grub_get_time_ms on most platforms.
+
+2013-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (grub_fshelp_log2blksize): Remove now unused
+ function.
+
+2013-03-07 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/fs/iso9660.c (add_part): Remove always_inline attribute
+ causing gcc error with gcc 4.7.1.
+
+2013-03-07 Nickolai Zeldovich <nickolai@csail.mit.edu>
+
+ * grub-core/commands/acpi.c (grub_acpi_create_ebda): Don't
+ dereference null pointer. While the code is technically correct, gcc
+ may eliminate a null check if pointer is already dereferenced.
+
+2013-03-07 Nickolai Zeldovich <nickolai@csail.mit.edu>
+
+ * grub-core/normal/crypto.c (read_crypto_list): Fix incorrect
+ OOM check.
+ * grub-core/normal/term.c (read_terminal_list): Likewise.
+
+2013-03-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Lift up core size limits on some platforms. Fix potential memory
+ corruption with big core on small memory systems. Document remaining
+ limits.
+
+2013-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_terminfo_cls): Issue an explicit
+ gotoxy to 0,0.
+
+2013-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove all trampoline support. Add -Wtrampolines when
+ present. Remove symbols used for trampolines to make
+ link fail if trampolines are present.
+
+2013-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_arglist_to_argv): Move
+ append out of its parent.
+
+2013-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/regexp.c (set_matches): Move setvar out of its
+ parent.
+
+2013-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/env.c, include/grub/env.h: Change iterator through
+ all vars to a macro. All users updated.
+
+2013-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/nand.c: Fix compilation on
+ i386-ieee1275.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/cmos.h: Handle high CMOS addresses on sparc64.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/mips/loongson/cmos.h: Fix high CMOS addresses.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move to more hookless approach in IEEE1275 devices handling.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/term.c (grub_term_normal_color),
+ (grub_term_highlight_color): Add back lost defaults.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make elfload not use hooks. Opt for flags and iterators instead.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/ia64/longjmp.S: Fix the name of longjmp function.
+ * grub-core/lib/ia64/setjmp.S: Fix the name of setjmp function.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (gettext_append): Remove nested functions.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (grub_bidi_logical_to_visual): Add
+ hook pass-through parameter. All users updated and unnested.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/loadenv.c (grub_cmd_list_env): Move print_var
+ out of its parent.
+
+2013-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c: Remove nested functions.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Pass
+ the context through.
+ (grub_hfsplus_iterate_dir): Move nested function out of its parent.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-editenv.c (list_variables): Move print_var out of its
+ parent.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Remove nested
+ function.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gentrigtables.c: Make tables const.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove nested functions from videoinfo iterators.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Fix compilation
+ for 64-bit platforms.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c: Transform iterate_child_devices into
+ a FOR_CHILDREN macro.
+
+2013-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/main.c (grub_set_prefix_and_root): Strip trailing
+ platform from firmware path.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable linux16 on non-BIOS systems for i.a. memtest.
+
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Handle hole at 0
+ correctly.
+ * grub-core/Makefile.core.def (linux16): Enable on all x86 flavours.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate):
+ Fix end of table condition.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_show_help): Move showargs
+ out of its parent.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c: Remove nested functions.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c: Remove nested functions.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c: Remove nested functions.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/parttool.c (grub_cmd_parttool): Move show_help out
+ of parent function.
+
+2013-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c: Remove nested functions.
+
+2013-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/machoXX.c: Remove nested functions.
+
+2013-02-27 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from disk and file read hooks.
+
+ * include/grub/disk.h (grub_disk_read_hook_t): New type.
+ (struct grub_disk): Add read_hook_data member.
+ * include/grub/file.h (struct grub_file): Likewise.
+ * include/grub/fshelp.h (grub_fshelp_read_file): Add read_hook_data
+ argument.
+
+ Update all callers.
+
+2012-02-27 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/partmap/msdos.c (grub_partition_msdos_iterate):
+ Fix off by one error in enumerating extended partitions.
+
+2013-02-26 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c(grub_efidisk_get_device_name): Fix
+ memory leak if device name is not found.
+
+2013-02-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/normal/menu_entry.c (update_screen): remove
+ unused variable `off' which caused scroll down arrow to be always shown.
+
+2013-02-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * grub-core/normal/menu_entry.c (insert_string): fix off by one
+ access to unallocated memory.
+
+2013-02-25 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * Makefile.util.def: Add partmap/msdos.c to common library.
+ * include/grub/msdos_partition.h: Add GRUB_PC_PARTITION_TYPE_LDM
+ * grub-core/disk/ldm.c: Check for existence of
+ GRUB_PC_PARTITION_TYPE_LDM.
+
+2013-02-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/misc.c (grub_normal_print_device_info): Use KiB to display
+ sizes and display sector size.
+
+2013-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement new command cmosdump.
+
+2013-02-19 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ Support Openfirmware disks with non-512B sectors.
+
+ * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Get the block
+ size of the disk.
+ * (grub_ofdisk_get_block_size): New function.
+ * (grub_ofdisk_prepare): Use the correct block size.
+ * (grub_ofdisk_read): Likewise.
+ * (grub_ofdisk_write): Likewise.
+ * include/grub/ieee1275/ofdisk.h (grub_ofdisk_get_block_size):
+ New proto.
+
+2013-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/lsacpi.c: Fix types on 64-bit platform.
+
+2013-02-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/cryptodisk.c (grub_cryptodisk_scan_device): Don't stop
+ on first error.
+
+2013-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (find_file): Set oldnode to zero after
+ freeing it.
+
+2013-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement USBDebug (full USB stack variant).
+
+2013-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/lsacpi.c: Show more info. Hide some boring parts
+ unless they have unexpected values.
+
+2013-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usb.c (grub_usb_device_attach): Add missing
+ grub_print_error.
+
+2013-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/serial/common.c (grub_usbserial_attach): Fix missing
+ zero-out of port structure.
+
+2013-01-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (grub_xfs_read_block): Fix computation in presence
+ of extended attributes.
+
+2013-01-27 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install.in: change misleading comment about
+ device.map creation
+
+2013-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_text.c (grub_menu_init_page): Fix behaviour
+ when menu highlight color isn't set.
+
+2013-01-27 C. Masloch <pushbx@38.de>
+
+ Improve FreeDOS direct loading support compatibility.
+
+ * include/grub/i386/relocator.h (grub_relocator16_state):
+ New member ebp.
+ * grub-core/lib/i386/relocator.c (grub_relocator16_ebp): New extern
+ variable.
+ (grub_relocator16_boot): Handle %ebp.
+ * grub-core/lib/i386/relocator16.S: Likewise.
+ * grub-core/loader/i386/pc/freedos.c:
+ Load BPB to pass kernel which partition to load from.
+ Check that kernel file is not too large.
+ Set register dl to BIOS unit number as well.
+
+2013-01-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-reboot.in (usage): Document the need for
+ GRUB_DEFAULT=saved.
+ * util/grub-set-default.in (usage): Likewise.
+ Reported by: Brian Candler. Fixes Ubuntu bug #1102925.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Include sys/types.h rather
+ than defining WORDS_BIGENDIAN manually.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/kernel.h (FOR_MODULES): Adjust to preserve alignment
+ invariants.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/font/font.c (blit_comb: do_blit): Make static instead of
+ nested.
+ (blit_comb: add_device_width): Likewise.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from USB iterators.
+
+ * include/grub/usb.h (grub_usb_iterate_hook_t): New type.
+ (grub_usb_controller_iterate_hook_t): Likewise.
+ (grub_usb_iterate): Add hook_data argument.
+ (grub_usb_controller_iterate): Likewise.
+ (struct grub_usb_controller_dev.iterate): Likewise.
+
+ Update all implementations and callers.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (print_ucs4_terminal): Don't output right
+ margin when not needed.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make color variables global instead of it being per-terminal.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/ls.c (grub_ls_print_devices): Add missing
+ asterisk.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix powerpc and sparc64 build failures caused by un-nesting memory
+ map iterators.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/arc/arcdisk.c (grub_arcdisk_iterate): Fix
+ parameter declarations.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/lsmmap.c: Fix unused variable on emu.
+
+2013-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Improve spkmomdem reliability by adding a separator between bytes.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/partmap/msdos.c (embed_signatures): Add the signature of
+ an Acer registration utility with several sightings in the wild.
+ Reported by: Rickard Westman. Fixes Ubuntu bug #987022.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from filesystem directory iterators.
+
+ * include/grub/fs.h (grub_fs_dir_hook_t): New type.
+ (struct grub_fs.dir): Add hook_data argument.
+
+ Update all implementations and callers.
+
+2013-01-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Multi-boot manual config): Fix typo for
+ "recommended".
+
+2013-01-20 Leif Lindholm <leif.lindholm@arm.com>
+
+ * util/grub-mkimage.c (main): Postpone freeing arguments.output
+ until after its use in generate_image.
+
+2013-01-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/loader/i386/linux.c (grub_cmd_initrd): Don't add the
+ initrd size to addr_min, since the initrd will be allocated after
+ this address.
+
+2013-01-20 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * conf/Makefile.common: Fix autogen rules to pass definition
+ files on stdin; Makefile.util.am needs Makefile.utilgcry.def
+
+2013-01-20 Leif Lindholm <leif.lindholm@arm.com>
+
+ * include/grub/elf.h: Update ARM definitions based on binutils.
+
+2013-01-20 Aleš Nesrsta <starous@volny.cz>
+
+ Split long USB transfers into short ones.
+
+2013-01-20 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * docs/grub.texi (Simple configuration): Clarify GRUB_HIDDEN_TIMEOUT
+ is interrupted by ESC.
+
+2013-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-script-check.c (main): Uniform the error message.
+
+2013-01-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from ELF iterators.
+
+2013-01-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from device iterators.
+
+ * include/grub/arc/arc.h (grub_arc_iterate_devs_hook_t): New type.
+ (grub_arc_iterate_devs): Add hook_data argument.
+ * include/grub/ata.h (grub_ata_dev_iterate_hook_t): New type.
+ (struct grub_ata_dev.iterate): Add hook_data argument.
+ * include/grub/device.h (grub_device_iterate_hook_t): New type.
+ (grub_device_iterate): Add hook_data argument.
+ * include/grub/disk.h (grub_disk_dev_iterate_hook_t): New type.
+ (struct grub_disk_dev.iterate): Add hook_data argument.
+ (grub_disk_dev_iterate): Likewise.
+ * include/grub/gpt_partition.h (grub_gpt_partition_map_iterate):
+ Likewise.
+ * include/grub/msdos_partition.h (grub_partition_msdos_iterate):
+ Likewise.
+ * include/grub/partition.h (grub_partition_iterate_hook_t): New
+ type.
+ (struct grub_partition_map.iterate): Add hook_data argument.
+ (grub_partition_iterate): Likewise.
+ * include/grub/scsi.h (grub_scsi_dev_iterate_hook_t): New type.
+ (struct grub_scsi_dev.iterate): Add hook_data argument.
+
+ Update all callers.
+
+2013-01-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix typos for "developer" and "development".
+
+2013-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add license header to spkmodem-recv.c.
+
+2013-01-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rewrite spkmodem to use PIT for timing. Double the speed.
+
+2013-01-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add new command pcidump.
+
+2013-01-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New terminal outputs using serial: morse and spkmodem.
+
+2013-01-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Improve bidi handling in entry editor.
+
+2013-01-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/lexer.c (grub_script_lexer_init): Rename getline
+ argument to prevent name collision.
+
+2013-01-15 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from script reading and parsing.
+
+ * grub-core/kern/parser.c (grub_parser_split_cmdline): Add
+ getline_data argument, passed to getline.
+ * grub-core/kern/rescue_parser.c (grub_rescue_parse_line): Add
+ getline_data argument, passed to grub_parser_split_cmdline.
+ * grub-core/script/lexer.c (grub_script_lexer_yywrap): Pass
+ lexerstate->getline_data to lexerstate->getline.
+ (grub_script_lexer_init): Add getline_data argument, saved in
+ lexerstate->getline_data.
+ * grub-core/script/main.c (grub_normal_parse_line): Add getline_data
+ argument, passed to grub_script_parse.
+ * grub-core/script/script.c (grub_script_parse): Add getline_data
+ argument, passed to grub_script_lexer_init.
+ * include/grub/parser.h (grub_parser_split_cmdline): Update
+ prototype. Update all callers to pass appropriate getline data.
+ (struct grub_parser.parse_line): Likewise.
+ (grub_rescue_parse_line): Likewise.
+ * include/grub/reader.h (grub_reader_getline_t): Add void *
+ argument.
+ * include/grub/script_sh.h (struct grub_lexer_param): Add
+ getline_data member.
+ (grub_script_parse): Update prototype. Update all callers to pass
+ appropriate getline data.
+ (grub_script_lexer_init): Likewise.
+ (grub_normal_parse_line): Likewise.
+
+ * grub-core/commands/legacycfg.c (legacy_file_getline): Add unused
+ data argument.
+ * grub-core/kern/parser.c (grub_parser_execute: getline): Make
+ static instead of nested. Rename to ...
+ (grub_parser_execute_getline): ... this.
+ * grub-core/kern/rescue_reader.c (grub_rescue_read_line): Add unused
+ data argument.
+ * grub-core/normal/main.c (read_config_file: getline): Make static
+ instead of nested. Rename to ...
+ (read_config_file_getline): ... this.
+ (grub_normal_read_line): Add unused data argument.
+ * grub-core/script/execute.c (grub_script_execute_sourcecode:
+ getline): Make static instead of nested. Rename to ...
+ (grub_script_execute_sourcecode_getline): ... this.
+ * util/grub-script-check.c (main: get_config_line): Make static
+ instead of nested.
+
+2013-01-15 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from memory map iterators.
+
+ * grub-core/efiemu/mm.c (grub_efiemu_mmap_iterate): Add hook_data
+ argument, passed to hook.
+ * grub-core/kern/i386/coreboot/mmap.c
+ (grub_linuxbios_table_iterate): Likewise.
+ (grub_machine_mmap_iterate: iterate_linuxbios_table): Make static
+ instead of nested.
+ (grub_machine_mmap_iterate): Add hook_data argument.
+ * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_iterate):
+ Add hook_data argument, passed to hook.
+ * grub-core/kern/i386/pc/mmap.c (grub_machine_mmap_iterate):
+ Likewise.
+ * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
+ Likewise.
+ * grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate):
+ Likewise.
+ * grub-core/kern/mips/arc/init.c (grub_machine_mmap_iterate):
+ Likewise.
+ * grub-core/kern/mips/loongson/init.c (grub_machine_mmap_iterate):
+ Likewise.
+ * grub-core/kern/mips/qemu_mips/init.c (grub_machine_mmap_iterate):
+ Likewise.
+ * grub-core/mmap/efi/mmap.c (grub_efi_mmap_iterate): Likewise.
+ (grub_machine_mmap_iterate): Likewise.
+ * grub-core/mmap/mmap.c (grub_mmap_iterate): Likewise.
+ * include/grub/efiemu/efiemu.h (grub_efiemu_mmap_iterate): Update
+ prototype.
+ * include/grub/memory.h (grub_memory_hook_t): Add data argument.
+ Remove NESTED_FUNC_ATTR from here and from all users.
+ (grub_mmap_iterate): Update prototype.
+ (grub_efi_mmap_iterate): Update prototype. Update all callers to
+ pass appropriate hook data.
+ (grub_machine_mmap_iterate): Likewise.
+
+ * grub-core/commands/acpi.c (grub_acpi_create_ebda: find_hook): Make
+ static instead of nested.
+ * grub-core/commands/lsmmap.c (grub_cmd_lsmmap: hook): Likewise.
+ Rename to ...
+ (lsmmap_hook): ... this.
+ * grub-core/efiemu/mm.c (grub_efiemu_mmap_init: bounds_hook):
+ Likewise.
+ (grub_efiemu_mmap_fill: fill_hook): Likewise.
+ * grub-core/kern/i386/coreboot/init.c (grub_machine_init:
+ heap_init): Likewise.
+ * grub-core/kern/i386/pc/init.c (grub_machine_init: hook): Likewise.
+ Rename to ...
+ (mmap_iterate_hook): ... this.
+ * grub-core/kern/ieee1275/init.c (grub_claim_heap: heap_init):
+ Likewise.
+ * grub-core/lib/ieee1275/relocator.c
+ (grub_relocator_firmware_get_max_events: count): Likewise.
+ (grub_relocator_firmware_fill_events: fill): Likewise. Rename
+ to ...
+ (grub_relocator_firmware_fill_events_iter): ... this.
+ * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align:
+ hook): Likewise. Rename to ...
+ (grub_relocator_alloc_chunk_align_iter): ... this.
+ * grub-core/loader/i386/bsd.c (generate_e820_mmap: hook): Likewise.
+ Rename to ...
+ (generate_e820_mmap_iter): ... this.
+ * grub-core/loader/i386/linux.c (find_mmap_size: hook): Likewise.
+ Rename to ...
+ (count_hook): ... this.
+ (grub_linux_boot: hook): Likewise. Rename to ...
+ (grub_linux_boot_mmap_find): ... this.
+ (grub_linux_boot: hook_fill): Likewise. Rename to ...
+ (grub_linux_boot_mmap_fill): ... this.
+ * grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap:
+ hook): Likewise. Rename to ...
+ (grub_fill_multiboot_mmap_iter): ... this.
+ * grub-core/loader/multiboot.c (grub_get_multiboot_mmap_count:
+ hook): Likewise. Rename to ...
+ (count_hook): ... this.
+ * grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap:
+ hook): Likewise. Rename to ...
+ (grub_fill_multiboot_mmap_iter): ... this.
+ * grub-core/loader/powerpc/ieee1275/linux.c
+ (grub_linux_claimmap_iterate: alloc_mem): Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c (alloc_phys: choose):
+ Likewise. Rename to ...
+ (alloc_phys_choose): ... this.
+ (determine_phys_base: get_physbase): Likewise.
+ * grub-core/mmap/i386/mmap.c (grub_mmap_malign_and_register:
+ find_hook): Likewise.
+ * grub-core/mmap/i386/pc/mmap.c (preboot: fill_hook): Likewise.
+ (malloc_hook: count_hook): Likewise.
+ * grub-core/mmap/i386/uppermem.c (grub_mmap_get_lower: hook):
+ Likewise. Rename to ...
+ (lower_hook): ... this.
+ (grub_mmap_get_upper: hook): Likewise. Rename to ...
+ (upper_hook): ... this.
+ (grub_mmap_get_post64: hook): Likewise. Rename to ...
+ (post64_hook): ... this.
+ * grub-core/mmap/mips/uppermem.c (grub_mmap_get_lower: hook):
+ Likewise. Rename to ...
+ (lower_hook): ... this.
+ (grub_mmap_get_upper: hook): Likewise. Rename to ...
+ (upper_hook): ... this.
+ * grub-core/mmap/mmap.c (grub_mmap_iterate: count_hook): Likewise.
+ (grub_mmap_iterate: fill_hook): Likewise.
+ (fill_mask): Pass addr and mask within a single struct.
+ (grub_cmd_badram: hook): Make static instead of nested. Rename
+ to ...
+ (badram_iter): ... this.
+ (grub_cmd_cutmem: hook): Likewise. Rename to ...
+ (cutmem_iter): ... this.
+
+2013-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Explicitly
+ delimit path in strings using quotes.
+ * util/getroot.c (grub_guess_root_devices): Likewise.
+ (grub_make_system_path_relative_to_its_root): Likewise.
+ * util/grub-probe.c (probe): Likewise.
+ * util/ieee1275/ofpath.c (find_obppath): Likewise.
+ (xrealpath): Likewise.
+
+2013-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix compilation with older compilers.
+
+ * grub-core/Makefile.core.def (mpi): Add mpi-inline.c.
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h: Remove redundant
+ declarations.
+ * grub-core/lib/posix_wrap/string.h: Include sys/types.h.
+ * grub-core/lib/posix_wrap/sys/types.h: Add common types.
+ * grub-core/lib/xzembed/xz_dec_lzma2.c (dict_put): Replace byte
+ identifier with b.
+ * grub-core/lib/xzembed/xz_dec_stream.c (dec_vli): Likewise.
+ * include/grub/crypto.h: Add type defines.
+ * util/import_gcrypth.sed: Remove duplicate type defines.
+
+2013-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New command list_trusted.
+
+ * grub-core/commands/verify.c (grub_cmd_list): New function.
+
+2013-01-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkimage.c (generate_image): Fix "size of public key"
+ info message.
+
+2013-01-13 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove nested functions from PCI iterators.
+
+ * grub-core/bus/pci.c (grub_pci_iterate): Add hook_data argument,
+ passed to hook. Update all callers to pass appropriate hook data.
+ * grub-core/bus/emu/pci.c (grub_pci_iterate): Likewise.
+ * include/grub/pci.h (grub_pci_iteratefunc_t): Add data argument.
+ Remove NESTED_FUNC_ATTR from here and from all users.
+ (grub_pci_iterate): Update prototype.
+ * grub-core/bus/cs5536.c (grub_cs5536_find: hook): Make static
+ instead of nested. Rename to ...
+ (grub_cs5536_find_iter): ... this.
+ * grub-core/kern/efi/mm.c (stop_broadcom: find_card): Likewise.
+ * grub-core/kern/mips/loongson/init.c (init_pci: set_card):
+ Likewise.
+ * grub-core/kern/vga_init.c (grub_qemu_init_cirrus: find_card):
+ Likewise.
+ * grub-core/video/bochs.c (grub_video_bochs_setup: find_card):
+ Likewise.
+ * grub-core/video/cirrus.c (grub_video_cirrus_setup: find_card):
+ Likewise.
+ * grub-core/video/efi_uga.c (find_framebuf: find_card): Likewise.
+ * grub-core/video/radeon_fuloong2e.c
+ (grub_video_radeon_fuloong2e_setup: find_card): Likewise.
+ * grub-core/video/sis315pro.c (grub_video_sis315pro_setup:
+ find_card): Likewise.
+ * grub-core/video/sm712.c (grub_video_sm712_setup: find_card):
+ Likewise.
+
+2013-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/verify.c: Mark messages for translating.
+
+2013-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/mem.c (gcry_x*alloc): Make out of memory
+ fatal.
+
+2013-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/mem.c (_gcry_log_bug): Make gcrypt bugs
+ fatal.
+
+2013-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * autogen.sh: Do not try to delete nonexistant files.
+ * util/import_gcrypth.sed: Add some missing header removals.
+
+2013-01-12 Colin Watson <cjwatson@ubuntu.com>
+
+ Clean up dangling references to grub-setup.
+ Fixes Ubuntu bug #1082045.
+
+ * docs/grub.texi (Images): Refer generally to grub-install rather
+ than directly to grub-setup.
+ (Installing GRUB using grub-install): Remove direct reference to
+ grub-setup.
+ (Device map) Likewise.
+ (Invoking grub-install): Likewise.
+ * docs/man/grub-install.h2m (SEE ALSO): Likewise.
+ * docs/man/grub-mkimage.h2m (SEE ALSO): Likewise.
+ * util/grub-install.in (usage): Likewise.
+
+ * util/bash-completion.d/grub-completion.bash.in (_grub_setup):
+ Apply to grub-bios-setup and grub-sparc64-setup rather than to
+ grub-setup.
+ * configure.ac: Remove grub_setup output variable.
+
+ * docs/man/grub-bios-setup.h2m (NAME): Change name from grub-setup
+ to grub-bios-setup.
+ * docs/man/grub-sparc64-setup.h2m (NAME): Change name from
+ grub-setup to grub-sparc64-setup.
+
+2013-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Import gcrypt public-key cryptography and implement signature checking.
+
+2013-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c: Ue more appropriate types.
+ * grub-core/fs/ntfscomp.c: Likewise.
+ * include/grub/ntfs.h: Likewise.
+
+2013-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support Apple FAT binaries on non-Apple platforms.
+
+ * include/grub/macho.h (GRUB_MACHO_FAT_EFI_MAGIC): New define.
+ * include/grub/i386/macho.h (GRUB_MACHO_CPUTYPE_IS_HOST_CURRENT):
+ Likewise.
+ * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Parse
+ Apple FAT binaries.
+
+2013-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk.c (grub_disk_write): Fix sector number on 4K
+ sector devices.
+
+2013-01-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/io/bufio.c (grub_bufio_open): Use grub_zalloc instead of
+ explicitly zeroing elements.
+ * grub-core/io/gzio.c (grub_gzio_open): Likewise.
+ * grub-core/io/lzopio.c (grub_lzopio_open): Remove explicit zeroing
+ of elements in a structure already allocated using grub_zalloc.
+ * grub-core/io/xzio.c (grub_xzio_open): Likewise.
+
+2013-01-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (grub_cpu): New subsection.
+ (grub_platform): Likewise.
+
+2013-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c (grub_minix_read_file): Simplify arithmetics.
+
+2013-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_read_block): Use shifts rather than
+ divisions.
+
+2013-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c: Eliminate useless divisions in favor of shifts.
+ * grub-core/fs/ntfscomp.c: Likewise.
+ * include/grub/ntfs.h (grub_ntfs_data): Replace spc with log_spc.
+ (grub_ntfs_comp): Likewise.
+
+2013-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (-grub_nilfs2_palloc_groups_per_desc_block):
+ Rename to ...
+ (grub_nilfs2_palloc_log_groups_per_desc_block): ... this. Return log
+ of groups_per_block. All users updated.
+
+2013-01-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_write): Call
+ grub_error properly.
+ * grub-core/disk/ieee1275/nand.c (grub_nand_write): Likewise.
+ * grub-core/disk/loopback.c (grub_loopback_write): Likewise.
+
+2013-01-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_kfreebsd.in: Correct the patch to zpool.cache as it's
+ always in /boot/zfs.
+ Reported by: Yuta Satoh.
+
+2013-01-03 Yuta Satoh <nigoro>
+
+ * util/grub.d/10_kfreebsd.in: Fix improper references to grub-probe by
+ ${grub_probe}
+
+2013-01-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Extend -Wno-trampolines to host.
+
+2013-01-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_susp_iterate): Avoid hang if
+ entry->len = 0.
+
+2013-01-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Invoking grub-mkrelpath): New section.
+ (Invoking grub-script-check): Likewise.
+
+2013-01-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Invoking grub-mount): New section.
+ Reported by: Filipus Klutiero. Fixes Debian bug #666427.
+
+2013-01-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/tests/lib/test.c (grub_test_run): Return non-zero on
+ test failures, so that a failing unit test correctly causes 'make
+ check' to fail.
+
+2013-01-02 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix failing printf test.
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Parse '-', '.', and
+ '$' in the correct order when collecting type information.
+
+2013-01-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (configfile): Explain environment variable
+ handling.
+ (source): New section.
+ Reported by: Arbiel Perlacremaz. Fixes Savannah bug #35564.
+
+2012-12-31 Colin Watson <cjwatson@ubuntu.com>
+
+ Remove several trivially-unnecessary uses of nested functions.
+
+ * grub-core/commands/i386/pc/sendkey.c
+ (grub_cmd_sendkey: find_key_code, find_ascii_code): Make static
+ instead of nested.
+ * grub-core/commands/legacycfg.c (legacy_file: getline): Likewise.
+ Rename to ...
+ (legacy_file_getline): ... this.
+ * grub-core/commands/loadenv.c (grub_cmd_load_env: set_var):
+ Likewise.
+ * grub-core/kern/corecmd.c (grub_core_cmd_set: print_env): Likewise.
+ * grub-core/kern/fs.c (grub_fs_probe: dummy_func): Likewise. Rename
+ to ...
+ (probe_dummy_iter): ... this.
+ * grub-core/kern/i386/coreboot/mmap.c
+ (grub_linuxbios_table_iterate: check_signature): Likewise.
+ * grub-core/kern/parser.c (grub_parser_split_cmdline:
+ check_varstate): Likewise. Mark inline.
+ * grub-core/lib/arg.c (find_short: fnd_short): Likewise. Pass
+ an additional parameter.
+ (find_long: fnd_long): Likewise. Pass two additional parameters.
+ * grub-core/lib/crc.c (init_crc32c_table: reflect): Likewise.
+ * grub-core/lib/crc64.c (init_crc64_table: reflect): Likewise.
+ * grub-core/lib/ieee1275/cmos.c (grub_cmos_find_port: hook):
+ Likewise. Rename to ...
+ (grub_cmos_find_port_iter): ... this.
+ * grub-core/lib/ieee1275/datetime.c (find_rtc: hook): Likewise.
+ Rename to ...
+ (find_rtc_iter): ... this.
+
+ * grub-core/normal/menu_entry.c (run): Fold nested editor_getsource
+ function directly into the function body, since it is only called
+ once.
+
+2012-12-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Remove incorrect
+ __attribute__ ((unused)).
+ * grub-core/video/bochs.c (find_card): Likewise.
+ * grub-core/video/cirrus.c (find_card): Likewise.
+ * grub-core/video/radeon_fuloong2e.c (find_card): Likewise.
+ * grub-core/video/sis315pro.c (find_card): Likewise.
+ * grub-core/video/sm712.c (find_card): Likewise.
+
+2012-12-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Accept GRUB_TERMINAL_OUTPUT=vga_text.
+ Fixes Savannah bug #37821.
+
+2012-12-28 Colin Watson <cjwatson@ubuntu.com>
+
+ Apply program name transformations at build-time rather than at
+ run-time. Fixes Debian bug #696465.
+
+ * acinclude.m4 (grub_TRANSFORM): New macro.
+ * configure.ac: Create output variables with transformed names for
+ most programs.
+ * util/bash-completion.d/grub-completion.bash.in: Use
+ pre-transformed variables for program names.
+ * util/grub-install.in: Likewise.
+ * util/grub-kbdcomp.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mkconfig_lib.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+ * tests/util/grub-shell-tester.in: Remove unused assignment.
+ * tests/util/grub-shell.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+
+2012-12-28 Colin Watson <cjwatson@ubuntu.com>
+
+ Backport gnulib fixes for C11. Fixes Savannah bug #37738.
+
+ * grub-core/gnulib/stdio.in.h (gets): Warn on use only if
+ HAVE_RAW_DECL_GETS.
+ * m4/stdio_h.m4 (gl_STDIO_H): Check for gets.
+
+2012-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Addmissing assignment to machine.
+ Reported by: Eriks Latosheks <foresterlv>.
+
+2012-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Network): Update instructions on generating netboot
+ image.
+
+2012-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/cryptodisk.c (grub_cmd_cryptomount): Strip brackets
+ around device name if necessarry.
+
+2012-12-10 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * util/grub-install.in: Follow the symbolic link parameter added
+ to the file command.
+
+2012-12-10 Andrey Borzenkov <arvidjaar@gmail.com>
+
+ * util/grub-install.in: Remove stale TODO.
+
+2012-12-10 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * grub-core/kern/ieee1275/init.c (grub_machine_get_bootlocation): Use
+ dynamic allocation for the bootpath buffer.
+
+2012-12-10 Dr. Tilmann Bubeck <t.bubeck@reinform.de>
+
+ * grub-core/gfxmenu/view.c (init_terminal): Avoid making terminal
+ window too small.
+
+2012-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Get font as
+ argument rather than font name. All users updated.
+ (grub_gfxterm_set_window): Likewise.
+
+2012-12-10 Vladimir Testov <vladimir.testov@rosalab.ru>
+
+ * util/grub-mkfont.c (argp_parser): Fix a typo which prevented --asce
+ from working.
+
+2012-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (convert_system_partition_to_system_disk): Support
+ nbd disks.
+
+2012-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_dir): Stop if direntlen is 0 to avoid
+ infinite loop on corrupted FS.
+
+2012-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix big-endian mtime.
+
+ * grub-core/fs/ufs.c (grub_ufs_inode): Split improperly attached
+ together sec and usec.
+ (grub_ufs_dir): Use correct byteswapping for UFS time.
+
+2012-12-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support big-endian UFS1.
+
+ * Makefile.util.def (libgrubmods): Add ufs_be.c
+ * grub-core/Makefile.core.def (ufs1_be): New module.
+ * grub-core/fs/ufs_be.c: New file.
+ * grub-core/fs/ufs.c: Declare grub_ufs_to_le* and use them throughout
+ the file.
+
+2012-11-28 Leif Lindholm <leif.lindholm@arm.com>
+
+ * include/grub/types.h: Fix functionality unaffecting typo in
+ GRUB_TARGET_WORDSIZE conditional macro.
+
+2012-11-28 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * grub-core/net/bootp.c (parse_dhcp_vendor): Fix double increment.
+
+2012-10-28 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub.d/10_netbsd.in: Fix tab indentation and make sure
+ that /netbsd appears first (when it exists).
+
+2012-10-12 Christoph Junghans <ottxor@gentoo.org>
+
+ * grub-core/Makefile.am (moddep.lst): Use $(AWK) rather than awk.
+ Fixes Savannah bug #37558.
+
+2012-10-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/configfile.c (GRUB_MOD_INIT): Correct
+ description of extract_entries_configfile.
+
+2012-10-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/loader/i386/linux.c (allocate_pages): Fix spelling of
+ preferred_address.
+ (grub_cmd_linux): Likewise.
+ * grub-core/net/icmp6.c (struct prefix_option): Fix spelling of
+ preferred_lifetime. Update all users.
+
+2012-09-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-mknetdir): Move to $prefix/bin.
+ Reported by: Daniel Kahn Gillmor. Fixes Debian bug #688799.
+
+2012-09-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Redirect
+ errors from grub-probe to /dev/null, not stdout.
+
+2012-09-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_mount): Support AFFS bootblock in
+ sector 1.
+
+2012-09-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Make the error message if $source_dir
+ doesn't exist more useful.
+
+2012-09-22 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix grub-emu build on FreeBSD.
+
+ * Makefile.util.def (grub-mount): Add LIBGEOM to ldadd.
+ * grub-core/net/drivers/emu/emunet.c: Only include Linux-specific
+ headers on Linux.
+ (GRUB_MOD_INIT): Return immediately on non-Linux platforms; this
+ implementation is currently Linux-specific.
+ * util/getroot.c (exec_pipe): Define only on Linux or when either
+ libzfs or libnvpair is unavailable.
+ (find_root_devices_from_poolname): Remove unused path variable.
+
+2012-09-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/partmap/msdos.c (pc_partition_map_embed): Revert
+ incorrect off-by-one fix from 2011-02-12. A 62-sector core image
+ should fit before end == 63.
+
+2012-09-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-setup.c (write_rootdev): Remove unused core_img
+ parameter. Update all callers.
+ (setup): Define core_sectors only if GRUB_SETUP_BIOS, to appease
+ 'gcc -Wunused-but-set-variable'. Remove unnecessary nested #ifdef
+ GRUB_SETUP_BIOS.
+
+2012-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (grub_tab): New variable.
+ (grub_add_tab): New function.
+ * util/grub.d/10_hurd.in: Replace \t with $grub_tab orgrub_add_tab.
+ * util/grub.d/10_illumos.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/10_xnu.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+2012-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN on mac.
+ * grub-core/term/ieee1275/console.c (grub_console_init_lately): Use
+ ieee1275-nocursor if GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN is set.
+ * grub-core/term/terminfo.c (grub_terminfo_set_current): Add new type
+ ieee1275-nocursor.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
+ GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN.
+
+2012-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Fix incorrect
+ le-conversion.
+ Reported by: BURETTE, Bernard.
+
+2012-09-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (grub_quote): Remove outdated sentence
+ from comment.
+
+2012-09-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/term/terminfo.c: Only fix up powerpc key repeat on
+ IEEE1275 machines. Fixes powerpc-emu compilation.
+ * include/grub/terminfo.h: Likewise.
+
+2012-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (grub_efi_runtime_services): Make vendor_guid
+ a const pointer.
+ * grub-core/efiemu/runtime/efiemu.c (efiemu_memcpy): Make from a
+ const pointer.
+ (efiemu_set_variable): Make vendor_guid a const pointer.
+
+2012-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't require grub-mkconfig_lib to generate manpages for programs.
+
+ * gentpl.py (manpage): Additional argument adddeps. Add adddeps to
+ dependencies, don't add grub-mkconfig_lib.
+ (program): Pass empty adddeps.
+ (script): Pass grub-mkconfig_lib as adddeps.
+
+2012-09-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (free_array) [GRUB_UTIL]: Fix memory leak.
+ * util/getroot.c (grub_find_device): Likewise.
+ (get_mdadm_uuid): Likewise.
+ (grub_util_is_imsm): Likewise.
+ (grub_util_pull_device): Likewise.
+ * util/grub-probe.c (probe): Likewise.
+
+2012-09-10 Benoit Gschwind <gschwind>
+
+ * grub-core/loader/efi/appleloader.c (devpath_8): New var.
+ (devs): Add devpath_8.
+
+2012-09-08 Peter Jones <pjones@redhat.com>
+
+ * grub-core/Makefile.core.def (efifwsetup): New module.
+ * grub-core/commands/efi/efifwsetup.c: New file.
+ * grub-core/kern/efi/efi.c (grub_efi_set_variable): New function
+ * include/grub/efi/api.h (GRUB_EFI_OS_INDICATIONS_BOOT_TO_FW_UI):
+ New define.
+ * include/grub/efi/efi.h (grub_efi_set_variable): New proto.
+
+2012-09-05 Jiri Slaby <jslaby@suse.cz>
+
+ * configure.ac: Add SuSe path.
+
+2012-09-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: Fix typo.
+
+2012-09-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/import_gcry.py: Sort cipher_files, to make build system
+ generation more deterministic.
+
+2012-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (scan): Check function return value.
+ * grub-core/lib/ieee1275/datetime.c (grub_get_datetime): Likewise.
+ (grub_set_datetime): Likewise.
+
+2012-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/yylex.l: Ignore unused-function and sign-compare
+ warnings.
+
+2012-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/dvh.c (grub_dvh_is_valid): Add missing byteswap.
+
+2012-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (grub_xfs_read_block): Make keys a const pointer.
+
+2012-09-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.am (EXTRA_DIST): Add linguas.sh. It's only strictly
+ required for checkouts from bzr, but it may be useful for users or
+ distributors wishing to update translations against a tarball
+ distribution, and it can be helpful for the tarball to be a superset
+ of what's in bzr.
+
+2012-09-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.am (EXTRA_DIST): Add
+ grub-core/tests/boot/linux.init-mips.S,
+ grub-core/tests/boot/linux.init-ppc.S, and
+ grub-core/tests/boot/linux-ppc.cfg.
+
+2012-09-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/mmap/mips/loongson: Remove empty directory.
+
+2012-09-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/man/grub-mkdevicemap.h2m: Remove, since grub-mkdevicemap is
+ gone.
+
+2012-09-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add grub-bios-setup, grub-ofpathname, and
+ grub-sparc64-setup.
+
+2012-08-05 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * configure.ac: Strengthen the test for working -nostdinc -isystem.
+
+2012-07-31 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * po/POTFILES.in: Regenerated.
+
+2012-07-31 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * docs/grub.texi: Note that NetBSD/i386 is Multiboot-compliant.
+ (NetBSD): New subsection.
+
+2012-07-22 Ales Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/ehci.c: PCI iter. - added PCI bus master setting.
+ * grub-core/bus/usb/ohci.c: PCI iter. - added PCI bus master setting.
+
+2012-07-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (grub_quote): Remove extra layer of escape.
+ * util/grub.d/10_hurd.in: Add missing quoting.
+ * util/grub.d/10_illumos.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2012-07-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New command `lsefi'.
+
+ * grub-core/Makefile.core.def (lsefi): New module.
+ * grub-core/commands/efi/lsefi.c: New file.
+ * include/grub/efi/api.h: Add more GUIDs.
+
+2012-07-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_bsd_elf32_size_hook): Fix mask.
+ (grub_bsd_elf32_hook): Likewise.
+ (grub_bsd_elf64_size_hook): Likewise.
+ (grub_bsd_elf64_hook): Likewise.
+ (grub_bsd_load_elf): Likewise.
+
+2012-07-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Fix behaviour
+ if hash function is unavailable.
+ (dec_stream_header): Likewise.
+
+2012-07-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/autofs.c (autoload_fs_module): Save and restore
+ filter state.
+
+2012-07-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix coreboot compilation.
+
+ * grub-core/term/i386/pc/vga_text.c (grub_vga_text_init): Rename to ...
+ (grub_vga_text_init_real): ... this.
+ (grub_vga_text_fini): Rename to ...
+ (grub_vga_text_fini_real): ... this.
+
+2012-07-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am: Fix path to boot/i386/pc/startup_raw.S.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/legacy_parse.c: Support clear and testload.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/efi/serial.c: Support 1.5 stop bits.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c: Experimental support for 64-bit.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/tftp.c (ack): Fix endianness problem.
+ (tftp_receive): Likewise.
+ Reported by: Michael Davidsaver.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Make mans depend on grub-mkconfig_lib.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/list.h (FOR_LIST_ELEMENTS_SAFE): New macro.
+ * include/grub/command.h (FOR_COMMANDS_SAFE): Likewise.
+ * grub-core/commands/help.c (grub_cmd_help): Use FOR_COMMANDS_SAFE.
+
+2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (find_efi_mmap_size): Don't decrease
+ efi_mmap_size.
+ Reported by: Stuart Hayes.
+
+2012-06-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add monochrome text support (mda_text, aka `hercules' in grub-legacy).
+
+ * grub-core/Makefile.core.def (mda_text): New module.
+ * grub-core/lib/legacy_parse.c (grub_legacy_parse): Support `hercules'.
+ * grub-core/term/i386/vga_common.c (grub_console_cur_color): Moved to ..
+ * grub-core/term/i386/pc/vga_text.c (cur_color): ... here
+ * grub-core/term/i386/pc/console.c (grub_console_cur_color): ... and
+ here.
+ * grub-core/term/i386/vga_common.c (grub_console_getwh): Moved to ..
+ * grub-core/term/i386/pc/vga_text.c (grub_console_getwh): ... here
+ * grub-core/term/i386/pc/console.c (grub_console_getwh): ... and
+ here.
+ * grub-core/term/i386/vga_common.c (grub_console_setcolorstate): Moved
+ to ..
+ * grub-core/term/i386/pc/vga_text.c (grub_console_setcolorstate):
+ ... here
+ * grub-core/term/i386/pc/console.c (grub_console_setcolorstate): ... and
+ here.
+ * grub-core/term/i386/vga_common.c: Removed.
+ * include/grub/i386/vga_common.h: Likewise.
+ * include/grub/vga.h (grub_vga_cr_bw_write): New function.
+ (grub_vga_cr_bw_read): Likewise.
+ * include/grub/vgaregs.h (GRUB_VGA_IO_CR_BW_INDEX): New enum value.
+ (GRUB_VGA_IO_CR_BW_DATA): Likewise.
+ * grub-core/term/i386/pc/vga_text.c [MODE_MDA]: Call
+ grub_vga_cr_bw_read/grub_vga_cr_bw_write instead of
+ grub_vga_cr_read/grub_vga_cr_write.
+ (grub_vga_text_setcolorstate) [MODE_MDA]: Ignore color.
+
+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump version to 2.00.
+ * grub-core/normal/main.c (features): Add feature_200_final.
+
+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+2012-06-27 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * NEWS: Fix unclarity and language mistakes.
+
+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (find_efi_mmap_size): Increase
+ additional size to 3 pages.
+ Reported by: Stuart Hayes.
+
+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: Add 2.00 entry.
+
+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (check_file): Fix bad logic.
+ put explicit "/" for empty path.
+ (wildcard_expand): Improve dprintf.
+
+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (grub_fshelp_find_file): Don't free oldnode if
+ it's equal to currnode. This can happen with "" symlink.
+
+2012-06-27 Yves Blusseau <blusseau@zetam.org>
+
+ * util/grub-mkconfig_lib.in: Fix print messages replacing builtin
+ echo shell command by printf command.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/arc/console.c (grub_console_init_output): Add one since
+ the value returned by firmware is the maximal position, not diumension.
+ (grub_terminfo_output_state): Use a more sane fallback.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (print_terminfo): Print terminal dimensions.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/arc/init.c (grub_machine_init): Set clock
+ frequency to 150 MHz.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Apple fixes.
+
+ * grub-core/lib/i386/relocator16.S: Use correct __APPLE__ and not
+ __APPLE_
+ * grub-core/lib/i386/relocator_common.S [__APPLE__]: Fix gdtdesc
+ definition.
+ * grub-core/lib/i386/relocator64.S [__APPLE__]: Assemble jmp manually.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle slash in HFS label.
+
+ * grub-core/fs/hfs.c (macroman_to_utf8): New argument slash_translate.
+ (grub_hfs_dir): Tanslate slash.
+ (grub_hfs_label): Don't translate slash.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/ls.c (grub_ls_list_devices): Disable
+ network protocol listing since it introduces problematic dependency on
+ net module.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Add Yeeloong verified hash.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Init video early on yeeloong to avoid being rebooted by watchdog.
+
+ * grub-core/Makefile.am (gensm712): New target.
+ (sm712_start.S): Likewise.
+ (boot/mips/loongson/fwstart.S): Depend on sm712_start.S
+ * grub-core/boot/mips/loongson/fwstart.S [!FULOONG2F]: Init SM712.
+ * grub-core/video/sm712.c [GENINIT]: Generate compact init procedure
+ description.
+ * include/grub/vga.h: Move registry definitions to...
+ * include/grub/vgaregs.h: ... here.
+
+2012-06-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/decompressor/minilib.c (grub_memcmp): Fix the compare
+ signedness.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix dvhtool invocation. Add arc to the list of
+ platforms with firmware disk drivers in the core.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (scan_disk) [GRUB_UTIL]: Put more
+ informative verbose message.
+ (read_lv): Handle 64-bit segment size.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/lvm.c (grub_lvm_getvalue): Handle 64-bit values.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_iterate_dir_next): Don't stop on a space
+ character but still remove trainling spaces.
+ (grub_fat_label): Ignore archive flag.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_cmd_initrd): Avoid unnecessarry
+ cast between linux_kernel_header and linux_kernel_params.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/diskfilter.h (grub_raid5_recover_func_t): Use proper
+ type for size.
+ (grub_raid6_recover_func_t): Likewise.
+ * grub-core/disk/raid5_recover.c (grub_raid5_recover): Likewise.
+ * grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
+
+2012-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Add Fuloong2F verified hash.
+
+2012-06-25 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Fix overflow.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size)
+ [__NetBSD__]: Add explicit cast before bitshift.
+
+2012-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump to 2.00~rc1.
+
+2012-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/mips/loongson/fwstart.S: Add missing setting of high
+ half of $a0.
+
+2012-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+2012-06-23 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * docs/grub.texi: Fix search syntax.
+ (Multi-boot manual config): Put msdos rather than GPT example.
+ Grammar corrections.
+
+2012-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Multi-boot manual config): Use --set. Improve remark.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (grub_free): Fix agglomerating of free regions.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c (get_header_from_pointer): Put a more informative
+ message on double free. Put the value of magic in case of mismatch.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Speed-up video on yeeloong.
+
+ * grub-core/video/sm712.c (framebuffer): Remove render_target and
+ add cached_ptr.
+ (grub_video_sm712_video_fini): Unmap cached_ptr.
+ (grub_video_sm712_setup): Use cache address and grub_video_fb_setup.
+ (grub_video_sm712_set_active_render_target): Removed.
+ (grub_video_adapter): Use grub_video_fb_set_active_render_target.
+ (grub_video_sm712_swap_buffers): Call grub_video_fb_swap_buffers and
+ sync caches.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid flushing the same line multiple times on loongson.
+
+ * grub-core/kern/mips/cache.S [GRUB_MACHINE_MIPS_LOONGSON]:
+ Step in 32 bytes and not 1 byte.
+ * grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]:
+ Likewise.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_find_root_devices_from_mountinfo): Handle btrfs
+ subvolumes.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement flow control for http.
+
+ * grub-core/net/http.c (parse_line): Handle response 206.
+ (http_receive): Stall if too many packets are in the queue.
+ (http_establish): Fix range header.
+ (http_seek): Fix double free.
+ (http_close): Likewise.
+ (http_packets_pulled): New function.
+ (grub_http_protocol): Set http_seek
+ * grub-core/net/tcp.c (grub_net_tcp_socket): New field `i_stall'.
+ (ack_real): Set window depending on i_stall.
+ (grub_net_send_tcp_packet): Likewise.
+ (grub_net_tcp_stall): New function.
+ (grub_net_tcp_unstall): Likewise.
+ * include/grub/net/tcp.h (grub_net_tcp_stall): New proto.
+ (grub_net_tcp_unstall): Likewise.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/tftp.c: Decrease stall to 50 packets.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (grub_net_fs_open): Free resources on failed open.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Fix a typo.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement flow control for tftp.
+
+ * grub-core/net/net.c (receive_packets): Decrease the stop to 10
+ packets but stop only if stop condition is satisfied.
+ (grub_net_fs_read_real): Call packets_pulled after real read. Use
+ `stall' instead of `eof' as stop condition.
+ * grub-core/net/http.c (parse_line): Set `stall' on EOF.
+ (http_err): Likewise.
+ * grub-core/net/tftp.c (ack): Replace the first argument with data
+ instead of socket.
+ (tftp_receive): Stall if too many packets are in wait queue.
+ (tftp_packets_pulled): New function.
+ (grub_tftp_protocol): Set packets_pulled.
+ * include/grub/net.h (grub_net_packets): New field count.
+ (grub_net_put_packet): Increment count.
+ (grub_net_remove_packet): Likewise.
+ (grub_net_app_protocol): New field `packets_pulled'.
+ (grub_net): New field `stall'.
+
+2012-06-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (receive_packets): Stop after 100 packets to let
+ sync part to handle them.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/main.c (grub_set_prefix_and_root): Fix memory leak.
+ * grub-core/net/drivers/ieee1275/ofnet.c
+ (grub_ieee1275_net_config_real): Likewise.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Don't create
+ the direct route for server/gateway.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (grub_net_configure_by_dhcp_ack): Prefer
+ IP address to server name since we may not hame the DNS.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/dns.c (grub_cmd_nslookup): Init addresses to 0 to avoid
+ freeing random buffer on failure.
+ * grub-core/net/net.c (grub_net_resolve_address): Likewise.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (grub_cmd_bootp): Fix packet allocation size.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/emu/emunet.c (get_card_packet): Allocate the
+ reserved bytes.
+ * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Likewise.
+ * grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Likewise.
+ Handle malloc error correctly.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_arglist_to_argv): Escape
+ blocks.
+
+2012-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix double
+ increment.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/dns.c (grub_cmd_nslookup): Use configured DNS servers if
+ none is explicitly specified.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/dns.c (grub_net_add_dns_server): Don't erase old servers
+ while reallocating.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Respect netmask from bootp/dhcp.
+
+ * grub-core/net/bootp.c (parse_dhcp_vendor): Parse mask.
+ (grub_net_configure_by_dhcp_ack): Use mask and grub_net_add_ipv4_local.
+ * grub-core/net/net.c (grub_net_add_addr): Split creating local route
+ into ...
+ (grub_net_add_ipv4_local): ... this.
+ (grub_cmd_addaddr): Use grub_net_add_ipv4_local.
+ * include/grub/net.h (GRUB_NET_BOOTP_NETMASK): New enum value.
+ (grub_net_add_ipv4_local): New proto.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Setup video before
+ determining EFI memory map size.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Escape commas.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/main.c (grub_set_prefix_and_root): Skip escaped commas
+ when looking for partition separator.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
+ Escape commas.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Restructure FAT driver to avoid hook in label reading as it hits a
+ GCC bug.
+
+ * include/grub/err.h (grub_err_t): New enum value GRUB_ERR_EOF.
+ * grub-core/fs/fat.c (grub_fat_iterate_context): New struct.
+ (grub_fat_iterate_dir): Split into ...
+ (grub_fat_iterate_init): ... this, ...
+ (grub_fat_iterate_fini): ... this, ...
+ (grub_fat_iterate_dir_next): ... and this. All users updated.
+
+2012-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
+ GRUB_IEEE1275_FLAG_BROKEN_REPEAT.
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_BROKEN_REPEAT on PowerBook3,3.
+ * include/grub/terminfo.h (grub_terminfo_input_state) [__powerpc__]:
+ New fields last_key and last_key_time.
+ * grub-core/term/terminfo.c (grub_terminfo_getkey): Transform
+ extended key-esc into extended key-extended key.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid unnecessary memcpy of whole video buffer.
+
+ * grub-core/video/fb/video_fb.c (dirty): New struct.
+ (framebuffer): Add members current_dirty and previous_dirty.
+ (dirty): New function.
+ (grub_video_fb_fill_rect): Update dirty.
+ (common_blitter): Likewise.
+ (grub_video_fb_scroll): Likewise.
+ (doublebuf_blit_update_screen): Copy only dirty part.
+ (doublebuf_pageflipping_update_screen): Likewise.
+ (grub_video_fb_doublebuf_blit_init): Init dirty.
+ (doublebuf_pageflipping_init): Likewise.
+ (grub_video_fb_setup): Likewise.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c (search_net_devices): Decrease
+ poll rate.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix wildcard regexp dot and other special characters handling.
+ Reported by: Robert Mabee.
+
+ * grub-core/commands/wildcard.c (isregexop): Add "|+{}[]?".
+ (make_regex): Escape "|+{}[]". Transform '?' to '.?'.
+ (split_path): Trigger expansion on '?'.
+ (unescape): New function.
+ (wildcard_expand): Unescape parts copied without globbing.
+ * grub-core/script/execute.c (wildcard_escape): Escape '?'.
+ (grub_script_arglist_to_argv): Don't unescape expansions.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/net.h (grub_net_card): New member txbufsize.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum values
+ GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
+ GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN.
+ * grub-core/net/drivers/efi/efinet.c (grub_efinet_findcards): Use
+ txbufsize.
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Use
+ compatible property to check for macs. Set
+ GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX and
+ GRUB_IEEE1275_FLAG_VIRT_TO_REAL_BROKEN on macs.
+ * grub-core/net/drivers/ieee1275/ofnet.c (card_open): Don't add suffix
+ if GRUB_IEEE1275_FLAG_NO_OFNET_SUFFIX is set.
+ (send_card_buffer): Use txbuf.
+ (grub_ofnet_findcards): Allocate txbuf. Simplify code flow and move
+ nested function out of the parent while on it.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c (get_card_packet): Fix packet
+ presence check.
+ (grub_ieee1275_net_config_real): Fix config pointer.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Extend
+ filename parsing to non-block devices.
+
+2012-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/device.c (grub_device_open): Remove dead code.
+
+2012-06-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/elf.h: Rename R_PPC to GRUB_R_PPC to avoid collisions.
+ All users updated.
+
+2012-06-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Generate
+ UUID search command even if hints probing failed.
+
+2012-06-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerated.
+
+2012-06-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Speed-up video on fuloong.
+
+ * grub-core/bus/bonito.c (grub_pci_device_map_range_cached):
+ New function.
+ (grub_pci_device_unmap_range): Handle non-cached address.
+ * grub-core/video/sis315pro.c (framebuffer): Remove render_target and
+ add direct_ptr.
+ (grub_video_sis315pro_video_fini): Unmap direct_ptr.
+ (grub_video_sis315pro_setup): Use cache address and grub_video_fb_setup.
+ (grub_video_sis315pro_set_active_render_target): Removed.
+ (grub_video_sis315pro_get_info_and_fini): Use uncached address.
+ (grub_video_adapter): Use grub_video_fb_set_active_render_target.
+ (grub_video_sis315pro_swap_buffers): Call grub_video_fb_swap_buffers and
+ sync caches.
+ * include/grub/mips/loongson/pci.h (grub_pci_device_map_range_cached):
+ New proto.
+
+2012-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Multi-boot manual config): New section.
+
+2012-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid slow read-back from VRAM.
+
+ * include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
+ Move from here ...
+ * grub-core/video/fb/video_fb.c
+ (grub_video_fb_doublebuf_update_screen_t): ... here. Remove arguments.
+ * grub-core/video/fb/video_fb.c (framebuf_t): New type.
+ (front_target): Remove front_target. Add pages.
+ (grub_video_fb_init): Skip setting front_pages.
+ (grub_video_fb_fini): Likewise.
+ (doublebuf_blit_update_screen): Use pages.
+ (grub_video_fb_doublebuf_blit_init): Likewise.
+ (doublebuf_pageflipping_init): Allocate offscreen buffer.
+ (doublebuf_pageflipping_update_screen): Use offscreen buffer.
+ (grub_video_fb_setup): Prefer doublebuffing.
+
+2012-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c (GRUB_MOD_INIT): Ignore errors when loading
+ gzio.
+
+2012-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add loongson tests.
+
+ * tests/util/grub-shell.in: Handle loongson.
+ * tests/partmap_test.in: Add loongson to the list of platform using ATA
+ drivers.
+ * grub-core/tests/boot/linux.init-mips.S (SHUTDOWN_MAGIC3) [REBOOT]:
+ Reboot instead of shutdown if REBOOT is defined.
+
+2012-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/mips/loongson/reboot.c (grub_reboot): Use 32-bit
+ sized ports since unlike on real hardware qemu supports only 32-bit
+ regs.
+
+2012-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-mkrescue): Enable on loongson.
+ * util/grub-mkrescue.in: Handle loongson.
+
+2012-06-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (convert_system_partition_to_system_disk) [__APPLE__]:
+ Set is_part appropriately.
+ (grub_util_biosdisk_get_grub_dev): Use is_part rather than comparing
+ names. Canonicalize partition without full disk.
+
+2012-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Revert usb-quiesce since it's wrong.
+
+ * grub-core/disk/ieee1275/ofdisk.c (quiesce): Removed.
+ (grub_ofdisk_init): Don't do quiesce.
+
+2012-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Apply
+ PowerMac workaround to Xserves as well.
+ Information supplied by: Benjamin Herrenschmidt.
+
+2012-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't assume that beginning address is also the entry point on ppc.
+
+ * grub-core/loader/powerpc/ieee1275/linux.c (linux_entry): New variable.
+ (grub_linux_boot): Use linux_entry.
+ (grub_linux_load32): Fill linux_entry. Fix setting linux_addr.
+ (grub_linux_load64): Likewise.
+
+2012-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix cross-disk check on non-PreP machines.
+
+2012-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/console.c (grub_console_fini): Don't
+ needlessly lose the console.
+
+2012-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/dyncmd.c (read_command_list): Don't access freed
+ space.
+
+2012-06-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove non-functional EFI grub_get_rtc. Put a better fatal message
+ than current grub_get_rtc() not implemented when booted with
+ coreboot without TSC.
+
+ * grub-core/Makefile.am: Exclude efi/time.h from kernel headers.
+ Add machine/time.h to kernel headers on loongson.
+ * grub-core/Makefile.core.def (kernel): Remove
+ kern/generic/rtc_get_time_ms.c on qemu-multiboot-coreboot.
+ * grub-core/kern/efi/efi.c (grub_rtc_get_time_ms): Removed.
+ (grub_get_rtc): Likewise.
+ * grub-core/kern/generic/rtc_get_time_ms.c: Include grub/machine/time.h.
+ * grub-core/kern/i386/coreboot/init.c (grub_get_rtc): Removed.
+ * grub-core/kern/i386/pc/init.c: Include grub/machine/init.h.
+ * grub-core/kern/i386/tsc.c (grub_tsc_init)
+ [!GRUB_MACHINE_PCBIOS && !GRUB_MACHINE_IEEE1275]: Call grub_fatal
+ rather than installing known non-working time source.
+ * grub-core/kern/ieee1275/init.c (grub_get_rtc): Removed.
+ * grub-core/kern/mips/loongson/init.c: Include grub/machine/time.h.
+ * include/grub/time.h: Don't include machine/time.h.
+ * include/grub/efi/time.h: Removed.
+ * include/grub/i386/efi/time.h: Likewise.
+ * include/grub/i386/ieee1275/time.h: Likewise.
+ * include/grub/powerpc/ieee1275/time.h: Likewise.
+ * include/grub/sparc64/ieee1275/time.h: Likewise.
+ * include/grub/x86_64/efi/time.h: Likewise.
+
+2012-06-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove dot on i and j when combining with above diacritics.
+
+ * include/grub/unicode.h (GRUB_UNICODE_DOTLESS_LOWERCASE_I): New enum
+ value.
+ (GRUB_UNICODE_DOTLESS_LOWERCASE_J): Likewise.
+ * grub-core/font/font.c (grub_font_construct_dry_run): Replace i and j
+ with dotless variants when any combining above is present.
+
+2012-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_script_expansion.in: Explicitly tell grep that we handle
+ text and not binary.
+
+2012-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Stop polling as soon as we have the packet we were waiting for.
+
+ * include/grub/net.h (grub_net_poll_cards): New argument stop_condition.
+ All users updated.
+ * grub-core/net/arp.c (have_pending): New var.
+ (pending_req): Likewise.
+ (grub_net_arp_send_request): Fill pending_req and use have_pending as
+ stop indicator.
+ (grub_net_arp_receive): Set have_pending.
+ * grub-core/net/dns.c (recv_data): New field stop.
+ (recv_hook): Set stop.
+ (grub_net_dns_lookup): Init stop and use as stop condition.
+ * grub-core/net/http.c (http_establish): Use headers_recv as stop
+ condition.
+ * grub-core/net/net.c (grub_net_poll_cards): New argument
+ stop_condition. Stop when it goes true.
+ * grub-core/net/tcp.c (grub_net_tcp_open): Use `established' as stop
+ indicator.
+ * grub-core/net/tftp.c (tftp_open): Use `have_oack' as stop indicator.
+
+2012-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Keep TX and RX buffers on EFI rather than always allocate new ones.
+
+ * include/grub/net.h (grub_net_card_driver): Allow driver to modify
+ card. All users updated.
+ (grub_net_card): New members txbuf, rcvbuf, rcvbufsize and txbusy.
+ * grub-core/net/drivers/efi/efinet.c (send_card_buffer): Reuse buffer.
+ (get_card_packet): Likewise.
+ (grub_efinet_findcards): Init new fields.
+
+2012-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/serial.c (do_real_config): Fix cast to fix
+ compilation error on sparc64.
+
+2012-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use ITC on IA64 rather than broken routine based on daytime.
+
+ * grub-core/kern/efi/efi.c (grub_rtc_get_time_ms) [__ia64__]: Remove on
+ ia64.
+ (grub_get_rtc) [__ia64__]: Likewise.
+ * grub-core/kern/ia64/efi/init.c (divisor): New variable.
+ (get_itc): New function.
+ (grub_rtc_get_time_ms): Likewise.
+ (grub_machine_init): Calibrate ITC.
+ * include/grub/efi/time.h (grub_get_rtc), (GRUB_TICKS_PER_SECOND):
+ Keep only on non-ia64. Don't export since it's broken and used only
+ if TSC is unavailable.
+
+2012-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (find_parent_device): Return the parent
+ even if it's used.
+ (name_devices): Replace #if 0 with #ifdef DEBUG_NAMES.
+ Skip if parent is unused.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/partmap_test.in: Skip on ppc due to serious firmware bug.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix wildcard escaping.
+
+ * grub-core/commands/wildcard.c (wildcard_escape): Moved from here ...
+ * grub-core/script/execute.c (wildcard_escape): .. to here.
+ Don't escape dot.
+ * grub-core/commands/wildcard.c (wildcard_unescape): Moved from here ...
+ * grub-core/script/execute.c (wildcard_unescape): .. to here.
+ Don't escape dot.
+ * grub-core/script/execute.c (gettext_append): Always escape.
+ (grub_script_arglist_to_argv): Always handle escaping/unescaping.
+ * grub-core/script/yylex.l: Don't cut away the escaping.
+ * tests/grub_script_echo1.in: Add tests with wildcard.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/serial/ftdi.c (real_config): Handle 1.5 stop bits.
+ (ftdi_hw_configure): Likewise.
+ * grub-core/bus/usb/serial/pl2303.c (GRUB_PL2303_STOP_BITS_1_5): New
+ define.
+ (real_config): Handle 1.5 stop bits.
+ (pl2303_hw_configure): Likewise.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am: Add ppc linux bootcheck.
+ * grub-core/tests/boot/linux-ppc.cfg: New file.
+ * grub-core/tests/boot/linux.init-ppc.S: Likewise.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/grub_script_expansion.in: Skip network protocols.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Use escc-ch-a port on ppc.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/powerpc/ieee1275/grub-mkrescue.in: Handle (and ignore)
+ --rom-directory.
+ Add -graft-points.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ESCC serial driver for conducting sautomated tests in qemu.
+ Not tested on real hardware.
+
+ * include/grub/serial.h (grub_serial_port): New field escc_desc.
+ * grub-core/term/ieee1275/escc.c: New file.
+ * grub-core/Makefile.core.def (escc): New module.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/serial.c (do_real_config): Set handle to
+ invalid on error.
+ (serial_hw_fetch): Don't read invalid handle.
+ (serial_hw_put): Don't write into invalid handle.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add a 1.5 stop bits value.
+
+ * grub-core/term/serial.c (grub_cmd_serial): Handle 1.5.
+ * include/grub/serial.h (grub_serial_stop_bits_t): Add
+ GRUB_SERIAL_STOP_BITS_1_5.
+
+2012-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (wildcard_expand): Set default return
+ value rather than let it uninited.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (+check_file): New function.
+ (wildcard_expand): Don't expand to non-existing files, expand with
+ suffix and not attempt to expand if not needed.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (name_devices): Don't make disks
+ out of partitions containing other partitions.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Pass PCIINFO on BIOS to OpenBSD since otherwise it fails to boot
+ on some qemu versions with GRUB.
+
+ * include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_PCIBIOS): New
+ define.
+ (grub_openbsd_bootarg_pcibios): New struct.
+ * grub-core/loader/i386/bsd.c (grub_openbsd_boot) [GRUB_MACHINE_PCBIOS]:
+ Add PCIINFO.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Trim firmware output on EFI.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (vga_text): Disable on muliboot
+ and coreboot since it's already in kernel.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_get_dm_node_linear_info): Moved from here...
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
+ to here. New return value start. All users updated.
+ Recursively scan linear mappings.
+ * include/grub/emu/hostdisk.h (grub_util_get_dm_node_linear_info): New
+ proto.
+ * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start):
+ Use grub_util_get_dm_node_linear_info.
+ * util/getroot.c (convert_system_partition_to_system_disk): Use
+ grub_util_info rather than grub_dprintf.
+ (grub_util_biosdisk_get_grub_dev): Add a new grub_util_info.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move handling of GRUB_QEMU_OPTS to grub-shell so that make check works.
+
+ * Makefile.am: Remove GRUB_QEMU_OPTS handling.
+ * tests/util/grub-shell.in: Add GRUB_QEMU_OPTS handling.
+
+2012-06-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/types.h (grub_set_unaligned64): New function.
+ * util/grub-setup.c (write_rootdev): Use unaligned access functions.
+ (setup): Likewise.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (quiesce): New function.
+ (grub_ofdisk_fini): Quiesce USB devices.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_boot): Sync
+ caches.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (cmd_crc): Use grub_get_unaligned32 for safety.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/pata.c (grub_pata_pio_read)
+ [GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't byteswap even on mipseb.
+ (grub_pata_pio_write) [GRUB_MACHINE_MIPS_QEMU_MIPS]: Likewise.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Extend automated tests to qemu-mips.
+
+ * Makefile.am: reorganise tests and enable qemu-mips.
+ * configure.ac (COND_mipseb), (COND_mipsel): New conditions.
+ * grub-core/tests/boot/linux.init-mips.S: New file.
+ * tests/partmap_test.in: Handle ata0 disks.
+ * tests/util/grub-shell.in: Handle qemu-mips. Make defaults work on
+ non-pc i386.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-mkrescue) Anable on mips_qemu_mips and
+ ia64.
+ * util/grub-mkrescue.in: Handle qemu-mips and ia64. Add missing
+ quotes while on it.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/qemu_mips/init.c (grub_exit): Implement.
+ (grub_halt): Likewise.
+ * grub-core/lib/mips/qemu_mips/reboot.c (grub_reboot): Likewise.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/serial.c (grub_serial_register)
+ [GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't autostart console in order to bring
+ the behaviour in line with x86 platforms.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hdparm.c (le16_to_char): Always byte-swap strings.
+ (grub_ata_strncpy): Likewise.
+ (grub_ata_identify): Add missing byteswaps.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/i386/pc/vga_text.c (screen_write_char): Add missing
+ byte-swap.
+ (screen_read_char): Likewise.
+ (grub_vga_text_cls): Likewise.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/efi/chainloader.c (copy_file_path): Handle non-ASCII
+ filenames.
+ (make_file_path): Likewise.
+
+2012-06-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (scan): Support vscsi on IBM
+ machines.
+ Tested by: Paulo Flabiano Smorigo.
+ Crucial information about API supplied by: Coleen <Last name unknown>.
+ Reviewed by: Coleen <Last name unknown>.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c: Disable -Wcast-align.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmod.sh.in: Enable objconv errors 2030, 2050 and 2031
+ as they are fatal.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am (rs_decoder.S): Add missing -ffreestanding.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-probe.c (escape_of_path): Fix double free.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videoinfo.c (hook): Show pitch.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Skip xen-syms.
+
+2012-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-probe.c (escape_of_path): Don't add ieee1275/.
+ (probe): Add ieee1275 to OFW devices.
+
+2012-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c (of_path_of_scsi): Fix wrong format specifier.
+
+2012-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle IBM OFW path.
+
+ * util/ieee1275/ofpath.c (find_obppath): Use devspec if obppath isn't
+ available.
+ (of_path_of_scsi): Handle vdevice.
+
+2012-06-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/mmap/i386/pc/mmap.c (malloc_hook):
+ Allocate in multiples of 16 to avoid adding a few bytes free region the
+ windows bugs upon.
+
+2012-06-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/drivemap.c (install_int13_handler):
+ Allocate in multiples of 16 to avoid adding a few bytes free region the
+ windows bugs upon.
+ * grub-core/mmap/i386/pc/mmap.c (malloc_hook): Likewise.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/efi_gop.c (grub_video_gop_setup): Reject invalid
+ resolutions.
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_get_preferred_mode): Likewise.
+ * grub-core/video/video.c (grub_video_edid_preferred_mode): Likewise.
+
+2012-06-02 Isao Shimizu <isaoshimizu@gmail.com>
+
+ * util/ieee1275/ofpath.c (check_sas): Fix sas path.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (print_line): Fix off-by-one error which
+ resulted in \\ at the end of the line.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/parser.c (grub_parser_state_transitions): Handle \t.
+ (grub_parser_cmdline_state): Likewise.
+ (grub_parser_split_cmdline): Likewise.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_guess_root_devices): Don't canonicalise
+ /dev/root and /dev/dm-*.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (update_screen): Fix loop condition to
+ fix partially stale display.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (backward_char): Use right line for
+ substraction.
+
+2012-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write) [__linux__]:
+ Fix MBR remapping workaround.
+ (grub_util_biosdisk_read) [__linux__]: Likewise.
+
+2012-06-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Check for ieee1275 and not ieee1276.
+
+2012-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump to beta6.
+
+2012-05-31 Christer Weinigel <christer@weinigel.se>
+
+ * grub-core/normal/main.c (grub_file_getline): Fix off-by-one error.
+
+2012-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Use right version.
+ (grub_cmd_linux): Likewise.
+
+2012-05-31 Christer Weinigel <christer@weinigel.se>
+
+ Fix EHCI low-speed.
+
+ * grub-core/bus/usb/ehci.c (GRUB_EHCI_MULT_ONE): Fix the value.
+ (GRUB_EHCI_MULT_TWO): Likewise.
+ (GRUB_EHCI_MULT_THREE): Likewise.
+ (GRUB_EHCI_CMASK_MASK): New enum value.
+ (GRUB_EHCI_SMASK_MASK): Likewise.
+ (GRUB_EHCI_CMASK_OFF): Likewise.
+ (GRUB_EHCI_SMASK_OFF): Likewise.
+ (grub_ehci_pci_iter): Enable periodic schedule.
+ (grub_ehci_parse_notrun): Likewise.
+ (grub_ehci_restore_hw): Likewise.
+ (grub_ehci_setup_qh): Set flags for low speed transfers.
+ (grub_ehci_find_qh): Use periodic list for low speed.
+ (grub_ehci_setup_transfer): Check periodic queue as well.
+ (grub_ehci_check_transfer): Likewise.
+ (grub_ehci_cancel_transfer): Cancel periodic transfer.
+
+2012-05-31 Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
+
+ * util/grub-install.in: Write core.elf in PReP even if the --no-nvram
+ parameter is used.
+
+2012-05-31 Peter Jones <pjones@redhat.com>
+
+ * include/grub/i386/linux.h (linux_kernel_params): Add v206.
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Use v206.
+ (grub_cmd_linux) [__x86_64__]: Validate grub_efi_system_table.
+
+2012-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Fix overflow and
+ uninited variable. Allocate at least setup_sects.
+
+2012-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of EFI with big memory maps.
+
+ * grub-core/loader/i386/linux.c (GRUB_LINUX_CL_OFFSET): Removed.
+ (real_mode_mem): Likewise.
+ (real_mode_target): Likewise.
+ (real_mode_pages): Likewise.
+ (prot_mode_pages): Likewise.
+ (linux_params): New var.
+ (linux_cmdline): Likewise.
+ (free_pages): Don't set real mode variables.
+ (allocate_pages): Don't allocate real mode memory.
+ (grub_e820_add_region): Remove the limit.
+ (grub_linux_boot): Allocate and copy real mode memory.
+ (grub_linux_unload): Free linux_cmdline.
+ (grub_cmd_linux): Use temporary storage for parameters.
+ (grub_cmd_initrd): Likewise.
+ * include/grub/i386/linux.h (GRUB_E820_MAX_ENTRY): Removed.
+ (linux_kernel_params): Make it 1K big.
+
+2012-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def: Remove -Wno-format.
+ * grub-core/Makefile.core.def: Likewise.
+
+2012-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/cmp_unit_test.c: Add missing failure message.
+ * tests/example_unit_test.c: Likewise.
+ * tests/printf_unit_test.c: Likewise.
+
+2012-05-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/gptsync.c (grub_cmd_gptsync): Propagate the
+ relaxation of protective MBR requirements.
+
+2012-05-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add condition for COND_HOST_XNU.
+ * Makefile.util.def (10_xnu): New script.
+ * util/grub.d/10_xnu.in: New file, extracted from 30_os_prober.in.
+
+2012-05-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S [__APPLE__]: Add a workaround for
+ objconv bug.
+
+2012-05-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gdb/i386/machdep.S: Make usable with Apple assembler.
+ Binary on other platforms stays identical.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove APPLE_CC and add -Wl,-allow_stack_execute on
+ Apple.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Ignore error 2022 in objconv since it's irrelevant for us.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/sys/types.h [__APPLE__]: Include stddef
+ rather than defining size_t ourselves to avoid conflict.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c (grub_hfs_dir): Use memset instead of
+ initialisation to avoid __bzero reference.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S [__APPLE__]: Add Apple assembly
+ version.
+ * grub-core/commands/i386/pc/drivemap_int13h.S [__APPLE__]: Likewise.
+ * grub-core/kern/i386/pc/startup.S [__APPLE__]: Likewise.
+ * grub-core/lib/i386/relocator16.S [__APPLE__]: Likewise.
+ * grub-core/lib/i386/relocator_common.S [__APPLE__]: Likewise.
+ * grub-core/mmap/i386/pc/mmap_helper.S [__APPLE__]: Likewise.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/runtime/efiemu.c: Replace APPLE_CC with __APPLE__.
+ * grub-core/kern/misc.c: Likewise.
+ * grub-core/loader/i386/xnu.c: Likewise.
+ * include/grub/i386/tsc.h: Likewise.
+ * include/grub/symbol.h: Likewise.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/list.h (grub_bad_type_cast_real): Remove return.
+ * include/grub/misc.h (ATTRIBUTE_ERROR): Make into noreturn attribute
+ on older compiler.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev) [__APPLE__]:
+ Implement Apple flavour.
+ (convert_system_partition_to_system_disk) [__APPLE__]: Likewise.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (memcmp) [__APPLE__]: Mark as regparm 0.
+ (memmove) [__APPLE__]: Likewise.
+ (memcpy) [__APPLE__]: Likewise.
+ (memset) [__APPLE__]: Likewise.
+ * grub-core/kern/misc.c (memcmp) [__APPLE__]: Likewise.
+ (memmove) [__APPLE__]: Likewise.
+ (memcpy) [__APPLE__]: Likewise.
+ (memset) [__APPLE__]: Likewise.
+
+2012-05-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmod.sh.in: Fix a bug in Apple part which caused
+ dependency discard.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c (read_config_file): Provide config_file and
+ config_directory.
+ * util/grub.d/41_custom.in: Use config_directoy when available.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c (iterate_in_b_tree): Add missing NESTED_FUNC_ATTR.
+ (grub_bfs_dir): Likewise.
+
+2012-05-27 Peter Jones <pjones@redhat.com>
+
+ The old code gives arguments to a printf function which can't work
+ correctly, and the compiler complains.
+
+ * grub-core/tests/example_functional_test.c (example_test): Add
+ missing text.
+ * grub-core/tests/lib/test.c (add_failure): Rewrite.
+ * include/grub/test.h (grub_test_assert_helper): New declaration.
+ (grub_test_assert): Use grub_test_assert_helper.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (example_functional_test): Rename to ...
+ (exfctest): ... this to avoid overlong filenames.
+ All users updated.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle "." and ".." on squashfs.
+
+ * grub-core/fs/squash4.c (grub_fshelp_node): New field stsize.
+ Make inode numbers into stack.
+ (grub_squash_read_symlink): Use stack.
+ (grub_squash_iterate_dir): Use stack. Create "." and ".." nodes.
+ (make_root_node): Fill stack.
+ (grub_squash_open): Use stack.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (open_device): Set dest->dev to 0 after
+ freeing.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (print_option_help): Properly redirect
+ stderr on test calls.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_find_file): Handle "." and "..".
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (list_file): Set mtime to correct value.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Don't skip "." and
+ "..".
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_catfile): New field parentid.
+ (grub_hfsplus_iterate_dir): Add "." and "..".
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cpio.c (canonicalize): Handle "..".
+ (grub_cpio_find_file) [MODE_USTAR]: Handle hardlinks.
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (GRUB_BTRFS_ITEM_TYPE_INODE_REF): New enum value.
+ (find_path): Handle "." and "..".
+
+2012-05-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_file): New field hardlink.
+ (GRUB_AFFS_FILETYPE_HARDLINK): New enum value.
+ (grub_affs_iterate_dir): Handle hardlinks.
+
+2012-05-26 Matthew Garrett <mjg@redhat.com>
+
+ * grub-core/term/efi/console.c (grub_efi_console_init): Set text mode.
+ (grub_efi_console_fini): Likewise.
+ * grub-core/video/efi_gop.c (framebuffer): New field offscreen.
+ (grub_video_gop_fill_mode_info): Rename to ...
+ (grub_video_gop_fill_real_mode_info): ... this.
+ (grub_video_gop_fill_mode_info): New function.
+ (grub_video_gop_setup): Setup double framebuffer.
+ (grub_video_gop_get_info_and_fini): Use original framebuffer.
+ Free offscreen.
+ (grub_video_gop_swap_buffers): Copy framebuffer.
+ (grub_video_gop_fini): Free offscreen buffer.
+ * include/grub/efi/graphics_output.h (grub_efi_gop_blt_operation_t):
+ New enum.
+ (grub_efi_gop_blt_pixel): New struct.
+
+2012-05-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Remove error disabling for objconv.
+
+2012-05-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove -Wunitialized as it's not available on older
+ compilers.
+
+2012-05-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix extent overflow comparator.
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_extkey_internal): Add type.
+ (grub_hfsplus_read_block): Set type.
+ (grub_hfsplus_cmp_extkey): Compare type.
+
+2012-05-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (cmd_cmp): Fix stat'ing of wrong file.
+
+2012-05-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_label): Use found ptr rather
+ than 0.
+
+2012-05-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (starfield_DATA): Add dejavu_bold_14.pf2.
+ (dejavu_bold_14.pf2): New target.
+
+2012-05-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Fix djvu font detection.
+
+2012-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/misc.c (grub_normal_print_device_info): Dsiplay
+ ext* instead of ext2.
+
+2012-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (read_terminal_list): Terminate the terminal
+ name with \0.
+
+2012-05-22 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * docs/grub-dev.texi: Remove dot from .png.
+
+2012-05-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Accept
+ protective entry in any slot.
+ * grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Reject
+ if protective entry is found in any slot.
+
+ Protective entry in non-first slot make no sense but is a widespread
+ brain damage.
+
+2012-05-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (grub_squash_read_data): Add missing byte-swap.
+
+2012-05-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Fix size byteswap
+ with old reiserfs.
+ (grub_reiserfs_open): Don't free root.
+
+2012-05-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (grub_fshelp_find_file): Set currnode to 0
+ after freeing for safety.
+
+2012-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/sleep.c (do_print): Add missing grub_refresh.
+ Reported by: Jordan Uggla.
+
+2012-05-21 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * docs/grub.texi Fix documentation of GRUB_HIDDEN_TIMOUNT to match the
+ actual implementation. Specifically, clarify that the grub menu will
+ be displayed for GRUB_TIMOUT seconds after the hidden timeout has
+ passed.
+
+2012-05-21 Benjamin Herrenschmidt <benh@kernel.crashing.org>
+
+ * grub-core/kern/powerpc/dl.c (trampoline_template): Use r12 instead
+ of r0.
+
+2012-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove unjustified hard dependency of normal.mod on gfxterm.
+
+ * include/grub/term.h (grub_term_output): New member fullscreen.
+ * include/grub/gfxterm.h (grub_gfxterm_fullscreen): Removed.
+ * grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Make static.
+ (grub_gfxterm): Set .fullscreen.
+ * grub-core/normal/menu.c (menu_init): Use fullscreen.
+ * grub-core/gfxmenu/gfxmenu.c (GRUB_MOD_INIT): Likewise.
+
+2012-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Internationalisation/Filesystems): Add precisions
+ mentioning possible problems with non-ASCII (non-compliant) ISOs.
+ Mention case-insensitive AFFS, SFS and JFS.
+
+2012-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_mtime): Add missing grub_dl_ref.
+
+2012-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as
+ a bad FS.
+
+2012-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Mark plain
+ ISO9660 names as case-insensitive, lowercase it and remove trailing dot.
+
+2012-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_data): New field caseins.
+ (grub_jfs_mount): Fill caseins.
+ (grub_jfs_find_file): Respect caseins.
+
+2012-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Don't strrchr
+ through UTF-16.
+
+2012-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_find_dir): Fix error message.
+ New argument origpath. All users updated.
+
+2012-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (read_data): Prevent overflow.
+ (read_attr): Ensure that we read start of possibly compressed block.
+
+2012-05-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/ntfs.h (grub_ntfs_comp_table_element): New struct.
+ (grub_ntfs_comp): Use grub_ntfs_comp_table_element for comp_table.
+ All users updated.
+
+2012-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (starfield_DATA): Replace dejavu.pf2 with dejavu_10.pf2,
+ dejavu_12.pf2, dejavu_14.pf2 and dejavu_16.pf2.
+ (dejavu.pf2): Replace with ...
+ (dejavu_10.pf2), (dejavu_12.pf2), (dejavu_14.pf2), (dejavu_16.pf2):
+ this.
+
+2012-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Add missing line.
+
+2012-05-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/charset.h (GRUB_UTF16_UPPER_SURROGATE): Fix mask sizes.
+ (GRUB_UTF16_LOWER_SURROGATE): Likewise.
+ (grub_utf16_to_utf8): Likewise.
+
+2012-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (scan): Don't scan device tree if
+ GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS is set.
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS on IBM hardware.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
+ GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS.
+
+2012-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/fs.c (grub_fs_probe): Handle GRUB_ERR_OUT_OF_RANGE as
+ a bad FS.
+
+2012-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/udf.c (read_string): Bail out on size=0.
+ (grub_udf_read_symlink): Handle read_string failure.
+
+2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Improve TRANSLATORS
+ comment.
+
+2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of UDF symlinks.
+
+ * grub-core/fs/udf.c (read_string): New argument outbuf.
+ All users updated.
+ (grub_ufs_read_symlink): Rename to ...
+ (grub_udf_read_symlink): ... this. All users updated.
+ Handle symlinks with more than one component.
+
+2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_read_symlink): Fix handling of long
+ symlinks. Replace leading colon with a slash.
+
+2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_find_file): Handle multiple slashes in
+ filename.
+
+2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c (find_in_b_tree) [MODE_AFS]: Fix handling of exact
+ match in inner node.
+
+2012-05-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c (mount): Improve filesystem detection reliability.
+ * grub-core/fs/ext2.c (grub_ext2_mount): Likewise.
+ * grub-core/fs/hfs.c (grub_hfs_mount): Likewise.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_mount): Likewise.
+ * grub-core/fs/jfs.c (grub_jfs_mount): Likewise.
+ * grub-core/fs/minix.c (grub_minix_mount): Likewise.
+ * grub-core/fs/ntfs.c (grub_ntfs_mount): Likewise.
+ * grub-core/fs/romfs.c (grub_romfs_mount): Likewise.
+ * grub-core/fs/xfs.c (grub_xfs_mount): Likewise.
+
+2012-05-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use grub-probe and not cmp to check that disk is empty.
+
+ * util/grub-install.in: Use grub-probe for zero-check.
+ * util/grub-probe.c (PRINT_ZERO_CHECK): New enum value.
+ (probe): Handle PRINT_ZERO_CHECK.
+ (argp_parser): Handle -t zero_check.
+
+2012-05-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Flush block cache on adding disk to device map.
+
+ * grub-core/kern/emu/hostdisk.c (flush_initial_buffer): New function.
+ (grub_hostdisk_os_dev_to_grub_drive): Call flush_initial_buffer on
+ adding.
+ (read_device_map): Likewise.
+ (open_device): Flush on opening.
+
+2012-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cpio.c (grub_cpio_find_file): Handle prefix.
+ (handle_symlink): Fix off-by-one error.
+ Canonicalize the target.
+ (grub_cpio_dir): Canonicalize the name.
+ Fix memory leak.
+ Set directory.
+ (grub_cpio_open): Canonicalize the name.
+
+2012-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix symlink
+ handling.
+
+2012-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_find_file): Fix handling of double slash.
+ * grub-core/fs/minix.c (grub_minix_find_file): Likewise.
+
+2012-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-menulst2cfg.c (main): Check return value of fwrite.
+ * util/grub-mklayout.c (write_file): Likewise. New argument fname.
+ All users updated.
+
+2012-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Update initrd list based on 10_linux.in
+ counterpart.
+
+2012-05-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix UFS1 big file support.
+
+ * grub-core/fs/ufs.c (INODE): Removed.
+ (INODE_SIZE): Always use 64-bit byte-swap since size field is always
+ 64-bit.
+ (INODE_MODE): Simplify.
+ (grub_ufs_inode): Use uint64_t for size and not int64_t.
+ (grub_ufs_lookup_symlink): Don't use INODE.
+
+2012-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix minixfs with non-power-of-two blocks since it's supported by minix.
+
+ * grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use block_size.
+ (grub_minix_data): Replace log_block_size with block_size.
+ (grub_minix_read_file): Use block_size but avoid 64-bit division.
+ (grub_minix_mount): Fill block_size.
+
+2012-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump to beta5.
+
+2012-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix wrapped HFS+ handling.
+
+ * grub-core/fs/fshelp.c (grub_fshelp_read_file): New argument
+ blocks_start. All users updated.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_read_block): Don't add
+ wrapping offset.
+ (grub_hfsplus_read_file): Pass embedding offset to fshelp_read_file.
+
+2012-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix long symlinks on reiserfs.
+
+ * grub-core/fs/reiserfs.c (grub_fshelp_node): New field size.
+ (grub_reiserfs_read_symlink): Use grub_reiserfs_read_real.
+ (grub_reiserfs_iterate_dir): Save size for non-directories.
+ (grub_reiserfs_open): Don't reread stat block as we already know the
+ size.
+ (grub_reiserfs_read): Split into...
+ (grub_reiserfs_read_real): ... and ...
+ (grub_reiserfs_read): ...this.
+
+2012-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix non-indexed JFS.
+
+ * grub-core/fs/jfs.c (grub_jfs_sblock): New field flags.
+ (grub_jfs_data): New field namecomponentlen.
+ (grub_jfs_mount): Fill namecomponentlen.
+ (grub_jfs_getent): Use namecomponentlen rather than hardcoded 11.
+
+2012-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/yylex.l: Ugly fix for "\\\n ".
+ * tests/grub_script_echo1.in: Add tests.
+
+2012-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Ignore empty devicetree directory.
+
+2012-05-08 Bean <bean123ch@gmail.com>
+
+ * grub-core/net/ip.c (reassemble): Make asm_buffer into asm_netbuff.
+ All users updated.
+ (free_rsm): Free header as well.
+ (free_old_fragments): Fix memory leak.
+ * grub-core/net/netbuff.c (grub_netbuff_free): Make return void.
+ * grub-core/net/tftp.c (tftp_receive): Fix memory leak.
+ (destroy_pq): Likewise.
+ * include/grub/net/netbuff.h (grub_netbuff_free): Make return void.
+
+2012-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hashsum.c (grub_cmd_hashsum): Align space for
+ resulting hash as a precaution.
+
+2012-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/bootp.c (set_env_limn_ro): Replace reserved ':' with
+ '_' in variable names.
+ * grub-core/net/net.c (grub_net_network_level_interface_register):
+ Likewise.
+
+2012-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix AFFS with non-512B blocks.
+
+ * grub-core/fs/affs.c (grub_affs_rblock): Make type uint32_t.
+ (AFFS_MAX_LOG_BLOCK_SIZE): New definition.
+ (grub_affs_data): Replace blocksize with log_blocksize.
+ (grub_affs_read_block): Fix non-512B blocks.
+ (grub_affs_read_symlink): Likewise.
+ (grub_affs_iterate_dir): Likewise. Fix freeing corruption.
+ (grub_affs_read): Fix non-512B blocks.
+ (grub_affs_label): Likewise.
+ (grub_affs_mtime): Likewise.
+ (grub_affs_mount): Fix block detection routine.
+
+2012-05-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add filesystem mtime to AFFS.
+
+ * grub-core/fs/affs.c (grub_affs_file): Make type unsigned.
+ (aftime2ctime): New function.
+ (grub_affs_dir): Use aftime2ctime.
+ (grub_affs_label): Fix return value.
+ (grub_affs_mtime): New function.
+ (grub_affs_fs): Add mtime.
+
+2012-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_read_symlink): Convert latin1 into
+ UTF-8.
+
+2012-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/sfs.c (grub_sfs_read_symlink): Convert latin1 into
+ UTF-8.
+
+2012-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_iterate_dir): Mark as case insensitive.
+
+2012-05-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/sfs.c (grub_sfs_rblock): New fields createtime and
+ flags.
+ (FLAGS_CASE_SENSITIVE): New enum value.
+ (cache_entry): New struct.
+ (grub_fshelp_node): Add fields cache_off, next_extent, cache_allocated,
+ cache_size and cache.
+ (grub_sfs_data): Remove blocksize. All users switched to log_blocksize.
+ Add log_blocksize and fshelp_flags.
+ (grub_sfs_read_extent): Handle non-512 blocks.
+ (grub_sfs_read_block): Add cаche and handle non-512 blocks.
+ (grub_sfs_read_file): Handle non-512 blocks.
+ (grub_sfs_mount): Handle non-512 blocks. Fill log_blocksize and
+ fshelp_flags.
+ (grub_sfs_read_symlink): Handle non-512 blocks.
+ (grub_sfs_iterate_dir): Init new fields. Mark as case-insensitive.
+ (grub_sfs_dir): Free cache.
+ (grub_sfs_close): Likewise.
+
+2012-05-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c (read_bfs_file): Fix overflow with over 2TiB
+ filesystems.
+
+2012-05-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_read_block): Fix theoretical overflow.
+
+2012-05-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/ls.c (grub_ls_list_files): Fix overflow.
+
+2012-05-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/sfs.c (grub_fshelp_node): Fix types.
+ (grub_sfs_read_extent): Likewise.
+ (grub_sfs_read_block): Likewise.
+ (grub_sfs_mount): Likewise.
+ (grub_sfs_iterate_dir): Likewise.
+ (grub_sfs_read_symlink): Use strncpy instead of strcpy.
+ (grub_sfs_read): Remove unnecessarry and wrong temporary variable.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix errors on compressed NTFS with 512B clusters.
+
+ * include/grub/ntfs.h (grub_ntfscomp_func_t): Use appropriately sized
+ types.
+ * grub-core/fs/ntfs.c (grub_ntfs_read): Return correct -1 on error and
+ not 0.
+ * grub-core/fs/ntfscomp.c (read_block): Use appropriately-sized types.
+ Relax check for inline extents.
+ (ntfscomp): Return correct -1 on error and not 0.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix handling of prefix containing spaces.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (grub_squash_inode): Fix offset field.
+ (grub_squash_read_data): Fix offset byte-swapping.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_strcmp): Use unsigned comparison as
+ per common usage and preffered in several parts of code.
+ (grub_memcmp): Likewise.
+ (grub_strncmp): Likewise.
+ * include/grub/misc.h (grub_strcasecmp): Likewise.
+ (grub_strncasecmp): Likewise.
+ * Makefile.util.def (cmp_test): New test.
+ (grub_script_strcmp): Likewise.
+ * tests/cmp_unit_test.c: New file.
+ * tests/grub_script_strcmp.in: Likewise.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Add a comment.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/pci.h: Move enums into no-asm part.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c (bfs_strcmp) [MODE_AFS]: Use signed comparison.
+
+2012-05-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/getroot.c (find_hurd_root_device): Try to make error message
+ and comments to translators clearer.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/menuentry.c: Fix typo in TRANSLATORS comments.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/fs.c (grub_fs_probe) [GRUB_UTIL]: Add workaround for
+ btrfs.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.cfg: Update.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (PXE): Remove not present variables.
+
+2012-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (defserver_set_env): New function.
+ (defserver_get_env): Likewise.
+ (GRUB_MOD_INIT): Register net_default_server and pxe_default_server.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Skip invalid Fedora
+ entries.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/menuentry.c: Add TRANSLATORS comments.
+ * grub-core/kern/emu/hostdisk.c: Likewise.
+
+2012-05-03 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ Handle hurd userspace partitions.
+
+ * util/getroot.c (find_hurd_root_device): New function.
+ (grub_guess_root_devices): Use find_hurd_root_device on Hurd.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (convert_system_partition_to_system_disk); Add etherd
+ names.
+ Reported by: Bastian Blank.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Fix offset when
+ crossing page boundary.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix B-tree search in BFS, especially in presence of non-ASCII
+ characters.
+
+ * grub-core/fs/bfs.c (bfs_strcmp): New function.
+ (find_in_b_tree): Use standard bsearch + btree algorithm.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (cmd_cmp): Avoid comparing devices, pipes
+ and so on.
+
+2012-05-03 Matthew Garrett <mjg@redhat.com>
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Suspend broadcom cards in order to stop their DMA.
+
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add pci.h on x86 EFI.
+ * grub-core/Makefile.core.def (kernel): Add pci.c on x86 EFI.
+ (pci): Don't build on x86 EFI.
+ * grub-core/bus/pci.c (grub_pci_find_capability): New function.
+ * grub-core/kern/efi/mm.c (stop_broadcom) [__i386__ || __x86_64__]:
+ New function.
+ (grub_efi_finish_boot_services) [__i386__ || __x86_64__]: Call
+ stop_broadcom if running on EFI.
+ * include/grub/pci.h (GRUB_PCI_CLASS_NETWORK): New enum value.
+ (GRUB_PCI_CAP_POWER_MANAGEMENT): Likewise.
+ (GRUB_PCI_VENDOR_BROADCOM): Likewise.
+ (grub_pci_find_capability): New proto.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi: Remove dot from the extension as it apparently
+ doesn't work with some makeinfo versions.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/Makefile.in.in: Make msgfmt output in little-endian in accordance
+ with GRUB expectance.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (cmd_cmp): Compare directories recursively.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_iterate_dir): Put a trailing
+ zero after directory block since last entry may be not 0-terminated if
+ it ends on block boundary. Use continue instead of if spanning whole
+ loop.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support 4K sectors UDF inline files.
+
+ * grub-core/fs/udf.c (grub_udf_file_entry): Don't specify padding size.
+ (grub_udf_extended_file_entry): Likewise.
+ (grub_fshelp_node): Name the anonymous union. Put block at the end.
+ All users updated.
+ (get_fshelp_size): New function.
+ (grub_udf_read_icb): Read whole block.
+ (grub_udf_iterate_dir): Likewise.
+ (grub_udf_dir): Likewise.
+ (grub_udf_open): Likewise.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_get_file_block): Support triple indirect.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Use proper check for
+ inline symlinks in addition to workaround.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Handle read_inode errors.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (GRUB_XFS_EXTENT_BLOCK): Fix bitmask.
+
+2012-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (nvlist_find_value): Fix return value.
+
+2012-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix reiserfs big seek times.
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_get_item): New argument
+ exact. All users updated.
+ (grub_reiserfs_read): Use nearest btree search for seeking.
+ Fix return value on error.
+
+2012-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/legacycfg.c (legacy_file): Default to restricted
+ entries.
+ * grub-core/commands/menuentry.c (grub_cmd_menuentry): Likewise.
+ * docs/grub.texi: Update menuentry description.
+
+2012-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Remove duplicate call to embed. Fixes
+ crash when embedding onto filesystem.
+
+2012-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (find_root_devices_from_poolname): Handle spaces in the
+ name.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/ip.c (handle_dgram): Fix undeclared variable.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/autofs.c (read_fs_list): Revert accidental wrong
+ commit.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+2012-05-01 Bean <bean123ch@gmail.com>
+
+ * grub-core/net/ip.c (handle_dgram): Fix DHCP mac comparison.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/file.c (grub_file_read): Read nothing if len = 0.
+ Special behaviour for len = 0 to read whole file isn't used anywhere and
+ can cause buffer ovewrflows in several places.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/autofs.c (read_fs_list): Fix memory leak.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle RAIDZ on non-512B sectors.
+
+ * grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member
+ max_children_ashift.
+ (fill_vdev_info_real): Fill max_children_ashift.
+ (read_device): Use max_children_ashift.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (grub_fshelp_find_file): Fix memory leak.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Reject non-standard
+ disk names.
+ * docs/grub.texi: Update device.map parts.
+
+2012-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't scan into non-diskfilter devices having diskfilter names.
+
+ * grub-core/disk/diskfilter.c (is_valid_diskfilter_name): New function.
+ (scan_disk): New argument accept_diskfilter. Fix recursion depth
+ handling.
+ (scan_disk_hook): New function.
+
+2012-04-29 Bean <bean123ch@gmail.com>
+
+ * grub-core/net/drivers/efi/efinet.c (get_card_packet): Fix buffer
+ allocation.
+
+2012-04-29 Mads Kiilerich <mads@kiilerich.com> (tiny)
+
+ * configure.ac: Detect starfield theme font path
+ /usr/share/fonts/dejavu/DejaVuSans.ttf for Fedora.
+
+2012-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/console.c (grub_console_dimensions): Use 80x24
+ geometry on serial consoles.
+
+2012-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_terminfo_readkey): Increase timeout
+ because of network consoles.
+
+2012-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_terminfo_getkey): Fix incorrect queue
+ handling.
+
+2012-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (read_segment): Fix the case when disknr
+ falls on Q syndrom.
+
+2012-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_palloc_entry_offset_log):
+ Fix argument to grub_nilfs2_palloc_bitmap_block_offset.
+
+2012-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (lzo_decompress): Set grub_errno on error.
+ Allocate at lest 8192 for temporary buffer as required for lzo.
+
+2012-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_mount): Don't add logical_sector_bits
+ to cluster_bits, since it's already added in.
+ (grub_fat_read_data): Likewise.
+
+2012-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (grub_ntfs_mount): Support 256-byte sectors,
+ as long as cluster size is multiple of 512 bytes.
+
+2012-04-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Fix locale directory.
+
+2012-04-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (map): Make static.
+
+2012-04-23 Bean <bean123ch@gmail.com>
+
+ * util/grub-fstest.c (fstest): Add missing break.
+
+2012-04-22 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ Fix hurd build.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_size) [__GNU__]: Do
+ not define nr variable.
+ * util/getroot.c [__GNU__] (strip_extra_slashes, xgetcwd, exec_pipe,
+ find_root_devices_from_poolname, find_root_devices_from_libzfs,
+ grub_find_device): Do not define.
+
+2012-04-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix kfreebsd compile and behaviour.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_follow_gpart_up): Fix
+ format-security.
+ * util/getroot.c: Fix wait.h include.
+ (grub_guess_root_devices): Error if grub_find_device fails.
+ (grub_util_get_geom_abstraction): Fix shadowing and format-security.
+ (grub_util_get_dev_abstraction): Likewise.
+ (grub_util_pull_device): Likewise.
+ (grub_util_get_grub_dev): Likewise.
+ * util/lvm.c (grub_util_lvm_isvolume): Likewise.
+
+2012-04-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix and unify wholedisk detection.
+
+ * util/getroot.c (convert_system_partition_to_system_disk): New argument
+ is_part. All users updated.
+ (device_is_wholedisk): Removed.
+ (grub_util_biosdisk_get_grub_dev): Use is_part.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix opening
+ mode.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump to beta4.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/search_wrap.c (grub_cmd_search): Handle old
+ --fs-uuid --set UUID syntax.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_write): Fix message
+ disunification.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (LDFLAGS_PLATFORM): Use explicit -Wl.
+
+2012-04-18 Mads Kiilerich <mads@kiilerich.com>
+
+ * grub-mkconfig_lib.in: Ignore *.rpmnew and *.rpmsave.
+
+2012-04-18 Mike Gilbert <floppym@gentoo.org>
+
+ * util/grub.d/10_linux.in: Fix detection of genkernel initramfs.
+
+2012-04-18 Bean <bean123ch@gmail.com>
+
+ * grub-core/disk/ata.c (grub_ata_strncpy): Put terminating zero at right
+ place.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (open_device): New argument max. All
+ users updated.
+ (grub_util_biosdisk_read): Handle Linux partitions not exactly
+ corresponding to GRUB partitions.
+ (grub_util_biosdisk_write): Likewise.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Scan mdraid before LVM.
+
+ * include/grub/diskfilter.h (grub_diskfilter_register): Renamed to ..
+ (grub_diskfilter_register_front): ... this.
+ (grub_diskfilter_register_back): New function.
+ All users of grub_diskfilter_register updated.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix an automatic target detection bug.
+
+2012-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: New option --efi-directory.
+
+2012-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (allocate_pages): Overwrite low memory
+ boot services if we have no other choice.
+
+2012-04-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mknetdir.in: Rename --override-directory to --directory and
+ document it.
+ * tests/util/grub-shell.in: Update to --directory.
+
+2012-04-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c: Disable -Wstrict-aliasing.
+
+2012-04-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c (grub_minix_data): Fix ino type.
+ (grub_minix_read_file): Likewise.
+ (grub_minix_read_inode): Likewise.
+ (grub_minix_find_file): Likewise.
+ (grub_minix_dir): Likewise.
+
+2012-04-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Fix partition handling and blocklist
+ check.
+
+2012-04-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Remove
+ redundant buggy overlap check.
+
+2012-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Set pkgdatadir when calling grub-mkrescue
+ and grub-mknetdir.
+
+2012-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Avoid accessing
+ kh.loadflags on pre-2.00 kernels.
+
+2012-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Terminate UNDI and PXE before launching the payload to avoid problems
+ with DMA.
+
+ * grub-core/commands/boot.c (grub_loader_noreturn): Rename to ...
+ (grub_loader_flags): ... this. All users updated.
+ (grub_loader_boot): Check for GRUB_LOADER_FLAG_NORETURN.
+ * grub-core/loader/i386/pc/pxechainloader.c (grub_cmd_pxechain): Mark
+ loader as GRUB_LOADER_FLAG_PXE_NOT_UNLOAD.
+ * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_shutdown): New
+ function.
+ (grub_pxe_restore): Likewise.
+ (fini_hnd): New var.
+ (GRUB_MOD_INIT): Register shutdown hook.
+ (GRUB_MOD_FINI): Shutdown and unregister shutdown hook.
+ * include/grub/loader.h (GRUB_LOADER_FLAG_NORETURN): New const.
+ (GRUB_LOADER_FLAG_PXE_NOT_UNLOAD): Likewise.
+ (grub_loader_set): Rename second argument to flags.
+
+2012-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (grub_ucs4_to_utf8): Return number of
+ written bytes.
+ (grub_get_num_of_utf8_bytes): New function.
+ (grub_ucs4_to_utf8_alloc): Use grub_get_num_of_utf8_bytes.
+ * grub-core/normal/menu_entry.c (run): Convert entry to UTF-8 before
+ executing it.
+ * include/grub/charset.h (grub_get_num_of_utf8_bytes): New proto.
+ (grub_ucs4_to_utf8): Change return type.
+
+2012-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/usbtest.c (usb_print_str): Silence spurious
+ warning.
+ * grub-core/fs/bfs.c (hop_level): Likewise.
+ * grub-core/net/bootp.c (grub_cmd_bootp): Likewise.
+
+2012-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/adler32.c: Recode due to license unclearness.
+
+2012-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/lzopio.c (read_block_header): Fix incorrect byte swapping
+ (test_header): Likewise.
+
+2012-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix --help formatting.
+
+ * util/grub-mkconfig_lib.in (print_option_help): New function.
+ (grub_fmt): Likewise.
+ * util/grub-install.in: Use print_option_help and grub_fmt.
+ * util/grub-kbdcomp.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2012-04-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * linguas.sh: Remove autogenerated *.po.
+
+2012-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/README: Move language fetcing to ...
+ * linguas.sh: ... here.
+ * po/README: Point to linguas.sh.
+
+2012-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/README: Exclude ko.po due to disclaimer problems.
+
+2012-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (grub_gettext_pread): Fix the case when
+ len = 0.
+ (grub_gettext_translate_real): Handle 0th string.
+ (grub_gettext_translate): Ensure that "" isn't translated.
+
+2012-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add
+ TRANSLATORS comment.
+ (grub_diskfilter_print_partmap): Propagate changing of error into
+ warning.
+
+2012-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/diskfilter.h (grub_diskfilter_vg): Increase extent_size
+ to uint64_t to prevent overflow.
+ (grub_diskfilter_lv): Increase start_extent and extent_count
+ to uint64_t to prevent overflow.
+
+2012-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Increase version.
+
+2012-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Introduce en@cyrillic en@hebrew en@arabic and en@greek.
+
+ * po/Rules-translit: New file.
+ * po/arabic.sed: Likewise.
+ * po/cyrillic.sed: Likewise.
+ * po/greek.sed: Likewise.
+ * po/hebrew.sed: Likewise.
+ * po/README: Add en@cyrillic en@hebrew en@arabic and en@greek.
+ * po/Makefile.in.in: Add extra_dist4.
+
+2012-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle big-endian minixfs (fixes minixfs tests on bigendian).
+
+ * grub-core/fs/minix.c: Replace le with minix. Add necessary defines,
+ modify names. Introduce MODE_BIGENDIAN.
+ * grub-core/fs/minix_be.c: New file.
+ * grub-core/fs/minix2_be.c: Likewise
+ * grub-core/fs/minix3_be.c: Likewise.
+ * Makefile.util.def (libgrubmods): Add minix_be, minix2_be and
+ minix3_be.
+ * grub-core/Makefile.core.def (minix_be): New module.
+ (minix2_be): Likewise.
+ (minix3_be): Likewise.
+
+2012-04-01 Felix <email@hamburg.de>
+
+ * grub-core/loader/efi/appleloader.c (devpath_7): New var.
+ (devs): Add MBP 2011.
+
+2012-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/font/font.c (blit_comb): Handle dagesh somewhat.
+
+2012-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (print_completion): New field
+ prompt_len.
+ (grub_cmdline_get): Handle width properly.
+
+2012-04-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/lsacpi.c (options): Add missing terminator.
+
+2012-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/datetime.h (grub_datetime2unixtime): Fix handling of days
+ after 29th of February.
+
+2012-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix exfat endianness handling.
+
+ * grub-core/fs/fat.c (grub_fat_data): Make fat_sector 32-bit.
+ (grub_fat_mount) [MODE_EXFAT]: Fix bpb.num_reserved_sectors byte-swap.
+ (grub_fat_iterate_dir) [MODE_EXFAT]: Fix attr byte-swap.
+ Byte-swap utf16 when necessary.
+ (grub_fat_label) [MODE_EXFAT]: Byte-swap utf16 when necessary.
+
+2012-03-31 Anton Blanchard <anton@samba.org>
+2012-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix btrfs endianness handling.
+
+ * grub-core/fs/btrfs.c (key_cmp): Use grub_le_to_cpu for clarity.
+ (lower_bound): Make root uint64_t. Use root in le.
+ (grub_btrfs_read_logical): Fix template key init. Fix address byteswap.
+ (find_path): Fix template key init.
+ (grub_btrfs_dir): Fix mtime byteswap.
+ * include/grub/types.h (grub_cpu_to_le64_compile_time): New macro.
+
+2012-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_read_logical): New argument
+ recursion_depth. Break infinite resursions. All users updated.
+
+2012-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (convert_system_partition_to_system_disk): Fix use
+ after free.
+ Reported by: Peter Jones.
+
+2012-03-31 Anton Blanchard <anton@samba.org>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Do not byteswap
+ 8 bit values.
+
+2012-03-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix nvram call for PreP.
+
+2012-03-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Degrade
+ the error when some elements are missing into a warning.
+
+2012-03-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (bidi_line_wrap): Fix out-of-range swap.
+
+2012-03-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Invoking grub-probe): New section.
+ Reported by: Filipus Klutiero. Fixes Debian bug #666031.
+
+2012-03-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix tab and wide character handling in editor and menu.
+
+ * grub-core/normal/charset.c (grub_unicode_aglomerate_comb): Don't
+ agglomerate control characters with combining marks.
+ (bidi_line_wrap): Allow break on tab.
+ (grub_unicode_get_comb_start): New function.
+ * grub-core/normal/menu_entry.c: Restructure to handle wide characters
+ and tab correctly.
+ * grub-core/normal/menu_text.c (print_entry): Replace \n, \r, \b and \e
+ with a space.
+ * grub-core/normal/term.c (print_ucs4_terminal): New argument
+ fixed_tab_size. All users updated.
+ * include/grub/term.h (GRUB_TERM_TAB_WIDTH): New const.
+ (grub_term_getcharwidth): Handle \t.
+ * include/grub/unicode.h (grub_unicode_glyph_dup): Fix allocation
+ and copy.
+
+2012-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle big-endian mdraid.
+
+ * Makefile.util.def (libgrubkern): Add mdraid_linux_be.c.
+ * grub-core/Makefile.core.def (mdraid09_be): New module.
+ * grub-core/disk/mdraid_linux.c: Use grub_md_to_cpu* and grub_cpu_to_md*
+ rather than grub_le_to_cpu* and grub_cpu_to_le*.
+ * grub-core/disk/mdraid_linux_be.c: New file.
+
+2012-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (GRUB_MOD_INIT): Handle errors.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_make_system_path_relative_to_its_root): Fix
+ missing quotes which caused confusion among translators.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in: Fix typo.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/argv.c (grub_script_argv_split_append): Skip leading
+ spaces.
+ * tests/grub_script_leading_whitespace.in: New file.
+ * Makefile.util.def (grub_script_leading_whitespace): New test.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c (grub_dl_add): Make global in order for gdb_grub
+ to work.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_label): Use first label if second one
+ starts with control character.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gdb/cstub.c (grub_gdb_inbuf): Increase the size to avoid
+ overflow.
+ (grub_gdb_outbuf): Likewise.
+
+2012-03-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/menuentry.c (grub_normal_add_menu_entry): Add
+ zero terminator. Fixes a crash.
+
+2012-03-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (allocate_pages): Don't allocate
+ beyond 4 GiB.
+ (grub_cmd_linux): Use GRUB_LINUX_BZIMAGE_ADDR for non-relocatable
+ images independently of preffered adderss field.
+
+2012-03-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/play.c: Improve TRANSLATORS comments.
+ * grub-core/commands/regexp.c: Likewise.
+ * grub-core/loader/i386/linux.c: Likewise.
+ * grub-core/partmap/msdos.c: Likewise.
+ * grub-core/script/execute.c: Likewise.
+ * grub-core/term/gfxterm.c: Likewise.
+
+2012-03-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add variable parsing in $"..." and fix several mismatches with bash.
+
+ * Makefile.util.def (grub_script_gettext): New test.
+ * grub-core/script/execute.c (parse_string): New function.
+ (gettext_append): Likewise.
+ (grub_script_arglist_to_argv): Use gettext_append.
+ * grub-core/script/yylex.l: Fix slash and newline handling in $"...".
+ * tests/grub_script_gettext.in: New file.
+
+2012-03-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of leading spaces in scripts.
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Don't strip leading
+ spaces.
+ * grub-core/normal/main.c (grub_file_getline): Remove all preprocessing
+ other than skipping \r. All users updated.
+ * tests/grub_script_echo1.in: Add space-related tests.
+ * util/grub-menulst2cfg.c (main): Remove useless space skipping.
+
+2012-03-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/cat.c (grub_cmd_cat): Fix termination key check.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump up the version to beta2.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix gettext reload bugs (e.g. inability to disable gettext
+ once enabled).
+
+ * grub-core/gettext/gettext.c: Encapsulate all static variables in
+ main_context and secondary_context. All functions updated.
+ (grub_gettext_translate): Rename to ...
+ (grub_gettext_translate_real): ... this. Return NULL on failed
+ translate.
+ (grub_gettext_translate): Handle secondary context.
+ (grub_gettext_delete_list): Close file and zero-out the context.
+ (grub_mofile_open): Don't call grub_gettext_delete_list.
+ Don't close file.
+ (grub_gettext_init_ext): Call grub_gettext_init_ext. Skip loading
+ if locale="" to avoid pointless error message.
+ (grub_gettext_env_write_lang): Update lang even if load fails.
+ Handle secondary context.
+ (grub_gettext_reread_prefix): New function.
+ (read_main): Likewise.
+ (read_secondary): Likewise.
+ (GRUB_MOD_INIT): Handle secondary context. Hook and export variables.
+ (GRUB_MOD_FINI): Handle secondary context. Don't close file.
+ * grub-core/normal/main.c (read_lists): Call grub_gettext_reread_prefix.
+ * include/grub/normal.h (grub_gettext_reread_prefix): New proto.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Decrease warning level to avoid spurious warnings and
+ to be able to compile with GCC 4.2.
+ * Makefile.util.def: Remove -Wno-error=logical-op.
+
+2012-03-10 William Bittner <william.bittner@gmail.com>
+
+ * util/import_unicode.py: Add missing brackets around string for
+ python 3 support.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix efi chainloader on network root.
+
+ * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Handle
+ network devices.
+ * grub-core/net/drivers/efi/efinet.c (grub_efinet_get_device_handle):
+ New function.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_progress_bar.c (grub_gui_progress_bar): Remove
+ unused show_text member.
+ * docs/grub.texi: Document "text" property.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Fix format
+ in dprintf.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix IMSM handling on Fedora.
+
+ * util/getroot.c (grub_util_is_imsm): New function.
+ (grub_util_get_dev_abstraction): Treat IMSM as simple device, not RAID.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am: Strip gold section.
+ * conf/Makefile.common: Likewise.
+ * gentpl.py: Likewise.
+ * grub-core/Makefile.core.def: Likewise.
+ * grub-core/genmod.sh.in: Likewise.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Use stat if grub-probe on root fails.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ Based on Debian patch.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Fix syntax error resulting in
+ Richard Laager's patch.
+ * util/grub.d/20_linux_xen.in: Propagate Richard Laager's patch.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/partmap_test.in: Replace qemu-img usage with dd to decrease
+ dependencies.
+
+2012-03-10 Richard Laager <rlaager@wiktel.com>
+
+ * util/grub.d/10_linux.in: Fix ZFS root passing.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videoinfo.c: Add TRANSLATORS comments.
+ * grub-core/commands/xnu_uuid.c: Likewise.
+ * grub-core/loader/efi/appleloader.c: Likewise.
+ * grub-core/script/execute.c: Likewise.
+ * grub-core/script/main.c: Likewise.
+ * util/grub-mkfont.c: Likewise.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (options): Use more appropriate "select" that
+ "set" for face index.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-editenv.c (options): Gettextize command summaries.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Use
+ "out of memory" error messagge.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_memberlist): Add scanning
+ of diskfilter for diskfilter on diskfilter support.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (exec_pipe): Ensure that the child is not localised.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Check for themes/starfield/theme.txt and not
+ themes/starfield.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/regcomp.c (regerror): Fix out-of-range array lookup.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gdb/i386/idt.c (grub_gdb_breakpoint): Remove old debug code.
+
+2012-03-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hashsum.c (grub_cmd_hashsum): Remove dot at the end
+ of error message.
+
+2012-03-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix install non-PreP IEEE1275 install.
+
+2012-03-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/sendkey.c (GRUB_MOD_INIT): Fix confusing
+ message.
+ * util/grub-install.in: Fix and gettextize error message.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (options): Replace N with NUM and S with STRING.
+ Gettextize.
+ * util/grub-mount.c (options): Likewise.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/probe.c (options): Replace VAR with VARNAME and
+ gettextize.
+ * grub-core/commands/search_wrap.c (options): Likewise.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (bidi_line_wrap): Fix a spurious warning.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S (multiboot_trampoline): Fix
+ size calculation.
+ * grub-core/kern/i386/realmode.S (realidt): Assume default BIOS IDT if
+ none is known.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (grub_net_addr_to_str): Don't translate
+ "temporary" since it's used in identifier and is limited in space.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate. Include *.h since they contain
+ translatable strings as well.
+
+2012-03-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing
+ byte-swap on big-endian.
+ Reported by: Lennart Sorensen
+
+2012-03-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (prot_init_space): New variable.
+ (allocate_pages): Improve dprintf.
+ (grub_cmd_linux): Fill prot_init_space. Fix improper usage of
+ code32_start. Fill code32_start and kernel_alignment in params.
+ (grub_cmd_initrd): Use prot_init_space.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkstandalone.in: Propagate grub-mkimage.c change.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Add missing dot at the end of sentence.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videoinfo.c: Add TRANSLATORS comments.
+ * grub-core/commands/videotest.c: Likewise.
+ * grub-core/loader/i386/linux.c: Likewise.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpi.c (options): Fix a dot in the middle of the
+ sentence.
+ Reported by: Milo Casagrande.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpi.c: Add TRANSLATORS comments.
+ * grub-core/commands/gptsync.c: Likewise.
+ * grub-core/commands/hashsum.c: Likewise.
+ * grub-core/commands/i386/pc/sendkey.c: Likewise.
+ * grub-core/commands/legacycfg.c: Likewise.
+ * grub-core/io/gzio.c: Likewise.
+ * grub-core/net/net.c: Likewise.
+ * grub-core/term/gfxterm.c: Likewise.
+ * grub-core/term/terminfo.c: Likewise.
+ * grub-core/tests/test_blockarg.c: Likewise.
+ * grub-core/video/video.c: Likewise.
+ * util/grub-install.in: Likewise.
+ * util/grub-mkfont.c: Likewise.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (help_filter): Add missing capitalisation.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/search_wrap.c (options): Fix a typo.
+ Reported by: David Prévot.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-kbdcomp.in: Change "layout" to "keyboard layout" in
+ description.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-script-check.c (main): Fix a syntax error message which was
+ unclear.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in (usage): Fix ROM capitalisation.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/search_wrap.c (options): Fix wrong copy-paste in
+ messages.
+
+2012-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (options): Remove OPTION_ARG_OPTIONAL from options
+ without argument.
+ * util/grub-mount.c (options): Likewise.
+
+2012-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Unify diskboot.img size message.
+
+2012-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/http.c: Add TRANSLATORS comments.
+ * grub-core/normal/cmdline.c: Likewise.
+ * grub-core/normal/misc.c: Likewise.
+ * grub-core/partmap/msdos.c: Likewise.
+ * grub-core/parttool/msdospart.c: Likewise.
+ * grub-core/script/execute.c: Likewise.
+ * grub-core/script/main.c: Likewise.
+ * grub-core/term/terminfo.c: Likewise.
+ * grub-core/video/bitmap.c: Likewise.
+ * util/grub-install.in: Likewise.
+ * util/grub-mkimage.c: Likewise.
+ * util/grub-mklayout.c: Likewise.
+ * util/grub-setup.c: Likewise.
+
+2012-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mount.c (fuse_init): Unify cryptomount and loopback messages
+ with similar messages in grub-fstest.
+
+2012-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Unify "option requires an argument" message
+ with similar messages in other files.
+ * util/grub-mkconfig.in: Likewise.
+
+2012-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-set-default.in: Replace printf with gettext_printf (the
+ string in in question is already translated from grub-reboot)
+
+2012-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump up the version to beta1.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (allocate_pages): Fix handling of the
+ case when min_align = 0.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (bidi_line_wrap): Fix a spurious warning
+ and fix a case when line_start overflows.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-reboot.in (usage): Mention id posibility.
+ * util/grub-set-default.in (usage): Likewise.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (ALIGN_UP_OVERHEAD): New define.
+ * grub-core/loader/i386/linux.c (grub_cmd_initrd): Align initrds at 4.
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/ia64/efi/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/menuentry.c (options): Remove
+ GRUB_ARG_OPTION_REPEATABLE.
+ Reported by: Andreas Vogel
+
+2012-03-04 Andreas Vogel <Andreas.Vogel@anvo-it.de>
+
+ * grub-core/normal/main.c (grub_normal_free_menu): Fix memory leak.
+
+2012-03-04 Hideki EIRAKU <hdk1983@gmail.com>
+
+ * grub-core/normal/menu_entry.c (kill_line): Fix a crash and off-by-one
+ error.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use sort -V by the idea of Georgi Georgiev.
+
+ * util/grub-mkconfig_lib.in (version_sort): New function.
+ (version_test_numeric): Use version_sort.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use submenus in grub-mkconfig.
+
+ * util/grub-mkconfig.in: Define GRUB_ACTUAL_DEFAULT.
+ * util/grub-mkconfig_lib.in (grub_quote): New function.
+ (gettext_printf): Use gettext and not gettext_quoted to fix several
+ messages.
+ * util/grub.d/10_hurd.in: Use submenus.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+ * util/grub.d/10_illumos.in: Add missing quoting.
+ * util/grub.d/10_windows.in: Likewise.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix menu title instability bug.
+
+ * grub-core/commands/menuentry.c (options): New option --id.
+ (grub_normal_add_menu_entry): New argument id. All users updated.
+ (grub_cmd_menuentry): Handle --id.
+ (grub_menu_init): Accept unknown arguments.
+ * grub-core/normal/main.c (features): Add feature_menuentry_id and
+ feature_menuentry_options.
+ * grub-core/normal/menu.c (grub_menu_execute_entry): Use id for
+ saved_entry.
+ (get_entry_number): Match with id as well.
+ * include/grub/menu.h (grub_menu_entry): New member id.
+ * util/grub-mkconfig_lib.in (grub_get_device_id): New function.
+ * util/grub.d/00_header.in: Define menuentry_id_option.
+ * util/grub.d/10_hurd.in: Define id.
+ * util/grub.d/10_illumos.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+2012-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_return): Replace ambiguous
+ "scope" with "body".
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/linux.h (linux_kernel_header): Fix init_size type.
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Differentiate between
+ prot_size and prot_file_size.
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (is_lv_readable): New argument "easily".
+ All users updated. If easily=1 require raid-5/-6 to be full.
+ (is_node_readable): Likewise.
+ (scan_devices): Scan incomplete but readable LVs at the end.
+ (grub_diskfilter_memberlist): Pull missing devices.
+ (insert_array): Skip scanning until device is complete or scan is
+ done otherwise.
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix wrong
+ check.
+ * include/grub/diskfilter.h (grub_diskfilter_lv): New member scanned.
+ * util/raid.c (grub_util_raid_getmembers): Handle "removed" disks.
+
+2012-03-03 Matthew Garrett <mjg@redhat.com>
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid EFI boot services when loading Linux.
+
+ * grub-core/lib/i386/relocator.c (grub_relocator32_boot): New argument
+ avoid_efi_bootservices. All users updated.
+ * grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): New
+ argument avoid_efi_bootservices. All users updated.
+ Use grub_efi_mmap_iterate on EFI, grub_mmap_iterate if available.
+ * grub-core/loader/i386/linux.c (allocate_pages): New arguments
+ align, min_align, relocatable, prefered_address. All users updated.
+ Allocate avoiding boot services if kernel is relocatable.
+ (grub_cmd_linux): Check if kernel is relocatable.
+ * grub-core/mmap/efi/mmap.c (grub_machine_mmap_iterate): Move most to ..
+ (grub_efi_mmap_iterate): ... here. New argument avoid_efi_boot_services.
+ Skip GRUB_EFI_BOOT_SERVICES_DATA and GRUB_EFI_BOOT_SERVICES_CODE if
+ avoid_efi_boot_services.
+ (grub_machine_mmap_iterate): Wrap grub_efi_mmap_iterate.
+ * include/grub/i386/linux.h (linux_kernel_header): Update to 2.10.
+ (linux_kernel_params): Likewise.
+
+2012-03-03 Matthew Garrett <mjg@redhat.com>
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use EDID on EFI.
+
+ * grub-core/kern/efi/efi.c (grub_efi_get_variable): New argument
+ datasize_out.
+ * grub-core/video/efi_gop.c (check_protocol): Check that GOP has usable
+ modes. Set gop_handle.
+ (grub_video_gop_get_edid): New function.
+ (grub_gop_get_preferred_mode): Likewise.
+ (grub_video_gop_setup): Use grub_gop_get_preferred_mode.
+ (grub_video_efi_gop_adapter): Set .get_edid.
+ * include/grub/efi/edid.h: New file.
+ * include/grub/efi/efi.h (grub_efi_get_variable): Update proto.
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Load efivars unconditionally.
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/Rules-piglatin: Change suffix from .po-update-en to
+ .po-update-en-piglatin.
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add a pig farm.
+
+ * po/piglatin.sed: New file.
+ * po/en@piglatin.header: Likewise.
+ * po/Rules-piglatin: Likewise.
+ * po/README: Add en@piglatin to autogenerated languages.
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/date.c (GRUB_MOD_INIT): Remove non-uniform
+ "Command for ...".
+ * grub-core/commands/hdparm.c (options): Use "Display" rather than
+ "Check" since we don't check anything.
+ * grub-core/commands/i386/cpuid.c (options): Clarify that long mode
+ is 64-bit one.
+ * grub-core/commands/search_wrap.c (options): Clarify the conditions.
+ * grub-core/disk/geli.c (grub_md_sha256_real): Fix typo.
+ (grub_md_sha512_real): Likewise.
+
+2012-03-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/gptsync.c: Fix typographic quoting.
+ * grub-core/commands/ieee1275/suspend.c: Likewise.
+ * grub-core/commands/parttool.c: Likewise.
+ * grub-core/commands/search_wrap.c: Likewise.
+ * grub-core/commands/videoinfo.c: Likewise.
+ * grub-core/gfxmenu/gui_label.c: Likewise.
+ * grub-core/hello/hello.c: Likewise.
+ * grub-core/kern/emu/main.c: Likewise.
+ * grub-core/net/net.c: Likewise.
+ * grub-core/normal/menu.c: Likewise.
+ * grub-core/normal/menu_text.c: Likewise.
+ * grub-core/normal/misc.c: Likewise.
+ * util/grub-editenv.c: Likewise.
+ * util/grub-install.in: Likewise.
+ * util/grub-kbdcomp.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/grub-setup.c: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c: Add TRANSLATORS comments.
+ * grub-core/commands/keystatus.c: Likewise.
+ * grub-core/commands/loadenv.c: Likewise.
+ * grub-core/commands/probe.c: Likewise.
+ * grub-core/commands/regexp.c: Likewise.
+ * grub-core/commands/true.c: Likewise.
+ * grub-core/commands/videoinfo.c: Likewise.
+ * grub-core/disk/cryptodisk.c: Likewise.
+ * grub-core/disk/ldm.c: Likewise.
+ * grub-core/disk/loopback.c: Likewise.
+ * grub-core/disk/luks.c: Likewise.
+ * grub-core/fs/zfs/zfsinfo.c: Likewise.
+ * grub-core/kern/disk.c: Likewise.
+ * grub-core/kern/emu/hostdisk.c: Likewise.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add TRANSLATORS comment.
+ * util/grub-install.in: Add missing quote in the comment.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/drivemap.c: Add TRANSLATORS comments.
+ * grub-core/commands/lsmmap.c: Likewise.
+ * grub-core/commands/minicmd.c: Likewise.
+ * grub-core/commands/mips/loongson/lsspd.c: Likewise.
+ * grub-core/commands/regexp.c: Likewise.
+ * grub-core/gdb/gdb.c: Likewise.
+ * grub-core/term/gfxterm.c: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mkfont.c: Likewise.
+ * util/grub-mklayout.c: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videoinfo.c (hook): Replace "Direct"
+ with "Direct color" and "Packed" with "Packed pixel".
+ (grub_cmd_videoinfo): Simplify legend.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_make_system_path_relative_to_its_root): Fix
+ absolutely unclear error message.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkstandalone.in: Remove confusing leftover print.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add TRANSLATORS
+ comments.
+ * grub-core/gdb/gdb.c (grub_cmd_gdbstub): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Clarify that it's
+ VGA mode.
+ * grub-core/net/net.c (grub_net_route_address): Add TRANSLATORS
+ comments.
+ * util/grub-install.in (usage): Likewise.
+ Spell ID in whole letters.
+ Add missing ending dot.
+ Quote variables.
+ * util/grub-reboot.in: Fix capitalisation.
+ * util/grub-set-default.in: Likewise.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (strip_extra_slashes) [CYGWIN]: #ifdef-out.
+ (exec_pipe) [CYGWIN || MINGW32]: Likewise.
+ (find_root_devices_from_poolname) [CYGWIN || MINGW32]: Likewise.
+ (find_root_devices_from_libzfs) [CYGWIN || MINGW32]: Likewise.
+ Disable -Werror for -Wdeprecated-declarations.
+ (grub_guess_root_devices) [CYGWIN || MINGW32]: #ifdef-out.
+ (get_dm_uuid) [!HAVE_DEVICE_MAPPER]: Likewise.
+ (grub_util_get_dm_abstraction) [! __linux__]: #ifdef-out.
+ (grub_util_get_grub_dev): Make luks handling dependent on
+ HAVE_DEVICE_MAPPER and not __linux__.
+ (get_win32_path): Fix format security.
+ (grub_find_zpool_from_dir) [CYGWIN || MINGW32]: #ifdef-out.
+ (grub_make_system_path_relative_to_its_root) [CYGWIN || MINGW32]:
+ Don't try grub_find_zpool_from_dir.
+ (grub_make_system_path_relative_to_its_root) [!__linux__]:
+ #ifdef-out paresdir.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-pe2elf.c (usage): Add missing noreturn.
+ (write_section_data): Rename name to shname to avoid shadowing.
+ (write_symbol_table): Rename name to symname to avoid shadowing.
+ Fix write_reloc_section call.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S: Move decompressor_end to .bss
+ to ensure that it's after the last byte of .text.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c (my_isdigit): New function.
+ (trailing_digits): Use my_isdigit.
+ (strip_trailing_digits): Likewise.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/resolve.c (read_dep_list): Use grub_isspace instead of isspace.
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Likewise.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S: Define __start.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py (kernel): Remove the use of TARGET_OBJ2ELF after strip since
+ strip already transforms he format.
+
+2012-03-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/i386-pc-cygwin-img-ld.sc: Define also _edata and __edata.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Add missing gettext init.
+ * util/grub-kbdcomp.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/Rules-swiss: Fix header comment.
+
+2012-02-29 Andreas Vogel <anvoit>
+
+ * grub-core/kern/misc.c (grub_xvasprintf): Fix an exit path which
+ resulted in leak of arguments.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S: Use separate
+ reed_solomon_size const definition instead of computing it since
+ Apple assembler doesn't support the later.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py (kernel): Rewrite Apple part.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/kernel.h (FOR_MODULES): Check module magic.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimagexx.c (locate_sections): Support non-standard
+ ELF section gap.
+ (load_image): Likewise.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Fix a typo in previous commit.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't add -Wl,-N on Apple platform.
+
+ * configure.ac (TARGET_LDFLAGS_OLDMAGIC): New subst.
+ * conf/Makefile.common: Use TARGET_LDFLAGS_OLDMAGIC instead of -Wl,-N
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (lzma_decompress): Use
+ TARGET_IMG_BASE_LDOPT rather than hardcoding -Wl,-Ttext.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmod.sh.in: Rewrite the Apple part.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/machoXX.c (grub_macho_load): Fix signed vs unsigned
+ comparison.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * acinclude.m4 (grub_CHECK_PIC): New test.
+ * configure.ac: Add -fno-PIC to TARGET_CFLAGS if -fPIC is default.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/libgcc.h (__STDC_VERSION__): Define if it's not yet so
+ to avoid the warning.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/diskboot.S (firstlist): Rename to ...
+ (LOCAL(firstlist)): ... this. Move it before the firstlist and not
+ after. All users updated.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use the common size routine in hostfs so we can read disks as well.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Rename to ..
+ (grub_util_get_fd_size): ... this. Return size in bytes.
+ All users updated.
+ * grub-core/kern/emu/hostfs.c (grub_hostfs_open): Use
+ grub_util_get_fd_size.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__APPLE__]:
+ Add blocksize retrieval.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Restore CFLAGS after efiemu check.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Move -fnested-functions to CPPFLAGS to workaround
+ Apple bug.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.am (MACHO2IMG): Add missing variable.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/halt.c (grub_halt): Add noreturn attribute.
+ (grub_cmd_halt): Likewise.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/relocator16.S: Declare LOCAL(relocator16_end)
+ for local arithmetics.
+ Break %sp init into 2 instructions.
+ Add 0 byte at the end.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (read_segment): Initialise err
+ before loops.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Use void *
+ for context.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ldm.c (make_vg): Init part.name.
+ (grub_ldm_detect): Silence spurious warning.
+ (grub_util_is_ldm): Likewise.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (grub_xnu_boot): Init fsbfreq to
+ sane value to avoid a spurious warning.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/dl.h: Switch from APPLE_CC to __APPLE__.
+ (GRUB_MOD_LICENSE) [ASM_FILE]: Make into macro. All users updated.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/symbol.h (EXT_C) [!ASM_FILE]: Redefine with strings.
+ * grub-core/lib/i386/backtrace.c (grub_backtrace): Use EXT_C.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gdb/i386/machdep.S: Use VARIABLE and EXT_C instead of
+ hardcoding the relevant info.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Add
+ missing const qualifiers.
+ * grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): Likewise.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c [__APPLE__]: Add missing includes.
+ (grub_util_biosdisk_is_floppy): Fix usage of undefined variable.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Silence spurious warning.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c: Rename devname to sys_devname everywhere to
+ avoid conflicts.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/grub-ofpathname.c: Add missing config.h include.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup) [!__linux__]: Add missing file declaration
+ and grub_file_close call.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add LZSS Mach-O support (needed for new xnu kernelcache).
+
+ * grub-core/Makefile.core.def (xnu): Add file lzss.c
+ * grub-core/loader/lzss.c: New file.
+ * grub-core/loader/xnu.c (grub_xnu_load_driver): Close binaryfile
+ on Mach-O open failure.
+ * grub-core/loader/macho.c (grub_macho_close): Free uncompressedXX.
+ Don't free cmdsXX in uncompressedXX is set.
+ (grub_macho_file): Init new fields.
+ New argument is_64bit. All users updated.
+ Handle compressed. Error out if no suitable architecture is found.
+ Don't close file.
+ (grub_macho_open): New argument is_64bit. All users updated.
+ * grub-core/loader/macho32.c: Add defines for new fields.
+ * grub-core/loader/macho64.c: Likewise.
+ * grub-core/loader/machoXX.c (grub_macho_contains_macho): Make static.
+ (grub_macho_parse): Handle compressed.
+ Defer actual processing if compressed.
+ (grub_macho_cmds_iterate): Decompress if compressed. New argument
+ "filename". All users updated.
+ (grub_macho_size): New argument "filename". All users updated.
+ (grub_macho_get_entry_point): Likewise.
+ (grub_macho_load): Handle compressed.
+ * include/grub/macho.h (grub_macho_lzss_header): New struct.
+ (GRUB_MACHO_LZSS_OFFSET): New define.
+ (grub_decompress_lzss): New proto.
+ * include/grub/machoload.h (grub_macho_file): New fields to handle
+ compressed.
+ (grub_macho_contains_macho64): Remove proto.
+ (grub_macho_contains_macho32): Likewise.
+ * util/grub.d/30_os-prober.in: Use kernel cache if available.
+
+2012-02-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/pata.c (grub_pata_readwrite): Fix ATAPI protocol error.
+
+2012-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix make dist.
+
+ * Makefile.am (starfield_theme_files): New var.
+ (starfield_DATA): Use starfield_theme_files.
+ (EXTRA_DIST): Add starfield_theme_files. Add starfield source files.
+ Add bootcheck-related files.
+ * conf/Makefile.extra-dist (EXTRA_DIST): Add several missing files.
+ * docs/Makefile.am (EXTRA_DIST): Add font_char_metrics.png
+ and font_char_metrics.txt.
+ * grub-core/Makefile.core.def (kernel): Update extra_dist.
+ (setjmp): Add lib/ia64/longjmp.S.
+ * po/Makefile.in.in (DISTFILES): Add POTFILES-shell.in and grub.d.sed.
+ * po/POTFILES.in: Regenerate.
+ * po/Rules-swiss: use DISTFILES.common.extra2 and not
+ DISTFILES.common.extra1.
+ * util/devicemap.c: Removed.
+ * grub-core/lib/i386/relocator_backward.S: Likewise.
+ * util/import_gcry.py: Remove unused files. Add extra_dist for
+ ChangeLog.
+
+2012-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (grub_mofile_open): Call
+ grub_gettext_delete_list before changing grub_gettext_max to avoid
+ running out of array bounds.
+
+2012-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/i386/pc/vga_text.c: Add GRUB_MACHINE_MULTIBOOT to
+ grub_vga_text_init/grub_vga_text_fini.
+
+2012-02-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix format specification.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Bump to 2.00~beta0.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_find_root_devices_from_btrfs): Add
+ missing initialisation.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/msdos.c (message_warn): Clarify messages.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support v2 xnu boot arguments.
+
+ * grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devicetree):
+ New argument fsbfreq_out.
+ (grub_xnu_set_video): Receive an argument grub_xnu_boot_params_common.
+ (grub_xnu_boot): Support v2 arguments. Disable PIC so that APIC can
+ be used.
+ * grub-core/loader/machoXX.c (grub_macho_load): New argument
+ darwin_version.
+ * grub-core/loader/xnu.c (grub_xnu_darwin_version): New variable.
+ * include/grub/i386/xnu.h (grub_xnu_boot_params_common): New struct.
+ (grub_xnu_boot_params): Rename to ...
+ (grub_xnu_boot_params_v1): ...this. Use grub_xnu_boot_params_common.
+ (grub_xnu_boot_params_v2): New struct.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/prepare.c (grub_efiemu_crc): Add missing
+ zeroing of CRC field before computing CRC.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (malloc_in_range): Fix memory leak.
+ Change order of allocations to decrease fragmentation.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-ofpathname): Enable on all platforms.
+
+2012-02-27 Colin Watson <cjwatson@ubuntu.com>
+
+ Use write-combining MTRR to speed up video with buggy BIOSes.
+
+ * grub-core/video/i386/pc/vbe.c (framebuffer): New member mtrr.
+ (cpuid): New define.
+ (rdmsr): Likewise.
+ (wrmsr): Likewise.
+ (mtrr_base): Likewise.
+ (mtrr_mask): Likewise.
+ (grub_vbe_enable_mtrr_entry): New function.
+ (grub_vbe_enable_mtrr): Likewise.
+ (grub_vbe_disable_mtrr): Likewise.
+ (grub_vbe_bios_set_display_start): Disable mtrr when handing the
+ control off to BIOS.
+ (grub_video_vbe_init): Fill mtrr.
+ (grub_video_vbe_fini): Disable mtrr.
+ (grub_video_vbe_get_info_and_fini): Likewise.
+ (grub_video_vbe_setup): Enable mtrr.
+
+2012-02-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/partition.h (grub_partition_map): Change prototype of
+ embed to take a maximum value for nsectors.
+ * include/grub/emu/hostdisk.h (grub_util_ldm_embed): Likewise.
+ * include/grub/fs.h (grub_fs): Likewise.
+ * grub-core/partmap/msdos.c (embed_signatures): New array.
+ (pc_partition_map_embed): Check for and avoid sectors matching any
+ of the signatures in embed_signatures, up to max_nsectors.
+ * grub-core/partmap/gpt.c (gpt_partition_map_embed): Restrict
+ returned sector map to max_nsectors.
+ * grub-core/disk/ldm.c (grub_util_ldm_embed): Likewise.
+ * grub-core/fs/btrfs.c (grub_btrfs_embed): Likewise.
+ * grub-core/fs/zfs/zfs.c (grub_zfs_embed): Likewise.
+ * util/grub-setup.c (setup): Allow for the embedding area being
+ split into multiple blocklists. Tell dest_partmap->embed the
+ maximum number of sectors we care about.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/fs.h (grub_fs) [GRUB_UTIL]: Add blocklist_install field.
+ Specify blocklist_install and reserver_first_sector for all fs.
+ * util/grub-setup.c (setup): Use FIBMAP/FIEMAP on Linux. Check resulting
+ blocklists.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Clarify strings.
+ Fix source dir check.
+
+2012-02-27 Richard Laager <rlaager@wiktel.com>
+
+ * util/getroot.c (grub_find_root_devices_from_mountinfo): Handle
+ "zfs" and "fuse.zfs" as synonyms.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Put platform and target_cpu substitutions back since
+ they are used for directories.
+
+2012-02-27 Richard Laager <rlaager@wiktel.com>
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Add ZFS-related arguments.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2012-02-27 Richard Laager <rlaager@wiktel.com>
+
+ * util/getroot.c (find_root_devices_from_poolname): Handle vdevs
+ with full paths.
+
+2012-02-27 Richard Laager <rlaager@wiktel.com>
+
+ * util/getroot.c (grub_find_root_devices_from_mountinfo): Add missing
+ unescape.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't use insecure popen in getroot.
+
+ * util/getroot.c (get_mdadm_uuid): Move pipe logic to ...
+ (exec_pipe): ... here.
+ (find_root_devices_from_poolname): Use exec_pipe.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove platform and target_cpu replacement.
+
+ * configure.ac: Remove platform and target_cpu substitutions.
+ * tests/util/grub-shell.in: Use modinfo.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Specify powerpc-ieee1275
+ explicitly.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Autodetect platform in grub-install but allow override.
+
+ * util/grub-install.in: Autodetect platform. Support --target and
+ --directory. Read platform from modinfo.sh.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support btrfs multi-volume probe.
+
+ * util/getroot.c (btrfs_ioctl_dev_info_args) [__linux__]: New struct.
+ (btrfs_ioctl_fs_info_args) [__linux__]: Likewise.
+ (BTRFS_IOC_DEV_INFO) [__linux__]: New define.
+ (BTRFS_IOC_FS_INFO) [__linux__]: Likewise.
+ (grub_find_root_devices_from_btrfs) [__linux__]: New function.
+ (grub_find_root_devices_from_mountinfo) [__linux__]: Use
+ grub_find_root_devices_from_btrfs if on btrfs.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove any awareness of *.c util files about target.
+
+ * Makefile.util.def (grub-setup): Split to ...
+ (grub-bios-setup): ... and this.
+ (grub-sparc64-setup): ... and this.
+ * configure.ac: Don't add machine_CPPFLAGS into HOST_CPPFLAGS.
+ * docs/man/grub-setup.h2m: Split into ...
+ * docs/man/grub-sparc64-setup.h2m: ... this.
+ * docs/man/grub-bios-setup.h2m: ... and this.
+ * include/grub/dl.h (grub_dl) [GRUB_UTIL]: Remove struct.
+ * include/grub/elf.h (Elf_*) [GRUB_UTIL]: Remove types.
+ (GRUB_TARGET_WORDSIZE) [GRUB_UTIL]: Remove.
+ (grub_target_addr_t): Remove.
+ (grub_target_size_t): Remove.
+ (grub_target_ssize_t): Remove.
+ * util/grub-install.in: Use new grub-*-setup.
+ * util/grub-mkimagexx.c (Elf_Word): New define.
+ (Elf_Half): Likewise.
+ (Elf_Section): Likewise.
+ (ELF_ST_TYPE): Likewise.
+ * util/grub-setup.c: Switch from GRUB_MACHINE_SPARC64 to
+ GRUB_SETUP_SPARC64 and from GRUB_MACHINE_PCBIOS to GRUB_SETUP_BIOS.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace grub_target_addr with more appropriate types.
+
+ * grub-core/commands/efi/fixvideo.c (scan_card): Replace
+ grub_target_addr with grub_addr.
+ * grub-core/commands/iorw.c (grub_cmd_read): Replace
+ grub_target_addr with grub_port.
+ (grub_cmd_write): Likewise.
+ * grub-core/commands/memrw.c (grub_cmd_read): Replace
+ grub_target_addr with grub_addr.
+ (grub_cmd_write): Likewise.
+ * grub-core/video/efi_uga.c (find_line_len): Likewise.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (grub_efi_runtime_services): Add missing
+ const qualifier for vendor_guid.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/runtime/efiemu.c (efiemu_get_variable): Add missing
+ const qualifier.
+ (efiemu_memequal): Likewise.
+ (find_variable): Likewise.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix missing console prototype on qemu-mips.
+
+ * include/grub/mips/qemu_mips/console.h: New file.
+
+2012-02-27 Matthew Garrett <mjg@redhat.com>
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/efi.c (grub_efi_get_variable): Add new function.
+ * include/grub/efi/efi.h: Likewise.
+ * include/grub/efi/api.h: Add guid for EFI-specified variables.
+ * include/grub/charset.h (GRUB_MAX_UTF16_PER_UTF8): New definition.
+ * grub-core/normal/charset.c (grub_utf8_process): Move from here ...
+ * include/grub/charset.h (grub_utf8_process): ... to here. Inline.
+ * grub-core/normal/charset.c (grub_utf8_to_utf16): Move from here ...
+ * include/grub/charset.h (grub_utf8_to_utf16): ... to here. Inline.
+
+2012-02-27 Matthew Garrett <mjg@redhat.com>
+
+ * include/grub/efi/pci.h: New file to define EFI PCI protocols.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_iterate): Fix off-by-one
+ error.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove inappropriate use of program_transform_name
+ on grubdir and bootdir but allow explicit specification of those
+ variables.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mknetdir.in (grub_prefix): Removed.
+ (subdir): Use @bootdirname@ and @grubdirname@.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace PACKAGE_TARNAME with PACKAGE in pkglibdir and pkgdatadir.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerated.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove improper use of program_transform_name on pkglibrootdir.
+
+ * configure.ac (pkglibrootdir): Removed.
+ (grub-mkimage): Replace PKGLIBROOTDIR with PKGLIBDIR.
+ * util/grub-mkimage.c: Likewise.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_text.c (grub_print_message_indented_real): Fix a
+ warning.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Use file identifier if no UUID is available
+ or user explicitly prompted for it.
+
+2012-02-27 Navdeep Parhar <nparhar@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (freebsd_zfsguid): New variable.
+ (freebsd_get_zfs): New function.
+ (grub_freebsd_boot): Pass zfs UUID.
+ (grub_cmd_freebsd): Set zfs UUID.
+
+2012-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (platformdir): Base on pkglibdir and not
+ pkglibrootdir.
+
+2012-02-27 Mike Gilbert <floppym@gentoo.org>
+
+ Add configure flag to control libzfs integration.
+
+ * configure.ac: Add AC_ARG_ENABLE(libzfs ...) and associated logic.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (insert_array): Choose the smallest
+ device.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Reject too
+ small devices.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove grub_{modname}_init and grub_{modname}_fini. They should never
+ be used directly if it's really a module and GRUB_MOD_INIT shouldn't
+ be used on non-modules.
+
+ * grub-core/commands/boot.c (GRUB_MOD_INIT) [LOONGSON || QEMU_MIPS]:
+ Rename to grub_boot_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_boot_fini.
+ * grub-core/commands/keylayouts.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_keylayouts_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_keylayouts_fini.
+ * grub-core/font/font_cmd.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_font_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to grub_font_fini.
+ * grub-core/kern/mips/loongson/init.c: Replace explicit protos with
+ includes.
+ (grub_machine_init): Remove empty inits.
+ * grub-core/kern/mips/qemu_mips/init.c: Replace explicit protos with
+ includes.
+ (grub_machine_init): Remove empty inits.
+ * grub-core/term/arc/console.c: Remove explicit proto.
+ * grub-core/term/at_keyboard.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_at_keyboard_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
+ grub_at_keyboard_fini.
+ * grub-core/term/gfxterm.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_gfxterm_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
+ grub_gfxterm_fini.
+ * grub-core/term/i386/pc/vga_text.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_vgatext_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
+ grub_vgatext_fini.
+ * grub-core/term/ieee1275/console.c: Remove explicit proto.
+ * grub-core/term/serial.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_serial_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
+ grub_serial_fini.
+ * grub-core/term/terminfo.c (GRUB_MOD_INIT)
+ [LOONGSON || QEMU_MIPS]: Rename to grub_terminfo_init.
+ (GRUB_MOD_FINI) [LOONGSON || QEMU_MIPS]: Rename to
+ grub_terminfo_fini.
+ * grub-core/video/bitmap.c (GRUB_MOD_INIT): Removed.
+ (GRUB_MOD_FINI): Likewise.
+ * grub-core/video/radeon_fuloong2e.c (GRUB_MOD_INIT)
+ [LOONGSON]: Rename to grub_video_radeon_fuloong2e_init.
+ (GRUB_MOD_FINI) [LOONGSON]: Rename to
+ grub_video_radeon_fuloong2e_fini.
+ * grub-core/video/sis315pro.c (GRUB_MOD_INIT)
+ [LOONGSON]: Rename to grub_video_sis315pro_init.
+ (GRUB_MOD_FINI) [LOONGSON]: Rename to
+ grub_video_sis315pro_fini.
+ * grub-core/video/sm712.c (GRUB_MOD_INIT)
+ [LOONGSON]: Rename to grub_video_sm712_init.
+ (GRUB_MOD_FINI) [LOONGSON]: Rename to
+ grub_video_sm712_fini.
+ * include/grub/at_keyboard.h (grub_at_keyboard_init): New proto.
+ (grub_at_keyboard_fini): Likewise.
+ * include/grub/dl.h (GRUB_MOD_INIT) [!GRUB_UTIL && !EMU]:
+ Don't declare grub_{modname}_init.
+ (GRUB_MOD_INIT) [!GRUB_UTIL && !EMU]: Don't declare grub_{modname}_fini.
+ * include/grub/keyboard_layouts.h (grub_keylayouts_init) [!EMU]:
+ New proto.
+ (grub_keylayouts_fini) [!EMU]: Likewise.
+ * include/grub/serial.h (grub_serial_init) [!EMU]:
+ New proto.
+ (grub_serial_fini) [!EMU]: Likewise.
+ * include/grub/terminfo.h (grub_terminfo_init) [!EMU]:
+ New proto.
+ (grub_terminfo_fini) [!EMU]: Likewise.
+ * include/grub/video.h (grub_font_init) [!EMU]:
+ New proto.
+ (grub_font_fini) [!EMU]: Likewise.
+ (grub_gfxterm_init) [!EMU]: Likewise.
+ (grub_gfxterm_fini) [!EMU]: Likewise.
+ (grub_video_sm712_init) [!EMU]: Likewise.
+ (grub_video_sm712_fini) [!EMU]: Likewise.
+ (grub_video_sis315pro_init) [!EMU]: Likewise.
+ (grub_video_sis315pro_fini) [!EMU]: Likewise.
+ (grub_video_radeon_fuloong2e_init) [!EMU]: Likewise.
+ (grub_video_radeon_fuloong2e_fini) [!EMU]: Likewise.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make nand a prefix for nand devices.
+
+ * grub-core/disk/ieee1275/nand.c (grub_nand_open): Use prefix nand.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_stpcpy): Move from here ...
+ * include/grub/misc.h (grub_stpcpy): ... to here. Inlined.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/env.h (grub_env_find): Remove prototype.
+ * grub-core/kern/env.c (grub_env_find): Make static.
+ (grub_env_set): Remove useless set.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/realmode.S: Remove useless align.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/dl.h (grub_dl_load_file): Don't export.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_open): Remove useless
+ grub_dprintf.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Remove useless
+ grub_errors.
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Simplify by
+ not reloading whole superblock but only the part which is really needed.
+ Remove useless grub_errors.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Remove useless
+ grub_errors.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't export grub_get_rtc.
+
+ * include/grub/i386/pc/time.h (grub_get_rtc): Don't export.
+ * grub-core/commands/i386/pc/play.c (play): Use grub_get_time_ms.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/genmod.sh.in: Add -R .note.GNU-stack to strip.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (insert_array): Remove scanner_name
+ argument since it can be deduced from diskfilter. All users updated.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove prio_list.
+
+ * include/grub/list.h (grub_prio_list): Removed.
+ (GRUB_PRIO_LIST_PRIO_MASK): Removed. All users switched to
+ GRUB_COMMAND_PRIO_MASK.
+ (GRUB_PRIO_LIST_FLAG_ACTIVE): Removed. All users switched to
+ GRUB_COMMAND_FLAG_ACTIVE.
+ (grub_prio_list_insert): Removed.
+ (grub_prio_list_remove): Likewise.
+ (GRUB_AS_PRIO_LIST): Likewise.
+ (GRUB_AS_PRIO_LIST_P): Likewise.
+ * include/grub/command.h (GRUB_COMMAND_PRIO_MASK): New define.
+ (GRUB_COMMAND_FLAG_ACTIVE): Likewise.
+ * grub-core/kern/list.c (grub_prio_list_insert): Remove.
+ * grub-core/kern/command.c (grub_register_command_prio): Inline
+ the prio_list code.
+ (grub_unregister_command): Likewise.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix interrupt mixup from previous commit.
+
+ * include/grub/i386/pc/int.h (grub_i386_idt): New struct.
+ (grub_realidt): New var.
+ * grub-core/lib/i386/relocator16.S (grub_relocator16_idt): New variable
+ Load idt.
+ * grub-core/lib/i386/relocator.c (grub_relocator16_idt):
+ New declaration.
+ (grub_relocator16_boot): Set grub_relocator16_idt.
+ * grub-core/kern/i386/realmode.S (realidt): Renamed to ...
+ (LOCAL(realidt)): ... this.
+ * grub-core/boot/i386/pc/startup_raw.S: Pass pointer to realidt in eax.
+ * grub-core/kern/i386/pc/startup.S: Save pointer to realidt.
+ (grub_realidt): New variable.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/backtrace.c (grub_cmd_backtrace): Move from ...
+ * grub-core/lib/backtrace.c (grub_cmd_backtrace): ... to here.
+ * grub-core/lib/i386/backtrace.c (GRUB_MOD_INIT): Move from ...
+ * grub-core/lib/backtrace.c (GRUB_MOD_INIT): ... to here.
+ Gettextize.
+ * grub-core/lib/i386/backtrace.c (GRUB_MOD_FINI): Move from ...
+ * grub-core/lib/backtrace.c (GRUB_MOD_FINI): ... to here.
+ * po/POTFILES.in: Regenerate.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/probe.c (grub_cmd_probe): Gettextise UUID and label
+ errors.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Stop on
+ \0.
+ (add_length): Likewise.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+2012-02-26 Lubomir Kundrak <lkundrak@redhat.com>
+
+ GDB serial and backtrace support.
+
+ * grub-core/kern/i386/realmode.S (real_to_prot): Reload IDT.
+ (prot_to_real): Likewise.
+ * grub-core/kern/i386/int.S (grub_bios_interrupt): Remove IDT reload.
+ * grub-core/Makefile.core.def (backtrace): New module.
+ (gdb): Likewise.
+ * grub-core/gdb/cstub.c: New file.
+ * grub-core/gdb/gdb.c: Likewise.
+ * grub-core/gdb/i386/idt.c: Likewise.
+ * grub-core/gdb/i386/machdep.S: Likewise.
+ * grub-core/gdb/i386/signal.c: Likewise.
+ * grub-core/lib/i386/backtrace.c: Likewise.
+ * grub-core/lib/backtrace.c: Likewise.
+ * include/grub/backtrace.h: Likewise.
+ * include/grub/gdb.h: Likewise.
+ * include/grub/i386/gdb.h: Likewise.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len):
+ New function.
+ (add_length): Likewise.
+ (__argp_fmtstream_update): Handle strings with non-ASCII chars.
+ * grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): New
+ proto.
+ * grub-core/gnulib/argp-help.c (argp_args_usage): Use
+ __argp_get_display_len.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ $"..." support in scripts.
+
+ * grub-core/script/execute.c (grub_script_arglist_to_argv): Handle
+ GRUB_SCRIPT_ARG_TYPE_GETTEXT.
+ * grub-core/script/yylex.l: Likewise.
+ * include/grub/script_sh.h (GRUB_SCRIPT_ARG_TYPE_GETTEXT): New enum
+ value.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Remove obsolete pkglib_DATA handling.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't transform PACKAGE_TARNAME following a discussion on autoconf
+ mailing list.
+
+ * util/grub-install.in: Don't transform PACKAGE_TARNAME.
+ * util/grub-kbdcomp.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mkconfig_lib.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove GRUB_PREFIX.
+
+ * util/grub-mkconfig.in: Remove GRUB_PREFIX.
+ * util/grub.d/00_header.in: Compute prefix in the only place it's still
+ used for backward compatibility.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add new all_video module.
+
+ * grub-core/Makefile.am (moddep.lst): Make dependent on video.lst.
+ * grub-core/Makefile.core.def (all_video): New module.
+ * grub-core/genmoddep.awk: Generate dependency of all_video from
+ video.lst.
+ * grub-core/lib/fake_module.c: New file.
+ * grub-core/normal/main.c (features): Add feature_all_video_module.
+ * util/grub.d/00_header.in: Define locale_dir based on $prefix and
+ don't do explicit search again.
+ insmod all_video in load_video if available.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Another round of string clarification and adding TRANSLATORS comments.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mknetdir.in: Remove erroneous reference to install_device.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Fix return type
+ to grub_ssize_t.
+ * grub-core/normal/main.c (grub_normal_init_page): Fix msg_len type.
+ * include/grub/charset.h (grub_utf8_to_ucs4_alloc): Fix prototype.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_text.c (grub_print_message_indented_real): Add
+ trailing newline implicitly. All users updated.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement serial on IEEE1275 and EFI.
+
+ * docs/grub.texi (Platform-specific limitations): Fix the columen video
+ on emu. Mention arc and emu as the only platforms without serial
+ support.
+ * grub-core/Makefile.core.def (serial): Enable on all terminfomodule and
+ ieee1275 platforms.
+ * grub-core/term/efi/serial.c: New file.
+ * grub-core/term/ieee1275/serial.c: Likewise.
+ * grub-core/term/serial.c (grub_serial_find): Disable direct port
+ specification if no ns8250 driver is available.
+ (grub_cmd_serial): Likewise.
+ (GRUB_MOD_INIT) [GRUB_MACHINE_IEEE1275]: Init ofserial.
+ (GRUB_MOD_INIT) [GRUB_MACHINE_EFI]: Init efiserial.
+ * include/grub/efi/api.h (GRUB_EFI_SERIAL_IO_GUID): New define.
+ (grub_efi_parity_type_t): New type.
+ (grub_efi_stop_bits_t): Likewise.
+ (grub_efi_serial_io_interface): New struct.
+ * include/grub/serial.h (grub_serial_port): Make 'broken' field
+ available for all interfaces.
+ Add EFI and IEEE1275 fields.
+ (grub_ofserial_init): New proto.
+ (grub_efiserial_init): Likeiwse.
+ * util/grub.d/00_header.in: Don't check for the presence of serial
+ module.
+
+2012-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (scan): Fix improper use of device
+ name as if it was an alias.
+
+2012-02-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/lsacpi.c (options): Fix typo.
+
+2012-02-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Convert grub-emu to argp.
+
+ * grub-core/Makefile.core.def (kernel): Add kern/emu/argp_common.c on
+ emu.
+ * util/argp_common.c: Rename to ...
+ * grub-core/kern/emu/argp_common.c: ... this. All users updated.
+ Add missing includes.
+ * grub-core/kern/emu/main.c: Convert to argp.
+ * po/POTFILES.in: Regenerate.
+ * util/grub-install.in (usage): Make first letter lowcase in messages
+ for uniformity.
+ * util/grub-setup.c (options): Likewise.
+
+2012-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_progress_bar.c (progress_bar_set_property):
+ Put back accidently commented-out code.
+
+2012-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Add btree
+ loop check using Brent algorithm.
+ (grub_hfsplus_btree_search): Likewise.
+
+2012-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix usage of wrong device for PreP install.
+
+2012-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (CFLAGS_GNULIB): Add
+ -Wno-unsafe-loop-optimizations.
+ * configure.ac: Remove -Wmissing-declarations and -Wmissing-prototypes
+ on tools.
+ * grub-core/commands/legacycfg.c: Add pragma to skip
+ -Wunsafe-loop-optimizations.
+ (check_password_md5_real): Fix loop counter type.
+ * grub-core/commands/testload.c (grub_cmd_testload): Fix over the EOF
+ reading.
+ * grub-core/disk/ldm.c (grub_util_get_ldm): Fix logic error.
+ * grub-core/fs/zfs/zfs_sha256.c (zio_checksum_SHA256): Add safety
+ loop condition.
+ * grub-core/io/gzio.c: Add pragma to skip -Wunsafe-loop-optimizations.
+ * grub-core/lib/LzmaEnc.c (GetOptimum): Avoid possible infinite loop.
+ * grub-core/net/net.c (grub_net_route_address): Add safety loop
+ condition.
+ * grub-core/normal/charset.c (bidi_line_wrap): Likewise.
+ * grub-core/normal/cmdline.c (grub_set_history): Fix loop types and
+ avoid possible infinite loops.
+ * grub-core/script/parser.y: Add pragma to skip -Wmissing-declarations
+ and -Wunsafe-loop-optimizations.
+ * grub-core/script/yylex.l: Likewise.
+ * util/grub-mkfont.c: Add pragma to skip -Wunsafe-loop-optimizations.
+ (print_glyphs): Avoid infinite loops.
+ * util/grub-mkimage.c (compress_kernel_xz): Fix format security.
+
+2012-02-24 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): Fix loop condition
+ to avoid infinite loop.
+ (disp_acpi_rsdt_table): Likewise.
+
+2012-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/font/font.c (grub_font_load): Add support for default
+ path for fonts ($prefix/fonts).
+ * grub-core/kern/corecmd.c (grub_core_cmd_insmod): Unify condition
+ for checking if string is a path.
+ * grub-core/normal/main.c (features): Add feature_default_font_path.
+ * util/grub-mkconfig.in: Skip mangling of GRUB_FONT into GRUB_FONT_PATH.
+ * util/grub.d/00_header.in: Use default directory if possible.
+ * util/grub-install.in: Install unicode.pf2.
+
+2012-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/README: Add de_CH and en@quot to po/LINGUAS generation command.
+ * po/Rules-swiss: New file.
+ * po/swiss.sed: Likewise.
+
+2012-02-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (find_device): Fix typos.
+ * grub-core/fs/zfs/zfs.c (read_device): Likewise.
+ * util/grub-mkrelpath.c (argp_parser): Likewise.
+ Reported by: Yuri Chornoivan.
+
+2012-02-23 Dalet Omega <daletomega@gmail.com>
+
+ * grub-core/gfxmenu/gui_label.c (label_set_property): Add template
+ for usual informative messages.
+
+2012-02-23 Dalet Omega <daletomega@gmail.com>
+
+ Starfield theme.
+
+ * Makefile.am: Define starfield_DATA and dejavu.pf2 generation.
+ * conf/Makefile.common: Define starfielddir.
+ * configure.ac: Configure starfield.
+ * themes/starfield/COPYING.CC-BY-SA-3.0: New file.
+ * themes/starfield/README: Likewise.
+ * themes/starfield/blob_w.png: Likewise.
+ * themes/starfield/boot_menu_c.png: Likewise.
+ * themes/starfield/boot_menu_e.png: Likewise.
+ * themes/starfield/boot_menu_n.png: Likewise.
+ * themes/starfield/boot_menu_ne.png: Likewise.
+ * themes/starfield/boot_menu_nw.png: Likewise.
+ * themes/starfield/boot_menu_s.png: Likewise.
+ * themes/starfield/boot_menu_se.png: Likewise.
+ * themes/starfield/boot_menu_sw.png: Likewise.
+ * themes/starfield/boot_menu_w.png: Likewise.
+ * themes/starfield/slider_c.png: Likewise.
+ * themes/starfield/slider_n.png: Likewise.
+ * themes/starfield/slider_s.png: Likewise.
+ * themes/starfield/src/blob_nw.xcf: Likewise.
+ * themes/starfield/src/bootmenu/: Likewise.
+ * themes/starfield/src/bootmenu/center.xcf: Likewise.
+ * themes/starfield/src/bootmenu/corner.xcf: Likewise.
+ * themes/starfield/src/bootmenu/side.xcf: Likewise.
+ * themes/starfield/src/slider_c.xcf: Likewise.
+ * themes/starfield/src/slider_n.xcf: Likewise.
+ * themes/starfield/src/slider_s.xcf: Likewise.
+ * themes/starfield/src/terminalbox/: Likewise.
+ * themes/starfield/src/terminalbox/center.xcf: Likewise.
+ * themes/starfield/src/terminalbox/corner.xcf: Likewise.
+ * themes/starfield/src/terminalbox/side.xcf: Likewise.
+ * themes/starfield/starfield.png: Likewise.
+ * themes/starfield/terminal_box_c.png: Likewise.
+ * themes/starfield/terminal_box_e.png: Likewise.
+ * themes/starfield/terminal_box_n.png: Likewise.
+ * themes/starfield/terminal_box_ne.png: Likewise.
+ * themes/starfield/terminal_box_nw.png: Likewise.
+ * themes/starfield/terminal_box_s.png: Likewise.
+ * themes/starfield/terminal_box_se.png: Likewise.
+ * themes/starfield/terminal_box_sw.png: Likewise.
+ * themes/starfield/terminal_box_w.png: Likewise.
+ * themes/starfield/theme.txt: Likewise.
+
+2012-02-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/00_header.in: Add missing export theme.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c: Remove include of malloc.h since stdlib is
+ already included.
+ Reported by: Eren D.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (grubdatadir): Removed.
+ (Makefile.am): Move eveything grubdata to pkgdata.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c (get_sleep_type):
+ Remove unused variable.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/acpi.h (GRUB_ASCII_OPCODE): Add
+ GRUB_ACPI_OPCODE_STRING_CONST, GRUB_ACPI_OPCODE_BUFFER,
+ GRUB_ACPI_OPCODE_CREATE_WORD_FIELD
+ and GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD.
+ * grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Replace include of
+ i18n with gettext no-op.
+ (skip_data_ref_object): Support GRUB_ACPI_OPCODE_BUFFER and
+ GRUB_ACPI_OPCODE_STRING_CONST.
+ (get_sleep_type): Support GRUB_ACPI_OPCODE_CREATE_WORD_FIELD and
+ GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD. Add handling of unknown opcodes.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (libgrubmods.a): Add -Wno-error=logical-op
+ -Wno-error=missing-noreturn.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_read_block): Avoid <= in loop
+ condition to avoid possibly infinite loops.
+ * grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Likewise.
+ * grub-core/lib/xzembed/xz_dec_bcj.c (bcj_powerpc): Likewise.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (bidi_line_wrap): Avoid <= in loop
+ condition to avoid possibly infinite loops.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Add missing noreturn
+ on show_error.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk.c (grub_disk_write): Add missing const qualifier.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/corecmd.c (grub_core_cmd_ls): Add missing var init.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/bin2h.c (usage): Add missing attribute noreturn.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/testload.c (grub_cmd_testload): Fix overflow
+ if the size isn't divisible by 512.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make list_push and list_remove functions rather than inline functions
+ to decrease size and avoid aliasing violations.
+
+ * include/grub/list.h (grub_list_push): Move to ...
+ * grub-core/kern/list.c (grub_list_push): ... here. Don't inline.
+ * include/grub/list.h (grub_list_remove): Move to ...
+ * grub-core/kern/list.c (grub_list_remove): ... here. Don't inline.
+
+2012-02-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Disable for now -Wstack-protector, -Wunreachable-code
+ and -Wunused-result.
+
+2012-02-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (grub_cmd_deladdr): Fix index.
+ Reported by: Seth Goldberg
+
+2012-02-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -fno-builtin-gettext on host if NLS is disabled.
+
+2012-02-19 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub-mkconfig.in (GRUB_CMDLINE_GNUMACH): Export variable.
+ * util/grub.d/10_hurd.in: Include GRUB_CMDLINE_GNUMACH in gnumach
+ command line.
+ * docs/grub.texi (Simple configuration): Document
+ GRUB_CMDLINE_GNUMACH.
+
+2012-02-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/Makefile.common (platform_SCRIPTS): New variable.
+ (platform_PROGRAMS): Likewise.
+ * gentpl.py: Mark *,module and *.image for install.
+ * grub-core/gdb_grub.in: Add a notice of expected environment.
+ * grub-core/Makefile.core.def (gdb_grub): Mark for install.
+ (gmodule.pl): Likewise.
+
+2012-02-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace grub_checkkey with grub_getkey_noblock.
+
+ * grub-core/kern/term.c (grub_checkkey): Replaced with ...
+ (grub_getkey_noblock): ... this. All users updated.
+
+2012-02-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/console.c: Move to ...
+ * grub-core/term/emu/console.c: ...here.
+ (grub_ncurses_getkey): Fix return value if no key is detected.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/test.h (grub_unit_test_init): Add missing prototype.
+ (grub_unit_test_fini): Likewise.
+ * tests/lib/unit_test.c (main): Remove extra nested external prototype.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/test.h (GRUB_UNIT_TEST)
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_break): Clarify logic.
+ Better error handling.
+ (grub_script_return): Likewise.
+ * grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (__GNU_LIBRARY__): Avoid
+ rimplicit redifinition.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Internationalisation): Detail (lack of) collation in
+ GRUB.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Don't gettext prompt.
+ * grub-core/normal/main.c (grub_normal_read_line_real): Gettext
+ prompt here.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (zfs_fetch_nvlist): Mark unknown member here
+ as GRUB_ERR_BUG. Don't malloc if no device is available.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/terminfo.c (grub_terminfo_output_unregister):
+ Mark calling with invalid term as GRUB_ERR_BUG.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/tftp.c (tftp_receive): Silently discard too short
+ packets rather than raising an error.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/xnu.c (grub_xnu_writetree_toheap_real): Avoid set
+ in if.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/efi/appleloader.c (grub_cmd_appleloader): Move
+ diagnostic to dprintf.
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/corecmd.c (grub_core_cmd_ls): Handle error in parsing
+ device name.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (locate_attr): Avoid set in if.
+ (grub_ntfs_iterate_dir): Likewise.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Efiemu stylistic fixes and gettext.
+
+ * grub-core/efiemu/i386/loadcore32.c
+ (grub_arch_efiemu_relocate_symbols32): Avoid set in if.
+ * grub-core/efiemu/i386/loadcore64.c
+ (grub_arch_efiemu_relocate_symbols64): Likewise.
+ * grub-core/efiemu/i386/pc/cfgtables.c
+ (grub_machine_efiemu_init_tables): Likewise.
+ * grub-core/efiemu/loadcore.c (grub_efiemu_resolve_symbols): Likewise.
+ (grub_efiemu_loadcore_initXX): Add a filename argument.
+ All users updated.
+ Improved error message.
+ * grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_init):
+ Add a filename argument.
+ All users updated.
+ * grub-core/efiemu/symbols.c (grub_efiemu_set_virtual_address_map):
+ Reclassify double relocation as GRUB_ERR_BUG.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/play.c (grub_cmd_play): Improve error
+ handling.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hdparm.c (grub_cmd_hdparm): Allow running
+ on partition.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_error_save): Fix cleaning grub_errno.
+
+2012-02-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Improve string. Gettextize.
+
+2012-02-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Remove -Winline altogether and -Wmissing-prototypes on
+ utils.
+ * util/import_gcry.py: Add -Wno-strict-aliasing on checked modules.
+
+2012-02-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_print_partmap)
+ [GRUB_UTIL]: New function.
+ (insert_array) [GRUB_UTIL]: Store partmaps.
+ * include/grub/diskfilter.h (grub_diskfilter_pv) [GRUB_UTIL]: New member
+ partmaps.
+ (grub_diskfilter_print_partmap) [GRUB_UTIL]: New proto.
+ * util/grub-probe.c (probe_partmap): Call grub_diskfilter_print_partmap.
+ (probe_abstraction): Print diskfilter and not raid.
+ Reported by: Lennart Sorensen
+
+2012-02-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Explicitly init decompress_size.
+ * util/grub-mkimagexx.c (MASK3): New define.
+ (add_value_to_slot_20b): Use MASK3.
+ (add_value_to_slot_21): Likewise.
+ (relocate_addresses): Fix format specification.
+ (load_image): Explicitly init symtab_section.
+
+2012-02-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_find_root_devices_from_mountinfo): Fix types.
+ (grub_util_biosdisk_get_grub_dev): Fix format specification.
+
+2012-02-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/full.c (grub_arch_dl_get_tramp_got_size): Enable
+ on powerpc.
+ Reported by: Lennart Sorensen
+
+2012-02-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gentpl.py: Add missing license header.
+ * docs/grub.texi: Update copyright year.
+
+2012-02-10 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Source grub-mkconfig_lib from the build directory at build time.
+ Suggested by: Vladimir Serbinenko.
+
+ * gentpl.py (manpage): Set pkgdatadir to $(builddir) on help2man call.
+ * util/grub-install.in: Define pkgdatadir if not already set, and source
+ grub-mkconfig_lib from there.
+ * util/grub-kbdcomp.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Increase warning level.
+
+ * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-redundant-decls
+ -Wno-unreachable-code -Wno-conversion -Wno-old-style-definition.
+ * configure.ac (HOST_CFLAGS): Add bunch of -W arguments.
+ (TARGET_CFLAGS): Likewise.
+ (HOST_CFLAGS): Add -Werror unless --disable-werror is activated.
+ * grub-core/Makefile.core.def (decompressor_xz): Add
+ -Wno-unreachable-code.
+ (normal): Add -Wno-redundant-decls.
+ (xzio): Add -Wno-unreachable-code.
+ (lzopio): Add -Wno-redundant-decls -Wno-error.
+ * grub-core/commands/acpi.c: Add exception to -Wcast-align.
+ * grub-core/commands/lsacpi.c: Add exception to -Wcast-align.
+ * grub-core/gensymlist.sh: Add exception to -Wmissing-format-attribute.
+ * grub-core/kern/dl.c: Add exception to -Wcast-align.
+ * grub-core/kern/efi/efi.c (grub_efi_modules_addr): Likewise.
+ * grub-core/kern/i386/coreboot/init.c: Add exception to
+ -Wsuggest-attribute=noreturn.
+ * grub-core/kern/ia64/dl.c: Add exception to -Wcast-align.
+ * grub-core/kern/ia64/dl_helper.c: Likewise.
+ * grub-core/kern/mips/dl.c: Likewise.
+ * grub-core/kern/sparc64/dl.c: Likewise.
+ * grub-core/lib/LzmaEnc.c: Add exception to -Wshadow.
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy): Likewise.
+ (memcmp): Likewise.
+ * grub-core/lib/pbkdf2.c: Add exception to -Wunreachable-code.
+ * grub-core/loader/ia64/efi/linux.c: Add exception to -Wcast-align.
+ * grub-core/loader/mips/linux.c: Likewise.
+ * grub-core/loader/multiboot_elfxx.c: Likewise.
+ * grub-core/script/parser.y: Add exception to -Wunreachable-code.
+ * grub-core/video/sm712.c: Add exception to -Wcast-align.
+ * util/import_gcry.py: Add -Wno-cast-align to modules checked by hand.
+ * grub-core/font/font.c (grub_font_loader_init): Add explicit cast and
+ fixme.
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Likewise.
+ * grub-core/kern/i386/multiboot_mmap.c (grub_machine_mmap_init):
+ Fix prototype.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/relocator16.S: Fix incorrect use of absolute
+ address.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel):
+ Avoid improper use of strings.
+ (grub_cmd_legacy_initrdnounzip): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/misc.h (grub_util_warn): Add missing format
+ attribute.
+ (grub_util_info): Likewise.
+ (grub_util_error): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mount.c (fuse_init): Avoid improper use of strings.
+ * util/grub-fstest.c (fstest): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/geli.c (grub_md_sha256_real): Respect format security.
+ (grub_md_sha512_real): Likewise.
+ (grub_util_get_geli_uuid): Likewise.
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Likewise.
+ (grub_util_biosdisk_open): Fix format specification.
+ Respect format security.
+ * grub-core/kern/emu/misc.c (xmalloc): Respect format security.
+ (xrealloc): Likewise.
+ (xasprintf): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Include grub/crypto.h in init.c.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (compress_kernel_lzma): Respect format security.
+ (generate_image): Make prefix a const char *.
+ Fix format specifications. Respect format security.
+ Avoid void * arithmetics.
+ Avoid shadowing.
+ (argp_parser): Remove unused variable. Respect format security.
+ * util/grub-mkimagexx.c (relocate_symbols): Avoid shadowing.
+ (count_funcs) [!MKIMAGE_ELF64]: #if-out.
+ (count_funcs): Remove unused variable.
+ (relocate_addresses): Fix format specification.
+ Disable x86-64 with elf32. Remove unused variables.
+ (add_fixup_entry): Avoid shadowing.
+ (make_reloc_section): Fix format specification.
+ Use assert.
+ (locate_sections): Fix format specifications.
+ (load_image): Avoid shadowing.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Remove unused variable. Avoid shadowing.
+ Fix format specifications. Respect format security.
+ Don't translate already translated grub_errmsg.
+ (argp_parser): Remove unused variable
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrelpath.c (argp_parser): Remove unused variable.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (argp_parser): Remove unused variable.
+ (main): Likewise. Use xmalloc. Respect format security.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mklayout.c (console_grub_equivalence): Make "layout"
+ a const char *.
+ (argp_parser): Remove unused variable.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (grub_font_info): Make name a const char *.
+ (add_pixel): Make static.
+ (add_font): Likewise.
+ (write_string_section): Make name and str a const char *.
+ (write_be16_section): Make name a const char *.
+ (print_glyphs): Make static.
+ (write_font_ascii_bitmap): Likewise.
+ (write_font_width_spec): Likewise.
+ (write_font_pf2): Likewise.
+ (argp_parser): Remove unused variable.
+ Respect format security.
+ (main): Avoid shadowing. Respect format security.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-editenv.c (argp_parser): Make static.
+ (create_envblk_file): Use xmalloc.
+ (open_envblk_file): Likewise.
+ Resepect format security.
+ (set_variables): Respect format security.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_find_device): Respect format security.
+ (get_mdadm_uuid): Remove unused variable.
+ (grub_util_pull_device): Dont call gettext on already translated
+ grub_errmsg.
+ (find_system_device): Remove unused variable.
+ (grub_util_get_grub_dev): Likewise.
+ (grub_make_system_path_relative_to_its_root): Respect format security.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (execute_command): Make first argument
+ a const char *.
+ (read_file): Avoid shadowing.
+ Reuse underlying error message if device open fails.
+ (cmd_cmp): Respect format security.
+ (root): Make const char *.
+ (fstest): Remove args argument and use global copy.
+ Respect format security.
+ (argp_parser): Make static.
+ (main): Make default_root const char *.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mount.c (root): Make const char *.
+ (execute_command): Make first argument a const char *.
+ (fuse_init): Respect format security.
+ (argp_parser): Make static. Remove unused variable.
+ (main): Make default_root a const char *.
+ Respect format security.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-probe.c (probe): Don't call gettext on already translated
+ grub_errmsg.
+ Remove unused variables.
+ (argp_parser): Remove unused variable.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-script-check.c (argp_parser): Remove unused variable.
+ (main): Rename read to curread to avoid shadowing.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c (grub_util_write_image_at): Fix format specification.
+ (grub_util_write_image): Likewise.
+ (grub_script_execute_argument_to_string): Removed (unused).
+ (grub_script_execute_menuentry): Likewise.
+ (grub_putchar): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/symbol.h (EXT_C) [GRUB_UTIL]: Removed.
+ (FUNCTION) [GRUB_UTIL]: Likewise.
+ (VARIABLE) [GRUB_UTIL]: Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h: Avoid evaluationg NEED_ENABLE_EXECUTE_STACK and
+ NEED_REGISTER_FRAME_INFO in GRUB_UTIL.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/bsdlabel.c (iterate_real): Fix freeing of static
+ buffer.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/LzmaEnc.c (LzmaEnc_FastPosInit): Made static.
+ (LzmaEnc_SaveState): Removed (unused).
+ (LzmaEnc_RestoreState): Likewise.
+ (LzmaEnc_InitPriceTables): Made static.
+ (LzmaEnc_Construct): Likewise.
+ (LzmaEnc_FreeLits): Likewise.
+ (LzmaEnc_Destruct): Likewise.
+ (LzmaEnc_Init): Likewise.
+ (LzmaEnc_InitPrices): Likewise.
+ (LzmaEnc_Finish): Likewise.
+ (LzmaEnc_PrepareForLzma2): Removed (unused).
+ (LzmaEnc_MemPrepare): Likewise.
+ (LzmaEnc_GetNumAvailableBytes): Likewise.
+ (LzmaEnc_GetCurBuf): Likewise.
+ (LzmaEnc_CodeOneMemBlock): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ldm.c (grub_util_get_ldm): Remove unused variables.
+ (grub_util_ldm_embed): Likewise.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-editenv.c (print_var): Rename name to varname to
+ avoid shadowing.
+ (main): Rename index to curindex to avoid shadowing.
+ Make filename a const char *.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/lexer.c (grub_script_lexer_init): Rename getline
+ to arg_getline to avoid shadowing.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/gpt.c (gpt_partition_map_embed): Rename disk to
+ disk_ to avoid shadowing.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/LzFind.c (MatchFinder_GetIndexByte): Rename index to
+ curindex to avoid shadowing.
+ Make static.
+ (MatchFinder_GetNumAvailableBytes): Make static.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (direct_read): Rename read to curread to
+ avoid shadowing.
+
+2012-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/cryptodisk.c (grub_cryptodisk_endecrypt): Rename
+ argument from encrypt to do_encrypt to avoid shadowing.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elf): Fix
+ incorrect nesting of #if's.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): #if'-out the
+ checks which are always false on some platforms.
+ (grub_cmd_lsacpi): Likewise.
+ * grub-core/kern/misc.c (grub_strtoul): Likewise.
+ * grub-core/loader/multiboot.c (grub_multiboot_set_video_mode):
+ Likewise.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/diskfilter.c (read_segment): Renome unreachable code.
+ * grub-core/net/ip.c (grub_net_recv_ip4_packets): Likewise.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/regex.h (re_pattern_buffer): Declare buffer as
+ re_dfa_t to avoid breaking alignment invariants.
+ * grub-core/gnulib/regex_internal.h (re_dfa_t): Moved to ...
+ * grub-core/gnulib/regex.h (re_dfa_t): ... here.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix printf.
+ * grub-core/loader/ia64/efi/linux.c (grub_cmd_fpswa): Likewise.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init):
+ Fix declaration.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/ehci.c (grub_ehci_ehcc_read32): Restructure to
+ conserve alignment invariants.
+ (grub_ehci_ehcc_read16): Likewise.
+ (grub_ehci_oper_read32): Likewise.
+ (grub_ehci_oper_write32): Likewise.
+ (grub_ehci_pci_iter) [!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
+ Conserve alignment invariants.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/full.c (grub_emu_post_init): Remove raid reinit.
+ * include/grub/disk.h [GRUB_MACHINE_EMU]: Remove now useless LVM/RAID
+ declarations.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostfs.c (grub_hostfs_close):
+ Remove unused variable.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_load):
+ Remove set in if.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/net.h: Remove double declarations.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove "payload" command in ia64 Linux loader since I couldn't
+ find any evidence of it being used for anything.
+ Replace "relocate" command with an environment variable
+
+ * grub-core/loader/ia64/efi/linux.c (ia64_boot_param): Remove extra
+ fields.
+ (ia64_boot_payload): Removed.
+ (last_payload): Likewise.
+ (RELOCATE_OFF): Likewise.
+ (RELOCATE_ON): Likewise.
+ (RELOCATE_FORCE): Likewise.
+ (relocate): Likewise.
+ (free_pages): Don't free payloads.
+ (grub_load_elf64): Use common error messages.
+ Use "linux_relocate" variable.
+ Increase the space after boot_params.
+ (grub_cmd_payload): Removed.
+ (grub_cmd_relocate): Likewise.
+ (grub_cmd_fpswa): Improve messages.
+ (cmd_payload): Removed.
+ (cmd_relocate): Likewise.
+ (GRUB_MOD_INIT): Don't register "payload" and "relocate".
+ (GRUB_MOD_FINI): Don't unregister "payload" and "relocate".
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Convert UHCI to DMA framework.
+
+ * grub-core/bus/usb/uhci.c (grub_uhci): Add chunk and phys members.
+ (grub_uhci_pci_iter): Fill new members
+ (grub_alloc_td): Use P2V and V2P functions.
+ (grub_free_queue): Likewise.
+ (grub_alloc_qh): Likewise.
+ (grub_uhci_setup_transfer): Likewise.
+ (grub_uhci_check_transfer): Likewise.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/colors.c (grub_video_parse_color): Fix error message.
+ Remove assignment in if while on it.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkstandalone.in: Fix modules directory.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (image_targets): Set default_compression to lzma
+ on i386-pc target.
+ (argp_parser): Accept "auto" as compression specification.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix `help' with unloaded modules.
+
+ * include/grub/normal.h (grub_dyncmd_get_cmd): New proto.
+ * grub-core/normal/dyncmd.c (grub_dyncmd_get_cmd): New function.
+ (grub_dyncmd_dispatcher): Small stylistic fix.
+ * grub-core/commands/help.c (grub_cmd_help): Load missing modules when
+ explicit help is requested.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cpio.c (grub_cpio_dir): Fix a bug with multiple listing.
+ Explicitly init restart while on it.
+
+2012-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/wchar.h (mbrtowc): Set pwc to zero to avoid
+ uninited variable.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mknetdir.in: Use . rather than source for POSIX
+ compatibility.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-probe.c (main): Fix trailing space in compatibility hint.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/partition.c (grub_partition_get_name): Fix uninited
+ variable.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hdparm.c (grub_cmd_hdparm): Accept device name
+ without quotes.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (GRUB_MOD_INIT): Don't register netfs.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/partition.c (grub_partition_get_name): Fix reverse
+ iteration of partitions.
+
+2012-02-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Improve gettext support. Stylistic fixes and error handling fixes while
+ on it.
+
+2012-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/relocator16.S: Revert moving A20 code into PM
+ part. Instead setup the correct stack in RM.
+ * grub-core/lib/i386/relocator.c (grub_relocator16_boot): Reserve place
+ for stack.
+ * include/grub/i386/relocator_private.h: New file.
+
+2012-02-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/minicmd.c (GRUB_MOD_INIT): Add missing SIZE
+ argument.
+ * util/grub-fstest.c (options): Add missing DEVICE part.
+
+2012-02-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Clarify and unify messages.
+
+ * grub-core/commands/hashsum.c (options): Unify messages.
+ * grub-core/commands/keystatus.c (GRUB_MOD_INIT): Don't mark a
+ literal-only message as translatable.
+ * grub-core/commands/lsacpi.c (GRUB_MOD_INIT): Likewise.
+ * grub-core/loader/ia64/efi/linux.c (GRUB_MOD_INIT): Likewise.
+ * grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Add quoting around
+ commands.
+ * grub-core/commands/menuentry.c (options): Clarify that it's a keyboard
+ key, not the key used to unlock. Clarify what it's used for.
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Unify error message.
+ * grub-core/loader/xnu.c (grub_xnu_load_driver): Remove erroneous colon.
+ * grub-core/script/main.c (GRUB_MOD_INIT): Clarify [n] to be [NUM].
+ * util/grub-editenv.c (options): Unify "verbose" message.
+ * util/grub-fstest.c (read_file): Unify error message.
+ (fstest): Add quotes around commands.
+ (options): Unify "verbose" message.
+ * util/grub-install.in: Add quotes around variable name.
+ * util/grub-kbdcomp.in: Unify error message.
+ * util/grub-mkfont.c (main): Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mklayout.c (options): Unify "verbose" message.
+ * util/grub-mkstandalone.in: Unify help and verbose messages.
+ * util/grub-mount.c (options): Unify "verbose" message.
+ * util/grub-probe.c (options): Likewise.
+ * util/grub-script-check.c (options): Likewise.
+ * util/grub-setup.c (setup): Unify no-terminator message.
+ (options): Use DEVICE and not DEV.
+ Unify "verbose" message.
+ * util/ieee1275/ofpath.c (xrealpath): Unify error message.
+
+2012-02-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Improve and unify messages.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Add argument
+ name. All users updated.
+ Print filename in error.
+ (read_device_map): Print filename in error.
+ * util/getroot.c (grub_guess_root_devices): Print filename in error.
+ (grub_util_get_os_disk): Likewise.
+ (grub_util_biosdisk_get_grub_dev): Likewise.
+ (grub_util_check_block_device): Likewise.
+ (grub_util_check_char_device): Likewise.
+ (grub_make_system_path_relative_to_its_root): Likewise.
+ * util/grub-editenv.c (create_envblk_file): Likewise.
+ (open_envblk_file): Likewise.
+ (write_envblk): Likewise.
+ * util/grub-fstest.c (cmd_cp): Likewise.
+ (cmd_cat): Likewise.
+ (cmd_cmp): Likewise.
+ * util/grub-menulst2cfg.c (main): Likewise.
+ * util/grub-mkfont.c (write_font_ascii_bitmap): Likewise.
+ (write_font_width_spec): Likewise.
+ (write_font_pf2): Likewise.
+ * util/grub-mkimage.c (generate_image): New argument outname.
+ All users updated.
+ Remove unreacheable message.
+ (options): Unify messages.
+ (help_filter): Likewise.
+ * util/grub-mklayout.c (usage): Removed (unused).
+ (main): Print filename in error.
+ * util/grub-mkrescue.in: Fix wrong quoting.
+ * util/grub-setup.c (setup): Print filename in error.
+ * util/ieee1275/ofpath.c (vendor_is_ATA): Likewise.
+ (check_sas): Likewise.
+ * util/misc.c (grub_util_get_fp_size): Removed.
+ (grub_util_get_image_size): Print filename in error.
+ (grub_util_read_at): Removed.
+ (grub_util_read_image): Print filename in error.
+ (grub_util_load_image): Likewise.
+ (grub_util_write_image_at): New argument filename. All users updated.
+ Print filename in error.
+ (grub_util_write_image): New argument filename. All users updated.
+ Print filename in error.
+ * util/raid.c (grub_util_raid_getmembers): Print filename in error.
+ * util/resolve.c (grub_util_resolve_dependencies): Likewise.
+
+2012-02-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (pxechain): New module.
+ * grub-core/loader/i386/pc/pxechainloader.c: New file.
+ * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_get_cached): New
+ function.
+ (grub_pc_net_config_real): Use grub_pxe_get_cached.
+ * include/grub/i386/pc/pxe.h (grub_pxe_get_cached): New proto.
+
+2012-02-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/err.c (GRUB_MAX_ERRMSG): Move to ...
+ * include/grub/err.h (GRUB_MAX_ERRMSG): ... here.
+ * include/grub/err.h (grub_error_saved): New struct.
+ (grub_errmsg): Make array size explicit.
+ * include/grub/misc.h (grub_error_save): New function.
+ (grub_error_load): Likewise.
+ * grub-core/kern/err.c (grub_error_stack_items): Use grub_error_saved.
+ (grub_error_push): Update `errno' member name.
+ (grub_error_pop): Likewise
+ * grub-core/net/tftp.c (tftp_data): New member save_err.
+ (tftp_receive): Save error.
+ (tftp_open): Restore error.
+
+2012-02-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move switch
+ to real mode down to execute A20-related code in protected mode as
+ intended.
+
+2012-02-05 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Return
+ NULL when the argument `level' has an unexpected value.
+
+2012-02-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move platform-dependent files from $prefix to $prefix/$platform.
+
+ * config.h.in (GRUB_TARGET_CPU): New definition.
+ (GRUB_PLATFORM): Likewise.
+ * configure.ac: Define GRUB_TARGET_CPU and GRUB_PLATFORM.
+ * grub-core/commands/parttool.c (grub_cmd_parttool): Update dir.
+ * grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
+ * grub-core/kern/dl.c (grub_dl_load): Likewise.
+ * grub-core/normal/autofs.c (read_fs_list): Likewise.
+ * grub-core/normal/crypto.c (read_crypto_list): Likewise.
+ * grub-core/normal/dyncmd.c (read_command_list): Likewise.
+ * grub-core/normal/term.c (read_terminal_list): Likewise.
+ * grub-core/gettext/gettext.c (grub_mofile_open_lang): Use
+ $prefix/locale.
+ (grub_gettext_init_ext): Likewise.
+ * grub-core/normal/main.c (GRUB_MOD_INIT): Define grub_cpu and
+ grub_platform.
+ * util/grub-install.in: Update directories.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+
+2012-02-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_claimmap): Change to
+ grub_error framework. All users updated.
+
+2012-02-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c: Mostly rewritten to avoid using
+ lists (by always binsearching), improve caching (cache strings
+ used for binsearch, not only results), improve
+ maintainability (by using more structured binary search) and correct
+ error handling.
+
+2012-02-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_return): Fix warning.
+
+2012-02-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_return): Fix potential
+ NULL-dereference.
+ Reported by: Jim Meyering.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+ * util/grub-install.in: Gettextize the strings missed in first pass.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-mkdevicemap): Removed.
+ * include/grub/emu/hostdisk.h (grub_util_get_os_disk): New proto.
+ * include/grub/util/deviceiter.h: Removed.
+ * util/deviceiter.c: Likewise.
+ * util/getroot.c (grub_util_get_os_disk): New function.
+ * util/grub-install.in: Remove grub-mkdevicemap. Use -t disk as
+ replacement for EFI.
+ * util/grub-mkdevicemap.c: Removed.
+ * util/grub-probe.c (probe): Handle PRINT_DISK.
+ (argp_parser): Handle -t disk.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c: Migrate to argp.
+ * util/grub-mklayout.c: Likewise.
+ * util/grub-mkpasswd-pbkdf2.c: Likewise.
+ * util/grub-mkrelpath.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/grub-script-check.c: Likewise.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-reboot.in: Add missing datarootdir.
+ Add missing newline.
+ * util/grub-set-default.in: Add missing datarootdir.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Add missing newline.
+ * util/grub-mkrescue.in: Likewise.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Fix TRANSLATORS comment.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-kbdcomp.in: Add decent help and gettextize.
+ * docs/man/grub-kbdcomp.h2m: New file.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Migrate grub-mkimage.c to argp.
+
+ * Makefile.util.def (grub-mkimage): Add util/argp_common.c.
+ (grub-setup): Likewise.
+ * util/grub-setup.c (print_version): Move to ...
+ * util/argp_common.c (print_version): ... here.
+ * util/grub-setup.c (argp_program_version_hook): Move to ...
+ * util/argp_common.c (argp_program_version_hook): ... here.
+ * util/grub-setup.c (argp_parser): Add exit (1) on fatal error for
+ safety.
+ * util/grub-mkimage.c (main): Migrate to argp.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Use same message as
+ util/powerpc/ieee1275/grub-mkrescue.in with %s in place of command
+ for better translations.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/powerpc/ieee1275/grub-mkrescue.in: Gettextize. Unify the command
+ options with generic grub-mkrescue.in with the goal of future
+ merge.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mm.c: Add missing include of i18n.h
+ * grub-core/lib/relocator.c: Likewise.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/ia64/efi/linux.c (find_mmap_size): Replace fatal with
+ error.
+ (allocate_pages): Check return value.
+ Replace fatal with error.
+ (grub_linux_boot): Replace printf with dprintf.
+ Check find_mmap_size return value.
+ Replace fatal with error.
+ Don't call grub_machine_fini.
+ (grub_load_elf64): Replace printf with dprintf.
+ (grub_cmd_linux): Likewise.
+ (grub_cmd_initrd): Likewise.
+ (grub_cmd_payload): Likewise.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (grub_cmd_devprop_load): Fix error
+ message.
+ * grub-core/video/radeon_fuloong2e.c
+ (grub_video_radeon_fuloong2e_setup): Likewise.
+ * grub-core/video/sis315pro.c (grub_video_sis315pro_setup): Likewise.
+ * grub-core/video/video.c (grub_video_set_mode): Don't override
+ standard out of memory message.
+
+2012-02-03 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ NetBSD disk wedge support.
+
+ * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start)
+ [__NetBSD__]: Handle NetBSD disk wedges.
+ * util/getroot.c (convert_system_partition_to_system_disk)
+ [__NetBSD__]: Likewise.
+
+2012-02-03 Mark Wooding <mdw@distorted.org.uk>
+
+ * util/grub-mkconfig.in: Use umask rather than chmod to create
+ grub.cfg.new to avoid insecure grub.cfg.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/ls.c: Gettextize.
+ * grub-core/commands/setpci.c: Likewise.
+ * grub-core/commands/videotest.c: Likewise.
+ * grub-core/disk/geli.c: Likewise.
+ * grub-core/kern/mm.c: Likewise.
+ * grub-core/lib/relocator.c: Likewise.
+ * grub-core/loader/efi/appleloader.c: Likewise.
+ * grub-core/loader/i386/xnu.c: Likewise.
+ * grub-core/loader/ia64/efi/linux.c: Likewise.
+ * grub-core/loader/xnu.c: Likewise.
+ * grub-core/net/dns.c: Likewise.
+ * grub-core/net/net.c: Likewise.
+ * grub-core/script/lexer.c: Likewise.
+ * grub-core/script/parser.y: Likewise.
+ * grub-core/script/yylex.l: Likewise.
+ * util/getroot.c: Likewise.
+ * util/grub-setup.c: Likewise.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_get_item): Use proper error
+ number.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ldm.c (grub_util_ldm_embed): Correct error message.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/search_file.c (SEARCH_TARGET): Remove obsolete
+ macro.
+ * grub-core/commands/search_label.c (SEARCH_TARGET): Likewise.
+ * grub-core/commands/search_uuid.c (SEARCH_TARGET): Likewise.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkstandalone.in: Fix help messages. Gettextize.
+ * util/grub-install.in: Gettextize.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mkconfig_lib.in: Replace gettext with echo -n and not echo
+ if not available.
+ (grub_warn): Gettextize.
+ * util/grub-mknetdir.in: Gettextize.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+ * po/POTFILES-shell.in: Regenerate.
+
+2012-02-03 Richard Laager <rlaager@wiktel.com>
+
+ * util/grub-mkimage.c (main): Fix format-security warning.
+ * util/grub-mkrelpath.c (main): Likewise.
+ * util/grub-probe.c (main): Likewise.
+
+2012-02-03 Richard Laager <rlaager@wiktel.com>
+
+ * util/grub-probe.c (probe): Don't crash on canonicalize_file_name
+ failure.
+ Put back lost PRINT_DRIVE.
+
+2012-02-03 Richard Laager <rlaager@wiktel.com>
+
+ * util/getroot.c (find_root_devices_from_libzfs): Fix compilation error.
+ (grub_guess_root_devices): Replace strlen with sizeof.
+ Avoid crash.
+ (find_root_devices_from_poolname): Remove unused variable.
+ Handle raidzN.
+
+2012-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support install on multi-device filesystems.
+
+ * include/grub/emu/getroot.h (grub_guess_root_device): Renamed to ...
+ (grub_guess_root_devices): ...this. Return char **. All users updated.
+ * include/grub/emu/misc.h (grub_find_root_device_from_mountinfo):
+ Removed.
+ * util/getroot.c (find_root_device_from_libzfs): Moved pool logic to ...
+ (find_root_devices_from_poolname): ... here.
+ (grub_find_root_devices_from_mountinfo): Return char **. Make static.
+ Support zfs-fuse.
+ (grub_guess_root_device): Rename to ...
+ (grub_guess_root_devices): ... this. Return char **. All users updated.
+ * util/grub-install.in: Handle multi-device filesystems.
+ * util/grub-probe.c (probe). Make device_names a char **. Add delim
+ argument. All users updated.
+ Handle multi-device filesystems.
+ Use 'delim' as separator.
+ Remove device check to allow filesystems on file.
+ (main): Support -0 argument. Handle multi-device.
+ * util/grub-setup.c (setup): Remove root argument. Handle multi-device.
+ Fix a cross-device check while on it.
+ (arguments): Remove root_dev.
+ (argp_parser): Remove -r.
+ (main): Remove root_dev.
+
+2012-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfscrypt.c: Add link to documentation.
+
+2012-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videotest.c (grub_cmd_videotest): Fix subset
+ symbol.
+ Reported by: NODA, Kai <nodakai>.
+
+2012-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ehci on amd64.
+
+ * grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): Use %p to print
+ pointers.
+ * grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Likewise.
+ (grub_ehci_setup_qh): Likewise.
+ (grub_ehci_find_qh): Likewise.
+ (grub_ehci_transaction): Likewise.
+ (grub_ehci_setup_transfer): Likewise.
+ (grub_ehci_check_transfer): Likewise.
+ (grub_ehci_portstatus): Likewise.
+ (grub_ehci_detect_dev): Likewise.
+ (grub_ehci_transfer_controller_data): New field td_last_phys.
+ (grub_ehci_setup_transfer): Fill td_last_phys.
+ (grub_ehci_check_transfer): Use td_last_phys.
+
+2012-02-01 Seth Goldberg <seth.goldberg@oracle.com>
+
+ * grub-core/normal/context.c (grub_env_extractor_close): Don't crash
+ if no submenu is present.
+
+2012-02-01 Aleš Nesrsta <starous@volny.cz>
+
+ CBI support.
+
+ * include/grub/usb.h (grub_usbms_protocol_t): New values
+ GRUB_USBMS_PROTOCOL_CB and GRUB_USBMS_PROTOCOL_CBI.
+ * grub-core/disk/usbms.c (GRUB_USBMS_CBI_CMD_SIZE): New define.
+ (GRUB_USBMS_CBI_ADSC_REQ): Likewise.
+ (grub_usbms_dev): Add subclass, protocol and intrpt.
+ Remove in_maxsz and out_maxsz.
+ (grub_usbms_reset): Rename to ...
+ (grub_usbms_bo_reset): .. this.
+ (grub_usbms_cbi_cmd): New function.
+ (grub_usbms_cbi_reset): Likewise.
+ (grub_usbms_reset): Likewise.
+ (grub_usbms_attach): Recognize cbi. Same subclass and protocol.
+ (grub_usbms_transfer): Rename to ...
+ (grub_usbms_transfer_bo): ... this.
+ (grub_usbms_transfer_cbi): Likewise.
+ (grub_usbms_transfer): Likewise.
+
+2012-02-01 Aleš Nesrsta <starous@volny.cz>
+2012-02-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ EHCI support. All of the credit goes to Aleš Nesrsta. I've just added
+ the support for the CS5536 modification thereos and few bugfixes.
+
+ * grub-core/Makefile.core.def (ehci): New module.
+ * grub-core/bus/usb/ehci.c: New file.
+ * grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): New arguments
+ port and hubaddr. All users updated.
+ Save port and hubaddr into dev structure.
+ * include/grub/cs5536.h (GRUB_CS5536_MSR_USB_BASE_SMI_ENABLE): New
+ define.
+ * include/grub/pci.h (grub_dma_phys2virt): New function.
+ (grub_dma_virt2phys): Likewise.
+ * include/grub/usb.h (grub_usb_device): New members port and hubaddr.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_mount) [!MODE_EXFAT]: Remove fstype
+ check as some mkfs implementations omit it.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Unicode): Mention identifier and space limitations.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_sblock): Make volname a char array.
+ Add new member volname2.
+ (grub_jfs_label): Use volname2 if available.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_super_block): Expand volume_name
+ over last_mounted as seen in image generated by mkfs.nilfs2.
+ (grub_nilfs2_label): Use sizeof for the size of s_volume_name.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_dir_entry) [MODE_EXFAT]: Expand label
+ to 15 UTF-16 characters as seen in FS generated by mkexfatfs.
+ (grub_fat_label) [MODE_EXFAT]: Use macros for size.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/romfs.c (grub_romfs_mount): Fix a bug with labels going
+ over the sector.
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (get_filesystem_dnode): Support space in
+ subvolume name (by removing a bogus and useless check).
+
+2012-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_label): Fix field size. Change to
+ sizeof while on it.
+
+2012-01-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/scsi.c (grub_scsi_read_capacity): Renamed to ...
+ (grub_scsi_read_capacity10): ... this.
+ (grub_scsi_read_capacity16): New function.
+ (grub_scsi_open): Use read_capacity16 if read_capacity10 returned
+ 0xffffffff.
+ Fix off-by-one error.
+ * include/grub/scsi.h (grub_scsi): Rename size to last_block and make it
+ 64-bit unsigned.
+ * include/grub/scsicmd.h (grub_scsi_read_capacity): Rename to ...
+ (grub_scsi_read_capacity10): ... this.
+ (grub_scsi_read_capacity_data): Rename to ...
+ (grub_scsi_read_capacity10_data): ... this. Rename size to last_block.
+ (grub_scsi_read_capacity16): New struct.
+ (grub_scsi_read_capacity16_data): Likewise.
+ (grub_scsi_cmd_t): Rename grub_scsi_cmd_read_capacity to
+ grub_scsi_cmd_read_capacity10.
+ New command grub_scsi_cmd_read_capacity16.
+
+2012-01-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ SCSI >2TiB support.
+
+ * grub-core/disk/scsi.c (grub_scsi_read16): New function.
+ (grub_scsi_write16): Likewise.
+ (grub_scsi_read): Use read16 when necessary.
+ (grub_scsi_write): Likewise.
+ * include/grub/scsicmd.h (grub_scsi_read16): New struct.
+ (grub_scsi_write16): Likewise.
+ (grub_scsi_cmd_t): Add READ16 and WRITE16.
+
+2012-01-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ SCSI write support (for usbms mainly).
+
+ * grub-core/disk/scsi.c (grub_scsi_write10): Uncomment. Make buffer
+ a const pointer.
+ (grub_scsi_write): Implement.
+ * include/grub/scsi.h (grub_scsi_dev): Make write buffer a const pointer
+
+2012-01-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/lzopio.c (uncompress_block): Fix use of incorrect
+ variable.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/string.h (memchr): New function.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/assert.h (assert_real): Replace grub_fatal
+ with grub_printf to avoid unnecessary fatal failure.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/limits.h (SHRT_MAX): New define.
+ (INT_MAX): Likewise.
+ * grub-core/lib/posix_wrap/stdio.h (snprintf): New function.
+ * grub-core/lib/posix_wrap/stdlib.h (abs): Likewise.
+ * grub-core/lib/posix_wrap/string.h (memcmp): Likewise.
+ (strcpy): Likewise.
+ (strstr): Likewise.
+ (strchr): Likewise.
+ (strncpy): Likewise.
+ (strcat): Likewise.
+ (strncat): Likewise.
+ (strcoll): Likewise.
+ * include/grub/types.h (GRUB_SHRT_MAX): New define.
+ (GRUB_INT_MAX): Likewise.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/regcomp.c (regerror): Don't use abort on
+ unexpected error.
+ (optimize_utf8): Likewise.
+ * grub-core/lib/posix_wrap/stdlib.h (abort): Removed.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/lnxboot.S: Use
+ GRUB_DECOMPRESSOR_MAX_DECOMPRESSOR_SIZE.
+ * grub-core/boot/i386/pc/startup_raw.S: Ensure about boot_dev
+ location.
+ * include/grub/offsets.h (GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE): New
+ definition.
+ (GRUB_DECOMPRESSOR_I386_PC_MAX_DECOMPRESSOR_SIZE): Likewise.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (grub_util_get_dm_node_linear_info): Fix memory leak.
+ * grub-core/disk/cryptodisk.c (cryptodisk_cleanup): Disable for
+ now to avoid double free.
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_dev): Rename to
+ hostdisk.
+ * include/grub/disk.h (grub_disk_dev_id): New id HOSTDISK.
+ * util/grub-probe.c (escape_of_path): Always return a new copy.
+ (print_full_name): Escape path.
+ (probe): Don't call grub_util_devname_to_ofpath on NULL.
+ Fix hints on abstractions.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device):
+ Don't add "root" line if no compatibility hont is available.
+ Suggested by: Seth Goldberg.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/ata.h (grub_ata): Add a new element maxbuffer.
+ * grub-core/disk/ata.c (grub_ata_readwrite): Limit to ata->maxbuffer.
+ * grub-core/disk/pata.c (grub_pata_open): Set ata->maxbuffer.
+ * grub-core/disk/ahci.c (grub_ahci_open): Likewise.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/zfs/dnode.h (DN_MIN_INDBLKSHIFT): Removed.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-pe2elf.c (ehdr): Make static.
+ (shdr): Likewise.
+ (num_sections): Likewise.
+ (offset): Likewise.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate ofpath limits and possible overflows.
+
+ * util/ieee1275/ofpath.c (grub_util_info) [STANDALONE]: New function.
+ (OF_PATH_MAX): Removed.
+ (MAX_DISK_CAT): New const.
+ (find_obppath): Use allocated rather than preallocated buffer.
+ Return result. Argument of_path removed. All users updated.
+ Add missing fdstat.
+ (xrealpath): New function.
+ (block_device_get_sysfs_path_and_link): Remove sysfs argument.
+ Allocate rather than use preallocated buffer. All users updated.
+ (__of_path_common): Use allocated rather than preallocatecd buffer.
+ Return result. Argument of_path removed. All users updated.
+ (vendor_is_ATA): Read only needed part form the file.
+ (check_sas): Allocate depending on contents rather than fixed.
+ (main) [STANDALONE]: Handle NULL result.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/completion.c (iterate_dev): Close the disk.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Cryptodisk write support.
+
+ * grub-core/disk/cryptodisk.c (grub_crypto_pcbc_encrypt): New function.
+ (grub_cryptodisk_decrypt): Moved logic to ...
+ (grub_cryptodisk_endecrypt): ...this. New argument "encrypt".
+ (grub_cryptodisk_write): Implement.
+ * grub-core/kern/emu/hostdisk.c (nwrite): Rename to ...
+ (grub_util_fd_write): ... this. Make global.
+ * include/grub/emu/hostdisk.h (grub_util_fd_write): New proto.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/list.h (grub_list_remove): Don't crash if element is
+ removed twice.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rename ofconsole to console.
+
+ * grub-core/commands/terminal.c (handle_command): Handle ofconsole
+ as sysnonym to console.
+ * grub-core/term/ieee1275/ofconsole.c: Renamed to ..
+ * grub-core/term/ieee1275/console.c: ... this. All users updated.
+ Rename grub_ofconsole_ to grub_console_. All users updated
+ (grub_console_term_output): Rename "ofconsole" to "console".
+ * grub-core/term/terminfo.c (grub_cmd_terminfo): Handle "ofconsole"
+ as "console".
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/pc/plan9.c (grub_cmd_plan9): Remove PXE
+ handling.
+ * include/grub/disk.h (grub_disk_dev_id): Remove obsolete
+ GRUB_DISK_DEVICE_UUID_ID, GRUB_DISK_DEVICE_PXE_ID and
+ GRUB_DISK_DEVICE_FILE_ID.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/partition.c (grub_partition_get_name): Simplify logic
+ and improve performance.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Fix
+ missing ieee1275/ prefix on whole disk.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/powerpc/ieee1275/util/biosdisk.h: Remove.
+ * include/grub/powerpc/ieee1275/biosdisk.h: Likewise.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cpio.c (handle_symlink): Fix a bug.
+
+2012-01-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge common RAID and LVM logic to an abstract diskfilter.
+ Add LDM support using the same framework.
+
+ * Makefile.util.def (libgrubkern): Add grub-core/disk/ldm.c,
+ grub-core/disk/diskfilter.c and grub-core/partmap/gpt.c.
+ (libgrubmods): Remove grub-core/disk/raid.c and
+ grub-core/partmap/gpt.c.
+ * grub-core/Makefile.core.def (ldm): New module.
+ (raid): Renamed to diskfilter. All users updated.
+ * grub-core/disk/raid.c: Moved to ...
+ * grub-core/disk/diskfilter.c: ... here.
+ * grub-core/disk/diskfilter.c: Rename grub_raid_ to grub_diskfilter_.
+ (lv_num): New var.
+ (find_array): Renamed to ...
+ (find_lv): ... this. Support multi-LV. Skip nameless LVs
+ (grub_is_array_readable): Renamed to ...
+ (grub_is_lv_readable): ... this. Support multinode hierarchy.
+ (insert_array): New argument id.
+ (is_node_readable): New function.
+ (scan_device): Rename to ...
+ (scan_disk): .. this. Restrict to one disk.
+ (scan_devices): New function.
+ (grub_diskfilter_iterate): Support multi-LV.
+ Skip invisible and nameless LVs.
+ (grub_diskfilter_memberlist): Support multi-LV.
+ (grub_diskfilter_read_node): New function.
+ (grub_raid_read): Most of logic moved to ...
+ (read_segment): ... here
+ (read_lv): New function.
+ (grub_diskfilter_get_vg_by_uuid): New function.
+ (grub_diskfilter_make_raid): Likewise.
+ * grub-core/disk/ldm.c: New file.
+ * grub-core/disk/lvm.c (vg_list): Removed.
+ (lv_count): Likewise.
+ (scan_depth): Likewise.
+ (is_lv_readable): Likewise.
+ (grub_lvm_getvalue): Advance pointer past the number.
+ (find_lv): Removed.
+ (do_lvm_scan): Refactored into ...
+ (grub_lvm_detect): ... this. Support raid.
+ (grub_lvm_iterate): Removed.
+ (grub_lvm_memberlist): Likewise.
+ (grub_lvm_open): Likewise.
+ (grub_lvm_close): Likewise.
+ (read_lv): Likewise.
+ (read_node): Likewise.
+ (is_node_readable): Likewise.
+ (is_lv_readable): Likewise.
+ (grub_lvm_read): Likewise.
+ (grub_lvm_write): Likewise.
+ (grub_lvm_dev): Use diskfilter
+ (GRUB_MOD_INIT): Likewise.
+ (GRUB_MOD_FINI): Likewise.
+ * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Use
+ new interface.
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Likewise.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
+ * grub-core/disk/raid5_recover.c (grub_raid5_recover): Use
+ grub_diskfilter_read_node.
+ Fix a bug with xor.
+ * grub-core/disk/raid6_recover.c (grub_raid6_recover): Use
+ grub_diskfilter_read_node.
+ Support GRUB_RAID_LAYOUT_MUL_FROM_POS.
+ * grub-core/kern/disk.c (grub_disk_dev_list): Make global.
+ (grub_disk_dev_iterate): Move from here...
+ * include/grub/disk.h (grub_disk_dev_iterate): ... to here. Inlined.
+ * grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start):
+ Make global.
+ (grub_hostdisk_find_partition_start): Likewise.
+ (grub_hostdisk_os_dev_to_grub_drive): New function.
+ (grub_util_biosdisk_get_osdev): Check that disk is biosdisk.
+ * grub-core/kern/emu/hostdisk.c (make_device_name): Move to ...
+ * util/getroot.c (make_device_name): ... here.
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
+ Move to ...
+ * util/getroot.c (grub_util_get_dm_node_linear_info): ...here.
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Move to ...
+ * util/getroot.c (convert_system_partition_to_system_disk): ...here.
+ * grub-core/kern/emu/hostdisk.c (device_is_wholedisk): Move to ...
+ * util/getroot.c (device_is_wholedisk): ... here.
+ * grub-core/kern/emu/hostdisk.c (find_system_device): Move to ...
+ * util/getroot.c (find_system_device): ... here.
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_present):
+ Move to ...
+ * util/getroot.c (grub_util_biosdisk_is_present): ...here.
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
+ Move to ...
+ * util/getroot.c (grub_util_biosdisk_get_grub_dev): ... here.
+ Handle LDM.
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy):
+ Move to ...
+ * util/getroot.c (grub_util_biosdisk_is_floppy): ... here.
+ * grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Made global.
+ * include/grub/disk.h (grub_disk_dev_id): Replaced RAID and LVM with
+ DISKFILTER.
+ * include/grub/raid.h: Renamed to ...
+ * include/grub/diskfilter.h: ... this.
+ * include/grub/diskfilter.h: Rename grub_raid_* to grub_diskfilter_*
+ (GRUB_RAID_LAYOUT_*): Make into array.
+ (GRUB_RAID_LAYOUT_MUL_FROM_POS): New value.
+ (grub_diskfilter_vg): New struct.
+ (grub_diskfilter_pv_id): Likewise.
+ (grub_raid_member): Removed.
+ (grub_raid_array): Likewise.
+ (grub_diskfilter_pv): New struct.
+ (grub_diskfilter_lv): Likewise.
+ (grub_diskfilter_segment): Likewise.
+ (grub_diskfilter_node): Likewise.
+ (grub_diskfilter_get_vg_by_uuid): New proto.
+ (grub_raid_register): Inline.
+ (grub_diskfilter_unregister): Likewise.
+ (grub_diskfilter_make_raid): New proto.
+ (grub_diskfilter_vg_register): Likewise.
+ (grub_diskfilter_read_node): Likewise.
+ (grub_diskfilter_get_pv_from_disk) [GRUB_UTIL]: Likewise.
+ * include/grub/emu/hostdisk.h (grub_util_get_ldm): New proto.
+ (grub_util_is_ldm): Likewise.
+ (grub_util_ldm_embed) [GRUB_UTIL]: Likewise.
+ (grub_hostdisk_find_partition_start): Likewise.
+ (grub_hostdisk_os_dev_to_grub_drive): Likewise.
+ * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_LDM):
+ New definition.
+ (grub_gpt_partition_map_iterate): New proto.
+ * include/grub/lvm.h (grub_lvm_vg): Removed.
+ (grub_lvm_pv): Likewise.
+ (grub_lvm_lv): Likewise.
+ (grub_lvm_segment): Likewise.
+ (grub_lvm_node): Likewise.
+ * util/getroot.c [...]
+ * util/grub-probe.c (probe_raid_level): Handle diskfilter.
+ (probe_abstraction): Likewise.
+ * util/grub-setup.c (setup): Remove must_embed. Support LDM.
+ (main): Remove dead logic.
+
+2012-01-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Simplify root device discover and don't fail when trying to open
+ incorrect devices.
+
+ * grub-core/disk/efi/efidisk.c (get_diskname_from_path_real): New
+ function.
+ (get_diskname_from_path): Likewise.
+ (grub_efidisk_get_device_name): Use get_diskname_from_path instead
+ of iterating.
+
+2012-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (setpci): Enable on all PCI platforms.
+
+2012-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (nvlist_find_value): Check that we don't go
+ pastthe end.
+
+2012-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Add missing \.
+ Reported by: gentoofan
+
+2012-01-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (xz_decompress): Fix return value.
+ (direct_read): Use correct compressed size.
+ (grub_squash_read_data): Likewise.
+
+2012-01-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Platform limitations): New section.
+ (Platform-specific operations): Likewise.
+ * docs/grub-dev.texi (Porting): Likewise.
+
+2012-01-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ IEEE1275 disk write support.
+
+ * grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_write): Make buffer
+ const void *.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_write): Likewise.
+ * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_read): Move open
+ and seek loginc to ...
+ (grub_ofdisk_prepare): ... here.
+ (grub_ofdisk_write): Implement.
+
+2012-01-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ARC disk write support.
+
+ * grub-core/disk/arc/arcdisk.c (handle_writable): New var.
+ (reopen): New argument writable. All users updated.
+ Handle required access mode.
+ (grub_arcdisk_write): Implement.
+ * include/grub/arc/arc.h (grub_arc_file_access): New enum.
+ (grub_arc_firmware_vector): Make buffer to write a const buffer.
+
+2012-01-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_device): New field size.
+ (read_sblock): Don't attempt to read superblocks outside the disk size.
+
+2012-01-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Use device size from
+ first superblock to find the second one when possible.
+
+2012-01-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix an ARC bug.
+ Print a warning if no platform-specific setup is available.
+
+2012-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use static allocation rather than scratch pointer in reed_solomon.
+ It decreases its size significantly and avoids a variable in .text.
+
+ * grub-core/lib/reed_solomon.c (scratch): Removed.
+ (chosenstat): New const or static array.
+ (sigma): Likewise.
+ (errpot): Likewise.
+ (errpos): Likewise.
+ (sy): Likewise.
+ (mstat): Likewise.
+ (errvals): Likewise.
+ (eqstat): Likewise.
+ (pol_evaluate): Replace x with log_x argument. All users updated.
+ (syndroms): Removed.
+ (gauss_solve): Use statically allocated arrays.
+ (rs_recover): Likewise.
+ Calculate syndroms directly.
+ (decode_block): Use statically allocated arrays.
+ (grub_reed_solomon_add_redundancy) [TEST]: Fix -DTEST compilation.
+ (main) [TEST]: Allow -DTEST -DSTANDALONE.
+
+2012-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate fixed limit on reed solomon decoder length.
+
+ * grub-core/boot/i386/pc/lnxboot.S: Scan for multiboot signature
+ rather than hardcoding the address.
+ * grub-core/boot/i386/pc/startup_raw.S: Add new data field
+ no_reed_solomon_length.
+ Move gate_a20 to no-reed-solomon part.
+ Don't force a particular size of no reed-solomon part.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART):
+ Removed.
+ (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_LENGTH): New define.
+ * util/grub-setup.c (setup): Read no_rs_length from the image itself.
+
+2012-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (match_files): Handle filenames
+ without explicit device.
+ (wildcard_expand): Don't add explicit device if not already present.
+ * tests/grub_script_echo1.in: Add a new expansion test.
+
+2012-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace single-linked with double-linked lists. It results in more
+ compact and more efficient code.
+
+ * grub-core/kern/list.c (grub_list_push): Moved from here ...
+ * include/grub/list.h (grub_list_push): ... to here. Set prev.
+ (grub_list_remove): Moved from here ...
+ * include/grub/list.h (grub_list_remove): ... here. Use and set prev.
+ (grub_prio_list_insert): Set prev.
+ * include/grub/list.h (grub_list): Add prev. All users updated.
+
+2012-01-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle newer autotools. Add some missing quotes while on it.
+
+ * Makefile.am (pkglib_DATA): Remove update-grub_lib.
+ (pkglib_DATA): Move grub-mkconfig_lib from here ...
+ (pkgdata_DATA): ... here.
+ * Makefile.util.def (update-grub_lib): Removed.
+ * conf/Makefile.common (pkglib_DATA): Removed.
+ (pkglib_SCRIPTS): Likewise.
+ (pkgdata_DATA): New variable.
+ * tests/util/grub-shell-tester.in: Replace pkglib with pkgdata where
+ needed.
+ Add missing quotes.
+ Remove unused variable while on it.
+ * tests/util/grub-shell.in: Likewise.
+ * util/grub-install.in: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mknetdir.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-mkstandalone.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_illumos.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+ * util/update-grub_lib.in: Removed.
+
+2012-01-24 Seth Goldberg <seth.goldberg@oracle.com>
+
+ * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Relax checks as
+ a workaround for intel problem.
+
+2012-01-23 Paulo de Rezende Pinatti <ppinatti@linux.vnet.ibm.com>
+2012-01-23 Vladimir Serbinenko <phcoder@gmail.com>
+2012-01-23 pfsmorigo
+
+ * util/grub-install.in: Support dd'in into PreP partition.
+ * util/grub-probe.c (probe): Support discovering partition type.
+ (main): Support -t msdos_parttype.
+
+2012-01-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/crypto.c (grub_crypto_autoload): Prevent
+ infinite recursion using counter.
+ * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_init): Defer s->crc32
+ init to skip it if the magic check fails.
+ (dec_stream_header): Init s->crc32.
+
+2012-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+2012-01-22 Zachary Bedell <pendorbound@gmail.com>
+2012-01-22 Richard Laager <rlaager@wiktel.com>
+
+ * grub-core/fs/zfs/zfs.c (uberblock_verify): New parameter size.
+ All users updated.
+ (find_bestub): Determine correct size.
+ (fill_vdev_info_real): Fill ashift. New argument. All users updated.
+ (scan_disk): Align the size down.
+ Call check pool before find_bestub to have ashift.
+
+2012-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (malloc_in_range): Remove couple of
+ dprintf in no-malloc zone.
+
+2012-01-22 Mario Limonciello <mario_limonciello@dell.com>
+
+ * configure.ac: Add back in test for limits.h.
+
+2012-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support 4K-sector NTFS.
+
+ * include/grub/ntfs.h (GRUB_NTFS_MAX_MFT): Increase to 8.
+ (grub_ntfs_data): Remove blocksize.
+ * grub-core/fs/ntfs.c (fixup): Fix size comparison.
+ Remove data argument. All users updated.
+
+2012-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/arc/init.c (grub_total_modules_size): Mark as
+ being in .text to avoid dprel references.
+ * include/grub/mips/loongson/kernel.h (grub_arch_machine): Likewise.
+ * include/grub/mips/loongson/memory.h (grub_arch_memsize): Likewise.
+ (grub_arch_highmemsize): Likewise.
+ * include/grub/mips/loongson/time.h (grub_arch_busclock): Likewise.
+ * include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): Likewise.
+ * include/grub/mips/time.h (grub_arch_cpuclock): Likewise.
+
+2012-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support powerpc with GCC that defines __PPC__ but not __powerpc__.
+
+ * config.h.in (__powerpc__) [__PPC__ && !__powerpc__]: New definition.
+ * grub-core/lib/setjmp.S: Treat __PPC__ as equivalent to __powerpc__.
+
+2012-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/datetime.h (grub_get_datetime_cmos): Don't define in
+ GRUB_UTIL.
+ (grub_set_datetime_cmos): Likewise.
+
+2012-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make XZ compression parameters dependent on target and not host CPU.
+
+ * configure.ac: Define GRUB_TARGET_CPU_XYZ series.
+ * grub-core/lib/xzembed/xz_config.h: Use GRUB_TARGET_CPU_XYZ.
+
+2012-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): Remove
+ set but not used variable.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_uuid): Reject 0-uuid as
+ created when no uuid support is compiled into mkfs.reiser.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c (macroman_to_utf8): Convert / to :.
+ (utf8_to_macroman): Do the opposite.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_iterate_dir): Convert / to :.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Refise build qemu_mips w/o unifont.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate grub_min/grub_max prone to overflow usage.
+
+ * grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Eliminate grub_min.
+ (poll_nonroot_hub): Likewise.
+ * grub-core/fs/affs.c (grub_affs_iterate_dir): Likewise.
+ (grub_affs_label): Likewise.
+ * grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Likewise.
+ * grub-core/fs/hfs.c (grub_hfs_dir): Likewise.
+ (grub_hfs_label): Likewise.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise.
+ * grub-core/fs/zfs/zfs.c (MIN): Remove.
+ (zap_leaf_array_equal): Use grub_size. Remove MIN.
+ (zap_leaf_array_get): Likewise.
+ (dnode_get_path): Likewise.
+ * grub-core/io/lzopio.c (grub_lzopio_read): Eliminate grub_min.
+ * grub-core/io/xzio.c (grub_xzio_read): Likewise.
+ * grub-core/script/execute.c (grub_script_break): Likewise.
+ * grub-core/script/lexer.c (grub_script_lexer_record): Eliminate
+ grub_max.
+ * grub-core/script/yylex.l (grub_lexer_yyrealloc): Likewise.
+ * include/grub/misc.h (grub_min): Removed.
+ (grub_max): Likewise.
+
+2012-01-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * grub-core/fs/ext2.c (grub_ext2_iterate_dir): Ignore entries with
+ direct.inode = 0.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/wctype.h (CHARCLASS_NAME_MAX): New define.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/datetime.h (grub_datetime2unixtime): Fix offset.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/stdlib.h (MB_CUR_MAX): Moved from here ...
+ * grub-core/lib/posix_wrap/wchar.h (MB_CUR_MAX): ... here. Value fixed.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fshelp.c (grub_fshelp_find_file): Use grub_strcasecmp
+ rather than a hack for grub_strncasemap.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support multiple initrds
+ Note: part of this was accidently committed in r3739.
+
+ * grub-core/loader/i386/linux.c (grub_cmd_initrd): Support multiple
+ initrd.
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/ia64/efi/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Skip
+ disks with unknown size.
+ * grub-core/disk/raid.c (scan_devices): Allow disks with unknown sizes.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove defines pertaining to arbitrary limits not affecting GRUB
+ anymore.
+
+ * grub-core/fs/ext2.c (EXT2_PATH_MAX): Removed.
+ (EXT2_MAX_SYMLINKCNT): Likewise.
+ * grub-core/fs/nilfs2.c (NILFS_BTREE_LEVEL_MAX): Likewise.
+ * grub-core/net/tftp.c (TFTP_MAX_PACKET): Likewise.
+ * include/grub/i386/pc/pxe.h (GRUB_PXE_MIN_BLKSIZE): Likewise.
+ (GRUB_PXE_MAX_BLKSIZE): Likewise.
+ * include/grub/normal.h (GRUB_MAX_CMDLINE): Likewise.
+ * include/grub/zfs/dnode.h (DN_MAX_INDBLKSHIFT): Likewise.
+ (DN_MAX_OBJECT_SHIFT): Likewise.
+ (DN_MAX_OFFSET_SHIFT): Likewise.
+ (DN_MAX_OBJECT): Likewise.
+ (DNODES_PER_LEVEL_SHIFT): Likewise.
+ * include/grub/zfs/spa.h (SPA_MAXBLOCKSHIFT): Likewise.
+ (SPA_MAXBLOCKSIZE): Likewise.
+ (SPA_BLOCKSIZES): Likewise.
+ * include/grub/zfs/zap_impl.h (MZAP_MAX_BLKSHIFT): Likewise.
+ (MZAP_MAX_BLKSZ): Likewise.
+
+2012-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (grub_zfs_read): Remove useless alloc and
+ handle NULL appropriately.
+ Remove MIN.
+
+2012-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix efiemu.
+
+ * grub-core/efiemu/runtime/efiemu.c: explicitly include right
+ cpu/types.h.
+ (efiemu_set_virtual_address_map): Remove UINT_TO_PTR.
+ * configure.ac: Fix efiemu check.
+
+2012-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Fix occurence of grub-probe instead of
+ grub_probe.
+ Reported by: adamwill
+
+2012-01-12 Seth Goldberg <seth.goldberg@oracle.com>
+
+ * grub-core/lib/arg.c (grub_arg_parse): Fix NULL pointer dereference.
+
+2012-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of wide characters in gfxterm.
+
+ * grub-core/term/gfxterm.c (grub_colored_char): Remove width and index.
+ (clear_char): Likewise.
+ (paint_char): Skip code == NULL chars.
+ (grub_gfxterm_putchar): Set code = NULL on "shadowed" positions.
+
+2012-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c: Move comment to right place.
+
+2012-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_bblock): Revert flags.
+ (GRUB_AFFS_FLAG_FFS): Put back where it was.
+ (grub_affs_mount): Revert the correct version checking.
+
+2012-01-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Unicode): Mention several other unsupported features.
+
+2011-12-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (squash_mount): Mark endian conversion in
+ case statements as compile-time one.
+ (direct_read): Prevent spurious warnings.
+ (grub_squash_read_data): Likewise.
+
+2011-12-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Various squash4 fixes and LZO and XZ support.
+
+ * Makefile.util.def (libgrubmods.a): Add xzembed directory to cppflags.
+ Add xzembed source files.
+ * grub-core/Makefile.core.def (squash4): Add xzembed and minilzo flags.
+ * grub-core/fs/squash4.c (grub_squash_super): New field compression.
+ (grub_squash_inode): New subtype long_dir.
+ (SQUASH_TYPE_LONG_DIR): New inode type.
+ (COMPRESSION): New enum.
+ (XZBUFSIZ): New const.
+ (grub_squash_data): New fields blksz, decompress, xzdec, xzbuf.
+ (read_chunk): Use data->decompress.
+ (zlib_decompress): New function.
+ (lzo_decompress): Likewise.
+ (xz_decompress): Likewise.
+ (squash_mount): Set new data fields.
+ (grub_squash_iterate_dir): Handle long dir.
+ (squash_unmount): Free xzdec and xzbuf.
+ (grub_squash_open): Check ino type.
+ (direct_read): Stylistic fixes. Use data->decompress.
+ (grub_squash_read_data): Likewise.
+ * grub-core/io/gzio.c (grub_gzio): Remove disk_input.
+ (get_byte): Likewise.
+ (grub_zlib_disk_read): Removed.
+ * grub-core/lib/posix_wrap/sys/types.h (ssize_t): New type.
+ (GRUB_POSIX_BOOL_DEFINED): New define.
+ * grub-core/lib/posix_wrap/unistd.h: Include sys/types.h.
+ * grub-core/lib/xzembed/xz.h: Addmissing includes.
+ [!GRUB_POSIX_BOOL_DEFINED]: Define bool.
+ * include/grub/deflate.h (grub_zlib_disk_read): Removed.
+
+2011-12-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't override more informative errors.
+
+ * grub-core/commands/acpi.c (grub_cmd_acpi): Don't override errors.
+ * grub-core/font/font.c (open_section): Likewise.
+ * grub-core/loader/i386/bsd.c (grub_bsd_load_aout): New argument
+ filename. Don't override errors.
+ (grub_cmd_openbsd_ramdisk): Don't override errors.
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Likewise.
+ (grub_cmd_initrd): Likewise.
+ * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
+ (grub_cmd_initrd): Likewise.
+ * grub-core/loader/ia64/efi/linux.c (grub_load_elf64): Likewise.
+ (grub_cmd_linux): Likewise.
+ (grub_cmd_initrd): Likewise.
+ (grub_cmd_payload): Likewise.
+ * grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/multiboot.c (grub_cmd_multiboot): Likewise.
+ (grub_cmd_module): Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
+ * grub-core/loader/xnu.c (grub_xnu_load_driver): Likewise.
+ (grub_cmd_xnu_mkext): Likewise.
+ (grub_cmd_xnu_ramdisk): Likewise.
+ (grub_xnu_check_os_bundle_required): Likewise.
+ (grub_xnu_load_kext_from_dir): Likewise.
+ (grub_cmd_xnu_kextdir): Likewise.
+ * grub-core/loader/xnu_resume.c (grub_xnu_resume): Likewise.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/minix.c (grub_minix_mount) [MODE_MINIX3]: Treat 0xffff
+ as 1024 in block size field. Found on one of my test images.
+ Small optimisation while on it.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Filesystems): Mention SFS as Latin1 filesystem.
+ * grub-core/fs/sfs.c (grub_sfs_mount): Fix a memory leak while on it.
+ (grub_sfs_iterate_dir): Convert Latin1 to UTF8. Stylistic and
+ performance fixes while on it.
+ (grub_sfs_close): Fix memory leak while on it.
+ (grub_sfs_label): Convert Latin1 to UTF-8.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c (grub_hfs_dir): Cap keylen to actually available
+ space to avoid overflows.
+ (grub_hfs_label): Convert from macroman to UTF-8.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_label): Interpret label as latin1.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu.c (menu_init): Don't stop menu init at gfxterm.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * unicode: Import Unicode 6.0 data.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (grub_gfxterm_putchar): Don't set values
+ outside of range.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid cutting in the middle of UTF-8 character.
+
+ * include/grub/charset.h (grub_getend): New function.
+ * grub-core/script/function.c (grub_script_function_find): Use
+ grub_getend.
+ * grub-core/normal/completion.c (add_completion): Likewise.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (grub_ucs4_to_utf8): Small stylistic fix.
+ (grub_bidi_line_logical_to_visual): Skip tags. They are deprecated.
+ * include/grub/unicode.h (GRUB_UNICODE_TAG_START): New enum value.
+ (GRUB_UNICODE_TAG_END): Likewise.
+ (GRUB_UNICODE_LAST_VALID): Likewise.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/unicode.h (grub_unicode_compact_range): Replace end with
+ len and make it smaller. All users updated.
+ * util/import_unicode.py: Put length and not end character.
+ Check length.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make better Unicode-compliant and unify some UTF-8 code pathes.
+
+ * grub-core/normal/charset.c (grub_utf8_to_utf16): Don't eat possibly
+ valid character.
+ (grub_is_valid_utf8): Use grub_utf8_process.
+ Check resulting code range.
+ (grub_utf8_to_ucs4): Use grub_utf8_process.
+ * include/grub/charset.h (grub_utf16_to_utf8): Don't eat up a possibly
+ valid character.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/bufio.c (grub_bufio_read): Fix handling of corner cases.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Filesystems): Mention AFS.
+
+2011-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Filesystems): Clarify restrictions.
+ (Regexp): Mention non-Unicode regexp behaviour.
+ (Other): Mention non-Unicode matching behaviour.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make HFS implementation use MacRoman.
+
+ * grub-core/fs/hfs.c (MAX_UTF8_PER_MAC_ROMAN): New define.
+ (macroman): New const array.
+ (macroman_to_utf8): New function.
+ (utf8_to_macroman): Likewise.
+ (grub_hfs_find_dir): Use utf8_to_macroman.
+ (grub_hfs_dir): Use macroman_to_utf8.
+ Set case_insensitive.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Filesystems): Add IEEE1275 full-path example.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Integrate hints into autogeneration scripts.
+
+ * docs/grub.texi (Filesystems): Add a hostdisk example.
+ * Makefile.util.def (grub-mkdevicemap): Remove ofpath.
+ (grub-probe): Add ofpath.
+ * gentpl.py: Remove group nosparc64.
+ * grub-core/commands/search.c (cache_entry): New struct.
+ (cache): New var.
+ (FUNC_NAME): Use and save cache. Fix handling of trailing comma.
+ * grub-core/commands/search_wrap.c (options): Add platform-specific
+ hint options.
+ (grub_cmd_search): Handle platform-specific hints.
+ (GRUB_MOD_INIT): Declare grub_cmd_search as accept_dash.
+ * grub-core/kern/emu/hostdisk.c (map): New field device_map.
+ (grub_util_biosdisk_data): Likewise.
+ (grub_util_biosdisk_open): Set device_map.
+ (read_device_map): Handle "" as indication of no map.
+ Set device_map.
+ (find_system_device): Add hostdisk/ prefix for autogenerated entries.
+ (grub_util_biosdisk_get_compatibility_hint): New function.
+ * grub-core/normal/main.c (features): Add feature_platform_search_hint.
+ * include/grub/emu/hostdisk.h
+ (grub_util_biosdisk_get_compatibility_hint): New proto.
+ * util/grub-install.in: Don't call grub-mkdevicemap.
+ Add platform-specific hint to load.cfg.
+ * util/grub-mkconfig.in: Don't call grub-mkdevicemap.
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add
+ hints. Set root preliminary to compatibility hint, not to OS name.
+ * util/grub-probe.c (PRINT_*): Add hints.
+ (print): Make static.
+ (escape_of_path): New function.
+ (guess_bios_drive): Likewise.
+ (guess_efi_drive): Likewise.
+ (guess_baremetal_drive): Likewise.
+ (print_full_name): Likewise.
+ (probe): Handle hints.
+ (main): Likewise.
+ * util/ieee1275/devicemap.c: Removed.
+ * util/ieee1275/ofpath.c (find_obppath): Allow to fail. All users
+ updated.
+ (grub_util_devname_to_ofpath): Return NULL on failure.
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Fix
+ resource leak.
+ * util/getroot.c (grub_util_pull_device): Fix memory leak.
+
+ * po/POTFILES.in: Regenerated.
+
+ Allow purely long options
+
+ * grub-core/lib/arg.c (SHORT_ARG_HELP): Removed.
+ (SHORT_ARG_USAGE): Likewise.
+ (grub_arg_show_help): Compare opt with help_options.
+ (parse_option): Receive opt as argument. If makes big simplificatons.
+ All users updated
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN):
+ Restructure to avoid warning.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Account for possible escaped comma in device
+ name.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c (of_path_of_ide): Fix address for secondary
+ channel.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_devalias_iterate): Fix
+ allocation and zero-setting.
+ (grub_ieee1275_get_devname): Check that alias is complete.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk.c (grub_disk_read): Fix hook calling for
+ unaligned segments.
+
+2011-12-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Add ieee1275/
+ prefix.
+ (grub_ofdisk_open): Check and discard ieee1275 prefix.
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
+ Add ieee1275 prefix.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Filesystems): Update.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support odc, newc and bigendian cpio formats.
+
+ * Makefile.util.def (libgrubmods): Add odc.c, newc.c and cpio_be.c.
+ * grub-core/Makefile.core.def (newc): New module.
+ (odc): Likewise.
+ (cpio_be): Likewise.
+ * grub-core/fs/cpio.c (ALIGN_CPIO): New macro.
+ (MAGIC): Likewise.
+ (MAGIC2): Likewise.
+ (head) [MODE_ODC]: Adapt for the format.
+ (head) [MODE_NEWC]: Likewise.
+ (head) [!MODE_*]: Write fields of interest as arrays.
+ (MAGIC_USTAR): Removed.
+ (read_number) [MODE_NEWC]: Change to hex.
+ (read_number) [!MODE_*]: Parse binary arrays.
+ (grub_cpio_find_file): Factor out the code for better structure and
+ always use read_number.
+ (grub_cpio_mount): Use MAGIC and MAGIC2.
+ (grub_cpio_dir): Exit on first hook non-0 return.
+ (grub_cpio_fs) [MODE_ODC]: Set name to odc.
+ (grub_cpio_fs) [MODE_NEWC]: Set name to newc.
+ (GRUB_MOD_INIT) [MODE_ODC]: Set name to odc.
+ (GRUB_MOD_INIT) [MODE_NEWC]: Set name to newc.
+ (GRUB_MOD_FINI) [MODE_ODC]: Set name to odc.
+ (GRUB_MOD_FINI) [MODE_NEWC]: Set name to newc.
+ * grub-core/fs/newc.c: New file.
+ * grub-core/fs/odc.c: Likewise.
+ * grub-core/fs/cpio_be.c: Likewise.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of tar numbers occupying the whole field.
+
+ * grub-core/fs/cpio.c (read_number): New function.
+ (grub_cpio_find_file): Use read_number instead of strtoull.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cpio.c (grub_cpio_find_file): Fix handling of names
+ occupying the whole field size.
+
+2011-12-23 Lukas Anzinger <l.anzinger@gmail.com>
+
+ * util/grub-mkconfig_lib.in (version_test_gt): Fix variable names.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/net.c (grub_cmd_delroute): Add missing out condition.
+
+2011-12-23 Seth Goldberg <seth.goldberg@oracle.com>
+
+ * grub-core/Makefile.core.def (lzma_decompress): Add missing
+ TARGET_IMG_LDFLAGS.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/getroot.c (ESCAPED_PATH_MAX): New define.
+ (mountinfo_entry): Increase the field size to take escaping into
+ account.
+ (find_root_device_from_libzfs): Add one byte to size of strings for
+ security.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy): Add
+ an assert.
+ * util/grub-setup.c (setup): Likewise.
+
+2011-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S: Add missing argument for
+ _LzmaDecodeA.
+
+2011-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Internationalisation): New section.
+
+2011-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Loopback booting): New section.
+
+2011-12-22 Keshav P R <the.ridikulus.rat@gmail.com>
+
+ * util/grub-mkstandalone.in: Fix minor typo errors.
+
+2011-12-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ IPv6, TCP, HTTP, ICMP and DNS support. Several cleanups and bugfixes.
+
+ * grub-core/Makefile.core.def (net): Add net/dns.c, net/tcp.c,
+ net/icmp.c and net/icmp6.c.
+ (http): New module.
+ (priority_queue): Likewise.
+ * grub-core/io/bufio.c: Rewritten.
+ * grub-core/lib/legacy_parse.c (legacy_command): New argument type
+ TYPE_WITH_CONFIGFILE_OPTION.
+ (legacy_commands): Add bootp and dhcp.
+ (is_option): Handle TYPE_WITH_CONFIGFILE_OPTION.
+ (grub_legacy_parse): Likewise.
+ * grub-core/lib/priority_queue.c: New file.
+ * grub-core/net/arp.c: Add missing license header.
+ (arp_find_entry): Removed.
+ (arp_find_entry): Likewise.
+ (grub_net_arp_resolve): Rename to ...
+ (grub_net_arp_send_request): ...this.
+ (grub_net_arp_receive): New card argument.
+ * grub-core/net/bootp.c (parse_dhcp_vendor): Clean up.
+ Set router and DNS server.
+ (grub_net_configure_by_dhcp_ack): Handle routing information.
+ (grub_cmd_bootp): Set checksum.
+ (grub_bootp_init): Remove net_dhcp.
+ * grub-core/net/dns.c: New file.
+ * grub-core/net/drivers/efi/efinet.c (send_card_buffer): Wait for
+ completion.
+ (get_card_packet): Handle allocation.
+ (grub_efinet_findcards): Set mtu.
+ * grub-core/net/drivers/emu/emunet.c: Add missing license header.
+ (get_card_packet): Handle allocation.
+ (emucard): Set mtu.
+ * grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Handle allocation
+ (GRUB_MOD_INIT): Set mtu.
+ * grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnetcard_data): Remove
+ mtu.
+ (get_card_packet): Handle allocation.
+ (grub_ofnet_findcards): Set mtu.
+ * grub-core/net/ethernet.c (send_ethernet_packet): Add compile time
+ assert.
+ (grub_net_recv_ethernet_packet): Handle IPv6.
+ * grub-core/net/http.c: New file.
+ * grub-core/net/icmp.c: Likewise.
+ * grub-core/net/icmp6.c: Likewise.
+ * grub-core/net/ip.c (ip6addr): New type.
+ (ip6hdr): Likewise.
+ (reassemble): Likewise.
+ (cmp): New function.
+ (reassembles): New variable.
+ (grub_net_ip_chksum): Handle 0xffff sum and unaligned buffers.
+ (id): New variable.
+ (send_fragmented): New function.
+ (grub_net_send_ip_packet): Rename to ...
+ (grub_net_send_ip4_packet): ... this. Send fragmented if needed.
+ Handle non-UDP.
+ (grub_net_recv_ip_packets): Rename to ...
+ (handle_dgram): ... this. Check checksum. Handle non-UDP.
+ (free_rsm): New function.
+ (free_old_fragments): Likewise.
+ (grub_net_recv_ip4_packets): New function.
+ (grub_net_send_ip6_packet): Likewise.
+ (grub_net_send_ip_packet): Likewise.
+ (grub_net_recv_ip6_packets): Likewise.
+ (grub_net_recv_ip_packets): Likewise.
+ * grub-core/net/net.c (grub_net_link_layer_entry): New struct.
+ (LINK_LAYER_CACHE_SIZE): New const.
+ (link_layer_find_entry): New function.
+ (grub_net_link_layer_add_address): Likewise.
+ (grub_net_link_layer_resolve_check): Likewise.
+ (grub_net_link_layer_resolve): Likewise.
+ (grub_net_ipv6_get_slaac): Likewise.
+ (grub_net_ipv6_get_link_local): Likewise.
+ (grub_cmd_ipv6_autoconf): Likewise.
+ (parse_ip): Handle one number representation.
+ (parse_ip6): New functoion.
+ (match_net): Handle IPv6.
+ (grub_net_resolve_address): Handle IPv6 and DNS.
+ (grub_net_resolve_net_address): Handle IPv6.
+ (route_cmp): New function.
+ (grub_net_route_address): Find best route.
+ (grub_net_addr_to_str): Handle IPv6.
+ (grub_net_addr_cmp): New function.
+ (grub_net_add_addr): Register local route.
+ (print_net_address): Handle net address.
+ (grub_net_poll_cards): Retransmit TCP.
+ (grub_net_poll_cards_idle_real): Likewise.
+ (have_ahead): New function.
+ (grub_net_seek_real): Use underlying seek.
+ (GRUB_MOD_INIT): Register net_ipv6_autoconf and init dns.
+ * grub-core/net/tcp.c: New file.
+ * grub-core/net/tftp.c (tftp_data): Add priority_queue.
+ (cmp): New function.
+ (ack): Likewise.
+ (tftp_receive): Handle unordered input.
+ (destroy_pq): New function.
+ (tftp_close): Close pq.
+ * grub-core/net/udp.c: Put missing license header.
+ (grub_net_udp_socket): New function.
+ (udp_socket_register): Likewise.
+ (grub_net_udp_close): Likewise.
+ (grub_net_recv_udp_packet): Check checksum.
+ * include/grub/efi/api.h (grub_efi_simple_network): Add status.
+ * include/grub/misc.h (grub_memchr): New function.
+ * include/grub/net.h (GRUB_NET_*_SIZE): New enum.
+ (grub_net_card_driver): Return buf in recv.
+ (grub_net_slaac_mac_list): New struct.
+ (grub_network_level_protocol_id): Add ipv6.
+ (grub_net_network_level_addr): Likewise.
+ (grub_net_network_level_net_addr): Likewise.
+ (grub_net_app_protocol): Add seek.
+ (grub_net_socket): Removed.
+ (grub_net_sockets): Likewise.
+ (grub_net_socket_register): Likewise.
+ (grub_net_socket_unregister): Likewise.
+ (FOR_NET_SOCKETS): Likewise.
+ (grub_net_add_addr): Add const.
+ (GRUB_NET_BOOTP_*): New enum.
+ (grub_net_addr_cmp): New proto.
+ (GRUB_NET_MAX_STR_ADDR_LEN): Take IPV6 into account.
+ (GRUB_NET_MAX_STR_HWADDR_LEN): New define.
+ (grub_net_hwaddr_to_str): NEw proto.
+ (FOR_NET_NETWORK_LEVEL_INTERFACES): New macro.
+ (FOR_NET_NETWORK_LEVEL_INTERFACES_SAFE): Handle NULL.
+ (grub_dns_init): New proto.
+ (grub_dns_fini): Likewise.
+ (grub_net_tcp_retransmit): Likewise.
+ (grub_net_link_layer_add_address): Likewise.
+ (grub_net_link_layer_resolve_check): Likewise.
+ (grub_net_link_layer_resolve): Likewise.
+ (grub_net_dns_lookup): Likewise.
+ (grub_net_add_dns_server): Likewise.
+ (grub_net_remove_dns_server): Likewise.
+ (GRUB_NET_TRIES): New const.
+ (GRUB_NET_INTERVAL): Likewise.
+ * include/grub/net/arp.h: Mostly rewritten.
+ * include/grub/net/ethernet.h (grub_net_ethertype_t): New enum.
+ * include/grub/net/ip.h: Mostly rewritten.
+ * include/grub/net/netbuff.h: Indent.
+ * include/grub/net/tcp.h: New file.
+ * include/grub/net/udp.h: Mostly rewritten.
+ * include/grub/priority_queue.h: New file.
+ * include/grub/types.h (PRIdGRUB_SSIZE): New define.
+ (grub_swap_bytes64_compile_time): Likewise.
+ (grub_cpu_to_be16_compile_time): Likewise.
+ (grub_cpu_to_be32_compile_time): Likewise.
+ (grub_cpu_to_be64_compile_time): Likewise.
+ (grub_be_to_cpu64_compile_time): Likewise.
+
+2011-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/pc/drivemap.c (int13slot): Replace
+ UINT_TO_PTR with cast.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Skip _gcry_rmd160_mixblock and serpent_test. We
+ don't use them.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Don't add include camellia.h to camellia.c. It's
+ already there.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Clean multiboot header to avoid
+ confusing ipxe.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt/cipher/md4.c (transform) [WORDS_BIGENDIAN]:
+ Add missing const attribute.
+ * grub-core/lib/libgcrypt/cipher/md5.c (transform) [WORDS_BIGENDIAN]:
+ Likewise.
+ * grub-core/lib/libgcrypt/cipher/rmd160.c (transform) [WORDS_BIGENDIAN]:
+ Likewise.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/libgcrypt/cipher/serpent.c (serpent_key_prepare): Fix
+ misaligned access.
+ (serpent_setkey): Likewise.
+ (serpent_encrypt_internal): Likewise.
+ (serpent_decrypt_internal): Likewise.
+ (serpent_encrypt): Don't put an alignment-increasing cast.
+ (serpent_decrypt): Likewise.
+ (serpent_test): Likewise.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot.c (grub_cmd_module): Fix target address.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace UINT_TO_PTR and PTR_TO_UINT with explicit grub_addr_t casts.
+
+ * include/grub/types.h (UINT_TO_PTR): Removed. All users switched to
+ grub_addr_t casts.
+ (PTR_TO_UINT64): Likewise.
+ (PTR_TO_UINT32): Likewise.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkimage.c (generate_image): Decrease the higher limit
+ because of stack.
+ * util/grub-setup.c (setup): Don't add redundancy past the higher load
+ limit.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_label.c (label_paint): Handle the case
+ text_width > available width a bit more gracefully.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Fix
+ current address calculation.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (decode_block): Allocate on heap and not
+ stack.
+ (encode_block): Likewise.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S: Clear direction flag for
+ certainety.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/startup_raw.S: Move realmode routines to
+ non-RS part to avoid RS messing with GDT.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART):
+ Increase to suit in realmode routines.
+
+2011-12-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/realmode.S: Increase alignment.
+ * grub-core/boot/i386/pc/startup_raw.S: Likewise.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (init_powx): Set gf_powx_inv[0] just to
+ be deterministic.
+ (syndroms): Compute 0 syndrom.
+ (rs_recover): Use 0 syndrom.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/kernel.h (FOR_MODULES): Make it a bit faster.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/types.h (GRUB_PROPERLY_ALIGNED_ARRAY): Add missing
+ brackets.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/widget-box.c (get_left_pad): Take corners into
+ account.
+ (get_top_pad): Likewise.
+ (get_right_pad): Likewise.
+ (get_bottom_pad): Likewise.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gfxmenu/gui_list.c (draw_menu): Don't use assignment in if.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (grub_efi_memory_descriptor): Add packed
+ attribute as the structure isn't guaranteed to be properly aligned.
+ (grub_efi_pci_device_path): Likewise.
+ (grub_efi_pccard_device_path): Likewise.
+ (grub_efi_memory_mapped_device_path): Likewise. Additionaly explicitly
+ specify the size of `memory_type'.
+ (grub_efi_vendor_device_path): Likewise.
+ (grub_efi_controller_device_path): Likewise.
+ (grub_efi_acpi_device_path): Likewise.
+ (grub_efi_expanded_acpi_device_path): Likewise.
+ (grub_efi_atapi_device_path): Likewise.
+ (grub_efi_scsi_device_path): Likewise.
+ (grub_efi_fibre_channel_device_path): Likewise.
+ (grub_efi_1394_device_path): Likewise.
+ (grub_efi_usb_device_path): Likewise.
+ (grub_efi_usb_class_device_path): Likewise.
+ (grub_efi_i2o_device_path): Likewise.
+ (grub_efi_mac_address_device_path): Likewise.
+ (grub_efi_ipv4_device_path): Likewise.
+ (grub_efi_ipv6_device_path): Likewise.
+ (grub_efi_infiniband_device_path): Likewise.
+ (grub_efi_uart_device_path): Likewise.
+ (grub_efi_vendor_messaging_device_path): Likewise.
+ (grub_efi_hard_drive_device_path): Likewise.
+ (grub_efi_cdrom_device_path): Likewise.
+ (grub_efi_vendor_media_device_path): Likewise.
+ (grub_efi_file_path_device_path): Likewise.
+ (grub_efi_protocol_device_path): Likewise.
+ (grub_efi_piwg_device_path): Likewise.
+ (grub_efi_bios_device_path): Likewise.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/charset.h (grub_utf16_to_utf8): Make src a const pointer.
+ (grub_ucs4_to_utf8_alloc): Likewise.
+ (grub_ucs4_to_utf8): Likewise.
+ * grub-core/normal/charset.c (grub_ucs4_to_utf8): Likewise.
+ (grub_ucs4_to_utf8_alloc): Likewise.
+
+2011-12-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ AFFS never uses unicode.
+
+ * include/grub/charset.h (GRUB_MAX_UTF8_PER_LATIN1): New const.
+ (grub_latin1_to_utf8): New inline function.
+ * grub-core/fs/affs.c (grub_affs_iterate_dir): Convert latin1 to UTF8.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/romfs.c (grub_romfs_mount): Fix pointer comparison
+ overflow.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/squash4.c (grub_squash_inode): Fix field sizes.
+ (grub_squash_dirent_header): Likewise.
+ (read_chunk): Don't double swap.
+ (grub_squash_iterate_dir): Fix swap sizes.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_getent): Handle UTF16 endianness.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfs.c (grub_hfs_find_node): Handle unaligned keys.
+ (grub_hfs_iterate_dir): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix video on platforms where unaligned access is forbidden.
+ Make several optimisations while on it.
+
+ * grub-core/video/fb/fbblit.c (grub_video_fbblit_replace_directN):
+ Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
+ (grub_video_fbblit_replace_32bit_1bit): Likewise.
+ (grub_video_fbblit_replace_24bit_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
+ Disable.
+ (grub_video_fbblit_replace_16bit_1bit):
+ Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
+ (grub_video_fbblit_replace_8bit_1bit): Likewise.
+ (grub_video_fbblit_replace_BGRX8888_RGBX8888): Likewise.
+ (grub_video_fbblit_replace_BGRX8888_RGB888): Likewise.
+ (grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
+ (grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
+ (grub_video_fbblit_replace_BGR888_RGB888): Likewise.
+ (grub_video_fbblit_replace_RGBX8888_RGB88): Likewise.
+ (grub_video_fbblit_replace_RGB888_RGBX888): Likewise.
+ (grub_video_fbblit_replace_RGB888_RGBX8888): Likewise.
+ (grub_video_fbblit_replace_index_RGBX8888): Likewise.
+ (grub_video_fbblit_replace_index_RGB888): Likewise.
+ (grub_video_fbblit_blend_BGRA8888_RGBA8888): Likewise.
+ (grub_video_fbblit_blend_BGR888_RGBA8888): Likewise.
+ (grub_video_fbblit_blend_RGBA8888_RGBA8888): Likewise.
+ (grub_video_fbblit_blend_RGB888_RGBA8888): Likewise.
+ (grub_video_fbblit_blend_index_RGBA8888): Likewise.
+ (grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
+ (grub_video_fbblit_blend_XXX888_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
+ Disable.
+ (grub_video_fbblit_blend_XXX565_1bit):
+ Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
+ * grub-core/video/fb/fbfill.c (grub_video_fbfill_direct32): Likewise.
+ * grub-core/video/fb/fbutil.c (grub_video_fb_get_video_ptr): Return
+ void *.
+ * grub-core/video/fb/video_fb.c (common_blitter)
+ [!GRUB_HAVE_UNALIGNED_ACCESS]: Skip disabled blitters.
+ (grub_video_fb_create_render_target_from_pointer)
+ [!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
+ * include/grub/fbutil.h (grub_video_fb_get_video_ptr): Return void *.
+ * include/grub/i386/types.h (GRUB_HAVE_UNALIGNED_ACCESS): New
+ definition.
+ * include/grub/x86_64/types.h (GRUB_HAVE_UNALIGNED_ACCESS): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Support
+ HH22 and HM10 relocations.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Fix fmt2 parsing.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/videotest.c (grub_cmd_videotest): Check that
+ allocation succeeded.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_convert_string): Make first
+ argument a u8 pointer. All users updated.
+ Handle unaligned buffers.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Force inlining of
+ add_part to workaround compiler bug.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/kernel.h (FOR_MODULES): Preserve alignment invariants.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_elfsyms):
+ Reserve alignment invariants.
+ (grub_multiboot_load): Likewise.
+ (retrieve_video_parameters): Likewise.
+ (grub_multiboot_make_mbi): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (grub_xnu_devprop_remove_property): Fix
+ incorrect pointer.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/pata.c (grub_pata_pio_read): Handle unaligned buffer.
+ (grub_pata_pio_write): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add noreturn attributes and remove unreachable code.
+
+ * grub-core/bus/cs5536.c (grub_cs5536_smbus_wait): Remove unreachable
+ code.
+ * grub-core/commands/halt.c (grub_cmd_halt): Remove unreachable
+ code. Mark as noreturn.
+ * grub-core/commands/minicmd.c (grub_mini_cmd_exit): Likewise.
+ * grub-core/commands/reboot.c (grub_cmd_reboot): Likewise.
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Remove
+ unreachable code.
+ * grub-core/kern/main.c (grub_main): Mark as noreturn.
+ * grub-core/kern/rescue_reader.c (grub_rescue_run): Likewise.
+ * grub-core/lib/posix_wrap/stdlib.h (abort): Likewise.
+ * grub-core/normal/menu.c (run_menu): Remove unreachable code.
+ * include/grub/kernel.h (grub_main): Mark as noreturn.
+ * include/grub/reader.h (grub_rescue_run): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/qemu/memory.h (grub_machine_mmap_init): Remove
+ redundant declaration.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/net.h (grub_net_network_level_interfaces): Remove
+ redundant declaration.
+ (FOR_NET_NETWORK_LEVEL_INTERFACES): Move to appropriate place.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/hdparm.c (le16_to_char): Make src and dest uint16 *
+ to ensure alignment.
+ (grub_hdparm_print_identify): Make argument uint16 * to ensure
+ alignment. Ensure tmp alignment.
+ (grub_cmd_hdparm): Ensure buf alignment.
+ * grub-core/disk/ata.c (grub_ata_strncpy): Make src and dest uint16 *
+ to ensure alignment.
+ (grub_ata_dumpinfo): Ensure text alignment.
+ (grub_atapi_identify): Preserve alignment invariant.
+ (grub_ata_identify): Likewise. Use grub_get_unaligned32 when necessary.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/misc.h (xasprintf): Add missing format attribute.
+ * include/grub/mips/kernel.h (grub_halt): Remove redundant declaration.
+ * include/grub/mips/qemu_mips/kernel.h (grub_halt): Likewise.
+ * include/grub/misc.h (grub_reboot)
+ [GRUB_MACHINE_EMU || GRUB_MACHINE_QEMU_MIPS]: Export.
+ (grub_halt) [__mips__]: Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/memory.h (grub_machine_mmap_iterate):
+ Remove redundant declaration.
+ (grub_mmap_get_post64): Likewise.
+ (grub_mmap_get_upper): Likewise.
+ (grub_mmap_get_lower): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/dvh.c (grub_dvh_is_valid): Make argument
+ uint32_t * to ensure alignment.
+ (dvh_partition_map_iterate): Make `block' a union to ensure alignment.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/sunpc.c (grub_sun_is_valid): Make argument
+ uint16_t * to ensure alignment.
+ (sun_pc_partition_map_iterate): Make `block' a union to ensure
+ alignment.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/sun.c (grub_sun_is_valid): Make argument uint16_t *
+ to ensure alignment.
+ (sun_partition_map_iterate): Make `block' a union to ensure alignment.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (u16at): Make into inline function.
+ Handle unaligned pointers.
+ (u32at): Likewise.
+ (u64at): Likewise.
+ (fixup): Use byte access instead of v16at.
+ (find_attr): Fix imporper usage of v32at.
+ (read_data): Likewise.
+ (list_file): Handle byte-swapping and unaligned strings.
+ (grub_ntfs_label): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/udf.c (grub_udf_partmap): Add packed attribute
+ as it's not necessarily aligned.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/qemu_mips/init.c (grub_at_keyboard_init): Remove
+ redundant declaration.
+ (grub_serial_init): Likewise.
+ (grub_terminfo_init): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (DVA_OFFSET_TO_PHYS_SECTOR): Make into inline
+ function.
+ (ZAP_HASH_IDX): Likewise.
+ (ZAP_LEAF_HASH_SHIFT): Likewise.
+ (ZAP_LEAF_HASH_NUMENTRIES): Likewise.
+ (LEAF_HASH): Likewise.
+ (ZAP_LEAF_NUMCHUNKS): Likewise.
+ (ZAP_LEAF_CHUNK): Likewise. Changed pointer arithmetic to preserve
+ alignment invariants. Return pointer. All users updated.
+ (ZAP_LEAF_ENTRY): Make into inline function.
+ (NBBY): Removed.
+ (xor): LIkewise.
+ (xor_out): Use grub_crypto_xor.
+ (dnode_get_path): Use grub_get_unaligned.
+ (nvlist_find_value): Likewise.
+ (grub_zfs_nvlist_lookup_uint64): Likewise.
+ (grub_zfs_nvlist_lookup_string): Likewise.
+ (get_nvlist_size): Likewise.
+ (grub_zfs_open): Likewise.
+ (fill_fs_info): Likewise.
+ (grub_zfs_dir): Likewise.
+ * include/grub/zfs/zap_leaf.h (zap_leaf_phys): Adapt to preserve
+ alignment invariants.
+ * include/grub/zfs/zio.h (zio_eck_t): Mark as packed as it's not
+ necessarily aligned.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/netbuff.c (grub_netbuff_alloc): Ensure proper alignment.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Change pointer
+ arithmetic to conserve alignment invariants.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efiemu/efiemu.h (grub_efiemu_get_memory_map): Remove
+ redundant declaration.
+ (grub_efiemu_mm_obtain_request): Likewise.
+ (grub_efiemu_prepare): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/list.h: Explicitly cast return of grub_bad_type_cast
+ to match types.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_btree_recoffset): Handle the
+ case of aunaligned recptr.
+ (grub_hfsplus_read_block): Declare extoverflow as key to ensure
+ alignment.
+ (grub_hfsplus_btree_search): Handle unaligned index.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Use grub_get_unaligned16
+ to get freetag and skip.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_btree_node): Add zero-size keys
+ array.
+ (grub_nilfs2_btree_node_dkeys): Ensure return pointer alignment.
+ (grub_nilfs2_btree_lookup): Ensure buffer alignment.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/romfs.c (grub_romfs_iterate_dir): Properly align
+ name for checksum and fix allocation algorithm.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/types.h (grub_properly_aligned_t): New type.
+ (GRUB_PROPERLY_ALIGNED_ARRAY): New macro.
+ (grub_get_unaligned16): Add explicit casts.
+ (grub_get_unaligned32): Likewise.
+ (grub_get_unaligned64): Likewise.
+ (grub_set_unaligned16): New function.
+ (grub_set_unaligned32): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/datetime.c (grub_weekday_names): Make const.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/udf.c (read_string): Macroify GRUB_MAX_UTF8_PER_UTF16.
+ * grub-core/fs/jfs.c (grub_jfs_diropen): Likewise.
+ * grub-core/fs/fat.c (grub_fat_iterate_dir): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c (set_scancodes): Fix preprocessor
+ conditionals.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/main.c (main): Add missing const qualifier.
+ * grub-core/loader/efi/appleloader.c (devdata): Likewise.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify and improve RAID and crypto xor.
+
+ * grub-core/disk/raid.c (grub_raid_block_xor): Removed. All users
+ changed to grub_crypto_xor
+ * grub-core/lib/crypto.c (grub_crypto_xor): Moved from here ...
+ * include/grub/crypto.h (grub_crypto_xor): ... here. Inlined.
+ Use bigger types when possible.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (scan_devices): Fix condition.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c (bootp_response_properties):
+ Make name a const ptr.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_finddevice): Make
+ first argument a const pointer.
+ * grub-core/kern/ieee1275/openfw.c (grub_children_iterate): Likewise.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_finddevice): Update
+ proto.
+ (grub_children_iterate): Likewise.
+ (grub_machine_mmap_iterate): Remove redundant declaration.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpi.c (grub_acpi_create_ebda) [!x86]: Disable.
+ (grub_cmd_acpi) [!x86]: Disable EBDA.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable UTF8 in gnulib regexp.
+
+ * config.h.in (RE_ENABLE_I18N) [!GRUB_UTIL]: New define.
+ * grub-core/lib/posix_wrap/ctype.h (islower): Use grub_islower.
+ (isupper): Use grub_isupper.
+ (isascii): New inline function.
+ * grub-core/lib/posix_wrap/wchar.h: Replace dummy with real contents.
+ * grub-core/lib/posix_wrap/wctype.h: Likewise.
+ * grub-core/normal/charset.c (grub_utf8_process): New function.
+ (grub_utf8_to_utf16): Use grub_utf8_process.
+ (grub_encode_utf8_character): New function.
+ (grub_ucs4_to_utf8): Use grub_encode_utf8_character.
+ * include/grub/charset.h (grub_utf8_process): New declaration.
+ (grub_encode_utf8_character): Likewise.
+ * include/grub/misc.h (grub_islower): New inline function.
+ (grub_isupper): Likewise.
+ (grub_strchrsub): Moved down to fix the definitions.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/ohci.c (grub_ohci_check_transfer): Add an unsigned
+ specification.
+
+2011-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/loader.h (grub_loader_register_preboot_hook):
+ Use struct preboot * and not void * for handle. All users updated.
+ (grub_loader_unregister_preboot_hook): Likewise.
+
+2011-12-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/charset.h (GRUB_MAX_UTF8_PER_UTF16): New const.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Change to
+ UTF-16-BE. All users updated.
+ (grub_hfsplus_cmp_catkey): Fix unicode handling.
+ (grub_hfsplus_iterate_dir): Likewise.
+ (grub_hfsplus_label): Likewise.
+
+2011-12-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c (grub_ahci_pciinit): Fix compat condition.
+
+2011-11-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing const qualifiers.
+
+ * grub-core/commands/i386/pc/sendkey.c (keysym): Add missing const.
+ * grub-core/commands/lspci.c (grub_pci_classname): Likewise.
+ * grub-core/commands/menuentry.c (hotkey_aliases): Likewise.
+ * grub-core/disk/lvm.c (grub_lvm_getvalue): Likewise.
+ (grub_lvm_check_flag): Likewise.
+ * grub-core/efiemu/i386/coredetect.c
+ (grub_efiemu_get_default_core_name): Likewise
+ * grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
+ * grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Likewise.
+ * grub-core/fs/ntfs.c (fixup): Likewise.
+ * grub-core/fs/xfs.c (grub_xfs_iterate_dir): Likewise.
+ * grub-core/fs/zfs/zfs.c (decomp_entry): Likewise.
+ (fzap_lookup): Likewise.
+ (zap_lookup): Likewise.
+ * grub-core/gnulib/regcomp.c (init_dfa): Likewise.
+ * grub-core/lib/legacy_parse.c (check_option): Likewise.
+ * grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Likewise.
+ * grub-core/loader/i386/bsd.c (grub_bsd_add_meta): Likewise.
+ (grub_freebsd_add_meta_module): Likewise.
+ (grub_cmd_freebsd_module): Likewise.
+ * grub-core/loader/i386/xnu.c (tbl_alias): Likewise.
+ * grub-core/loader/xnu.c (grub_xnu_register_memory): Likewise.
+ (grub_xnu_writetree_get_size): Likewise.
+ (grub_xnu_writetree_toheap_real): Likewise.
+ (grub_xnu_find_key): Likewise.
+ (grub_xnu_create_key): Likewise.
+ (grub_xnu_create_value): Likewise.
+ (grub_xnu_register_memory): Likewise.
+ (grub_xnu_check_os_bundle_required): Likewise.
+ (grub_xnu_scan_dir_for_kexts): Likewise.
+ (grub_xnu_load_kext_from_dir): Likewise.
+ * grub-core/normal/color.c (color_list): Likewise.
+ * grub-core/normal/completion.c (current_word): Likewise.
+ * grub-core/normal/menu_entry.c (insert_string): Likewise.
+ * grub-core/term/serial.c (grub_serial_find): Likewise.
+ * grub-core/term/tparm.c (grub_terminfo_tparm): Likewise.
+ * include/grub/efiemu/efiemu.h (grub_efiemu_get_default_core_name):
+ Likewise.
+ * include/grub/i386/bsd.h (grub_bsd_add_meta): Likewise.
+ (grub_freebsd_add_meta_module): Likewise.
+ * include/grub/lib/arg.h (grub_arg_option): Likewise.
+ * include/grub/net.h (grub_net_card_driver): Likewise.
+ (grub_net_card): Likewise.
+ (grub_net_app_protocol): Likewise.
+ * include/grub/parttool.h (grub_parttool_argdesc): Likewise.
+ * include/grub/serial.h (grub_serial_find): Likewise.
+ * include/grub/tparm.h (grub_terminfo_tparm): Likewise.
+ * include/grub/xnu.h (grub_xnu_create_key): Likewise.
+ (grub_xnu_create_value): Likewise.
+ (grub_xnu_find_key): Likewise.
+ (grub_xnu_scan_dir_for_kexts): Likewise.
+ (grub_xnu_load_kext_from_dir): Likewise.
+
+ * include/grub/zfs/zio_checksum.h (zio_checksum_t): Moved from here ...
+ * grub-core/fs/zfs/zfs.c (zio_checksum_t): ...here.
+ * include/grub/zfs/zio_checksum.h (zio_checksum_info):
+ Moved from here ...
+ * grub-core/fs/zfs/zfs.c (zio_checksum_info): ... here. Added missing const.
+
+2011-11-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/getroot.c (find_root_device_from_libzfs): Use xasprintf.
+
+2011-11-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (recovery): Fix spelling.
+ (read_device): Fix size calculation.
+
+2011-11-25 Robert Millan <rmh@gnu.org>
+
+ * util/getroot.c [HAVE_LIMITS_H]: Include `<limits.h>'.
+ (find_root_device_from_libzfs): Add zpool output parser to be used
+ as fallback when libzfs isn't available.
+
+2011-11-25 Seth Goldberg <seth.goldberg@oracle.com>
+
+ * po/Makefile.in.in: Add missing escape-continuation.
+
+2011-11-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/cpio.c (grub_cpio_dir): Handle subdirs correctly.
+
+2011-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c (grub_dl_load_segments): Fix alignment handling.
+
+2011-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/dl.c (grub_dl_unload): Fix freeing segments.
+
+2011-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/x86_64/efi/callwrap.S: Fix the comment.
+
+2011-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/adler32.c: Add missing license specification.
+ * grub-core/lib/crc64.c: Likewise.
+ * grub-core/loader/i386/pc/plan9.c: Likewise.
+ * grub-core/partmap/plan.c: Likewise.
+
+2011-11-13 Lubomir Kundrak <lkundrak@redhat.com>
+
+ Add facility to debug GRUB with gdb under qemu.
+
+ * grub-core/gdb_grub.in: New file.
+ * grub-core/gmodule.pl.in: Likewise.
+ * grub-core/Makefile.core.def (gmodule.pl): New script.
+ (gdb_grub): Likewise.
+
+2011-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mount.c (argp_parser): Accept relative pathes.
+ * util/grub-fstest.c (argp_parser): Likewise.
+
+2011-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Plan9 support.
+
+ * Makefile.util.def (libgrubmods): Add
+ grub-core/partmap/plan.c.
+ * docs/grub.texi: Notice Plan9 support.
+ * grub-core/Makefile.core.def (plan9): New module.
+ (part_plan): Likewise.
+ * grub-core/loader/i386/pc/plan9.c: New file.
+ * grub-core/partmap/plan.c: Likewise.
+ * include/grub/msdos_partition.h (GRUB_PC_PARTITION_TYPE_PLAN9): New
+ define.
+ (GRUB_PC_PARTITION_TYPE_LINUX_SWAP): Likewise.
+ * include/grub/mm.h (grub_extend_alloc): New inline function.
+
+2011-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make Reed-Solomon faster by using power of generator representation of
+ GF(256)*.
+
+ * grub-core/lib/reed_solomon.c (grub_uint16_t) [TEST]: Removed.
+ (gf_double_t): Likewise.
+ (gf_invert): Removed.
+ (gf_powx): New array.
+ (gf_powx_inv): Likewise.
+ (scratch): Move higher.
+ (gf_reduce): Removed.
+ (gf_mul): Use powx.
+ (gf_invert): Likewise.
+ (init_inverts): Replaced with ...
+ (init_powx): ...this. All users updated.
+ (pol_evaluate): Replace multiplications with additions.
+ (rs_encode): Likewise.
+ (gauss_eliminate): Call gf_invert.
+ (grub_reed_solomon_add_redundancy): Call init_powx.
+ (grub_reed_solomon_recover): Call init_powx unconditionally.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/gpt.c (gpt_partition_map_embed): Fix spelling.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/gpt.c (gpt_partition_map_embed): Restore
+ disk->partiton for safety.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
+ Fix a memory leak.
+ (grub_util_biosdisk_get_grub_dev): Add a useful debug info.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (find_system_device): Fix a memory leak.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/lvm.h (grub_lvm_pv): Correct start type.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix spaces handling in proc/self/mountinfo.
+
+ * util/getroot.c (unescape): New function.
+ (grub_find_root_device_from_mountinfo): Use unescape.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support ZFS embedding.
+
+ * grub-core/fs/zfs/zfs.c (grub_zfs_embed): New function.
+ (grub_zfs_fs): Register grub_zfs_embed.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix MIPS compilation.
+
+ * grub-core/boot/mips/startup_raw.S: Use GRUB_DECOMPRESSOR_*
+ * include/grub/offsets.h: Rename decompressor fields from
+ GRUB_KERNEL_* to GRUB_DECOMPRESSOR_*.
+ * util/grub-mkimage.c (image_targets): Use new names.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Defer multiboot device parsing until we're in compressed part.
+
+ * grub-core/boot/i386/pc/lnxboot.S: Remove setting dos_part and
+ bsd_part. setdevice has fallen into disuse.
+ * grub-core/boot/i386/pc/startup_raw.S (dos_part): Removed.
+ (bsd_part): Likewise.
+ (boot_dev): New variable.
+ (multiboot_trampoline): Don't parse multiboot device.
+ Pass multiboot device in %edx.
+ * grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Parse
+ grub_boot_device.
+ * grub-core/kern/i386/pc/init.c (grub_machine_get_bootlocation):
+ Likewise.
+ * grub-core/kern/i386/pc/startup.S: Save edx.
+ (grub_boot_drive): Removed.
+ (grub_install_dos_part): Likewise.
+ (grub_install_bsd_part): Likewise.
+ (grub_boot_device): New variable.
+ * include/grub/i386/pc/kernel.h (grub_install_dos_part): Removed.
+ (grub_install_bsd_part): Likewise.
+ (grub_boot_drive): Likewise.
+ (grub_boot_device): New variable.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_INSTALL_DOS_PART):
+ Removed.
+ (GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise.
+ (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Moved lower.
+ (GRUB_KERNEL_MACHINE_INSTALL_BSD_PART): Removed.
+ (GRUB_KERNEL_MACHINE_INSTALL_DOS_PART): Likewise.
+ * util/grub-install.in: Remove redundant condition.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix bug introduced by previous commit.
+
+ * grub-core/boot/i386/pc/startup_raw.S: Compute RS start correctly.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use decompressors framework on i386-pc. It increases core size
+ by 46 bytes but improves compatibility and maintainability.
+
+ * grub-core/Makefile.core.def (lzma_decompress): New image.
+ (kernel): Add i386_pc_ldflags.
+ * grub-core/kern/i386/pc/startup.S: Move intial part to ..
+ * grub-core/boot/i386/pc/startup_raw.S: ... here. Pass pointers
+ to real_to_prot, prot_to_real and device info.
+ * include/grub/offsets.h: Renamed decompressor offsets.
+ * util/grub-mkimage.c (grub_compression_t): New cmpression lzma.
+ (image_target_desc): Remove raw_size and rename decompressor fields.
+ (compress_kernel): Handle lzma.
+ (generate_image): Handle decompressors on i386-pc.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -fno-asynchronous-unwind-tables.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move assembly code to C by using intwrap. It increases core size
+ by 88 bytes but improves compatibility and maintainability.
+
+ * grub-core/kern/i386/pc/startup.S (grub_console_putchar): Moved to ...
+ * grub-core/term/i386/pc/console.c (grub_console_putchar_real):
+ ... here. Translated to C.
+ * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Moved to ...
+ * grub-core/term/i386/pc/console.c (grub_console_getkey):
+ ... here. Translated to C.
+ * grub-core/kern/i386/pc/startup.S (grub_console_getxy): Moved to ...
+ * grub-core/term/i386/pc/console.c (grub_console_getxy):
+ ... here. Translated to C.
+ * grub-core/kern/i386/pc/startup.S (grub_console_gotoxy): Moved to ...
+ * grub-core/term/i386/pc/console.c (grub_console_gotoxy):
+ ... here. Translated to C.
+ * grub-core/kern/i386/pc/startup.S (grub_console_cls): Moved to ...
+ * grub-core/term/i386/pc/console.c (grub_console_cls):
+ ... here. Translated to C.
+ * grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Moved to ..
+ * grub-core/term/i386/pc/console.c (grub_console_setcursor):
+ ... here. Translated to C.
+ * grub-core/kern/i386/pc/startup.S (grub_get_rtc): Moved to ..
+ * grub-core/kern/i386/pc/init.c (grub_get_rtc): ... here.
+ Translated to C.
+ * grub-core/term/i386/pc/console.c (int10_9): New function.
+ (grub_console_putchar): Likewise.
+ * include/grub/i386/pc/console.h: Removed the not anymore shared
+ functions.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move grub_chainloader_real_boot out of the kernel.
+
+ * grub-core/Makefile.am: Remove machine/loader.h.
+ * grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot):
+ Removed.
+ * grub-core/lib/i386/relocator.c (grub_relocator16_esi): New extern
+ variable.
+ (grub_relocator16_keep_a20_enabled): Likewise.
+ (grub_relocator16_boot): Fill new variables.
+ * grub-core/lib/i386/relocator16.S: Add gate a20 handling.
+ * grub-core/loader/i386/pc/chainloader.c (grub_chainloader_boot): Use
+ relocator.
+ (grub_chainloader_unload): Likewise.
+ (grub_chainloader_cmd): Likewise.
+ * include/grub/i386/pc/loader.h: Removed.
+ * include/grub/i386/relocator.h (grub_relocator16_state): Add a20
+ and esi. All initialisers updated.
+
+2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+2011-11-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-mount): New util.
+ * .bzrignore: Add grub-mount.
+ * configure.ac: Check for fuse and enable grub-mount if available.
+ * docs/man/grub-mount.h2m: New file.
+ * util/grub-mount.c: Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/efi/fixvideo.c: Gettextize.
+ * grub-core/commands/hashsum.c: Likewise.
+ * grub-core/commands/i386/cmostest.c: Likewise.
+ * grub-core/commands/i386/pc/drivemap.c: Likewise.
+ * grub-core/commands/i386/pc/lsapm.c: Likewise.
+ * grub-core/commands/i386/pc/sendkey.c: Likewise.
+ * grub-core/commands/lsmmap.c: Likewise.
+ * grub-core/commands/menuentry.c: Likewise.
+ * grub-core/commands/mips/loongson/lsspd.c: Likewise.
+ * grub-core/commands/setpci.c: Likewise.
+ * grub-core/loader/i386/bsd.c: Likewise.
+ * grub-core/loader/i386/linux.c: Likewise.
+ * util/getroot.c: Likewise.
+ * util/grub-editenv.c: Likewise.
+ * util/grub-fstest.c: Likewise.
+ * util/grub-mkfont.c: Likewise.
+ * util/grub-mkimage.c: Likewise.
+ * util/grub-mkpasswd-pbkdf2.c: Likewise.
+ * util/grub-pe2elf.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/grub-setup.c: Likewise.
+ * util/ieee1275/ofpath.c: Likewise.
+ * util/misc.c: Likewise.
+ * util/raid.c: Likewise.
+
+2011-11-11 Robert Millan <rmh@gnu.org>
+
+ * util/getroot.c (grub_util_get_geom_abstraction): Remove
+ __attribute__((unused)) from `os_dev', which *is* being used.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/dl.h (GRUB_ARCH_DL_TRAMP_SIZE) [__ia64__]: Add back
+ forgotten define.
+ (GRUB_ARCH_DL_GOT_ALIGN) [__ia64__]: Redefine in terms of
+ GRUB_IA64_DL_GOT_ALIGN.
+ (GRUB_ARCH_DL_TRAMP_ALIGN) [__ia64__]: Redefine in terms of
+ GRUB_IA64_DL_TRAMP_ALIGN.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace grub_fatal with normal errors in i386 linux loader.
+
+ * grub-core/loader/i386/linux.c (find_efi_mmap_size): Return 0 on error.
+ (allocate_pages): Check find_efi_mmap_size return value.
+ (grub_e820_add_region): Return error.
+ (grub_linux_boot): Check mmap return value.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c: Gettextized.
+ * grub-core/commands/cacheinfo.c: Likewise.
+ * grub-core/commands/cmp.c: Likewise.
+ * grub-core/commands/efi/loadbios.c: Likewise.
+ * grub-core/commands/gptsync.c: Likewise.
+ * grub-core/commands/ieee1275/suspend.c: Likewise.
+ * grub-core/commands/legacycfg.c: Likewise.
+ * grub-core/commands/memrw.c: Likewise.
+ * grub-core/commands/minicmd.c: Likewise.
+ * grub-core/commands/parttool.c: Likewise.
+ * grub-core/commands/time.c: Likewise.
+ * grub-core/commands/videoinfo.c: Likewise.
+ * grub-core/disk/geli.c: Likewise.
+ * grub-core/disk/i386/pc/biosdisk.c: Likewise.
+ * grub-core/disk/luks.c: Likewise.
+ * grub-core/disk/lvm.c: Likewise.
+ * grub-core/font/font_cmd.c: Likewise.
+ * grub-core/fs/zfs/zfscrypt.c: Likewise.
+ * grub-core/fs/zfs/zfsinfo.c: Likewise.
+ * grub-core/gfxmenu/view.c: Likewise.
+ * grub-core/kern/emu/hostdisk.c: Likewise.
+ * grub-core/kern/emu/main.c: Likewise.
+ * grub-core/kern/emu/misc.c: Likewise.
+ * grub-core/kern/emu/mm.c: Likewise.
+ * grub-core/kern/mips/arc/init.c: Likewise.
+ * grub-core/kern/mips/loongson/init.c: Likewise.
+ * grub-core/kern/partition.c: Likewise.
+ * grub-core/lib/i386/halt.c: Likewise.
+ * grub-core/lib/mips/arc/reboot.c: Likewise.
+ * grub-core/lib/mips/loongson/reboot.c: Likewise.
+ * grub-core/loader/i386/pc/chainloader.c: Likewise.
+ * grub-core/loader/i386/xnu.c: Likewise.
+ * grub-core/loader/multiboot.c: Likewise.
+ * grub-core/net/bootp.c: Likewise.
+ * grub-core/net/net.c: Likewise.
+ * grub-core/normal/term.c: Likewise.
+ * grub-core/partmap/bsdlabel.c: Likewise.
+ * grub-core/parttool/msdospart.c: Likewise.
+ * grub-core/term/gfxterm.c: Likewise.
+ * grub-core/term/terminfo.c: Likewise.
+ * grub-core/video/i386/pc/vbe.c: Likewise.
+ * util/grub-menulst2cfg.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/grub-mklayout.c: Likewise.
+ * util/grub-mkrelpath.c: Likewise.
+ * util/grub-script-check.c: Likewise.
+ * util/ieee1275/grub-ofpathname.c: Likewise.
+ * util/resolve.c: Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support %1$d syntax.
+
+ * tests/printf_unit_test.c: New file.
+ * Makefile.util.def (printf_test): New test.
+ * grub-core/kern/misc.c (grub_vsnprintf_real): Support %1$d syntax.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/hook/datehook.c (grub_read_hook_datetime): Small stylistic
+ fix.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/mm.c (grub_efiemu_mmap_fill): Change printf into
+ dprintf.
+ * grub-core/font/font.c (grub_font_load): Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-macho2img.c: Add comment concerning gettext.
+ * grub-core/lib/legacy_parse.c: Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vprintf): Add missing va_end.
+ (grub_xvasprintf): Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add const keyword to grub_env_get and gettextize week days.
+
+ * grub-core/hook/datehook.c (grub_datetime_names): Make const.
+ (grub_read_hook_datetime): Return const char *.
+ * grub-core/kern/env.c (grub_env_get): Return const char *. All users
+ updated.
+ * grub-core/normal/datetime.c (grub_weekday_names): Make const.
+ Mark for gettext.
+ (grub_get_weekday_name): Return const char *. Call gettext.
+ * grub-core/script/argv.c (grub_script_argv_append): Receive const
+ char * and len as the argument. All users updated.
+ (grub_script_argv_split_append): Receive const char *.
+ * include/grub/datetime.h (grub_get_weekday_name): Update proto.
+ * include/grub/env.h (grub_env_get): Likewise.
+ (grub_env_read_hook_t): Return const char *.
+ * include/grub/script_sh.h (grub_script_argv_append): Update proto.
+ (grub_script_argv_split_append): Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/main.c (grub_normal_execute): Remove leftover call.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_strstr): Moved from here ...
+ * include/grub/misc.h (grub_strstr): ... here. Make static and inline.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_set_property):
+ Fix prototype.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix mips compilation.
+
+ * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec): Restrict hash_id to
+ normal decoder.
+ (hashes): Use in embed decoder as well (for sizes).
+ (dec_stream_header): Fix embed decompressor logic.
+ (dec_stream_footer): Likewise.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Issue
+ an error and not a fatal on unrecognised relocation types.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args):
+ Issue error rather than printf on unknown arguments.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_set_property):
+ Make buf a const.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfscrypt.c (GRUB_MOD_INIT), (GRUB_MOD_FINI):
+ Fix module name.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (grub_ntfs_read_symlink): Stylistic fix. Remove
+ leftover debug printf.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_embed): Spelling fix.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/main.c (grub_efiemu_register_configuration_table):
+ A stylistic fix.
+
+2011-11-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/probe.c (grub_cmd_probe): Fix error message.
+
+2011-11-10 Shea Levy <slevy@tieronedesign.com>
+
+ Allow all modules to perform serial IO
+
+ * grub-core/term-serial.c (grub_serial_find): Remove static qualifier
+ * include/grub/serial.h (grub_serial_port_configure): New inline
+ function.
+ (grub_serial_port_fetch): Likewise.
+ (grub_serial_port_put): Likewise.
+ (grub_serial_port_fini): Likewise.
+ (grub_serial_find): New proto.
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Put symlink at the end of the node and fix a potential
+ memory corruption.
+
+ * grub-core/fs/iso9660.c (grub_fshelp_node): New field have_symlink.
+ Make symlink into an array.
+ (set_rockridge): Set have_symlink and alloc_dirents.
+ (grub_iso9660_read_symlink): Use new layout.
+ (grub_iso9660_iterate_dir): Fix memory corruption.
+ Use new layout.
+ (grub_iso9660_dir): Set have_symlink.
+ (grub_iso9660_open): Likewise.
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove local keyword.
+
+ * util/grub-mkconfig_lib.in (version_test_numeric): Remove local.
+ (version_test_gt): Likewise.
+ (version_find_latest): Likewise.
+ (gettext_printf): Likewise.
+ * util/grub.d/10_windows.in (get_os_name_from_boot_ini): Likewise.
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (zfs_mount): Fix spurious warning.
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ZFS memory and resource leaks.
+
+ * grub-core/fs/zfs/zfs.c (fill_vdev_info_real): New paramter inserted.
+ All users updated.
+ Free type on exit.
+ (fill_vdev_info): New parameter inserted. All users updated.
+ (check_pool_label): Likewise.
+ (scan_disk): Likewise.
+ (scan_devices): Close non-inserted disks.
+ (fzap_iterate): Free l.
+ (unmount_device): Free children descripto memory.
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix grub_strncat
+ argument (access out of bounds).
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Fix RAID10 logic for
+ >= 6 drives.
+
+2011-11-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/netbsd_bootinfo.h (grub_netbsd_btinfo_bootwedge):
+ Fix declaration.
+
+2011-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix several memory leaks.
+
+ * grub-core/fs/btrfs.c (grub_btrfs_dir): Fix memory leak.
+ * grub-core/fs/cpio.c (grub_cpio_find_file): Likewise.
+ (grub_cpio_dir): Likewise.
+ * grub-core/fs/fat.c (grub_fat_label): Likewise.
+ * grub-core/fs/jfs.c (grub_jfs_label): Likewise.
+ * grub-core/fs/romfs.c (grub_romfs_close): Likewise.
+ (grub_romfs_label): Likewise.
+ * grub-core/fs/squash4.c (squash_mount): Use zalloc for safety.
+ (squash_unmount): New function.
+ (grub_squash_dir): Fix memory leak.
+ (grub_squash_open): Likewise.
+ (grub_squash_read): Likewise.
+ (grub_squash_mtime): Likewise.
+ * grub-core/fs/xfs.c (grub_xfs_open): Likewise.
+ * grub-core/fs/zfs/zfs.c (check_pool_label): Likewise.
+ * util/grub-fstest.c (fstest): Likewise.
+
+2011-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_strncat): Fix the order of conditionals to
+ avoid accessing beyond the array.
+
+2011-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add missing -mXX to TARGET_CPPFLAGS.
+
+2011-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Several AFFS fixes.
+
+ * grub-core/fs/affs.c (grub_affs_bblock): Replace flags with version.
+ (GRUB_AFFS_FLAG_FFS): Removed.
+ (GRUB_AFFS_SYMLINK_SIZE): Likewise.
+ (GRUB_AFFS_FILETYPE_DIR): Make positive and unsigned.
+ (GRUB_AFFS_FILETYPE_DIR), (GRUB_AFFS_FILETYPE_REG): Fix a mix-up.
+ (grub_fshelp_node): Make block 32-bit.
+ Add block_cache and last_block_cache.
+ (grub_affs_read_block): Fill and use block cache.
+ (grub_affs_read_file): Removed.
+ (grub_affs_mount): Zero-fill node. Fix version check. Don't reread
+ boot block.
+ (grub_affs_read_symlink): Fix symlink size. Add a \0 at the end for
+ safety.
+ (grub_affs_iterate_dir): Use more appropriate types. Zero-fill allocated
+ space.
+ (grub_affs_close): Free block cache.
+ (grub_affs_read): Use grub_fshelp_read_file directly.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (read_dva): Issue an error if read failed
+ with no error set.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/LzmaEnc.c (LzmaEnc_CodeOneBlock): Remove set but not
+ used variable.
+ * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
+ Likewise.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix potential problem with calling zfs_to_cpu and cpu_to_be in a row.
+
+ * grub-core/fs/zfs/zfscrypt.c (grub_zfs_decrypt_real): Use explicit
+ byteswap when needed.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix FreeBSD compilation.
+
+ * grub-core/disk/geli.c (GRUB_MD_SHA256) [GRUB_UTIL]: Redefine in a way
+ to avoid circular dependency.
+ (GRUB_MD_SHA512) [GRUB_UTIL]: Likewise.
+ * util/getroot.c (grub_util_follow_gpart_up): Move from here...
+ * grub-core/kern/emu/hostdisk.c (+grub_util_follow_gpart_up): ... here.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix ZFS crypto error types.
+
+ * grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Fix return type.
+ (grub_gcm_decrypt): Likewise.
+ (grub_zfs_load_key_real): Fix error code type. Handle possible error
+ from PBKDF2.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Illumos support.
+
+ * Makefile.util.def (10_illumos): New script.
+ * configure.ac: Set COND_HOST_ILLUMOS.
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__sun__]:
+ Support Illumos calls.
+ (find_partition_start) [__sun__]: Likewise.
+ (convert_system_partition_to_system_disk) [__sun__]: Likewise.
+ (device_is_wholedisk) [__sun__]: Handle Illumos naming scheme.
+ (grub_util_biosdisk_get_grub_dev) [__sun__]: Handle Illumos.
+ * util/getroot.c (find_root_device_from_libzfs) [__sun__]: Return raw
+ device.
+ * util/grub-probe.c (probe) [__sun__]: Do character check.
+ * util/grub.d/10_illumos.in: New file.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support escaped commas in hostdisk.
+
+ * grub-core/kern/emu/hostdisk.c (unescape_cmp): New function.
+ (find_grub_drive): Use unescape_cmp.
+ (make_device_name): Escape commas.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_kfreebsd.in: Use ${grub_mkrelpath} not grub-mkrelpath.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (zap_iterate): Remove set but not used
+ variable.
+
+2011-11-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support trampoline jumps on powerpc.
+
+ * grub-core/kern/dl.c (grub_dl_load_segments) [__powerpc__]: Follow
+ __ia64__ path.
+ (grub_dl_load_segments): Set mod->sz.
+ (grub_dl_flush_cache): Flush whole space occupied by module, not just
+ segments.
+ * grub-core/kern/ia64/dl.c (nopm): Make const while on it.
+ (jump): Likewise.
+ * grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): New
+ function.
+ (trampoline): New struct.
+ (trampoline_template): New const.
+ (grub_arch_dl_relocate_symbols): Create trampolines on overflow.
+ * include/grub/dl.h (grub_dl): Add sz element.
+ [__powerpc__]: Follow __ia64__.
+ (GRUB_ARCH_DL_TRAMP_ALIGN): Define on ppc.
+ (GRUB_ARCH_DL_GOT_ALIGN): Likewise.
+ (GRUB_ARCH_DL_TRAMP_SIZE): Likewise.
+ (grub_arch_dl_get_tramp_got_size) [__powerpc__]: New proto.
+
+2011-11-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ZFS crypto support.
+
+ * Makefile.util.def (libgrubmods): Add grub-core/fs/zfs/zfscrypt.c.
+ * grub-core/Makefile.core.def (zfscrypt): New module.
+ * grub-core/fs/zfs/zfs.c (subvolume): New structure.
+ (grub_zfs_data): Replace mdn with subvol. Put case_insensitivity inside
+ it. All users updated.
+ (grub_zfs_decrypt): New var.
+ (grub_zfs_load_key): Likewise.
+ (zio_checksum_functions): Add SHA256+MAC.
+ (zio_checksum_verify): Handle incomplete comparison due to MAC.
+ (zio_read): Handle encrypted blocks.
+ (zap_verify): Remove incorrect check.
+ (fzap_iterate): Handle non-standard fzap.
+ (zap_iterate): Likewise.
+ (zap_iterate_u64): New function.
+ (dnode_get_fullpath): Load keys.
+ * grub-core/fs/zfs/zfscrypt.c: New file.
+ * grub-core/lib/crypto.c (grub_crypto_cipher_close): Removed.
+ (grub_crypto_ecb_encrypt): Make input const.
+ * include/grub/crypto.h (grub_crypto_cipher_close): Inline.
+ (grub_crypto_ecb_encrypt): Make input const.
+ (GRUB_CIPHER_AES): New macro.
+ * include/grub/zfs/dmu.h (dmu_object_type): Add DMU_OT_DSL_KEYCHAIN.
+ * include/grub/zfs/dsl_dir.h (dsl_dir_phys): Add keychain.
+ * include/grub/zfs/spa.h (grub_zfs_endian): Moved from here ...
+ * include/grub/zfs/zfs.h (grub_zfs_endian): ... here. Added GURB_ZFS_
+ prefix. All users updated.
+ (grub_zfs_add_key): New proto.
+ (grub_zfs_decrypt): Likewise.
+ (grub_zfs_load_key): Likewise.
+ * include/grub/zfs/zio.h (zio_checksum): Add SHA256+MAC.
+ * util/grub-fstest.c (options): Add -K option.
+ (argp_parser): Likewise.
+
+2011-11-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support zle compression on ZFS.
+
+ * grub-core/fs/zfs/zfs.c (zle_decompress): New function.
+ (decomp_table): Add zle.
+ * include/grub/zfs/zio.h (zio_compress): Add zle.
+
+2011-11-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support BtrFS embedding.
+
+ * grub-core/fs/btrfs.c (grub_btrfs_embed) [GRUB_UTIL]: New function.
+ (grub_btrfs_fs) [GRUB_UTIL]: Set embed.
+ * include/grub/fs.h (grub_fs) [GRUB_UTIL]: New field embed.
+ * util/grub-setup.c (setup): Use fs embedding if available.
+ Add additional sanity check.
+
+2011-11-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Fix condition for config_opt.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support third redundancy strip on raidz3.
+
+ * grub-core/fs/zfs/zfs.c (recovery): Add Gauss for general case.
+ Return error on singularity. All users updated.
+ (read_device): Don't stop on 3rd failure on raidz3.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support case-insensitive ZFS subvolumes.
+
+ * grub-core/fs/zfs/zfs.c (mzap_lookup): New parameter case_insensitive.
+ All users updated.
+ (zap_hash): Likewise.
+ (name_cmp): New function.
+ (zap_leaf_array_equal): New parameter case_insensitive.
+ All users updated.
+ (zap_leaf_lookup): Likewise.
+ (fzap_lookup): Likewise.
+ (zap_lookup): Likewise.
+ (dnode_get_path): New parameter case_insensitive. Retrieve case
+ sensitiviness of a volume. All users updated.
+ (dnode_get_fullpath): New parameter case_insensitive.
+ All users updated.
+ (grub_zfs_dir): Set info.case_insensitiveness.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support second redundancy strip on raidz(2,3).
+
+ * grub-core/fs/zfs/zfs.c (powx): New array.
+ (powx_inv): Likewise.
+ (poly): New const.
+ (xor_out): New function.
+ (gf_mul): Likewise.
+ (recovery): Likewise.
+ (read_device): Use second redundancy strip.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use a power of generator representation of GF(256) multiplication group
+ to save space time and complexity.
+
+ * grub-core/disk/raid6_recover.c (raid6_table1): Removed.
+ (raid6_table2): Likewise.
+ (powx): New array.
+ (powx_inv): Likewise.
+ (poly): New const.
+ (grub_raid_block_mul): Replace with ...
+ (grub_raid_block_mulx): ...this.
+ (grub_raid6_init_table): Rewritten.
+ (grub_raid6_recover): Use power of generator representation.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid6_recover.c (grub_raid6_recover): Get start_sector
+ for the right device.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/kernel.h (grub_module_header): Make type into uint32 as
+ expected by grub-mkimage and it's more clear since there is no implicit
+ padding.
+
+2011-11-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (scan_devices): Don't derference NULL on whole
+ disk.
+ * grub-core/disk/lvm.c (do_lvm_scan): Likewise.
+
+2011-11-03 Philipp Matthias Hahn <pmhahn@debian.org>
+
+ * util/grub-mkrescue.in: Fix handling xorriso option.
+
+2011-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (grub_gettext_init_ext): Exit if local is
+ NULL.
+
+2011-11-03 crocket <crockabiscuit@gmail.com>
+
+ * util/grub.d/10_linux.in: Add Slackware initrd naming.
+
+2011-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ XZ CRC64 and SHA256 support.
+
+ * Makefile.util.def (libgrubmods): Add crc64.c.
+ * grub-core/Makefile.core.def (crc64): New module.
+ * grub-core/lib/crc64.c: New file.
+ * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_hash)
+ [!GRUB_EMBED_DECOMPRESSOR]: Rename crc32_context to hash_context.
+ Fix the type.
+ (MAX_HASH_SIZE): New define.
+ (xz_dec) [!GRUB_EMBED_DECOMPRESSOR]: Add generic hash fields.
+ (dec_block) [!GRUB_EMBED_DECOMPRESSOR]: Handle non-crc32 hashes.
+ (index_update) [!GRUB_EMBED_DECOMPRESSOR]: Likewise.
+ (dec_index) [!GRUB_EMBED_DECOMPRESSOR]: Likewise.
+ (crc32_validate) [!GRUB_EMBED_DECOMPRESSOR]: Rename to ...
+ (hash_validate) [!GRUB_EMBED_DECOMPRESSOR]: ... this.
+ Handle non-crc32 hashes.
+ (hashes) [!GRUB_EMBED_DECOMPRESSOR]: New variable.
+ (dec_stream_header): Handle non-crc32 hashes.
+ (dec_stream_footer): Likewise.
+ (dec_block_header): Likewise.
+ (dec_main): Likewise.
+ (xz_dec_init): Likewise.
+ (xz_dec_reset): Likewise.
+ (xz_dec_end): Likewise.
+ * util/import_gcry.py: Add CRC64 line.
+
+2011-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_mtime) [MODE_UFS2]: Check mtime field
+ as well.
+
+2011-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make reiserfs label retrieval similar to other *_label functions.
+
+ * grub-core/fs/reiserfs.c (grub_reiserfs_superblock): New field label.
+ (REISERFS_MAX_LABEL_LENGTH): Removed.
+ (REISERFS_LABEL_OFFSET): Likewise.
+ (grub_reiserfs_label): Rewritten.
+
+2011-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_mtime): Use correct superblock
+ field.
+
+2011-11-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (read_device): Support raidz3.
+
+2011-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (read_device): Add ability to sustain a single
+ drive failure on both raidz and raidz2.
+
+2011-11-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix RAIDZ(2) for >= 5 devices.
+
+ * grub-core/fs/zfs/zfs.c (read_device): Fix length formula. Remove
+ asize argument. All users updated.
+
+2011-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix RAIDZ(2).
+
+ * grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member ashift.
+ (fill_vdev_info_real): Set ashift.
+ (read_device): Rewrite RAIDZ part based on reverse engineering.
+
+2011-10-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_extent_read): Add sanity check and
+ don't report potentially unavialiable fields in debug output.
+ (find_path): Fix double-free and memory leak.
+
+2011-10-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Read label on UFS1.
+
+ * grub-core/fs/ufs.c (grub_ufs_label): Remove MODE_UFS2 condition.
+ (grub_ufs_fs): Always set .label.
+
+2011-10-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use shifts in UFS.
+
+ * grub-core/fs/ufs.c (UFS_LOG_BLKSZ): New macro.
+ (grub_ufs_data): New field log2_blksz.
+ (grub_ufs_read_file): Use shifts.
+ (grub_ufs_mount): Check block size and logarithm it.
+
+2011-10-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Fix handling of
+ long symlinks.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle symlinks and long names on tar and cpio.
+
+ * grub-core/fs/cpio.c (ATTR_TYPE): New definition.
+ (ATTR_FILE): Likewise.
+ (ATTR_DIR): Likewise.
+ (ATTR_LNK): Likewise.
+ (grub_cpio_data) [MODE_USTAR]: New fields linkname and linkname_alloc.
+ (grub_cpio_find_file): Fill mode, handle linkname field as well as
+ L and K entries.
+ (grub_cpio_mount): Zero-fill data.
+ (handle_symlink): New function.
+ (grub_cpio_dir): Handle symlinks.
+ (grub_cpio_open): Likewise.
+ (grub_cpio_close) [MODE_USTAR]: Free linkname.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix iso9660 filename limitations and fix memory leaks.
+
+ * grub-core/fs/iso9660.c (set_rockridge): Free sua at the end.
+ (grub_iso9660_iterate_dir): Fix slash handling in symlinks.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix JFS file name length limitations.
+
+ * grub-core/fs/jfs.c (grub_jfs_inode): Fix in-place symlink length.
+ (grub_jfs_diropen): Fix maximum filename length.
+ (grub_jfs_getent): Fix filename length.
+ (grub_jfs_lookup_symlink): Fix size checks.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/mips/linux.c (loongson_machtypes): Fix fuloong type
+ string.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Leverage BFS implementation to read AFS.
+
+ * Makefile.util.def (libgrubmods): Add afs.c.
+ * grub-core/Makefile.core.def (afs): New module
+ * grub-core/fs/afs.c: New file.
+ * grub-core/fs/bfs.c [MODE_AFS]: Adapt for AFS.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c: Macroify and add some necessary sanity checks.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/bfs.c: Run indent.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ BFS implementation based on the specification.
+
+ * grub-core/fs/bfs.c: New file.
+ * Makefile.util.def (libgrubmods): Add bfs.c.
+ * grub-core/Makefile.core.def (bfs): New module.
+
+2011-10-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-fstest.c (cmd_cp): Clarify error message.
+ (cmd_cmp): Likewise.
+
+2011-10-30 Yves Blusseau <blusseau@zetam.org>
+
+ * po/POTFILES.in: Regenerate because of the removal of afs, afs_be, befs
+ and befs_be.
+
+2011-10-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove afs and befs because of copyright problem.
+
+ * grub-core/fs/afs.c: Removed.
+ * grub-core/fs/afs_be.c: Removed.
+ * grub-core/fs/befs.c: Removed.
+ * grub-core/fs/befs_be.c: Removed.
+ * Makefile.util.def (libgrubkern): Remove afs, afs_be, befs and befs_be.
+ * grub-core/Makefile.core.def (afs): Removed.
+ (afs_be): Likewise.
+ (befs): Likewise.
+ (befs_be): Likewise.
+
+2011-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Prefer rockridge over Joliet.
+
+ * grub-core/fs/iso9660.c (grub_iso9660_mount): Move rockridge detection
+ to ...
+ (set_rockridge): ... here.
+ (grub_iso9660_mount): Check rockridge on the primary label when
+ discovering. Ignore Joliet if Rockridge is present.
+
+2011-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use shifts in nilfs2.
+
+ * grub-core/fs/nilfs2.c (LOG_INODE_SIZE): New definition.
+ (LOG_NILFS_DAT_ENTRY_SIZE): Likewise.
+ (grub_nilfs2_palloc_entries_per_group): Replace with ...
+ (grub_nilfs2_log_palloc_entries_per_group): ... this.
+ (grub_nilfs2_palloc_group): Use shifts and bitmasks.
+ (grub_nilfs2_entries_per_block): Replaced with ...
+ (grub_nilfs2_log_entries_per_block_log): ... this.
+ (grub_nilfs2_blocks_per_group): Replaced with ...
+ (grub_nilfs2_blocks_per_group_log): ... this.
+ (grub_nilfs2_blocks_per_desc_block): Replaced with ...
+ (grub_nilfs2_blocks_per_desc_block_log): ... this.
+ (grub_nilfs2_palloc_desc_block_offset): Replaced with ...
+ (grub_nilfs2_palloc_desc_block_offset_log): ... this.
+ (grub_nilfs2_palloc_entry_offset): Replaced ...
+ (grub_nilfs2_palloc_entry_offset_log): ... this. Use shifts.
+ (grub_nilfs2_dat_translate): Use shifts.
+ (grub_nilfs2_read_inode): Likewise.
+ (GRUB_MOD_INIT): Ensure that logs are correct.
+
+2011-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use shifts in minix filesystem.
+
+ * grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use log_block_size.
+ (GRUB_MINIX_ZONE2SECT): Likewise.
+ (grub_minix_data): Replace block_size with log_block_size.
+ (grub_minix_read_file): Use shifts.
+ (grub_minix_mount): Check block size and take a logarithm.
+
+2011-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use shifts in squash4.
+
+ * grub-core/fs/squash4.c (grub_squash_data): New field log2_blksz.
+ (squash_mount): Check block size and take logarithm.
+ (direct_read): Use shifts.
+
+2011-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Correct befs block counting logic.
+
+ * grub-core/fs/afs.c (GRUB_AFS_BLOCKS_PER_DI_RUN): Replaced with...
+ (GRUB_AFS_LOG_BLOCKS_PER_DI_RUN): ... this.
+ (GRUB_AFS_BLOCKRUN_LOG_SIZE): New definition.
+ (grub_afs_read_inode): Use block_shift.
+ (RANGE_SHIFT): New definition.
+ (grub_afs_read_block): Account for RANGE_SHIFT, emit errors on
+ unexpected conditions, use shifts and appropriate types.
+ (GRUB_MOD_INIT): Check the value of GRUB_AFS_BLOCKRUN_LOG_SIZE.
+
+2011-10-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (scan_devices): Check partition.
+ * grub-core/disk/lvm.c (do_lvm_scan): Likewise.
+
+2011-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support BFS (befs) UUID.
+
+ * grub-core/fs/afs.c (grub_afs_inode): Make small_data zero-size.
+ (grub_afs_small_data_element_header): New struct.
+ (grub_afs_read_inode): Read complete inode. Fix ino type while on it.
+ (grub_afs_read_attribute) [MODE_BFS]: New function.
+ (grub_afs_iterate_dir): Allocate for complete inode.
+ (grub_afs_mount): Likewise.
+ (grub_afs_uuid) [MODE_BFS]: New function.
+ (grub_afs_fs) [MODE_BFS]: Add .uuid.
+
+2011-10-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/zfs/zfs.c (read_device): Silence spurious warning.
+ (zfs_unmount): Fix memory leak.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support NTFS reparse points.
+
+ * grub-core/fs/ntfs.c (list_file): Set symlink type when appropriate.
+ (symlink_descriptor): New struct.
+ (grub_ntfs_read_symlink): New function.
+ (grub_ntfs_iterate_dir): Use grub_ntfs_read_symlink.
+ (grub_ntfs_open): Likewise.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/ntfs.h: Add GRUB_NTFS_ prefix. All users updated.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ fstest xnu_uuid subcommand.
+
+ * grub-core/commands/xnu_uuid.c (libgrubkrn): Add
+ grub-core/commands/xnu_uuid.c.
+ * util/grub-fstest.c (CMD_XNU_UUID): New enum value.
+ (fstest): Handle xnu_uuid.
+ (options): Document xnu_uuid.
+ (argp_parser): Parse xnu_uuid.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/xnu_uuid.c (grub_cmd_xnu_uuid): Support
+ -l argument. Add newline at the end if printing.
+ (GRUB_MOD_INIT): Document -l.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_uuid): Add missing field length.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ZFS multi-device and version 33 support.
+
+ * Makefile.util.def (libgrubkern): Add grub-core/fs/zfs/zfsinfo.c.
+ * grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New struct.
+ (grub_zfs_data): Add multidev-ice-related fields.
+ (zio_checksum_verify): Zero-pad printed values. Print checksum name.
+ (dva_get_offset): Make dva const.
+ (zfs_fetch_nvlist): New function.
+ (fill_vdev_info_real): Likewise.
+ (fill_vdev_info): Likewise.
+ (check_pool_label): Likewise.
+ (scan_disk): Likewise.
+ (scan_devices): Likewise.
+ (read_device): Likewise.
+ (read_dva): Likewise.
+ (zio_read_gang): Use read_dva.
+ (zio_read_data): Likewise.
+ (zap_leaf_lookup): Add missing endian conversion.
+ (zap_verify): Add missing endian conversion. All users updated.
+ (fzap_lookup): Likewise.
+ (fzap_iterate): Likewise.
+ (dnode_get_path): Handle SA bonus.
+ (nvlist_find_value): Make input const. All users updated.
+ (unmount_device): New function.
+ (zfs_unmount): Use unmount_device.
+ (zfs_mount): Use scan_disk.
+ (zfs_mtime): New function.
+ (grub_zfs_open): Handle system attributes.
+ (fill_fs_info): Likewise.
+ (grub_zfs_dir): Likewise.
+ (grub_zfs_fs): Add mtime.
+ * grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add missing return.
+ * include/grub/zfs/sa_impl.h (SA_TYPE_OFFSET): New definition.
+ (SA_MTIME_OFFSET): Likewise.
+ (SA_SYMLINK_OFFSET): Likewise.
+ * include/grub/zfs/zfs.h (SPA_VERSION): Increase to 33.
+ * util/grub-fstest.c (CMD_ZFSINFO): New enum value.
+ (fstest): Support zfsinfo.
+ (argp_parser): Likewise.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/datetime.h (grub_datetime2unixtime): Fix off-by-one
+ error.
+
+2011-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ZFS fixes.
+
+ * grub-core/fs/zfs/zfs.c (fzap_iterate): Fix handling of indexes
+ sharing the same block. Iterate over correct number of indices.
+ (dnode_get_path): Handle symlinks correctly.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_sblock): Fix offset to volname.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Read label on HFS+.
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey_id): New function.
+ (grub_hfsplus_btree_search): Fix types.
+ (grub_hfsplus_label): Implement.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (grub_ntfs_uuid): Fix a memory leak.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_uuid): Make uppercase to match Linux.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix symlink handling on iso9660.
+
+ * grub-core/fs/iso9660.c (grub_fshelp_node): Remove dir_off. Add symlink
+ All users updated.
+ (grub_iso9660_susp_iterate): Accept zero-size iterate.
+ (grub_iso9660_read_symlink): Moved most of code ...
+ (grub_iso9660_iterate_dir): ... here. Fill node->symlink.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
+ Use union to avoid breaking strict-aliasing rules.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support multi-extent iso files.
+
+ * grub-core/fs/iso9660.c (grub_iso9660_data): Remove first_sector.
+ Add node.
+ (grub_fshelp_node): Revamp. All users updated.
+ (FLAG_*): New enum.
+ (read_node): New function.
+ (grub_iso9660_susp_iterate): Use read_node. Receive a node as argument.
+ All users updated.
+ (grub_iso9660_mount): Don't attempt to read sua when there is none.
+ (get_node_size): New function.
+ (grub_iso9660_iterate_dir): Use read_node. Agglomerate multi-extent
+ entries.
+ Fix memory leak on . and ..
+ (grub_iso9660_read): Use read_node.
+ (grub_iso9660_close): Free node.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix tar 4G limit and handle paths containing dot.
+
+ * grub-core/fs/cpio.c (grub_cpio_data): Use grub_off_t for offsets.
+ (canonicalize): New function.
+ (grub_cpio_find_file): Use canonicalize. Store offs in
+ grub_disk_addr_t.
+ (grub_cpio_dir): Use grub_disk_addr_t.
+ (grub_cpio_open): Likewise.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of uncompressed blocks on squashfs and break 4G limit.
+
+ * grub-core/fs/squash4.c (grub_squash_super): Add block_size. Remove
+ unused flags.
+ (grub_squash_inode): Add long_file and block_size.
+ (grub_squash_cache_inode): New struct.
+ (grub_squash_dirent): Make types into enum.
+ (SQUASH_TYPE_LONG_REGULAR): New type.
+ (grub_squash_frag_desc): Add field size.
+ (SQUASH_BLOCK_FLAGS): New enum.
+ (grub_squash_data): Use grub_squash_cache_inode.
+ (grub_fshelp_node): Make ino_chunk 64-bit.
+ (read_chunk): Minor argument change. All users updated.
+ (squash_mount): Use correct le_to_cpu.
+ (grub_squash_open): Handle LONG_REGULAR.
+ (direct_read): New function.
+ (grub_squash_read_data): Handle blocks correctly.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak.
+
+2011-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/romfs.c (grub_romfs_open): Add missing return.
+
+2011-10-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix 2G limit on ZFS.
+
+ * grub-core/fs/zfs/zfs.c (zio_checksum_verify): Use more appropriate
+ types.
+ (uberblock_verify): Likewise.
+ (dmu_read): Likewise.
+ (grub_zfs_read): Likewise. Remove invalid cast.
+
+2011-10-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_blkno): Use more appropriate types.
+ (grub_jfs_blkno): Fix incorrect shift.
+ (grub_jfs_read_file): Use more appropriate types.
+
+2011-10-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support triple indirect on minix2 and minix3.
+
+ * grub-core/fs/minix.c (grub_minix_inode) [MODE_MINIX2 || MODE_MINIX3]:
+ Declare triple_indir_zone.
+ (grub_minix_get_file_block) [MODE_MINIX2 || MODE_MINIX3]: Handle triple
+ indirect.
+
+2011-10-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Minix FS fixes.
+
+ * grub-core/fs/minix.c (GRUB_MINIX_INODE_SIZE): Size is always 32-bit.
+ (grub_minix_inode) [!MODE_MINIX2 && !MODE_MINIX3]: Make size 32-bit.
+ Rename ctime to mtime. All users updated.
+ (grub_minix_get_file_block): Fix types and double indirect computations.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/fat.c (grub_fat_label) [MODE_EXFAT]: Set *label to 0
+ if no label is found.
+ (grub_fat_iterate_dir): Fix file size type.
+ (grub_fat_iterate_dir): Likewise.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (gf_invert): Declare as const and
+ save some space.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease.
+ (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Automatically fix camellia.c and camellia.h.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Accept space between # and include.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/longjmp.S.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fine grainely disable warnings on lexer. Remove Wno-error on it.
+
+ * grub-core/Makefile.core.def (normal): Remove -Wno-error.
+ * grub-core/script/lexer.c: Declare yytext_ptr to avoid having
+ yylex_strncpy.
+ * grub-core/script/yylex.l: Add fine-grained #pragma.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/string.h (memcpy) [GRUB_UTIL]:
+ New inline function.
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy) [GRUB_UTIL]:
+ Likewise.
+ (memset) [GRUB_UTIL]: Likewise.
+ (memcmp) [GRUB_UTIL]: Likewise.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_memcpy): Declare grub_memcpy with static
+ inline function rather than a define.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c: Add missing include.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/grub-ofpathname.c: Add missing include.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S (grub_exit): Add missing zeroing-out.
+ * grub-core/lib/i386/reboot_trampoline.S (grub_reboot_start):
+ Likewise.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/lzopio.c (test_header): Fix incorrect memcmp instead of
+ grub_memcmp usage.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Add datarootdir as per automake manual
+ suggestion.
+ * util/grub-mknetdir.in: Likewise.
+
+2011-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_hurd.in: Add datarootdir as per automake manual
+ suggestion.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2011-10-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove redundant grub_kernel_image_size.
+
+ * grub-core/kern/i386/coreboot/init.c (grub_machine_init): Use
+ _edata and _start.
+ * grub-core/kern/i386/coreboot/startup.S: Move multiboot header after
+ the small code. It moves it only by few bytes but simplifies the code.
+ * grub-core/kern/i386/pc/init.c (grub_machine_init): Use _edata and
+ _start.
+ * grub-core/kern/i386/pc/startup.S: Use _edata and _start.
+ (grub_kernel_image_size): Removed.
+ * grub-core/kern/i386/qemu/startup.S: Use _edata and _start.
+ (grub_kernel_image_size): Removed.
+ [APPLE_CC]: Remove apple compiler support. i386-qemu port can't be
+ compiled with Apple toolchain.
+ * grub-core/kern/sparc64/ieee1275/crt0.S: Remove leftover fields.
+ * include/grub/i386/pc/kernel.h (grub_kernel_image_size): Removed.
+ * include/grub/i386/qemu/kernel.h (grub_kernel_image_size): Removed.
+ (grub_total_module_size): Likewise.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_KERNEL_IMAGE_SIZE):
+ Removed.
+ (GRUB_KERNEL_I386_PC_COMPRESSED_SIZE): Put it lower.
+ (GRUB_KERNEL_I386_PC_INSTALL_DOS_PART): Likewise.
+ (GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise.
+ (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Likewise.
+ (GRUB_KERNEL_I386_QEMU_KERNEL_IMAGE_SIZE): Removed.
+ (GRUB_KERNEL_SPARC64_IEEE1275_KERNEL_IMAGE_SIZE): Likewise.
+ (GRUB_KERNEL_SPARC64_IEEE1275_COMPRESSED_SIZE): Likewise.
+ * include/grub/sparc64/ieee1275/kernel.h (grub_kernel_image_size):
+ Removed.
+ (grub_total_module_size): Removed.
+ * util/grub-mkimage.c (image_target_desc): Remove image_size.
+ (image_targets): Likewise.
+ Set .compressed_size to no field on sparc.
+ (generate_image): Remove kernel_image_size handling.
+
+2011-10-19 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/bus/usb/uhci.c (grub_uhci_setup_transfer): Fix possible
+ NULL pointer dereference.
+
+2011-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Removed unused GRUB_BOOT_VERSION. Check for kernel version is better
+ done with a dedicated section.
+
+ * grub-core/boot/sparc64/ieee1275/boot.S: Remove GRUB_BOOT_VERSION.
+ Ensure the correct position of boot_path.
+ * grub-core/kern/i386/efi/startup.S: Remove GRUB_BOOT_VERSION.
+ * grub-core/kern/i386/pc/startup.S: Likewise. Ensure correct position of
+ other fields.
+ * grub-core/kern/x86_64/efi/startup.S: Remove GRUB_BOOT_VERSION.
+ * include/grub/boot.h: Removed. All references removed.
+ * include/grub/sparc64/ieee1275/boot.h (GRUB_BOOT_MACHINE_VER_MAJ):
+ Removed.
+ (GRUB_BOOT_MACHINE_BOOT_DEVPATH): Make it lower.
+
+2011-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Declare IEEE1275 as able to find out the disk
+ name.
+
+2011-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/main.c (grub_set_prefix_and_root): Init prefix.
+
+2011-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
+ Don't add the bogus brackets.
+
+2011-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ExFAT support.
+
+ * Makefile.util.def (libgrubmods.a): Add grub-core/fs/exfat.c.
+ * grub-core/Makefile.core.def (exfat): New module.
+ * grub-core/fs/exfat.c: New file.
+ * grub-core/fs/fat.c (GRUB_FAT_DIR_ENTRY_SIZE): Removed.
+ (GRUB_FAT_ATTR_*): Make into an enum.
+ (GRUB_FAT_ATTR_LONG_NAME) [MODE_EXFAT]: Removed.
+ (GRUB_FAT_ATTR_VALID) [MODE_EXFAT]: Remove GRUB_FAT_ATTR_VOLUME_ID.
+ (GRUB_FAT_ATTR_VOLUME_ID) [MODE_EXFAT]: Removed.
+ (GRUB_FAT_MAXFILE): Removed.
+ (grub_exfat_bpb) [MODE_EXFAT]: New struct.
+ (grub_current_fat_bpb_t): New type.
+ (grub_fat_dir_entry) [MODE_EXFAT]: New struct.
+ (grub_fat_dir_node) [MODE_EXFAT]: New struct.
+ (grub_fat_dir_node_t): New type.
+ (grub_fat_data) [MODE_EXFAT]: Remove root_sector and num_root_sectors.
+ (fat_log2) [MODE_EXFAT]: Removed.
+ (grub_fat_mount): Use grub_current_fat_bpb_t. Add some sanity checks.
+ (grub_fat_mount) [MODE_EXFAT]: Handle ExFAT.
+ (grub_fat_iterate_dir) [MODE_EXFAT]: New function.
+ (grub_fat_find_dir) [MODE_EXFAT]: Handle ExFAT.
+ (grub_fat_label) [MODE_EXFAT]: New function.
+ (grub_fat_fs) [MODE_EXFAT]: Set name to "exfat" and
+ reserved_first_sector to 0.
+
+2011-10-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move grub_reboot out of the kernel.
+
+ * grub-core/Makefile.core.def (reboot): Add platform-specific files.
+ * grub-core/kern/efi/efi.c (grub_reboot): Moved to ...
+ * grub-core/lib/efi/reboot.c: ... here.
+ * grub-core/kern/i386/efi/startup.S: Remove including of realmode.S.
+ * grub-core/kern/i386/ieee1275/startup.S: Likewise.
+ * grub-core/kern/i386/pc/startup.S (grub_exit): Inline cold_reboot.
+ * grub-core/kern/i386/realmode.S (grub_reboot): Moved to...
+ * grub-core/lib/i386/reboot_trampoline.S: ... here.
+ * grub-core/kern/ieee1275/openfw.c (grub_reboot): Moved to...
+ * grub-core/lib/ieee1275/reboot.c: ... here.
+ * grub-core/kern/mips/arc/init.c (grub_reboot): Moved to...
+ * grub-core/lib/mips/arc/reboot.c: ... here.
+ * grub-core/kern/mips/loongson/init.c (grub_reboot): Moved to...
+ * grub-core/lib/mips/loongson/reboot.c: ...here.
+ * grub-core/kern/mips/qemu_mips/init.c (grub_reboot): Moved to...
+ * grub-core/lib/mips/qemu_mips/reboot.c: ... here.
+ * include/grub/emu/misc.h (grub_reboot): New function declaration.
+ * include/grub/i386/reboot.h: New file.
+ * include/grub/mips/loongson/ec.h: Fix includes.
+ * include/grub/mips/qemu_mips/kernel.h (grub_reboot): Removed.
+ * include/grub/misc.h (grub_reboot): Don't mark as kernel function.
+ * grub-core/lib/i386/reboot.c: New file.
+
+2011-10-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make grub_prefix into module to fix the arbitrary limit and save
+ some space.
+
+ * grub-core/kern/emu/main.c (grub_prefix): Removed.
+ * grub-core/kern/i386/coreboot/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/i386/efi/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/i386/ieee1275/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/i386/pc/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/i386/qemu/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/ia64/efi/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/mips/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise.
+ * grub-core/kern/sparc64/ieee1275/crt0.S (grub_prefix): Likewise.
+ * grub-core/kern/x86_64/efi/startup.S (grub_prefix): Likewise.
+ * include/grub/ia64/efi/kernel.h: Removed.
+ * include/grub/kernel.h: New module type OBJ_TYPE_PREFIX.
+ (grub_prefix): Removed.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_PREFIX): Removed.
+ (GRUB_KERNEL_I386_PC_PREFIX_END): Likewise.
+ (GRUB_KERNEL_I386_QEMU_PREFIX): Likewise.
+ (GRUB_KERNEL_I386_QEMU_PREFIX_END): Likewise.
+ (GRUB_KERNEL_SPARC64_IEEE1275_PREFIX): Likewise.
+ (GRUB_KERNEL_SPARC64_IEEE1275_PREFIX_END): Likewise.
+ (GRUB_KERNEL_POWERPC_IEEE1275_PREFIX): Likewise.
+ (GRUB_KERNEL_POWERPC_IEEE1275_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MIPS_LOONGSON_PREFIX): Likewise.
+ (GRUB_KERNEL_MIPS_LOONGSON_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise.
+ (GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise.
+ (GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise.
+ (GRUB_KERNEL_I386_EFI_PREFIX): Likewise.
+ (GRUB_KERNEL_I386_EFI_PREFIX_END): Likewise.
+ (GRUB_KERNEL_IA64_EFI_PREFIX): Likewise.
+ (GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise.
+ (GRUB_KERNEL_X86_64_EFI_PREFIX): Likewise.
+ (GRUB_KERNEL_X86_64_EFI_PREFIX_END): Likewise.
+ (GRUB_KERNEL_I386_COREBOOT_PREFIX): Likewise.
+ (GRUB_KERNEL_I386_COREBOOT_PREFIX_END): Likewise.
+ (GRUB_KERNEL_I386_MULTIBOOT_PREFIX): Likewise.
+ (GRUB_KERNEL_I386_MULTIBOOT_PREFIX_END): Likewise.
+ (GRUB_KERNEL_I386_IEEE1275_PREFIX): Likewise.
+ (GRUB_KERNEL_I386_IEEE1275_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MACHINE_PREFIX): Likewise.
+ (GRUB_KERNEL_MACHINE_PREFIX_END): Likewise.
+ * grub-core/kern/main.c (grub_set_prefix_and_root): Retrieve grub_prefix
+ from module.
+ * util/grub-mkimage.c (image_target_desc): Removed prefix and
+ prefix_end.
+ (image_targets): Likewise.
+ (generate_image): Put prefix as a module.
+
+2011-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Replace grub_module_iterate with FOR_MODULES.
+
+ * grub-core/disk/memdisk.c (GRUB_MOD_INIT): Switched to new interface.
+ * grub-core/kern/efi/efi.c (grub_arch_modules_addr): Renamed to...
+ (grub_efi_modules_addr): ...this.
+ * grub-core/kern/efi/init.c (grub_modbase): New variable.
+ (grub_efi_init): Set grub_modbase.
+ * grub-core/kern/emu/main.c (grub_arch_modules_addr): Removed.
+ (grub_modbase): New variable.
+ * grub-core/kern/i386/coreboot/init.c (grub_arch_modules_addr): Removed.
+ (grub_modbase): New variable.
+ (grub_machine_init): Set grub_modbase.
+ * grub-core/kern/i386/pc/init.c (grub_arch_modules_addr): Removed.
+ (grub_modbase): New variable.
+ (grub_machine_init): Set grub_modbase.
+ * grub-core/kern/ieee1275/init.c (grub_arch_modules_addr): Removed.
+ (grub_modbase): New variable.
+ (grub_machine_init): Set grub_modbase.
+ * grub-core/kern/main.c (grub_module_iterate): Remove.
+ (grub_modules_get_end): Use grub_modbase.
+ (grub_load_modules): Use FOR_MODULES.
+ (grub_load_config): Likewise.
+ * grub-core/kern/mips/arc/init.c (grub_arch_modules_addr): Removed.
+ (grub_modbase): New variable.
+ (grub_machine_init): Set grub_modbase.
+ * grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): Removed.
+ (grub_modbase): New variable.
+ (grub_machine_init): Set grub_modbase.
+ * grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr):
+ Removed.
+ (grub_modbase): New variable.
+ (grub_machine_init): Set grub_modbase.
+ * include/grub/efi/efi.h (grub_efi_modules_addr): New declaration.
+ * include/grub/kernel.h (grub_arch_modules_addr): Removed.
+ (grub_module_iterate): Likewise.
+ (grub_modbase): New variable declaration.
+ (FOR_MODULES): New macro.
+
+2011-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for __ctzdi2 and __ctzsi2.
+ * include/grub/libgcc.h: Include __ctzdi2 and __ctzsi2 if present.
+
+2011-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix few obvious type discrepancies.
+
+ * grub-core/fs/affs.c (grub_affs_read_file): Use grub_off_t for offset.
+ * grub-core/fs/afs.c (grub_afs_read_file): Likewise.
+ * grub-core/fs/fshelp.c (grub_fshelp_find_file): Remove leftover
+ variable.
+ * grub-core/fs/hfs.c (grub_hfs_read_file): Use grub_off_t for offset
+ and connected types.
+ * grub-core/fs/nilfs2.c (grub_nilfs2_read_file): Use grub_off_t for
+ offset.
+ (grub_nilfs2_iterate_dir): Use grub_off_t for fpos.
+ * grub-core/fs/sfs.c (grub_sfs_read_file): Use grub_off_t for offset.
+ * grub-core/fs/ufs.c (grub_ufs_read_file): Use grub_off_t for offset
+ and connected types.
+
+2011-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix python 3.x incompatibilities.
+
+ * gentpl.py: Put brackets around print strings.
+ * util/import_gcry.py: Open explicitly as utf-8.
+ Use in instead of has_key.
+
+2011-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/xfs.c (grub_xfs_inode): New field fork_offset.
+ (GRUB_XFS_INO_AGBITS): Make into inline function.
+ (GRUB_XFS_INO_INOINAG): Likewise.
+ (GRUB_XFS_INO_AG): Likewise.
+ (GRUB_XFS_FSB_TO_BLOCK): Likewise.
+ (GRUB_XFS_EXTENT_OFFSET): Likewise.
+ (GRUB_XFS_EXTENT_BLOCK): Likewise.
+ (GRUB_XFS_EXTENT_SIZE): Likewise.
+ (GRUB_XFS_ROUND_TO_DIRENT): Likewise.
+ (GRUB_XFS_NEXT_DIRENT): Likewise.
+ (grub_xfs_read_block): Rewrite the btree parsing. Fixes invalid BMAP.
+ (grub_xfs_read_file): Fix offset type.
+
+2011-10-15 Robert Millan <rmh@gnu.org>
+
+ * util/getroot.c (grub_util_get_grub_dev): Fix OS selection #ifdefs.
+
+2011-10-15 Robert Millan <rmh@gnu.org>
+
+ Fix build problem on FreeBSD and GNU/kFreeBSD.
+
+ * util/getroot.c [__FreeBSD_kernel__]: Include `<sys/mount.h>'.
+
+2011-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix overflow with >2GiB file on HFS+. >4GiB wasn't tested.
+
+ * grub-core/fs/hfsplus.c (grub_hfsplus_btree): Use more appropriate
+ types.
+ (grub_hfsplus_btree_recoffset): Likewise.
+ (grub_hfsplus_btree_recptr): Likewise.
+ (grub_hfsplus_find_block): Likewise.
+ (grub_hfsplus_btree_search): Likewise.
+ (grub_hfsplus_read_block): Likewise.
+ (grub_hfsplus_read_file): Likewise.
+ (grub_hfsplus_mount): Likewise.
+ (grub_hfsplus_btree_iterate_node): Likewise.
+ (grub_hfsplus_btree_search): Likewise.
+ (grub_hfsplus_iterate_dir): Likewise.
+ (grub_hfsplus_read): A small code simplification.
+
+2011-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Don't assume that children
+ of mapper nodes are mapper nodes.
+
+2011-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/posix_wrap/ctype.h (isxdigit): Use grub_isxdigit.
+ * include/grub/misc.h (grub_isxdigit): New function.
+ * grub-core/video/colors.c (my_isxdigit): Removed. All users
+ switched to grub_isxdigit.
+ * grub-core/term/serial.c (grub_serial_find): Fix in case of port
+ number starting with a letter.
+
+2011-10-09 Robert Millan <rmh@gnu.org>
+
+ LVM support for FreeBSD and GNU/kFreeBSD.
+
+ * util/lvm.c (grub_util_lvm_isvolume): Enable on FreeBSD and
+ GNU/kFreeBSD.
+ (LVM_DEV_MAPPER_STRING): Move from here ...
+ * include/grub/util/lvm.h (LVM_DEV_MAPPER_STRING): ... to here.
+ * util/getroot.c: Include `<grub/util/lvm.h>'.
+ (grub_util_get_dev_abstraction): Enable
+ grub_util_biosdisk_is_present() on FreeBSD and GNU/kFreeBSD.
+ Check for LVM abstraction on FreeBSD and GNU/kFreeBSD.
+ (grub_util_get_grub_dev): Replace "/dev/mapper/" with
+ `LVM_DEV_MAPPER_STRING'. Enable LVM and mdRAID only on platforms that
+ support it.
+ * util/grub-setup.c (main): Check for LVM also on FreeBSD and
+ GNU/kFreeBSD.
+ * util/grub.d/10_kfreebsd.in: Load `geom_linux_lvm' kernel module
+ when LVM abstraction is required for ${GRUB_DEVICE}.
+
+2011-10-06 Szymon Janc <szymon@janc.net.pl>
+
+ Add support for LZO compression in GRUB:
+ - import of minilzo library,
+ - LZO decompression for btrfs,
+ - lzop files decompression.
+
+ * grub-core/io/lzopio.c: New file.
+ * grub-core/lib/adler32.c: Likewise.
+ * grub-core/lib/minilzo/lzoconf.h: Likewise.
+ * grub-core/lib/minilzo/lzodefs.h: Likewise.
+ * grub-core/lib/minilzo/minilzo.c: Likewise.
+ * grub-core/lib/minilzo/minilzo.h: Likewise.
+ * Makefile.util.def (libgrubmods.a): Add grub-core/io/lzopio.c,
+ grub-core/lib/adler32.c, grub-core/io/lzopio.c,
+ grub-core/lib/minilzo/minilzo.c to common.
+ * Makefile.util.def (libgrubmods.a): Add flags required by minilzo to
+ cflags in cppflags.
+ * grub-core/Makefile.core.def (btrfs): Likewise.
+ * grub-core/Makefile.core.def (lzopio): New module.
+ (adler32): Likewise.
+ * grub-core/fs/btrfs.c: Include minilzo.h.
+ (GRUB_BTRFS_COMPRESSION_LZO): New define.
+ (GRUB_BTRFS_LZO_BLOCK_SIZE): Likewise.
+ (GRUB_BTRFS_LZO_BLOCK_MAX_CSIZE): Likewise.
+ (grub_btrfs_lzo_decompress): New function.
+ (grub_btrfs_extent_read): Add support for LZO compression type.
+ * include/grub/types.h (GRUB_UCHAR_MAX): New define.
+ (GRUB_USHRT_MAX): Likewise.
+ (GRUB_UINT_MAX): Likewise.
+ * grub-core/lib/posix_wrap/limits.h (USHRT_MAX): Likewise.
+ (UINT_MAX): Likewise.
+ (CHAR_BIT): Likewise.
+ * grub-core/lib/posix_wrap/sys/types.h (ULONG_MAX): Moved to
+ grub-core/lib/posix_wrap/limits.h
+ (UCHAR_MAX): Likewise.
+ * include/grub/file.h (grub_file_filter_id): New compression filter
+ GRUB_FILE_FILTER_LZOPIO.
+ * include/grub/file.h (grub_file_filter_id): Set
+ GRUB_FILE_FILTER_LZOPIO as GRUB_FILE_FILTER_COMPRESSION_LAST.
+ * include/grub/types.h (grub_get_unaligned16): New function.
+ (grub_get_unaligned32): Likewise.
+ (grub_get_unaligned64): Likewise.
+ * util/import_gcry.py (cryptolist): Add adler32.
+
+2011-10-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def: Eliminate rarely used emu_condition. This
+ in perspective decreases the complexity of build system and fixes
+ compilation right now.
+
+2011-10-01 Ales Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/uhci.c: Changes made by Rock Cui - thanks!
+ (fixed problem related to using UHCI with coreboot).
+
+2011-08-25 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * gentpl.py: Use Autogen macros so that the output template file
+ (Makefile.tpl) size is reduced.
+
+2011-09-29 Mads Kiilerich <mads@kiilerich.com>
+
+ * grub-core/Makefile.core.def (kernel): Add kern/i386/int.S to
+ extra_dist.
+
+2011-09-29 Mario Limonciello <mario_limonciello@dell.com>
+
+ * util/misc.c (grub_util_get_disk_size) [__MINGW32__]: Strip trailing
+ slashes on PHYSICALDRIVE%d paths when making Windows CreateFile calls.
+
+2011-09-29 Mario Limonciello <mario_limonciello@dell.com>
+
+ * grub-core/kern/emu/misc.c (canonicalize_file_name) [__MINGW32__]: Use
+ _fullpath.
+
+2011-09-29 Mario Limonciello <mario_limonciello@dell.com>
+
+ Remove extra declaration of sleep for mingw32.
+
+ * util/misc.c (sleep) [__MINGW32__]: Removed.
+ * include/grub/util/misc.h (sleep) [__MINGW32__]: Likewise.
+
+2011-09-28 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * include/grub/bsdlabel.h (grub_partition_bsd_disk_label): Add fields
+ type and packname.
+ * include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK):
+ Resurrected.
+ (NETBSD_BTINFO_BOOTWEDGE): New definition.
+ (grub_netbsd_btinfo_bootwedge): New struct.
+ * grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
+ New function.
+ (grub_cmd_netbsd): Call grub_netbsd_add_boot_disk_and_wedge.
+
+2011-09-28 Thomas Haller <thomas.haller@fen-net.de>
+
+ * grub-core/loader/multiboot_elfxx.c (Elf_Shdr): Set according to
+ loader.
+
+2011-09-28 Andreas Born <futur.andy@googlemail.com>
+
+ Fix incorrect identifiers in bash-completion.
+
+ * util/bash-completion.d/grub-completion.bash.in
+ (_grub_mkpasswd-pbkdf2): Rename to ...
+ (_grub_mkpasswd_pbkdf2): ... this. All users updated.
+ (_grub_script-check): Rename to ...
+ (_grub_script_check): ... this. All users updated.
+
+2011-09-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy):
+ Return 0 if disk isn't biosdisk.
+
+2011-09-17 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * Makefile.util.def (grub-mkrelpath): Add LIBUTIL for getrawpartition(3)
+ on NetBSD.
+ * Makefile.util.def (grub-fstest): Likewise.
+
+2011-09-17 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__NetBSD__]:
+ Get sector size from disk label.
+
+2011-09-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Return 1 for
+ */README* as well as README*.
+ Reported by: Axel Beckert.
+
+2011-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/loongson/init.c (grub_machine_init): Handle the
+ case of less than 256 MiB of RAM.
+
+2011-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (make_regex): Handle @.
+
+2011-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Move cryptodisk logic to appropriate place.
+
+2011-08-21 Szymon Janc <szymon@janc.net.pl>
+
+ * acinclude.m4: Use AC_LANG_PROGRAM macro to generate source code for
+ AC_LANG_CONFTEST macros.
+
+2011-08-20 Szymon Janc <szymon@janc.net.pl>
+
+ Add grub-fstest option to uncompress data for commands.
+
+ * util/grub-fstest.c (uncompress): New var.
+ (options): New option -u.
+
+2011-08-20 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/loader/i386/linux.c (grub_linux_setup_video): Add
+ GRUB_VIDEO_DRIVER_RADEON_FULOONG2E to switch case statement.
+
+2011-08-20 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/io/gzio.c (grub_gzio_open): Always return original io if
+ file type was not recognized correctly (not gzip or corrupted).
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/loongson/init.c (grub_reboot): Reboot Fuloong.
+ * include/grub/cs5536.h (GRUB_CS5536_MSR_DIVIL_RESET): New definition.
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (kernel): Add video/radeon_fuloong2e.c on
+ loongson.
+ * grub-core/kern/mips/loongson/init.c (grub_machine_init): Init
+ video_radeon_fuloong2e.
+ * grub-core/video/radeon_fuloong2e.c: New file.
+ * include/grub/video.h (grub_video_id_t): Add new ID
+ GRUB_VIDEO_DRIVER_RADEON_FULOONG2E.
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_COP0_PRID): New
+ define.
+ * grub-core/kern/mips/loongson/init.c (grub_machine_init): Check
+ that PRID matches the detected subplatform and reset the subplatform
+ if it doesn't.
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vprintf): Fix a bug on malloc failure.
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix PCI iterating on functions >= 4.
+
+ * grub-core/bus/pci.c (grub_pci_iterate): Remove useless ghost skipping.
+ * include/grub/mips/loongson/pci.h (GRUB_LOONGSON_OHCI_GHOST_FUNCTION):
+ Removed.
+ (GRUB_LOONGSON_EHCI_GHOST_FUNCTION): Likewise.
+ (grub_pci_read): Fix bitmask.
+ (grub_pci_read_word): Likewise.
+ (grub_pci_read_byte): Likewise.
+ (grub_pci_write): Likewise.
+ (grub_pci_write_word): Likewise.
+ (grub_pci_write_byte): Likewise.
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Don't impose march=loongson2f on loongson platform. (It
+ can still be specified in TARGET_CFLAGS)
+
+2011-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rename Fuloong into Fuloong 2F. Add new ID for Fuloong2E.
+
+ * grub-core/Makefile.core.def (fwstart_fuloong): Rename fwstart_fuloong
+ into fwstart_fuloong2f. Use boot/mips/loongson/fuloong2f.S.
+ * grub-core/boot/mips/loongson/fuloong.S: Rename to ...
+ * grub-core/boot/mips/loongson/fuloong2f.S: ... this.
+ (FULOONG): Rename to ...
+ (FULOONG2F): ... this. All users updated.
+ * grub-core/boot/mips/startup_raw.S (machtype_fuloong_str): Rename to
+ (machtype_fuloong2f_str): ... this.
+ (machtype_fuloong2e_str): New string.
+ Check for machtype_fuloong2e_str.
+ * grub-core/loader/mips/linux.c (loongson_machtypes)
+ [GRUB_MACHINE_MIPS_LOONGSON]: Add GRUB_ARCH_MACHINE_FULOONG2E.
+ * grub-core/term/serial.c (loongson_defserial)
+ [GRUB_MACHINE_MIPS_LOONGSON]: New array.
+ (grub_serial_register) [GRUB_MACHINE_MIPS_LOONGSON]: Use
+ loongson_defserial.
+ * include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_FULOONG):
+ Rename to ...
+ (GRUB_ARCH_MACHINE_FULOONG2F): ... this.
+ (GRUB_ARCH_MACHINE_FULOONG2E): New const.
+ * util/grub-mkimage.c (image_target_desc): Rename IMAGE_FULOONG_FLASH
+ to IMAGE_FULOONG2F_FLASH. All users updated.
+ (image_targets): Rename images.
+ * util/grub-mkstandalone.in: Accept fuloong2f and fuloong2e.
+
+2011-08-19 Szymon Janc <szymon@janc.net.pl>
+
+ Make enable of disk cache statistics code configurable.
+
+ * configure.ac: --enable-cache-stats added.
+ * config.h.in (DISK_CACHE_STATS): New define.
+ * grub-core/Makefile.core.def (cacheinfo): New command.
+ * include/grub/disk.h(grub_disk_cache_get_performance): New function.
+ * grub-core/commands/cacheinfo.c: New file.
+ * grub-core/commands/minicmd.c (grub_rescue_cmd_info): Updated and
+ moved to cacheinfo.c.
+ * grub-core/kern/disk.c: Use DISK_CACHE_STATS to disable disk cache
+ debug code.
+ * include/grub/disk.h: Likewise.
+
+2011-08-19 Szymon Janc <szymon@janc.net.pl>
+
+ * Makefile.am (AUTOMAKE_OPTIONS): = Added -Wno-portability flag.
+ * grub-core/Makefile.am: Likewise.
+
+2011-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_iterate): Skip with
+ non-zero pull.
+
+2011-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/jfs.c (grub_jfs_read_file): New parameter ino.
+ All users updated.
+ (grub_jfs_lookup_symlink): Use correct starting inode.
+
+2011-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (main): Add missing gcry initialisation.
+
+2011-08-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't accept text modes on EFI when booting Linux.
+
+ * grub-core/loader/i386/linux.c (ACCEPTS_PURE_TEXT): New define.
+ (grub_linux_boot) [!ACCEPTS_PURE_TEXT]: Restrict to graphics modes.
+
+2011-08-15 Mario Limonciello <mario_limonciello@dell.com>
+2011-08-15 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-probe.c (probe): Canonicalise the path argument, fixing
+ use of "/path/.." as in grub-install for EFI as well as handling
+ symlinks correctly.
+ Fixes Debian bug #637768.
+
+2011-08-15 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-probe.c: Remove duplicate #include.
+
+2011-08-10 Robert Millan <rmh@gnu.org>
+
+ Detect LSI MegaRAID SAS (`mfi') devices on GNU/kFreeBSD.
+
+ * util/deviceiter.c [__FreeBSD_kernel__] (get_mfi_disk_name): New
+ function.
+ [__FreeBSD_kernel__] (grub_util_iterate_devices): Scan for mfi
+ (/dev/mfid[0-9]+) devices using get_mfi_disk_name().
+
+2011-08-03 Robert Millan <rmh@gnu.org>
+
+ * include/grub/zfs/zap_leaf.h (typedef union zap_leaf_chunk): Mark
+ la_array as packed.
+ Reported by: Zachary Bedell
+
+2011-07-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: The Loongson port requires grub-mkfont due to its
+ use of -DUSE_ASCII_FAILBACK. Raise an error if it is not going to
+ be built.
+
+2011-07-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Don't source grub-mkconfig_lib until after
+ processing arguments (otherwise help2man fails when GRUB has not yet
+ been installed).
+
+2011-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New script grub-mkstandalone.
+
+ * Makefile.util.def (grub-mkstandalone): New script.
+ * docs/man/grub-mkstandalone.h2m: New file.
+ * util/grub-mkstandalone.in: Likewise.
+
+2011-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support ATA disks with 4K sectors.
+
+ * include/grub/ata.h (grub_ata): New member log_sector_size.
+ * grub-core/disk/ata.c (grub_ata_dumpinfo): Show sector size.
+ (grub_ata_identify): Read sector size.
+ (grub_ata_readwrite): Use log_sector_size rather than hardcoded value.
+
+2011-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Don't use uhci outside of x86.
+
+2011-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Add missing quotes.
+
+2011-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu.c (grub_menu_execute_entry): Fix NULL
+ dereference.
+
+2011-07-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/pata.c (grub_pata_readwrite): Add missing wait.
+
+2011-07-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/video.h: add missing EXPORT_FUND on
+ grub_video_edid_checksum and grub_video_edid_preferred_mode.
+
+2011-07-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/mips/kernel.h: Fix define conflict.
+
+2011-07-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]: Flush
+ all four ways.
+
+2011-07-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Preferred resolution detection for VBE.
+
+ * grub-core/video/video.c (grub_video_edid_checksum): New function.
+ (grub_video_edid_preferred_mode): Likewise. Try EDID followed by
+ the Flat Panel extension, in line with the X.org VESA driver.
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info):
+ New function.
+ (grub_vbe_bios_get_ddc_capabilities): Likewise.
+ (grub_vbe_bios_read_edid): Likewise.
+ (grub_vbe_get_preferred_mode): Likewise.
+ (grub_video_vbe_setup): When the mode is "auto", try to get the
+ preferred mode from VBE, and use the largest mode that is no larger
+ than the preferred mode (some BIOSes expose a preferred mode that is
+ not in their mode list!). If this fails, fall back to 640x480 as a
+ safe conservative choice.
+ (grub_video_vbe_get_edid): New function.
+ (grub_video_vbe_adapter): Add get_edid.
+ * include/grub/video.h (struct grub_vbe_edid_info): New structure.
+ (struct grub_video_adapter): Add get_edid.
+ (grub_video_edid_checksum): Add prototype.
+ (grub_video_edid_preferred_mode): Likewise.
+ * include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
+ structure.
+
+ * grub-core/commands/videoinfo.c (print_edid): New function.
+ (grub_cmd_videoinfo): Print EDID if available.
+
+ * util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto". This
+ is more appropriate on a wider range of platforms than 640x480.
+ * docs/grub.texi (Simple configuration): Update GRUB_GFXMODE
+ documentation.
+
+2011-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Recognize ESP mounted at /boot/EFI.
+
+2011-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+
+2011-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix
+ incorrect memory usage.
+
+2011-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Source grub-mkconfig_lib.
+
+2011-07-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove getroot.c from core on emu platform.
+
+ * grub-core/Makefile.core.def (kernel): Remove kern/emu/getroot.c and
+ kern/emu/raid.c.
+ * grub-core/kern/emu/main.c (main): Don't try to guess root device. It's
+ useless.
+ * grub-core/kern/emu/misc.c (get_win32_path): Moved from here...
+ * util/getroot.c (get_win32_path): ... here.
+ * grub-core/kern/emu/misc.c (fini_libzfs): Moved from here...
+ * util/getroot.c (fini_libzfs): ... here.
+ * grub-core/kern/emu/misc.c (grub_get_libzfs_handle): Moved from here...
+ * util/getroot.c (grub_get_libzfs_handle): ... here.
+ * grub-core/kern/emu/misc.c (grub_find_zpool_from_dir):
+ Moved from here...
+ * util/getroot.c (grub_find_zpool_from_dir): ... here.
+ * grub-core/kern/emu/misc.c
+ (grub_make_system_path_relative_to_its_root): Moved from here...
+ * util/getroot.c (grub_make_system_path_relative_to_its_root): ... here.
+ * grub-core/kern/emu/getroot.c: Moved from here ...
+ * util/getroot.c: ... here. All users updated.
+ * grub-core/kern/emu/raid.c: Moved from here ...
+ * util/raid.c: ... here. All users updated.
+
+2011-07-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+
+2011-07-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix compilation on GNU/Linux.
+
+ * grub-core/kern/emu/getroot.c (grub_util_pull_device) [!FreeBSD]:
+ Disable geli.
+ (grub_util_get_grub_dev) [!FreeBSD]: Likewise.
+ (grub_util_pull_device) [HAVE_DEVICE_MAPPER]: Fix const and func name.
+ * grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Fix proto.
+
+2011-07-07 Vladimir Serbinenko <phcoder@gmail.com>
+2011-07-07 Michael Gorven <michael@gorven.za.net>
+2011-07-07 Clemens Fruhwirth <clemens@endorphin.org>
+
+ LUKS and GELI support.
+
+ * Makefile.util.def (libgrubkern.a): Add grub-core/lib/crypto.c,
+ grub-core/disk/luks.c, grub-core/disk/geli.c,
+ grub-core/disk/cryptodisk.c, grub-core/disk/AFSplitter.c,
+ grub-core/lib/pbkdf2.c, grub-core/commands/extcmd.c,
+ grub-core/lib/arg.c.
+ (libgrubmods.a): Remove gcrypts cflags and cppflags.
+ Remove grub-core/commands/extcmd.c, grub-core/lib/arg.c,
+ grub-core/lib/crypto.c, grub-core/lib/libgcrypt-grub/cipher/sha512.c,
+ grub-core/lib/libgcrypt-grub/cipher/crc.c and grub-core/lib/pbkdf2.c.
+ (grub-bin2h): Add libgcry.a.
+ (grub-mkimage): Likewise.
+ (grub-mkrelpath): Likewise.
+ (grub-script-check): Likewise.
+ (grub-editenv): Likewise.
+ (grub-mkpasswd-pbkdf2): Likewise.
+ (grub-pe2elf): Likewise.
+ (grub-fstest): Likewise.
+ (grub-mkfont): Likewise.
+ (grub-mkdevicemap): Likewise.
+ (grub-probe): Likewise.
+ (grub-ofpath): Likewise.
+ (grub-mklayout): Likewise.
+ (example_unit_test): Likewise.
+ (grub-menulst2cfg): Likewise.
+ * autogen.sh (UTIL_DEFS): Add Makefile.utilgcry.def.
+ * grub-core/Makefile.core.def (cryptodisk): New module.
+ (luks): Likewise.
+ (geli): Likewise.
+ * grub-core/disk/AFSplitter.c: New file.
+ * grub-core/disk/cryptodisk.c: Likewise.
+ * grub-core/disk/geli.c: Likewise.
+ * grub-core/disk/luks.c: Likewise.
+ * grub-core/kern/emu/getroot.c (get_dm_uuid): New function based on
+ grub_util_is_lvm.
+ (grub_util_get_dm_abstraction): New function.
+ (grub_util_follow_gpart_up): Likewise.
+ (grub_util_get_geom_abstraction): Likewise.
+ (grub_util_get_dev_abstraction): Use new functions.
+ (grub_util_pull_device): Pull GELI and LUKS.
+ (grub_util_get_grub_dev): Handle LUKS and GELI.
+ * grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): New function.
+ (grub_util_biosdisk_open): Use grub_util_get_fd_sectors.
+ (follow_geom_up): Removed.
+ (grub_util_fd_seek): New function.
+ (open_device): Use grub_util_fd_seek.
+ (nread): Rename to ..
+ (grub_util_fd_read): ... this. All users updated.
+ * grub-core/lib/crypto.c (grub_crypto_ecb_decrypt): A better prototype.
+ (grub_crypto_cbc_decrypt): Likewise.
+ (grub_crypto_hmac_write): Likewise.
+ (grub_crypto_hmac_buffer): Likewise.
+ (grub_password_get): Extend to util.
+ * include/grub/crypto.h (gcry_cipher_spec) [GRUB_UTIL]:
+ New member modname.
+ (gcry_md_spec) [GRUB_UTIL]: Likewise.
+ * include/grub/cryptodisk.h: New file.
+ * include/grub/disk.h (grub_disk_dev_id): Rename LUKS to CRYPTODISK.
+ * include/grub/emu/getroot.h (grub_dev_abstraction_types): Add
+ LUKS and GELI.
+ (grub_util_follow_gpart_up): New proto.
+ * include/grub/emu/hostdisk.h (grub_util_fd_seek): Likewise.
+ (grub_util_fd_read): Likewise.
+ (grub_cryptodisk_cheat_mount): Likewise.
+ (grub_util_cryptodisk_print_uuid): Likewise.
+ (grub_util_get_fd_sectors): Likewise.
+ * util/grub-fstest.c (mount_crypt): New var.
+ (fstest): Mount crypto if requested.
+ (options): New option -C.
+ (argp_parser): Parse -C.
+ (main): Init and fini gcry.
+ * util/grub-install.in: Support cryptodisk install.
+ * util/grub-mkconfig.in: Export GRUB_ENABLE_CRYPTODISK.
+ * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Support
+ cryptodisk.
+ (prepare_grub_to_access_device): Likewise.
+ * util/grub-mkpasswd-pbkdf2.c (main): Use grub_password_get.
+ * util/grub-probe.c (probe_partmap): Support cryptodisk UUID probe.
+ (probe_cryptodisk_uuid): New function.
+ (probe_abstraction): Likewise.
+ (probe): Use new functions.
+ * util/import_gcry.py: Create Makefile.utilgcry.def.
+ Add modname member.
+
+2011-07-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Lazy device scanning.
+
+ * Makefile.util.def (libgrubkern.a): Add grub-core/kern/emu/raid.c.
+ (grub-setup): Remove util/raid.c.
+ * grub-core/Makefile.core.def (kernel): Add kern/emu/raid.c on emu.
+ * grub-core/disk/lvm.c (scan_depth): New variable.
+ (grub_lvm_iterate): Rescan if necessary.
+ (find_lv): New function based on grub_lvm_open.
+ (grub_lvm_open): Use find_lv. Rescan on error.
+ (is_node_readable): New function.
+ (is_lv_readable): Likewise.
+ (grub_lvm_scan_device): Skip already found disks.
+ (do_lvm_scan): New function. Move grub_lvm_scan_device inside of it.
+ Stop if searched device is found and readable.
+ * grub-core/disk/raid.c (inscnt): New variable.
+ (scan_depth): Likewise.
+ (scan_devices): New function based on grub_raid_register. Abort if
+ looked for device is found.
+ (grub_raid_iterate): Rescan if needed.
+ (find_array): NEw function based on -grub_raid_open.
+ (grub_raid_open): Use find_array and rescan.
+ (insert_array): Set became_readable_at.
+ * grub-core/kern/disk.c (grub_disk_dev_iterate): Iterate though "pull.
+ * grub-core/kern/emu/getroot.c (grub_util_open_dm) [HAVE_DEVICE_MAPPER]:
+ New function.
+ (grub_util_is_lvm) [HAVE_DEVICE_MAPPER]: Use grub_util_open_dm.
+ (grub_util_pull_device): New function.
+ (grub_util_get_grub_dev): Call grub_util_pull_device.
+ * util/raid.c: Moved to ..
+ * grub-core/kern/emu/raid.c: ... here.
+ (grub_util_raid_getmembers): New parameter "bootable".
+ All users updated. Support 1.x.
+ * include/grub/ata.h (grub_ata_dev): Change iterate prototype.
+ All users updated.
+ * include/grub/disk.h (grub_disk_pull_t): New enum.
+ (grub_disk_dev): Change iterate prototype.
+ All users updated.
+ * include/grub/emu/getroot.h (grub_util_raid_getmembers) [__linux__]:
+ New proto.
+ * include/grub/emu/hostdisk.h (grub_util_pull_device): Likewise.
+ * include/grub/lvm.h (grub_lvm_lv): New members fullname and compatname.
+ * include/grub/raid.h (grub_raid_array): New member became_readable_at.
+ * include/grub/scsi.h (grub_scsi_dev): Change iterate prototype.
+ All users updated.
+ * include/grub/util/raid.h: Removed.
+
+2011-07-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES.in: Regenerate.
+
+2011-07-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify sparc init with other ieee1275.
+
+ * grub-core/Makefile.core.def (kernel): Use kern/ieee1275/init.c
+ instead of kern/sparc64/ieee1275/init.c.
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options)
+ [__sparc__]: Set GRUB_IEEE1275_FLAG_NO_PARTITION_0.
+ * grub-core/kern/ieee1275/init.c [__sparc__]: Include
+ grub/machine/kernel.h.
+ (grub_ieee1275_original_stack) [__sparc__]: New variable.
+ (grub_claim_heap) [__sparc__]: Use sparc version.
+ (grub_machine_init): Moved args parsing to
+ (grub_parse_cmdline): ...this.
+ * grub-core/kern/sparc64/ieee1275/init.c: Removed.
+ * include/grub/offsets.h (GRUB_KERNEL_SPARC64_IEEE1275_MOD_GAP):
+ New definition.
+ (GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN): Likewise.
+
+ Move BOOTP to separate file.
+
+ * grub-core/Makefile.core.def (net): Add net/bootp.c.
+ * grub-core/net/net.c: Move all BOOTP functions to
+ * grub-core/net/bootp.c: ... here.
+
+ Use frame interface on PXE.
+
+ * grub-core/Makefile.core.def (pxecmd): Removed.
+ (pxe): Use net/drivers/i386/pc/pxe.c rather than net/i386/pc/pxe.c.
+ * grub-core/commands/i386/pc/pxecmd.c: Removed.
+ * grub-core/i386/pc/pxe.c: Moved from here ...
+ * grub-core/net/i386/pc/pxe.c: ... here. Rewritten.
+ * grub-core/net/net.c (grub_net_open_real): Handle old pxe syntax.
+ * include/grub/i386/pc/pxe.h (grub_pxe_unload): Removed.
+
+ EFI network support.
+
+ * grub-core/Makefile.core.def (efinet): New module.
+ * grub-core/disk/efi/efidisk.c (compare_device_paths): Moved from
+ here...
+ * grub-core/kern/efi/efi.c (grub_efi_compare_device_paths): ... here.
+ All users updated.
+ * grub-core/kern/efi/init.c (grub_efi_net_config): New variable.
+ (grub_machine_get_bootlocation): Call grub_efi_net_config if needed.
+ * grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_7): New function.
+ * grub-core/net/drivers/efi/efinet.c: New file.
+ * include/grub/efi/efi.h (grub_efi_compare_device_paths): New proto.
+ (grub_efi_net_config): New extern var.
+
+ Various cleanups and bugfixes.
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_open): Fix off-by-one
+ error.
+ (grub_efidisk_get_device_name): Unify similar codepaths. Accept whole
+ disk declared as partition.
+ * grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Fix memory
+ leak on failure.
+ * grub-core/kern/dl.c (grub_dl_load_file): Fix memory leak.
+ * grub-core/kern/mm.c (grub_debug_malloc): Don't use unsupported %zx.
+ (grub_debug_zalloc): Likewise.
+ (grub_debug_realloc): Likewise.
+ (grub_debug_memalign): Likewise.
+ * grub-core/net/arp.c (grub_net_arp_receive): IPv4 is 4-byte wide.
+ Check that target is IPv4.
+ * grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnet_findcards): Use
+ local-mac-address as fallback.
+ * grub-core/net/ethernet.c (grub_net_recv_ethernet_packet): Prevent
+ memory leak.
+ * grub-core/net/ip.c (ipchksum): Rename to ...
+ (grub_net_ip_chksum): ... this. All users updated.
+ (grub_net_recv_ip_packets): Special handling for DHCP.
+ * util/grub-mkimage.c (generate_image): Zero-out aout header.
+
+ Unify prefix handling
+
+ * grub-core/kern/efi/init.c (grub_efi_set_prefix): Revamped into ...
+ (grub_machine_get_bootlocation): ... this.
+ * grub-core/kern/emu/main.c (grub_machine_set_prefix): Revamped into ...
+ (grub_machine_get_bootlocation): ... this.
+ (grub_prefix): New variable.
+ (prefix): Removed.
+ (root_dev): New variable.
+ (dir): Likewise.
+ (main): Use new variables.
+ * grub-core/kern/i386/coreboot/init.c (grub_machine_set_prefix):
+ Revamped into ...
+ (grub_machine_get_bootlocation): ... this.
+ * grub-core/kern/i386/efi/init.c (grub_machine_set_prefix): Removed.
+ * grub-core/kern/i386/pc/init.c (make_install_device): Revamped into ...
+ (grub_machine_get_bootlocation): ... this.
+ (grub_machine_set_prefix): Removed.
+ * grub-core/kern/ia64/efi/init.c (grub_machine_set_prefix): Removed.
+ * grub-core/kern/ieee1275/init.c (grub_machine_set_prefix):
+ Revamped into ...
+ (grub_machine_get_bootlocation): ... this.
+ * grub-core/kern/main.c (grub_set_root_dev): Revamped into ...
+ (grub_set_prefix_and_root): ... this. All users updated.
+ * grub-core/kern/mips/init.c (grub_machine_set_prefix):
+ Revamped into ...
+ (grub_machine_get_bootlocation): ... this.
+ * include/grub/kernel.h (grub_machine_set_prefix): Removed.
+ (grub_machine_get_bootlocation): New proto.
+ * include/grub/i386/pc/kernel.h (grub_pc_net_config): New var.
+
+ Less intrusive and more reliable seek on network implementation.
+
+ * grub-core/kern/file.c (grub_file_net_seek): Removed.
+ (grub_file_seek): Don't call grub_file_net_seek.
+ * grub-core/net/net.c (grub_net_fs_read): Renamed to ...
+ (grub_net_fs_read_real): .. this.
+ (grub_net_seek_real): Use net->offset.
+ (grub_net_fs_read): Seek if necessary.
+
+ Unify IEEE1275 netwotk config with the other platforms.
+
+ * grub-core/kern/ieee1275/init.c (grub_ieee1275_net_config):
+ New variable.
+ (grub_machine_get_bootlocation): Support network.
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args):
+ Support type and device parsing.
+ (grub_ieee1275_get_device_type): New function.
+ * grub-core/net/drivers/ieee1275/ofnet.c (grub_getbootp_real): Revamped
+ into ...
+ (grub_ieee1275_net_config_real): ... this.
+ (grub_ofnet_probecards): Removed.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove ofnet.h.
+ * include/grub/ieee1275/ofnet.h: Removed.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_net_config): NEw
+ extern var.
+ (grub_ieee1275_get_device_type): New function.
+
+ Unify network device closing across platforms and make more robust.
+
+ * grub-core/kern/ieee1275/init.c (grub_machine_fini): Don't call
+ grub_grubnet_fini.
+ * grub-core/net/ethernet.c (send_ethernet_packet): Open card if it isn't
+ already.
+ * grub-core/net/net.c (grub_net_network_level_interface_register):
+ Update num_ifaces.
+ (grub_net_card_unregister): Close all interfaces.
+ (receive_packets): Don't poll if no iterfaces are registered.
+ Open if necessary.
+ (grub_net_fini_hw): New function.
+ (grub_net_restore_hw): Likewise.
+ (fini_hnd): New variable.
+ (GRUB_MOD_INIT): Register preboot hook.
+ (GRUB_MOD_FINI): Run and unregister preboot hook.
+
+ Poll network cards when idle.
+
+ * grub-core/kern/term.c (grub_net_poll_cards_idle): New variable.
+ (grub_checkkey): Call grub_net_poll_cards_idle if it's not NULL.
+ * grub-core/net/net.c (receive_packets): Save last poll time.
+ (grub_net_poll_cards_idle_real): New function.
+ (GRUB_MOD_INIT): Register grub_net_poll_cards_idle.
+ (GRUB_MOD_FINI): Unregister grub_net_poll_cards_idle.
+ * include/grub/kernel.h (grub_poll_cards_idle): New extern variable.
+
+ Rename ofnet interfaces.
+
+ * grub-core/net/drivers/ieee1275/ofnet.c (find_alias): New function.
+ (grub_ofnet_findcards): Use ofnet_%s names.
+
+ * util/grub-mknetdir.in: Support for EFI and IEEE1275.
+
+ Cleanup socket opening.
+
+ * grub-core/net/net.c (grub_net_fs_open): Rewritten.
+ (grub_net_fs_close): Likewise.
+ (grub_net_fs_read_real): Use eof member.
+ * include/grub/net/udp.h (+grub_net_udp_open): New proto.
+ (+grub_net_udp_close): New inline function.
+
+ * include/grub/net/tftp.h: Moved to the top of ...
+ * grub-core/net/tftp.c: ... here.
+ * include/grub/net/ip.h: Moved mostly to the top of ...
+ * grub-core/net/ip.c: ... here.
+ * include/grub/net/ethernet.h: Moved mostly to the top of ...
+ * grub-core/net/ethernet.c: ... here.
+
+ * grub-core/kern/device.c (grub_device_close): Free device->net->server.
+
+ * grub-core/commands/probe.c (grub_cmd_probe): Use protocol name for
+ FS name.
+
+ * include/grub/net/ip.h (ipv4_ini): Removed.
+ (ipv4_fini): Likewise.
+
+ * include/grub/net/ip.h (grub_net_recv_ip_packets): New proto.
+ (grub_net_send_ip_packets): Likewise.
+
+2011-07-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init): Use new
+ grub_read_cmos prototype.
+
+2011-07-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ VGA text support in qemu-mips
+
+ * grub-core/Makefile.core.def (kernel): Add term/i386/pc/vga_text.c,
+ term/i386/vga_common.c and kern/vga_init.c on qemu-mips.
+ * grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init vga
+ text.
+ * grub-core/kern/i386/qemu/init.c: Renamed to ...
+ * grub-core/kern/vga_init.c: ... this.
+ * grub-core/kern/vga_init.c (VGA_ADDR) [__mips__]: Adjust.
+ (grub_qemu_init_cirrus) [__mips__]: Skip PCI and adjust the I/O base.
+ * grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN) [__mips__]:
+ Adjust.
+ * include/grub/vga.h [GRUB_MACHINE_MIPS_QEMU_MIPS]: Declare
+ GRUB_MACHINE_PCI_IO_BASE.
+
+2011-07-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ MIPS qemu flash support.
+
+ * grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]: Check
+ magic.
+ * grub-core/kern/mips/qemu_mips/init.c (probe_mem): New function.
+ (grub_machine_init): Probe memory if its size isn't known.
+ * util/grub-mkimage.c (image_targets): Add flash targets.
+ (generate_image): Handle flash targets.
+
+2011-07-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ MIPS qemu at_keyboard support.
+
+ * gentpl.py (videoinkernel): Add qemu-mips.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add necessary headers.
+ * grub-core/Makefile.core.def (kernel): Add at_keyboard and layout.
+ * grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init new
+ modules.
+ * grub-core/term/at_keyboard.c (grub_keyboard_controller_init)
+ [GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't consider original set.
+ * grub-core/term/serial.c (grub_serial_register)
+ [GRUB_MACHINE_MIPS_QEMU_MIPS]: Make com0 explicitly active.
+
+2011-07-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ CMOS support on sparc.
+
+ * gentpl.py (cmos): Add powerpc and sparc.
+ * grub-core/Makefile.core.def (datetime): Add lib/ieee1275/cmos.c on
+ powerpc and sparc.
+ * grub-core/lib/cmos_datetime.c (grub_get_datetime)
+ [__powerpc__ || __sparc__]: Rename to grub_get_datetime_cmos.
+ (grub_set_datetime) [__powerpc__ || __sparc__]: Likewise to
+ grub_set_datetime_cmos.
+ * grub-core/lib/ieee1275/cmos.c: New file.
+ * grub-core/lib/ieee1275/datetime.c (no_ieee1275_rtc): New vaiable.
+ (find_rtc): Set no_ieee1275_rtc on error.
+ (grub_get_datetime): Call grub_get_datetime_cmos on error.
+ (grub_set_datetime): Call grub_set_datetime_cmos on error.
+ * include/grub/cmos.h (grub_cmos_read): Return grub_err_t since it may
+ fail. Move value to argument. All users updated
+ (grub_cmos_write): Likewise.
+ (grub_cmos_read) [__powerpc__ || __sparc__]: Rewritten.
+ (grub_cmos_write) [__powerpc__ || __sparc__]: Likewise.
+ * include/grub/datetime.h [__powerpc__ || __sparc__]: Declare
+ grub_get_datetime_cmos and grub_set_datetime_cmos.
+
+2011-07-02 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub-mkconfig.in: Use @PACKAGE@ instead of hardcoded name when
+ sourcing grub-mkconfig_lib.
+ * util/update-grub_lib.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+2011-06-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use
+ default_bg_color rather than black.
+ (grub_gfxterm_fullscreen): Likewise.
+ (grub_gfxterm_background_color_cmd): Save new background color in
+ default_bg_color.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (chain): Fix coreboot filename.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/pata.c (grub_pata_initialize) [QEMU_MIPS]: Fix a
+ mismerge.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Chainloading on coreboot support.
+
+ * grub-core/Makefile.core.def (chain): Add coreboot.
+ * grub-core/loader/i386/coreboot/chainloader.c: New file.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_bsd_load): Handle relocator failure
+ if it happens.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement time command.
+
+ * grub-core/Makefile.core.def (time): New module.
+ * grub-core/commands/time.c: New file.
+ * grub-core/script/parser.y: Remove "time" keyword.
+ * grub-core/script/yylex.l: Likewise.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/loader.h (grub_loader_unregister_preboot_hook): Export.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (malloc_in_range): Fix a memory corruption
+ when handling leftovers.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/grub-ofpathname.c (main): Handle --help and --version
+ so that help2man doesn't fail.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer) Use right
+ type in pointers on sparc64.
+ (get_card_packet): Likewise.
+
+2011-06-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/videoinfo.c (hook): Indicate current video mode
+ with `*'.
+ (grub_cmd_videoinfo): Fetch current video mode.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/scsi.c (grub_scsi_read): Limit SCSI reads to 32K
+ because of underlying system restrictions.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Rename "ata" to "pata" and add ahci when
+ necessary.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Coreboot video support.
+
+ * grub-core/Makefile.core.def (vga): Extend to coreboot and multiboot.
+ (vbe): Likewise.
+ * grub-core/kern/i386/coreboot/startup.S: Include int.S.
+ * grub-core/kern/i386/pc/startup.S (grub_bios_interrupt): Moved from
+ here ...
+ * grub-core/kern/i386/int.S: ... here.
+ * grub-core/video/i386/pc/vbe.c: Updated includes.
+ * grub-core/video/i386/pc/vga.c: Likewise.
+ * include/grub/i386/coreboot/memory.h
+ (GRUB_MEMORY_MACHINE_SCRATCH_ADDR): New definition.
+ (GRUB_MEMORY_MACHINE_SCRATCH_SEG): Likewise.
+ (GRUB_MEMORY_MACHINE_SCRATCH_SIZE): Likewise.
+ * include/grub/i386/pc/int.h (GRUB_CPU_INT_FLAGS_DEFAULT) [!PCBIOS]:
+ Disable interrupts.
+ * include/grub/i386/pc/vga.h: Removed. All users updated.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c (grub_ahci_readwrite_real): Use proper
+ definitions for dprintf.
+ * grub-core/disk/pata.c (grub_pata_readwrite): Likewise.
+
+2011-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer): Fix
+ prototype.
+ (get_card_packet): Likewise.
+
+2011-06-26 Yves Blusseau <blusseau@zetam.org>
+
+ Display the path of the file when file is not found
+
+ * grub-core/fs/fat.c: Display the filename when file is not found.
+ * grub-core/fs/fshelp.c: Likewise.
+ * grub-core/fs/hfs.c: Likewise.
+ * grub-core/fs/jfs.c: Likewise.
+ * grub-core/fs/minix.c: Likewise.
+ * grub-core/fs/ufs.c: Likewise.
+ * grub-core/fs/btrfs.c: Likewise.
+ * grub-core/commands/i386/pc/play.c: Likewise.
+
+2011-06-26 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/commands/cmp.c (grub_cmd_cmp): Remove unnecessary NULL
+ pointer checks before calling grub_free().
+ * grub-core/commands/wildcard.c (match_devices): Likewise.
+ * grub-core/commands/wildcard.c (match_files): Likewise.
+ * grub-core/fs/cpio.c (grub_cpio_dir): Likewise.
+ * grub-core/fs/cpio.c (grub_cpio_open): Likewise.
+ * grub-core/fs/udf.c (grub_udf_read_block): Likewise.
+ * grub-core/fs/xfs.c (grub_xfs_read_block): Likewise.
+ * grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Likewise.
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Likewise.
+ * grub-core/script/yylex.l (grub_lexer_unput): Likewise.
+ * grub-core/video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
+ * grub-core/video/readers/png.c (grub_png_output_byte): Likewise.
+
+2011-06-25 Patrick <p55@mailinator.com>
+
+ * grub-core/kern/main.c (grub_load_normal_mode): Correct the comment.
+
+2011-06-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/net/i386/pc/pxe.c (grub_pxe_recv): Fix declaration.
+ (grub_pxe_send): Likewise.
+ (GRUB_MOD_INIT): Fix types.
+
+2011-06-24 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/io/xzio.c: Fix code style issues
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+2011-06-24 Manoel Rebelo Abranches <mrabran@gmail.com>
+
+ Network infrastructure.
+ The ARP protocol was made by Paulo Pinatti <ppinatti@br.ibm.com>
+
+ * include/grub/net/arp.h: New file.
+ * include/grub/net/device.h: Likewise.
+ * include/grub/net/ethernet.h: Likewise.
+ * include/grub/net/ip.h: Likewise.
+ * include/grub/net/netbuff.h: Likewise.
+ * include/grub/net/tftp.h: Likewise.
+ * include/grub/net/udp.h: Likewise.
+ * include/grub/ieee1275/ofnet.h: Likewise.
+ * include/grub/emu/export.h: Likewise.
+ * include/grub/net.h: Likewise.
+ * grub-core/net/arp.c: Likewise.
+ * grub-core/net/ethernet.c: Likewise.
+ * grub-core/net/ip.c: Likewise.
+ * grub-core/net/udp.c: Likewise.
+ * grub-core/net/tftp.c: Likewise.
+ * grub-core/net/netbuff.c: Likewise.
+ * grub-core/net/net.c: Likewise.
+ * grub-core/net/drivers/emu/emunet.c: Likewise.
+ * grub-core/net/drivers/ieee1275/ofnet.c: Likewise.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add net.h, ofnet.h and
+ export.h.
+ * grub-core/Makefile.core.def (net): New module.
+ (tftp): Likewise.
+ (ofnet): Likewise.
+ (emunet): Likewise.
+ * grub-core/commands/ls.c (grub_ls_list_devices) [!GRUB_UTIL]: List
+ network protocols.
+ * grub-core/kern/device.c (grub_net_open) : New variable.
+ (grub_device_open): Handle network device.
+ (grub_device_close): Likewise.
+ * grub-core/kern/file.c (grub_file_net_seek) : New variable.
+ (grub_grubnet_fini): Likewise.
+ (grub_file_seek): Seek in network device.
+ * grub-core/kern/fs.c (grub_fs_probe): Handle network devices.
+ * grub-core/kern/ieee1275/init.c (grub_machine_set_prefix): Handle
+ network root.
+ (grub_machine_fini): Call grub_grubnet_fini.
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Handle
+ network.
+ (grub_ieee1275_get_aliasdevname): New function.
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
+ Add unofficial Solaris network info.
+ (grub_multiboot_make_mbi): Likewise.
+ * grub-core/fs/i386/pc/pxe.c: Moved from here ...
+ * grub-core/net/i386/pc/pxe.c: ...here. Adapted for new design.
+ * include/grub/device.h (grub_fs): Removed.
+ * include/grub/err.h (grub_err_t): Add network-related values.
+ * include/grub/i386/pc/pxe.h: Removed bootp parts.
+ * include/grub/ieee1275/ieee1275.h (grub_ofnetcard_data): New struct.
+ (grub_ieee1275_get_aliasdevname): New proto.
+ * include/grub/net.h: Rewritten.
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/raid.c (insert_array): Ensure uniqueness of readable
+ names.
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (match_files): Add a useful dprintf.
+ (wildcard_expand): Don't stop on nonregexp parts after regexp ones since
+ it truncates the output.
+ Reported by: Ximin Luo.
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Skip . and ..
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load
+ partmap before abstraction.
+
+2011-06-24 Alexander Kurtz <kurtz.alex@googlemail.com>
+
+ * util/grub-mkconfig_lib.in: Add missing quotes.
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c (grub_guess_root_device): Revert to
+ old method if mountinfo would return /dev/root and /dev/root doesn't
+ exist.
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ZFS zlib support
+
+ * grub-core/fs/zfs/zfs.c (zlib_decompress): New function.
+ (decomp_table): Add zlib entries.
+ (zio_read): USe 8 bits for compression function rather than 3.
+ * include/grub/zfs/zio.h (zio_compress): Add zlib values.
+
+2011-06-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/ahci.c: Add missing license statements.
+ * grub-core/fs/romfs.c: Likewise.
+ * grub-core/lib/ia64/setjmp.S: Likewise.
+ * grub-core/loader/i386/pc/freedos.c: Likewise.
+ * grub-core/loader/ia64/efi/linux.c: Likewise.
+ * grub-core/video/colors.c: Likewise.
+ * include/grub/dl.h (GRUB_MOD_DEP): New macro.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ AHCI support.
+
+ * grub-core/Makefile.core.def (ata_pthru): Removed.
+ (ahci): New module.
+ (pata): Likewise.
+ * grub-core/bus/usb/ohci.c (GRUB_MOD_FINI): Unregister preboot hook
+ on unload.
+ * grub-core/commands/hdparm.c (grub_hdparm_do_ata_cmd): Use ATA
+ readwrite.
+ (grub_hdparm_do_check_powermode_cmd): Likewise.
+ (grub_hdparm_do_smart_cmd): Likewise.
+ (grub_hdparm_set_val_cmd): Likewise.
+ (grub_cmd_hdparm): Likewise. Check thta we have an ATA device.
+ * grub-core/disk/ahci.c: New file.
+ * grub-core/disk/ata.c: Factor out the low-level part into ...
+ * grub-core/disk/pata.c: ... here.
+ * grub-core/disk/ata_pthru.c: Contents moved to ...
+ * grub-core/disk/pata.c: ... here.
+ * grub-core/disk/scsi.c (grub_scsi_names): New array.
+ (grub_scsi_iterate): Use grub_scsi_names.
+ (grub_scsi_open): Likewise.
+ * grub-core/kern/disk.c (grub_disk_ata_pass_through): Removed.
+ * include/grub/ata.h (grub_ata_commands): Add DMA commands.
+ (grub_ata_regs_t): New struct.
+ (grub_disk_ata_pass_through_parms): Likewise.
+ (grub_ata_device): Renamed to ...
+ (grub_ata): ... this.
+ (grub_ata_dev): New struct.
+ Removed all low-level inline functions.
+ * include/grub/scsi.h: Add PATA and AHCI subsystems.
+ (grub_scsi_dev): Removed 'name' and 'id'. Added 'id' parameter to
+ iterate hooks and open. All users updated.
+ * util/grub-install.in: Handle AHCI disk module.
+
+2011-06-23 Szymon Janc <szymon@janc.net.pl>
+
+ Add support for DRI and RSTn markers in JPEG files.
+
+ * grub-core/video/readers/jpeg.c (JPEG_MARKER_DRI): New define.
+ (JPEG_MARKER_RST0): Likewise.
+ (JPEG_MARKER_RST1): Likewise.
+ (JPEG_MARKER_RST2): Likewise.
+ (JPEG_MARKER_RST3): Likewise.
+ (JPEG_MARKER_RST4): Likewise.
+ (JPEG_MARKER_RST5): Likewise.
+ (JPEG_MARKER_RST6): Likewise.
+ (JPEG_MARKER_RST7): Likewise.
+ (grub_jpeg_data): New fields dri, r1, bitmap_ptr.
+ (grub_jpeg_decode_dri): New function.
+ (grub_jpeg_decode_sos): Move image data related part into
+ grub_jpeg_decode_data function.
+ (grub_jpeg_decode_data): New function.
+ (grub_jpeg_reset): New function.
+ (grub_jpeg_decode_jpeg): Handle new markers.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/ofpath.c (check_sas): Close fd.
+ (main): Free of_path.
+ Reported by: David Volgyes <dvolgyes>.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (main): Don't double-close.
+ Reported by: David Volgyes <dvolgyes>.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close
+ file after stat.
+ Reported by: David Volgyes <dvolgyes>.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/raid.c (grub_util_raid_getmembers): Close fd before returning.
+
+ Reported by: David Volgyes <dvolgyes>.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]:
+ Prevent memory leak.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak.
+ (main): Close file.
+ Reported by: David Volgyes <dvolgyes>.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devprop): Don't attempt
+ to continue if allocation is failed.
+
+ Reported by: David Volgyes <dvolgyes>.
+
+2011-06-23 David Volgyes <dvolgyes>
+
+ * grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Avoid NULL-pointer
+ dereference.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix spurious warning.
+
+ * grub-core/partmap/acorn.c (grub_acorn_boot_block): Make a union.
+ (acorn_partition_map_find): Use .bin member.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept
+ /dev/root as a valid device.
+
+2011-06-23 Jim Meyering <meyering@redhat.com>
+
+ Avoid NULL deref in grub_device_open.
+
+ * grub-core/kern/device.c (grub_device_open): Don't dereference
+ a NULL pointer upon failed grub_env_get.
+
+2011-06-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support non-512B sectors and agglomerate reads.
+
+ * Makefile.util.def (libgrubmods.a): Add grub-core/commands/testload.c.
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_data): Remove disk_io.
+ (disk_io_guid): Removed.
+ (make_devices): Locate solely by BlockIO.
+ (grub_efidisk_open): Fill log_sector_size and total_sectors.
+ (grub_efidisk_read): Use read_blocks.
+ (grub_efidisk_write): Use write_blocks.
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Fill
+ log_sector_size.
+ (get_safe_sectors): Handle non-512B sectors.
+ (grub_biosdisk_read): Remove special CDROM handling. Handle non-512B
+ sectors.
+ (grub_biosdisk_write): Handle non-512B sectors.
+ * grub-core/disk/scsi.c (grub_scsi_open): Fill log_sector_size.
+ (grub_scsi_read): Remove special non-512B block handling (now handled
+ one level up).
+ * grub-core/kern/disk.c (grub_disk_open): Fill default log_sector_size
+ and do sanity checks.
+ (grub_disk_adjust_range): Handle non-512B sectors.
+ (transform_sector): New function.
+ (grub_disk_read_small): Likewise.
+ (grub_disk_read): Rewritten.
+ (grub_disk_write): Handle non-512B sectors.
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_open): Fill
+ log_sector_size.
+ (open_device): Use log_sector_size.
+ (grub_util_biosdisk_read): Likewise.
+ (grub_util_biosdisk_write): Likewise.
+ * grub-core/partmap/msdos.c (grub_partition_msdos_iterate): Handle
+ non-512B sectors.
+ (pc_partition_map_embed): Likewise.
+ * include/grub/disk.h (grub_disk): New field log_sector_size.
+ (GRUB_DISK_CACHE_SIZE): Redefined from GRUB_DISK_CACHE_BITS.
+ (GRUB_DISK_CACHE_BITS): Increased to 6.
+ * util/grub-fstest.c (fstest): New command testload.
+ (argp_parser): Likewise.
+
+2011-06-16 Robert Millan <rmh@gnu.org>
+
+ Detect `ataraid' devices on GNU/kFreeBSD. Fix for ATA devices using
+ `ata' driver on kernel of FreeBSD 9.
+
+ * util/deviceiter.c [__FreeBSD_kernel__] (get_ada_disk_name)
+ (get_ataraid_disk_name): New functions.
+ [__FreeBSD_kernel__] (grub_util_iterate_devices): Scan for ataraid
+ (/dev/ar[0-9]+) and ada (/dev/ada[0-9]+) devices using
+ get_ataraid_disk_name() and get_ada_disk_name().
+
+2011-06-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/man/grub-mklayout.h2m (DESCRIPTION): Add a reference to the
+ input format.
+
+2011-05-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Obtaining and Building GRUB): Substitute
+ `ftp.gnu.org' for `alpha.gnu.org'.
+
+2011-05-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/hostdisk.c (linux_find_partition): Handle
+ partitions under /dev/disk/by-id/.
+
+2011-05-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/hostdisk.c (linux_find_partition): Give up
+ after ten consecutive open failures. Scanning all the way up to
+ 10000 is excessive and can cause serious performance problems in
+ some configurations.
+ Fixes Ubuntu bug #787461.
+
+2011-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
+ opening new one.
+
+2011-05-21 Colin Watson <cjwatson@ubuntu.com>
+2011-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't stat devices unless we have to.
+
+ * grub-core/kern/emu/getroot.c (grub_find_device): Recognize
+ dir == /dev/mapper.
+ (grub_guess_root_device): Use already known os_dev if possible.
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Scan only in /dev/mapper
+ if device is known to be a dm one.
+
+2011-05-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Export GRUB_CMDLINE_LINUX_XEN_REPLACE and
+ GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT.
+ Reported by: Pawel Tecza.
+
+2011-05-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (lsacpi): Fix ia64 mismerge.
+ (lsefisystab): Likewise.
+ (lssal): Likewise.
+ (lsefimmap): Likewise.
+ (hdparm): Enable on qemu-mips.
+ (setjmp): Add ia64 nodist.
+ (serial): Simplify tags.
+
+2011-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-ofpathname): Install manual page.
+
+2011-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE.
+
+2011-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add grub-core/modinfo.sh and a number of test files.
+
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf
+ into dprintf.
+
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use full 64-bit division.
+
+ * grub-core/kern/misc.c (grub_divmod64_full): Renamed to ...
+ (grub_divmod64): ... this.
+ * include/grub/misc.h (grub_divmod64): Removed. All users switch to full
+ version.
+
+2011-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in: Use portable `.' rather than non-portable
+ `source'.
+
+2011-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/genmod.sh.in: Use 'set -e' rather than '#! /bin/sh -e',
+ to avoid accidents when debugging with 'sh -x'.
+ * grub-core/gensyminfo.sh.in: Likewise.
+ * tests/example_scripted_test.in: Likewise.
+ * tests/grub_cmd_regexp.in: Likewise.
+ * tests/grub_script_blanklines.in: Likewise.
+ * tests/grub_script_dollar.in: Likewise.
+ * tests/grub_script_expansion.in: Likewise.
+ * tests/grub_script_final_semicolon.in: Likewise.
+ * tests/partmap_test.in: Likewise.
+ * tests/util/grub-shell-tester.in: Likewise.
+ * tests/util/grub-shell.in: Likewise.
+
+2011-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ Move gfxmenu color handling to video, so that gfxterm can use it
+ too.
+
+ * grub-core/gfxmenu/named_colors.c: Move to ...
+ * grub-core/video/colors.c: ... here. Rename
+ grub_gui_get_named_color to grub_video_get_named_color.
+ * grub-core/gfxmenu/gui_string_util.c (my_isxdigit): Move to ...
+ * grub-core/video/colors.c (my_isxdigit): ... here.
+ * grub-core/gfxmenu/gui_string_util.c (parse_hex_color_component):
+ Move to ...
+ * grub-core/video/colors.c (parse_hex_color_component): ... here.
+ * grub-core/gfxmenu/gui_string_util.c (grub_gui_parse_color): Move
+ to ...
+ * grub-core/video/colors.c (grub_video_parse_color): ... here.
+
+ * include/grub/gui.h (grub_gui_color_t): Move to ...
+ * include/grub/video.h (grub_video_rgba_color_t): ... here.
+ * include/grub/gui.h (grub_gui_color_rgb): Move to ...
+ * include/grub/video.h (grub_video_rgba_color_rgb): ... here.
+ * include/grub/gui.h (grub_gui_map_color): Move to ...
+ * include/grub/video.h (grub_video_map_rgba_color): ... here.
+ * include/grub/gui_string_util.h (grub_gui_get_named_color): Move
+ to ...
+ * include/grub/video.h (grub_video_get_named_color): ... here.
+ * include/grub/gui_string_util.h (grub_gui_parse_color): Move to ...
+ * include/grub/video.h (grub_video_parse_color): ... here.
+
+ * grub-core/Makefile.core.def (kernel) [videoinkernel]: Add
+ video/colors.c.
+ (gfxmenu): Remove gfxmenu/named_colors.c.
+ (video) [videomodules]: Add video/colors.c.
+
+ Add a background_color command.
+
+ * grub-core/term/gfxterm.c (grub_gfxterm_background_color_cmd): New
+ function.
+ (GRUB_MOD_INIT): Register background_color command.
+ (GRUB_MOD_FINI): Unregister background_color command.
+ (redraw_screen_rect): Allow blend/replace of text layer to be
+ controlled independently from whether there is a background bitmap.
+ (grub_gfxterm_background_image_cmd): Change blend_text_bg when
+ changing bitmap.
+
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Patch BPB in ntldr and chainloader --bpb.
+
+ * grub-core/fs/fat.c: Include grub/fat.h.
+ (grub_fat_bpb): Moved to ...
+ * include/grub/fat.h (grub_fat_bpb): ... here. New file.
+ * grub-core/loader/i386/pc/chainloader.c: Include grub/fat.h and
+ grub/ntfs.h.
+ * include/grub/i386/pc/chainloader.h (grub_chainloader_flags_t):
+ Moved from here...
+ * grub-core/loader/i386/pc/chainloader.c (grub_chainloader_flags_t): ...
+ here.
+ * grub-core/loader/i386/pc/chainloader.c (grub_chainloader_patch_bpb):
+ New function.
+ (grub_chainloader_cmd): Patch BPB if --bpb is given.
+ (GRUB_MOD_INIT): Show --bpb.
+ * grub-core/loader/i386/pc/ntldr.c (grub_cmd_ntldr): Patch BPB.
+ * grub-core/normal/main.c (features): New variable.
+ (GRUB_MOD_INIT): Set feature_* variables.
+ * include/grub/i386/pc/chainloader.h (grub_chainloader_patch_bpb): New
+ proto.
+ * include/grub/ntfs.h (grub_ntfs_bpb): New field bios_drive.
+
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275
+ for cleanness.
+
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ FreeDOS direct loading support.
+
+ * docs/grub.texi (Supported OS): Add FreeDOS.
+ * grub-core/Makefile.core.def (freedos): New module.
+ * grub-core/lib/i386/relocator.c (grub_relocator16_ebx): New extern
+ variable.
+ (grub_relocator16_boot): Handle %ebx.
+ * grub-core/lib/i386/relocator16.S: Likewise.
+ * grub-core/loader/i386/pc/freedos.c: New file.
+
+2011-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Long Linux command line support.
+
+ * grub-core/loader/i386/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed.
+ (maximal_cmdline_size): New variable.
+ (allocate_pages): Use maximal_cmdline_size.
+ (grub_cmd_linux): Set and use maximal_cmdline_size.
+ * grub-core/loader/i386/pc/linux.c (GRUB_LINUX_CL_END_OFFSET): Removed.
+ (allocate_pages): Use maximal_cmdline_size.
+ (grub_cmd_linux): Set and use maximal_cmdline_size.
+ * include/grub/i386/linux.h (GRUB_LINUX_SETUP_MOVE_SIZE): Removed.
+ (linux_kernel_header): Add fields kernel_alignment, relocatable, pad
+ and cmdline_size.
+
+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
+ BIOSes.
+
+2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy):
+ Prevent overflow.
+ (grub_reed_solomon_recover): Likewise.
+
+2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (main) [TEST]: Reactivate normal test.
+
+2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/reed_solomon.c (scratch) [! STANDALONE]: Remove leftover
+ variable.
+
+2011-01-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Fix typo in
+ descriptions of extract_legacy_entries_source and
+ extract_legacy_entries_configfile.
+ Reported by: Seung Soo, Ha.
+
+2011-01-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/bus/pci.c (grub_pci_iterate): Skip remaining functions
+ on devices that do not implement function 0.
+
+2011-01-03 Dave Vasilevsky <dave@vasilevsky.ca>
+
+ * grub-core/fs/hfsplus.c: Make parent unsigned.
+ (grub_hfsplus_cmp_catkey): Don't compare using subtraction, it
+ overflows.
+ (grub_hfsplus_cmp_extkey): Likewise
+
+2011-01-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Correctly use bootloader_id and not
+ GRUB_DISTRIBUTOR on efibootmgr line.
+
+2011-01-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (main): Report errors in FT_New_Face.
+
+2010-12-31 Ian Campbell <ijc@hellion.org.uk>
+
+ * util/grub.d/20_linux_xen.in (linux_entry): Correctly capitalize
+ Xen and reorder menu item wording to make it clearer that this entry
+ will launch Xen. Print separate messages when loading Xen and
+ Linux.
+
+2010-12-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/amiga.c (GRUB_AMIGA_PART_MAGIC): New define.
+ (amiga_partition_map_iterate): Check "PART" magic to avoid a very long
+ loop in case of incorrect amiga partmap.
+
+2010-12-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/amiga.c (GRUB_AMIGA_RDSK_MAGIC): New define.
+ (amiga_partition_map_iterate): Use grub_memcmp instead of grub_strcmp.
+ Reported by:EHeM.
+
+2010-12-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Silence
+ spurious warning.
+ Reported by: crocket
+
+2010-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/xnu.c (grub_cmd_xnu_kernel) [! GRUB_MACHINE_EFI]:
+ Preload EFIemu.
+ (grub_cmd_xnu_kernel64) [! GRUB_MACHINE_EFI]: Likewise.
+
+2010-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/xnu.c (grub_cmd_xnu_kext): Abort if no kernel
+ is loaded
+ (grub_cmd_xnu_kextdir): Likewise.
+ (grub_cmd_xnu_splash): Likewise.
+
+2010-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid using Reed-Solomon with 0 redundancy.
+
+ * grub-core/kern/i386/pc/startup.S: Remove 0-data check.
+ * grub-core/lib/reed_solomon.c (decode_block): Do not proceed on 0 data
+ or 0 redundancy.
+ (grub_reed_solomon_add_redundancy): Do not proceed with 0 redundancy.
+ (grub_reed_solomon_recover): Likewise.
+
+2010-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't use disk subsystem in freebsd_boot.
+
+ * grub-core/loader/i386/bsd.c (freebsd_bootdev): New variable.
+ (freebsd_biosdev): Likewise.
+ (grub_freebsd_boot): Use freebsd_bootdev and freebsd_biosdev.
+ (grub_cmd_freebsd): Set freebsd_bootdev and freebsd_biosdev.
+
+2010-12-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handling of files of unknown size is currently limited. They can't be
+ used e.g. for initrd or modules. Moreover gzip handling of not
+ easily seekable files is buggy. Disable unknown file size for now. May
+ be inefficient but works.
+
+ * grub-core/io/gzio.c (test_header): Always retrieve the file size.
+ * grub-core/io/xzio.c (grub_xzio_open): Likewise.
+
+2010-12-25 Mirko Parthey <mirko.parthey@informatik.tu-chemnitz.de>
+
+ * grub-core/boot/i386/pc/boot.S: Fix %es:%bx pointing to nowhere on
+ floppy probe.
+
+2010-12-25 Jeroen Dekkers <jeroen@dekkers.ch>
+
+ * grub-core/disk/raid.c (insert_array): Don't add spurious members.
+
+2010-12-25 Shea Levy <shlevy>
+
+ * grub-core/genmod.sh.in: Use @OBJCOPY@ rather than objcopy.
+
+2010-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/30_os-prober.in: Don't emit drivemap directive for
+ Windows Server 2008.
+ Reported by: Devin Giddings.
+
+2010-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c (grub_acpi_halt): Sleep for 1.5 before
+ writing an error message because of async power management.
+ * grub-core/kern/mips/yeeloong/init.c (grub_halt): Likewise.
+ (grub_reboot): Likewise.
+
+2010-12-23 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * tests/util/grub-shell.in: Suppress "ACPI shutdown failed" error to
+ keep unit tests from failing when they shouldn't.
+
+2010-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): The
+ previous patch increased the size of the RS code by 20 bytes (at
+ least with gcc-4.4), so increase this by 20 bytes to match.
+ (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
+
+2010-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/lib/reed_solomon.c (gauss_solve): Fix size of standalone
+ scratch area. Make sure to initialise chosen in standalone mode as
+ well as non-standalone.
+ Reported by: Robert Hooker and Andy Whitcroft.
+ Tested by: Andy Whitcroft.
+
+2010-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/echo.c (grub_cmd_echo): Make UTF-8-clean by
+ constructing a new unescaped string and passing it to grub_xputs in
+ one go, rather than passing characters to grub_printf one at a time.
+
+2010-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/fs/udf.c (read_string): Pacify GCC warning by
+ initialising utf16.
+
+2010-12-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (gettext_quoted): Add clarifying
+ comment. Add an extra layer of quotation, requiring the output of
+ this function to be used in a printf format string.
+ (gettext_printf): New function.
+ * util/grub.d/10_hurd.in: Use gettext_printf where appropriate.
+ Extract translatable strings from here-documents and use a temporary
+ variable instead, so that xgettext can find them.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+ * po/grub.d.sed: New file.
+ * po/Makefile.in.in ($(DOMAIN).pot-update): Extract gettext_printf
+ arguments. Set c-format flags on all strings extracted from
+ util/grub.d/ (xgettext refuses to include these itself for strings
+ it extracted from a shell file, but these really are c-format).
+
+2010-12-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_add_module):
+ Avoid next pointing to nowhere.
+
+2010-12-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_mount): Read data->bblock.rootblock
+ rather than assuming than rootblock is exactly in the middle.
+ (grub_affs_label): Likewise.
+
+2010-12-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/affs.c (grub_affs_fs) [GRUB_UTIL]: Explicitly set
+ reserved_first_sector to 0.
+ * grub-core/fs/cpio.c (grub_cpio_fs) [GRUB_UTIL]: Likewise.
+ * grub-core/fs/sfs.c (grub_sfs_fs) [GRUB_UTIL]: Likewise.
+ * grub-core/fs/xfs.c (grub_xfs_fs) [GRUB_UTIL]: Likewise.
+
+2010-12-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of UTF-16 UDF labels.
+
+ * grub-core/fs/udf.c (grub_udf_iterate_dir): Move string-parsing part
+ (read_string): .. here.
+ (grub_udf_label): Use read_string.
+
+2010-12-19 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * grub-core/normal/menu_entry.c (run): Execute commands from menu
+ editor under argument scope.
+ Reported by: Jordan Uggla
+
+2010-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkfont.c (main): Handle errors from FT_Set_Pixel_Sizes.
+
+2010-12-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/normal/term.c (print_more): Make \r or \n scroll one
+ line, and other keys scroll an entire page (previous handling was
+ for \r and \n to scroll a page and other keys to scroll two lines).
+
+2010-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
+ Set ptrdest to correct get_physical_target_address rather than
+ incorrect get_virtual_current_address.
+
+2010-12-18 kashyap garimella <garimella.kashyap@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_load): Use
+ correct cat to grub_uint8_t * rather than grub_uint32_t *.
+
+2010-12-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Ignore grub-core/rs_decoder.S.
+
+2010-12-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/gettext/gettext.c (grub_gettext_init_ext): Factor out
+ .mo/.mo.gz opening sequence to ...
+ (grub_mofile_open_lang): ... here.
+ (grub_gettext_init_ext): If opening ll_CC fails, try ll.
+ * util/grub.d/00_header.in (grub_lang): Include country part of
+ locale.
+ Reported by: Mario Limonciello.
+
+2010-12-09 Robert Millan <rmh@gnu.org>
+
+ * NEWS: Document addition of ZFS support.
+
+2010-12-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Use `>> 1'
+ rather than `/ 2', as the latter requires -Wa,--divide which would
+ require bumping our minimum binutils version.
+
+2010-12-03 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * util/grub-script-check.c (main): Print script line number on
+ error.
+
+2010-12-01 Robert Millan <rmh@gnu.org>
+
+ * grub-core/fs/zfs/zfs.c: New file.
+ * grub-core/fs/zfs/zfs_fletcher.c: Likewise.
+ * grub-core/fs/zfs/zfs_lzjb.c: Likewise.
+ * grub-core/fs/zfs/zfs_sha256.c: Likewise.
+ * grub-core/fs/zfs/zfsinfo.c: Likewise.
+
+ * include/grub/zfs/dmu.h: Likewise.
+ * include/grub/zfs/dmu_objset.h: Likewise.
+ * include/grub/zfs/dnode.h: Likewise.
+ * include/grub/zfs/dsl_dataset.h: Likewise.
+ * include/grub/zfs/dsl_dir.h: Likewise.
+ * include/grub/zfs/sa_impl.h: Likewise.
+ * include/grub/zfs/spa.h: Likewise.
+ * include/grub/zfs/uberblock_impl.h: Likewise.
+ * include/grub/zfs/vdev_impl.h: Likewise.
+ * include/grub/zfs/zap_impl.h: Likewise.
+ * include/grub/zfs/zap_leaf.h: Likewise.
+ * include/grub/zfs/zfs.h: Likewise.
+ * include/grub/zfs/zfs_acl.h: Likewise.
+ * include/grub/zfs/zfs_znode.h: Likewise.
+ * include/grub/zfs/zil.h: Likewise.
+ * include/grub/zfs/zio.h: Likewise.
+ * include/grub/zfs/zio_checksum.h: Likewise.
+
+ * Makefile.util.def: Build ZFS into libgrubmods.
+ * grub-core/Makefile.core.def: Build zfs.mod.
+
+2010-11-30 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/commands/regexp.c (grub_cmd_regexp): Remove unused
+ variable.
+ * grub-core/commands/wildcard.c (match_files): Likewise.
+
+2010-11-30 Robert Millan <rmh@gnu.org>
+
+ * grub-core/loader/i386/bsd.c
+ (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module_elf): Check
+ whether kernel is loaded using grub_loader_is_loaded(), rather
+ than `kernel_type', which may still be `KERNEL_TYPE_NONE' under
+ certain error conditions.
+
+2010-11-30 Robert Millan <rmh@gnu.org>
+
+ * grub-core/commands/echo.c: Include `<grub/term.h>'.
+ (grub_cmd_echo): Call grub_refresh() after printing a message.
+
+2010-11-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid using tricks for initialising endian variables.
+
+ * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot):
+ Make const.
+ (GRUB_MOD_INIT): Don't byte-swap.
+ * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT):
+ Use grub_cpu_to_le16_compile_time and grub_cpu_to_le32_compile_time.
+ * include/grub/types.h (grub_swap_bytes16_compile_time): New macro.
+ (grub_swap_bytes32_compile_time): Likewise.
+ (grub_cpu_to_le32_compile_time): Likewise.
+ (grub_cpu_to_le16_compile_time): Likewise.
+
+2010-11-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Stop recommending --force. People who
+ understand the dangers of blocklists are able to find this option
+ anyway and the ones who don't shouldn't use it anyway.
+
+2010-11-26 Robert Millan <rmh@gnu.org>
+
+ * grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN): Beautify.
+ Update all users.
+
+2010-11-26 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix LVM-on-RAID probing.
+
+ * util/grub-probe.c (probe): Remember which disk was detected as
+ RAID (perhaps an LVM physical volume). Use that disk's raidname
+ rather than that of the top-level disk.
+
+2010-11-25 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix cmdline argument quotes for setparams command of menuentry
+ definitions.
+
+ * grub-core/commands/menuentry.c (setparams_prefix): Use single
+ quotes for arguments.
+ * grub-core/lib/legacy_parse.c (grub_legacy_escape): Use
+ grub_strchrsub function instead.
+
+ * include/grub/misc.h (grub_strchrsub): New function.
+
+2010-11-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/deviceiter.c (grub_util_iterate_devices): Save a bit of
+ effort by skipping "." and ".." entries up-front.
+ Suggested by: Michael Lazarev.
+
+2010-11-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/Makefile.core.def (xz_decompress): Move -lgcc from
+ ldflags to ldadd, to fix link line ordering.
+ (none_decompress): Likewise.
+
+2010-11-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/Makefile.core.def (kernel): Add kern/emu/cache.S for emu
+ platforms.
+ (grub-emu-lite): Remove kern/emu/cache.S.
+
+2010-11-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/deviceiter.c (compare_devices): If the by-id link for a
+ device couldn't be resolved, fall back to sorting by the by-id link
+ rather than segfaulting.
+ Reported and tested by: Daniel Mierswa.
+
+2010-11-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (grub-menulst2cfg): List libraries in ldadd, not
+ ldflags, to fix link line ordering.
+
+2010-11-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/Makefile.am (gentrigtables): Put -lm after $<; some
+ linkers are picky about this.
+
+2010-11-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/Makefile.am (command.lst): Adjust sed expression
+ ordering so that extended and priority commands aren't treated as
+ ordinary commands.
+
+2010-11-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT):
+ Remove byte-swapping function calls, which are not valid in
+ structure initialisers.
+ * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot): Make
+ non-const.
+ (GRUB_MOD_INIT): Byte-swap data1, data2, and data3 fields of
+ grub_gpt_partition_type_bios_boot.
+
+2010-11-22 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix test program build on GNU/kFreeBSD.
+
+ * Makefile.util.def (example_unit_test): Add `$(LIBZFS)
+ $(LIBNVPAIR)' library dependencies.
+
+2010-11-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Fix parsing of --grub-mkrelpath= option.
+
+2010-11-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Remove excessive quoting that broke
+ installations to RAID devices.
+
+2010-11-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Pass correctly the
+ bootloader version instead of 0.
+
+2010-11-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix spurious
+ warning.
+
+2010-11-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Don't try to
+ retrieve the metadat sector if size isn't known.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
+
+2010-11-18 Robert Millan <rmh@gnu.org>
+
+ * grub-core/fs/btrfs.c (grub_btrfs_mount): Replace grub_strncmp()
+ with grub_memcmp().
+
+2010-11-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu_entry.c (print_up): Fix displacement of up
+ arrow.
+ Reported by: Jordan Uggla.
+
+2010-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make better UTF compliant.
+
+ * grub-core/normal/charset.c (grub_utf8_to_utf16): Handle 6- and 7-byte
+ sequences as incorrect.
+ (grub_is_valid_utf8): Likewise.
+ (grub_utf8_to_ucs4): Likewise.
+ (grub_ucs4_to_utf8): Handle codepoints outside of BMP.
+ (grub_ucs4_to_utf8_alloc): Likewise.
+ * include/grub/charset.h (grub_utf16_to_utf8): Likewise.
+
+2010-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make legacy_source behave like source.
+
+ * grub-core/commands/legacycfg.c (legacy_file): Don't call
+ grub_show_menu.
+ (grub_cmd_legacy_source): Call grub_show_menu if needed.
+
+2010-11-16 Colin Watson <cjwatson@debian.org>
+
+ * conf/Makefile.common (CFLAGS_GNULIB): Add -Wno-unused-parameter.
+ (-Wunused implies -Wunused-parameter, but not vice versa).
+
+2010-11-16 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Make error messages less confusing by testing for
+ -Wtrampolines rather than -Wno-trampolines (since -Wno-* is always
+ accepted, but produces a diagnostic if something else is wrong).
+
+2010-11-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/at_keyboard.c (grub_keyboard_controller_read)
+ [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: ifdef-ed out
+ (now unused).
+ (grub_keyboard_controller_init)
+ [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: Don't attempt to
+ read the initial state since controller isn't inited yet.
+
+2010-11-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (malloc_in_range): Take into account that
+ allocate_regbeg may need to create new chunk header.
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix quoting in legacy parser.
+
+ * grub-core/lib/legacy_parse.c (grub_legacy_escape): Correctly handle
+ single quotes.
+ (grub_legacy_parse): Likewise.
+ Reported by: Jordan Uggla.
+ Tested by: Jordan Uggla.
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't add -lgcc on i386 and x86_64.
+
+ * configure.ac (LIBS): Don't add -lgcc on i386 and x86_64.
+ * conf/Makefile.common (LDADD_KERNEL): Likewise.
+ * grub-core/Makefile.core.def (kernel): Use LDADD_KERNEL.
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add -Wno-trampolines when supported.
+
+2010-11-14 Modestas Vainius <modax@debian.org>
+
+ * grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Recognise ddf1_
+ fakeraid.
+
+2010-11-14 Giuseppe Caizzone <acaizzo@gmail.com>
+
+ Add generic logical block size support for UDF.
+
+ * grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
+ (GRUB_UDF_BLKSZ): Removed.
+ (struct grub_udf_data): New field "lbshift" to hold the logical block
+ size of the file system in log2 format. All users updated.
+ (sblocklist): Change type to unsigned.
+ (grub_udf_mount): Change type of "sblklist" to unsigned.
+ Move AVDP search before VRS recognition, because the latter requires
+ knowledge of the logical block size, which is detected during the
+ former.
+ Detect and validate logical block size during AVDP search, adding
+ support for block sizes 512, 1024 and 4096.
+ Make VRS recognition independent of block size.
+
+2010-11-14 Giuseppe Caizzone <acaizzo@gmail.com>
+
+ Properly handle deleted files on UDF.
+
+ * grub-core/fs/udf.c (grub_udf_iterate_dir): Skip directory entries
+ whose "characteristics" field has the bit GRUB_UDF_FID_CHAR_DELETED
+ set.
+
+2010-11-14 Giuseppe Caizzone <acaizzo@gmail.com>
+
+ Support reading files larger than 2 GiB.
+
+ * grub-core/fs/udf.c (grub_udf_iterate_dir): Change type of variable
+ "offset" to grub_off_t.
+ (grub_udf_read_file): Likewise for parameter "pos".
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Changes from GRUB Legacy): Note when save_env is
+ unavailable.
+ (Simple configuration): Refer to Changes from GRUB Legacy about
+ save_env availability.
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Ignore empty partition table detection
+ instead of trying to include part_ module.
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/lvm.c (GRUB_MOD_FINI): Reset the vg_list. Fixes
+ LVM on RAID support.
+
+2010-11-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Properly define WORDS_BIGENDIAN in wrapped environments.
+
+ * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN): New
+ definition.
+ * grub-core/lib/posix_wrap/sys/types.h (WORDS_BIGENDIAN): Likewise.
+
+ Reported by: Manoel Rebelo Abranches.
+ Tested by: Manoel Rebelo Abranches.
+
+2010-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig.in: Fix quoting.
+
+2010-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support big ext2 files.
+
+ * grub-core/fs/ext2.c (grub_ext2_inode): Rename dir_acl to size_high.
+ (grub_ext2_read_block): Support triple indirect blocks.
+ (grub_ext2_read_file): Use 64-bit types and read size_high.
+ (grub_ext2_open): Read size_high.
+ Reported by: Ximin Luo.
+ Tested by: Manoel Rebelo Abranches.
+
+2010-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Handle filenames containing spaces.
+ Reported by: Jordan Uggla.
+ Tested by: Jordan Uggla.
+
+2010-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig.in (grub_script_check): New variable.
+ Use grub_script_check instead of grub-script-check.
+ Reported by: Barry Jackson.
+
+2010-11-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (menu): Correct the order.
+ Reported by: D. Hugh Redelmeier.
+
+2010-11-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S (multiboot_trampoline): Add missing
+ jump.
+
+2010-11-08 Manoel Rebelo Abranches <mrabran@br.ibm.com>
+
+ * include/grub/elfload.h (grub_elf32_size): New parameter.
+ All users updated.
+ Return maximum segments alignment.
+ (grub_elf64_size): Likewise.
+ * kern/elf.c (grub_elf32_size): New parameter. All users updated.
+ Return maximum segments alignment.
+ (grub_elf64_size): Likewise.
+ * grub-core/loader/powerpc/ieee1275/linux.c:
+ (grub_linux_claimmap_iterate): New function. Uses the
+ "available" property in the "memory" node for memory allocation
+ for kernel in the PowerPC loader.
+ (grub_linux_load32): Correctly find linux entry point offset.
+ (grub_linux_load64): Likewise.
+
+2010-11-07 Robert Millan <rmh@gnu.org>
+
+ On mips-yeeloong, build with -march=loongson2f when this flag is
+ available (GCC >= 4.4).
+ * conf/Makefile.common [COND_mips_yeeloong] (CFLAGS_PLATFORM): Remove
+ `-march=mips3'.
+ * configure.ac: For mips-yeeloong, add -march=loongson2f if available,
+ or otherwise add -march=mips3.
+
+2010-11-07 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Suppress shell expansion on echo '*' and echo "*" like cases.
+ Reported by: Jordan Uggla.
+
+ * grub-core/script/execute.c (grub_script_arglist_to_argv): Escape
+ string arguments before shell expansion.
+ * tests/grub_cmd_echo.in: New testcases.
+
+2010-11-07 Robert Millan <rmh@gnu.org>
+
+ * conf/mips-qemu-mips.rmk: Remove stale file from previous
+ transition.
+
+2010-11-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Handle devices like "sdaa1".
+
+2010-11-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/emu/misc.h: Don't include grub/util/libzfs.h.
+ * include/grub/emu/misc.h (grub_get_libzfs_handle): Move from here ...
+ * include/grub/util/libzfs.h (grub_get_libzfs_handle): ... here.
+
+2010-11-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ntfs.c (grub_ntfs_uuid): Make uppercase.
+
+2010-11-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Replace useless recomendation to pass
+ --modules with a recomendation to report a bug.
+
+2010-11-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Properly register serial terminfo.
+ Reported by: Jordan Uggla
+
+ * grub-core/term/serial.c (grub_serial_terminfo_input_template): New
+ const.
+ (grub_serial_terminfo_output_template): Likewise.
+ (grub_cmd_serial): Register "serial" with terminfo.
+ (GRUB_MOD_INIT(serial)): Fill grub_serial_terminfo_input and
+ grub_serial_terminfo_output.
+
+2010-11-05 Robert Millan <rmh@gnu.org>
+
+ * util/grub-mkconfig.in: Remove gfxterm.mod probe (no longer
+ needed).
+
+2010-11-05 Robert Millan <rmh@gnu.org>
+
+ On Yeeloong, pass machine type information to Linux.
+
+ * grub-core/loader/mips/linux.c [GRUB_MACHINE_MIPS_YEELOONG]
+ (LOONGSON_MACHTYPE): New macro, set to
+ "machtype=lemote-yeeloong-2f-8.9inches".
+ [LOONGSON_MACHTYPE] (grub_cmd_linux): Pass LOONGSON_MACHTYPE as
+ additional argument to Linux.
+
+2010-11-04 Robert Millan <rmh@gnu.org>
+
+ * util/deviceiter.c (grub_util_iterate_devices): Increase SCSI
+ limit to 48 (to cope with Sun Fire X4500), and IDE limit to 96
+ (its SATA disks are detected as slaveless IDE master drives on
+ kFreeBSD).
+ Reported by Carsten Aulbert.
+
+2010-11-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/bin2h.c (main): Fix spelling error in generated output.
+
+2010-11-01 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/partmap/bsdlabel.c (iterate_real): Fix an integer overflow.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (grub_cmd_linux): Autoload vbe.mod if
+ vga= option is supplied.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_hurd.in: Don't call savedefault on recovery entries.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_parse): Avoid interpreting direct
+ argument as an argument to no-argument option.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in: Add missing load_video with explicit
+ GRUB_GFXPAYLOAD_LINUX.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.am (libgrub.pp): Propagate the libgrub.a split.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Do not put
+ elements with invlid index.
+ * grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
+ * grub-core/disk/raid.c (insert_array): Automatically reallocate
+ members.
+ * include/grub/raid.h (grub_raid_member): New struct.
+ (grub_raid_array): Transform devices and start_sector into usage of
+ grub_raid_member. All users updated
+ (allocated_devs): New member.
+
+2010-11-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/man/grub-set-default.h2m: Clarify that only saved default entry
+ is modified
+
+2010-10-29 BVK Chaitanya <bvk.groups@gmail.com>
+
+ NetBSD build fix for getline function conflict from gnulib.
+
+ * Makefile.util.def (libgrubkern.a): New library for grub kernel
+ components that depend on gnulib headers.
+ (libgrubmods.a): Renamed from earlier libgrub.a.
+ * conf/Makefile.common: Remove gnulib from *_LIBRARY flags.
+
+2010-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Refuse to do a cross-disk embeddingless
+ install rather than creating a broken install.
+
+2010-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (argp): Remove misleading example of installing to
+ a partition.
+
+2010-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Clarify the error message.
+
+2010-10-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/types.h (grub_target_off_t): Removed no longer used type.
+
+2010-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c
+ (grub_make_system_path_relative_to_its_root)
+ [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Fix mountpoint return on ZFS.
+
+2010-10-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c
+ (grub_make_system_path_relative_to_its_root): Revert r2882.
+
+2010-10-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (grub_relocator_subchunk): Remove now
+ useless field head. All users updated.
+ (free_subchunk): Correct handling of IN_REGION subchunk.
+
+2010-10-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Installing GRUB using grub-install): Proofread.
+ (Supported kernels): Likewise.
+
+2010-10-18 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Make mktemp invocations portable.
+
+ * grub-core/genmod.sh.in: Use mktemp with an explicit template, and
+ exit if mktemp fails.
+ * tests/grub_script_blockarg.in: Likewise.
+ * tests/partmap_test.in: Likewise.
+ * tests/util/grub-shell-tester.in: Likewise.
+ * tests/util/grub-shell.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+ * Makefile.am: Likewise, and chain shell commands with `&&'
+ instead of ';'.
+ * util/grub-mkrescue.in: Use the same explicit template as above, and
+ exit if mktemp fails.
+
+2010-10-18 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * util/grub.d/10_linux.in: Fix built-in initramfs image mode for
+ Linux kernel, reported by Dennis Schridde.
+
+2010-10-17 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/normal/auth.c (grub_auth_check_authentication):
+ Set-but-not-used variable removed.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (GNU/Linux): Document APM unavailability with
+ 32-bit linux protocol.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Check
+ cursor shape for sanity.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Installation): Document buggy BIOS install.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Installation): Indent.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): New parameter allow_floppy.
+ (arguments): New member allow_floppy.
+ (argp_parser): Handle --allow-floppy.
+ (main): Pass allow_floppy.
+ * util/grub-install.in: New option --allow-floppy passed though to
+ grub-setup.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Handle partitionless disks.
+
+2010-10-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Don't clean blocklists before readability
+ verfification.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Installation): Document embedding zone. Remove
+ obsolete grub-install example.
+
+2010-10-16 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel):
+ Set-but-not-used variable ifdef'ed.
+ * grub-core/lib/legacy_parse.c (grub_legacy_parse): Likewise.
+ * grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Set-but-not-used
+ variable removed.
+ * grub-core/disk/lvm.c (grub_lvm_scan_device): Likewise.
+ * grub-core/fs/jfs.c (grub_jfs_find_file): Likewise.
+ * grub-core/fs/minix.c (grub_minix_dir): Likewise.
+ * grub-core/fs/sfs.c (grub_sfs_read_extent): Likewise.
+ * grub-core/fs/ufs.c (grub_ufs_dir): Likewise.
+ * grub-core/gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
+ * grub-core/gfxmenu/view.c (redraw_menu_visit): Likewise.
+ * grub-core/gfxmenu/widget-box.c (draw): Likewise.
+ * grub-core/lib/relocator.c (malloc_in_range): Likewise.
+ * grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta): Likewise.
+ * grub-core/loader/i386/bsd_pagetable.c (fill_bsd64_pagetable):
+ Likewise.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c (skip_ext_op): Skip index field op.
+ * include/grub/acpi.h (GRUB_ACPI_EXTOPCODE_INDEX_FIELD_OP): New
+ enum value.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/acpihalt.c (get_sleep_type): Accept \_S5_ as
+ synonym to _S5_. Needed for some DSDTs.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Userspace ACPI parser debugging.
+
+ * grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Include userspace
+ headers and add relevant defines. Don't include standard headers.
+ (main) [GRUB_DSDT_TEST]: New function.
+ * include/grub/acpi.h [GRUB_DSDT_TEST]: Don't include standard headers.
+ Don't declare functions.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove dead grub_efi_mm_fini.
+
+ * grub-core/kern/efi/mm.c (allocated_page): Removed.
+ (ALLOCATED_PAGES_SIZE): Likewise.
+ (MAX_ALLOCATED_PAGES): Likewise.
+ (allocated_pages): Likewise.
+ (grub_efi_allocate_pages): Don't record allocated pages.
+ (grub_efi_free_pages): Likewise.
+ (grub_efi_mm_init): Likewise.
+ (grub_efi_mm_fini): Removed.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/efi/mm.c (BYTES_TO_PAGES): Round up instead of down.
+ (grub_efi_mm_init): Take into account the memory map size increase.
+
+2010-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ns8250.c (do_real_config): Set port->broken to 0.
+ (serial_hw_put): Wait based on real time rather than port reads. Don't
+ roken ports.
+ * include/grub/serial.h (grub_serial_port): New field broken.
+
+2010-10-16 Robert Millan <rmh@gnu.org>
+
+ * grub-core/kern/emu/misc.c
+ (grub_make_system_path_relative_to_its_root): Fix premature return
+ when processing non-root ZFS filesystems.
+ Reported by Sergio Talens-Oliag.
+
+2010-10-15 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_linux.in (list): Expand "vmlinu[zx]" instances to
+ guarantee compressed ones are processed first.
+
+2010-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/main.c (grub_efiemu_prepare): Handle errors from
+ grub_efiemu_autocore.
+
+2010-10-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S (bypass_table): Use 0x1b explicitly
+ rather than 0x1b.
+ (grub_console_getkey): Use correct jae opcode rather than ja.
+
+2010-10-12 Robert Millan <rmh@gnu.org>
+
+ * util/grub-mkconfig.in: Merge `GRUB_DISABLE_LINUX_RECOVERY' and
+ `GRUB_DISABLE_NETBSD_RECOVERY' into a single `GRUB_DISABLE_RECOVERY'
+ variable. All references updated.
+
+ * util/grub.d/10_kfreebsd.in: Support recovery boot entries.
+
+2010-10-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Correctly distinguish mdraid flavours.
+
+ * grub-core/disk/raid.c (grub_raid_getname) [GRUB_UTIL]: New function.
+ (insert_array): New argument raid.
+ * include/grub/disk.h (grub_disk_dev) [GRUB_UTIL]: New member raidname.
+ * include/grub/raid.h (grub_raid_array) [GRUB_UTIL]: New member driver.
+ * util/grub-probe.c (probe): PRint raidname instead of plainly "mdraid".
+
+2010-10-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/pc/startup.S (grub_console_getkey): Fix incorrect
+ handling of special keys.
+
+2010-10-02 Aleš Nesrsta <starous@volny.cz>
+
+ * include/grub/scsi.h (grub_make_scsi_id): Fix incorrect usgae of
+ GRUB_SCSI_ID_BUS_SHIFT instead of GRUB_SCSI_ID_LUN_SHIFT.
+
+2010-10-02 Aleš Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/ohci.c (GRUB_OHCI_TDS): Increase.
+ * grub-core/bus/usb/uhci.c (N_TD): New definition. All previous implicit
+ users updated.
+ * grub-core/bus/usb/usbtrans.c (grub_usb_bulk_setup_readwrite):
+ Use right endpoint when querying descriptor.
+
+2010-10-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Clear out 0x80 color bit on EFI.
+ Tested by: decoder
+ Reported by: decoder and meta tech.
+
+ * grub-core/term/efi/console.c (grub_console_standard_color): Removed.
+ (grub_console_setcolorstate): Clear out 0x80 bit.
+ Use GRUB_TERM_DEFAULT_STANDARD_COLOR.
+ (grub_console_output): Use GRUB_TERM_DEFAULT_NORMAL_COLOR.
+ Use GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR.
+
+2010-10-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/linux.c (DEFAULT_VIDEO_MODE) [GRUB_MACHINE_EFI]:
+ Set to "auto".
+
+2010-09-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gettext/gettext.c (grub_gettext_init_ext): Avoid using
+ mo_file after freeing.
+
+2010-09-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (read_terminal_list): Free in a right order.
+
+2010-09-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/execute.c (grub_script_execute_sourcecode): Set
+ flags.
+
+2010-09-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (main) [GRUB_MACHINE_IEEE1275]: Propagate argp
+ usage.
+
+2010-09-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Put terminfo into core on ieee1275 and yeeloong (needed for console).
+
+ * gentpl.py: New groups terminfoinkernel and terminfomodule.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Include extcmd.h, arg.h
+ and terminfo.h when needed.
+ * grub-core/Makefile.core.def (kernel): Include term/terminfo.c,
+ term/tparm.c, commands/extcmd.c, lib/arg.c on terminfokernel.
+ (terminfo): Enable only on terminfokernel.
+ (extcmd): Likewise.
+ * include/grub/extcmd.h: Add missing EXPORT_FUNC.
+ * include/grub/lib/arg.h: Likewise.
+ * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Fix
+ incorrect usage of ->.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi]
+ [GRUB_MACHINE_EFI && __i386__]: Fix typo.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix coreboot compilation.
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
+ Take VBE info into account even if only text is supported.
+ (fill_vbe_info): Take into account the case when only VGA text
+ is supported.
+ * include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): Set to zero
+ on coreboot, multiboot and qemu.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/relocator.c (malloc_in_range): Trim too verbose
+ debug messages.
+ (grub_relocator_prepare_relocs): Set movers_chunk.srcv.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_cmd_netbsd): Provide default serial
+ parameters.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_parse): Fix treating of all commands as
+ if they were BSD-style.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/lnxboot.S: Replace
+ GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE with
+ GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART.
+
+2010-09-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Write embedding zone using Reed-Solomon.
+
+ * Makefile.util.def (grub-setup): Add grub-core/lib/reed_solomon.c.
+ * grub-core/Makefile.am (rs_decoder.S): New target.
+ (kern/i386/pc/startup.S): Depend on rs_decoder.S.
+ * grub-core/kern/i386/pc/startup.S (reed_solomon_redundancy): New field.
+ (multiboot): Move to RS part.
+ (post_reed_solomon): New label.
+ (grub_boot_drive): Move to non-RS part since it's modified in memory
+ on boot.
+ Include rs_decoder.S.
+ * grub-core/lib/reed_solomon.c: New file.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY):
+ New definition.
+ (GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE): Removed.
+ (GRUB_KERNEL_I386_PC_RAW_SIZE): Updated.
+ (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): New definition.
+ * include/grub/partition.h (grub_partition_map): Change prototype of
+ embed to allow returning additional sectors.
+ * include/grub/reed_solomon.h: New file.
+ * util/grub-setup.c (setup): Handle Reed-Solomon.
+
+2010-09-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
+ i386 and x86-64 definedness tests.
+
+2010-09-27 Yves Blusseau <blusseau@zetam.org>
+
+ Fix generation of kernel_syms.lst
+
+ * grub-core/Makefile.am (kernel_syms.lst): Fix value and position of
+ ASM_PREFIX
+
+2010-09-26 Robert Millan <rmh@gnu.org>
+
+ Support degraded ZFS arrays in "grub-probe -t device" resolution.
+
+ * grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): When
+ the pool is an array of devices, iterate through it and return the
+ first device that passes a stat() test (instead of blindly returning
+ the first one).
+
+2010-09-26 Robert Millan <rmh@gnu.org>
+
+ Build fixes for GNU/kFreeBSD.
+
+ * Makefile.util.def: Add `$(LIBZFS) $(LIBNVPAIR)' library dependencies
+ to programs that require ZFS conversion.
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Support
+ kernels that don't have FLOPPY_MAJOR.
+
+2010-09-25 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * grub-core/kern/emu/full.c (grub_emu_post_init): Fix typo.
+
+2010-09-25 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix grub-emu build.
+
+ * grub-core/kern/emu/main.c: Remove #include <getopt.h>.
+ * grub-core/kern/emu/full.c: Split grub_mdraid_{init,fini} into
+ mdraid09 and mdraid1x.
+
+2010-09-24 Colin Watson <cjwatson@ubuntu.com>
+
+ Re-enable grub-extras.
+
+ * autogen.sh: Create symlinks to ${GRUB_CONTRIB} if necessary to
+ avoid confusing Automake. Run autogen only twice, once for the top
+ level and once for grub-core. Add Makefile.util.def and
+ Makefile.core.def from extra modules to the appropriate autogen
+ invocations. If Makefile.common exists in an extra module, include
+ it in both Makefile.util.am and grub-core/Makefile.core.am;
+ similarly, include any Makefile.util.common file in Makefile.util.am
+ and any Makefile.core.common file in grub-core/Makefile.core.am.
+ * conf/Makefile.common ($(top_srcdir)/grub-core/Makefile.core.am):
+ Depend on $(top_srcdir)/grub-core/Makefile.gcry.def.
+ ($(top_srcdir)/grub-core/Makefile.gcry.def): Remove.
+ * grub-core/Makefile.am: Remove inclusion of Makefile.gcry.am.
+
+ * gentpl.py (gvar_add): Turn GVARS into a set.
+ (global_variable_initializers): Sort global variables on output.
+ (vars_init): New function.
+ (first_time): Likewise.
+ (library): Ensure that non-global variable initialisations are
+ emitted before the first time we emit code for a library block.
+ Append to variables rather than setting them. Only emit
+ noinst_LIBRARIES, BUILT_SOURCES, and CLEANFILES the first time for
+ each conditional path.
+ (program): installdir() emits an Autogen macro, so must be passed to
+ var_add rather than gvar_add.
+ (data): Likewise.
+ (script): Likewise.
+ (rules): New function, centralising handling for different target
+ types. Set up Guile association lists for first_time and vars_init,
+ and send most output to a diversion so that variable initialisations
+ can be emitted first.
+ (module_rules): Use new rules function.
+ (kernel_rules): Likewise.
+ (image_rules): Likewise.
+ (library_rules): Likewise.
+ (program_rules): Likewise.
+ (script_rules): Likewise.
+ (data_rules): Likewise.
+
+ * configure.ac: Add AC_PROG_LN_S, for the benefit of ntldr-img.
+
+ * .bzrignore: Add contrib and grub-core/contrib. Remove
+ grub-core/Makefile.gcry.am.
+
+2010-09-24 Yves Blusseau <blusseau@zetam.org>
+
+ * grub-core/lib/LzFind.c: Add missing include.
+ * grub-core/lib/LzmaEnc.c: Likewise.
+ * grub-core/script/lexer.c: Likewise.
+ * grub-core/script/yylex.l: Likewise.
+ * util/grub-macho2img.c: Likewise.
+ * util/grub-menulst2cfg.c: Likewise.
+ * util/grub-mklayout.c: Likewise.
+ * util/grub-mkpasswd-pbkdf2.c
+ * util/grub-mkrelpath.c: Likewise.
+ * util/resolve.c: Likewise.
+
+2010-09-24 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * Makefile.util.def (example_unit_test): Add
+ grub-core/gnulib/libgnu.a.
+
+2010-09-23 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/commands/acpihalt.c (get_sleep_type): Initialize prev.
+
+2010-09-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support xz compression on yeeloong.
+
+ * Makefile.util.def (grub-mkimage): Add $(LIBLZMA).
+ * configure.ac: Check for LZMA.
+ * grub-core/Makefile.core.def (xz_decompress): New target.
+ (none_decompress): Likewise.
+ * grub-core/boot/decompressor/minilib.c: New file.
+ * grub-core/boot/decompressor/none.c: Likewise.
+ * grub-core/boot/decompressor/xz.c: Likewise.
+ * grub-core/kern/mips/cache.S: Change to noreorder nomacro.
+ * grub-core/kern/mips/cache_flush.S: Likewise.
+ * grub-core/kern/i386/pc/lzma_decode.S: Remove dead code.
+ * grub-core/kern/mips/startup.S: Move first stage to ...
+ * grub-core/boot/mips/startup_raw.S: ...here. Change to noreorder
+ nomacro.
+ * grub-core/kern/mips/startup.S: Change to noreorder nomacro.
+ * grub-core/lib/mips/relocator_asm.S: Change to noreorder nomacro.
+ * grub-core/lib/xzembed/xz_dec_bcj.c [GRUB_EMBED_DECOMPRESSOR]:
+ Allocate statically.
+ * grub-core/lib/xzembed/xz_dec_lzma2.c [GRUB_EMBED_DECOMPRESSOR]:
+ Allocate statically or use scratch. Don't check CRC32.
+ * grub-core/lib/xzembed/xz_dec_stream.c [GRUB_EMBED_DECOMPRESSOR]:
+ Allocate statically. Don't check CRC32.
+ * include/grub/decompressor.h: New file.
+ * include/grub/offsets.h (GRUB_KERNEL_MIPS_YEELOONG_RAW_SIZE):
+ Removed.
+ (GRUB_KERNEL_MIPS_YEELOONG_UNCOMPRESSED_SIZE): New field.
+ (GRUB_KERNEL_MIPS_YEELOONG_TOTAL_MODULE_SIZE): Adjusted.
+ (GRUB_KERNEL_MIPS_YEELOONG_PREFIX): Likewise.
+ (GRUB_KERNEL_MIPS_YEELOONG_PREFIX_END): Likewise.
+ (GRUB_KERNEL_MACHINE_UNCOMPRESSED_SIZE): New define.
+ * util/grub-mkimage.c (grub_compression_t): New type.
+ (PLATFORM_FLAGS_DECOMPRESSORS): New flag.
+ (image_target_desc): New field default_compression.
+ (image_targets): Adjust yeeloong targets.
+ (compress_kernel_xz) [HAVE_LIBLZMA]: New function.
+ (compress_kernel): New parameter comp.
+ (generate_image): Likewise. Handle new compression case.
+ (options): New option --compression
+ (help): Likewise.
+ (main): Handle new option.
+
+2010-09-22 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c [__NetBSD__]: Define FLOPPY_MAJOR.
+
+2010-09-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
+ typo in __i386__ conditional.
+
+2010-09-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/multiboot_mbi2.c (GRUB_MACHINE_EFI): Add missing
+ include.
+
+2010-09-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement EFI and ACPI multiboot2 extensions.
+
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare
+ new tags as supported.
+ (acpiv2_size): New function.
+ (grub_multiboot_get_mbi_size): Take new tags into account.
+ (grub_multiboot_make_mbi): Add new tags.
+ * include/grub/multiboot.h (GRUB_MACHINE_HAS_ACPI): New definition.
+
+2010-09-21 Aleš Nesrsta <starous@volny.cz>
+
+ * grub-core/bus/usb/serial/common.c (grub_usbserial_attach):
+ Added missing configuration of USB device.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/normal/menu_entry.c (run): Make sure we always return
+ a value.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/efi/lsefimmap.c (grub_cmd_lsefimmap):
+ NumberOfPages is UINT64 according to the UEFI specification, not
+ UINTN. Fix printf format.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Change type of
+ `err' to grub_usb_err_t.
+ Reported and tested by: KESHAV P.R.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Make
+ tpart non-const, so that we can assign to it. (Since this is a
+ typedef, the constness refers to the pointer rather than what it
+ points to.)
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * conf/Makefile.common (CPPFLAGS_GNULIB): Add
+ $(top_srcdir)/grub-core/gnulib as well as
+ $(top_builddir)/grub-core/gnulib.
+ Reported by: KESHAV P.R.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Fix the bootloader ID option to be
+ consistently --bootloader-id, not --bootloader_id.
+ Reported by: KESHAV P.R.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/hashsum.c (GRUB_MOD_INIT): Make "Compute or
+ check hash checksum." consistently translatable.
+
+2010-09-21 Yves Blusseau <blusseau@zetam.org>
+
+ * conf/Makefile.common (CPPFLAGS_GNULIB): Replace $(top_srcdir) with
+ $(top_builddir).
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/hashsum.c (aliases): Add sha1sum alias.
+ (GRUB_MOD_INIT): Register sha1sum command.
+ (GRUB_MOD_FINI): Unregister sha1sum command.
+
+2010-09-21 Yves Blusseau <blusseau@zetam.org>
+
+ Keep boot and grub directory names in sync with utils scripts
+
+ * configure.ac: Define GRUB_BOOT_DIR_NAME and GRUB_DIR_NAME macros.
+ * config.h.in: Add previous macros.
+ * include/grub/emu/misc.h (DEFAULT_DIRECTORY): Use previous macros.
+ * util/grub-install.in: Use $bootdir and $grubdir variables.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/hostdisk.c (find_system_device): Only try to
+ convert partition names to disk names if the new `convert' parameter
+ is set.
+ (grub_util_biosdisk_get_grub_dev): If opening the disk device
+ returns GRUB_ERR_UNKNOWN_DEVICE, treat the partition device as a
+ disk in its own right. This can happen with Xen disk images.
+
+2010-09-21 Yves Blusseau <blusseau@zetam.org>
+
+ * util/grub-editenv.c: Update strings to avoid warnings when generating
+ grub.pot file.
+ * util/grub-setup.c: Likewise.
+
+2010-09-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Change version to 1.99~beta0.
+
+2010-09-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
+ Add BADRAM.
+ * grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap):
+ Likewise.
+ * include/multiboot.h: Resynced with specification.
+ * include/multiboot2.h: Likewise.
+
+2010-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix po directory handling.
+
+ * configure.ac: Create po/Makefile.in rather than po/Makefile.
+ * grub-core/gnulib/Makefile.am: Import gettext module.
+ * m4/gnulib-cache.m4: Likewise.
+ * m4/gnulib-comp.m4: Likewise.
+ * m4/gettext.m4: New file, from gnulib.
+ * m4/glibc2.m4: Likewise.
+ * m4/iconv.m4: Likewise.
+ * m4/intdiv0.m4: Likewise.
+ * m4/intl.m4: Likewise.
+ * m4/intldir.m4: Likewise.
+ * m4/intlmacosx.m4: Likewise.
+ * m4/intmax.m4: Likewise.
+ * m4/inttypes-pri.m4: Likewise.
+ * m4/lcmessage.m4: Likewise.
+ * m4/lib-ld.m4: Likewise.
+ * m4/lib-link.m4: Likewise.
+ * m4/lib-prefix.m4: Likewise.
+ * m4/lock.m4: Likewise.
+ * m4/nls.m4: Likewise.
+ * m4/po.m4: Likewise.
+ * m4/printf-posix.m4: Likewise.
+ * m4/progtest.m4: Likewise.
+ * m4/threadlib.m4: Likewise.
+ * m4/uintmax_t.m4: Likewise.
+ * m4/visibility.m4: Likewise.
+ * po/Makefile.am: Remove.
+ * po/Makefile.in.in: New file, from gettext.
+ ($(DOMAIN).pot-update): Support POTFILES-shell.
+ * po/Makevars: New file.
+ * po/POTFILES-shell: Rename to ...
+ * po/POTFILES-shell.in: ... this. Update.
+ * po/POTFILES: Rename to ...
+ * po/POTFILES.in: ... this. Update.
+ * po/Rules-quot: New file, from gettext.
+ * po/boldquot.sed: Likewise.
+ * po/en@boldquot.header: Likewise.
+ * po/en@quot.header: Likewise.
+ * po/insert-header.sin: Likewise.
+ * po/quot.sed: Likewise.
+ * po/remove-potcdate.sin: Likewise.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Use UUID when possible.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/20_linux_xen.in: Use submenus.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support submenus.
+
+ * grub-core/commands/menuentry.c (grub_normal_add_menu_entry): New
+ parameter submenu. All users updated.
+ * grub-core/normal/main.c (free_menu): Rename to ...
+ (grub_normal_free_menu): ... this. Made global.
+ * grub-core/normal/menu.c (grub_menu_execute_entry): Open new context
+ if requested.
+ * grub-core/normal/menu_entry.c (screen): New field submenu.
+ (make_screen): Set submenu.
+ (run): Open new context if requested.
+ * include/grub/menu.h (grub_menu_entry): New field submenu.
+ * include/grub/normal.h (grub_normal_free_menu): New proto.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Menu entries extractor.
+
+ * grub-core/commands/configfile.c (grub_cmd_source): Implement extractor
+ variants.
+ (GRUB_MOD_INIT): Register new variants.
+ (GRUB_MOD_FINI): Unregister new variants.
+ * grub-core/commands/legacycfg.c (grub_cmd_legacy_configfile): Merge
+ into grub_cmd_legacy_source.
+ (grub_cmd_legacy_source): Implement extractor variants.
+ (GRUB_MOD_INIT): Register new variants.
+ (GRUB_MOD_FINI): Unregister new variants.
+ * grub-core/commands/menuentry.c (grub_menu_init): Declare menuentry
+ as an extractor.
+ * grub-core/commands/search_wrap.c (GRUB_MOD_INIT): Declare
+ search as an extractor.
+ * grub-core/commands/test.c (GRUB_MOD_INIT): Declare
+ test as an extractor.
+ * grub-core/kern/corecmd.c (grub_register_core_commands): Declare set
+ as an extractor.
+ * grub-core/normal/context.c (grub_env_context_open): Reorganised.
+ (grub_env_new_context): New function.
+ (grub_env_context_open): Likewise.
+ (grub_env_extractor_open): Likewise.
+ (grub_env_extractor_close): Likewise.
+ * grub-core/script/execute.c (grub_script_execute_cmdline): Handle
+ grub_extractor_level.
+ * include/grub/command.h (GRUB_COMMAND_FLAG_EXTRACTOR): New flag.
+ * include/grub/env.h (grub_env_extractor_open): New proto.
+ (grub_env_extractor_close): Likewise.
+ * include/grub/normal.h (grub_extractor_level): New external variable.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make cutmem accept a region specification.
+ Suggested by: Samuel Thibault
+
+ * grub-core/mmap/mmap.c (parsemem): New function.
+ (grub_cmd_cutmem): Handle new arguments.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New command cutmem.
+
+ * grub-core/mmap/mmap.c (grub_cmd_cutmem): New function.
+ (GRUB_MOD_INIT): Register new command.
+ (GRUB_MOD_FINI): Unregister new command.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support some annoying BSD and Minix subpartitions.
+
+ * Makefile.util.def (libgrub.a): Add grub-core/partmap/bsdlabel.c.
+ * grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name):
+ Properly handle concatenation.
+ * grub-core/kern/device.c (grub_device_iterate): Likewise.
+ * grub-core/normal/completion.c (iterate_partition): Likewise.
+ * grub-core/kern/disk.c (grub_disk_open): Make disk->name not
+ contain partition. All users updated.
+ * grub-core/partmap/bsdlabel.c (grub_netbsdlabel_partition_map): New
+ struct.
+ (grub_openbsdlabel_partition_map): Likewise.
+ (bsdlabel_partition_map_iterate): Rename to ..
+ (iterate_real): ... this. New arguments sector, freebsd and pmap.
+ (bsdlabel_partition_map_iterate): New function.
+ (netopenbsdlabel_partition_map_iterate): Likewise.
+ (netbsdlabel_partition_map_iterate): Likewise.
+ (openbsdlabel_partition_map_iterate): Likewise.
+ (GRUB_MOD_INIT): Register new partmaps.
+ (GRUB_MOD_FINI): Unregister new partmaps.
+ * grub-core/partmap/msdos.c (pc_partition_map_iterate): Rename to ...
+ (grub_partition_msdos_iterate): ... this. All users updated.
+ Don't support embedding other than in a minix partition.
+ * include/grub/msdos_partition.h (grub_partition_msdos_iterate): New
+ proto.
+ * include/grub/partition.h (grub_partition): New field msdostype.
+ * util/grub-install.in: Handle openbsd and netbsd types being in
+ part_bsd module.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split mdraid.mod into mdraid09.mod and mdraid1x.mod.
+
+ * Makefile.util.def (libgrub.a): Add grub-core/disk/mdraid1x_linux.c.
+ * grub-core/Makefile.core.def (mdraid): Renamed to ...
+ (mdraid09): ... this.
+ (mdraid1x): New module.
+ * grub-core/disk/mdraid_linux.c: Move 1.x parts ...
+ * grub-core/disk/mdraid1x_linux.c: ...here. All users updated.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/misc.c (asprintf): Use vsnprintf instead of
+ vsprintf.
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/efi/lsefimmap.c: Correct header.
+ * NEWS: Update.
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-editenv.c (argp_parser): Don't pass translated strings
+ as printf format strings; the translations might contain '%' which
+ could cause a crash.
+ (main): Likewise.
+ * util/grub-fstest.c (argp_parser): Likewise.
+ * util/grub-setup.c (argp_parser): Likewise.
+ (main): Likewise.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use argp in grub-fstest.
+
+ * util/grub-fstest.c: Don't include getopt.h.
+ Include argp.h.
+ (root): New variable.
+ (args_count): Likewise.
+ (nparm): Likewise.
+ (num_disks): Likewise.
+ (images): Likewise.
+ (cmd): Likewise.
+ (debug_str): Likewise.
+ (args): Likewise.
+ (options): Transformed to argp.
+ (usage): Removed.
+ (main): Split argument parsing into ...
+ (argp_parser): ... this. Changed to argp format.
+ (argp): New variable.
+ (main): Use argp_parse.
+
+2010-09-20 Tristan Gingold <gingold@free.fr>
+2010-09-20 Robert Millan <rmh.grub@aybabtu.com>
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/efi/lsefimmap.c: New file.
+ * grub-core/Makefile.core.def (lsefimmap): New module.
+ * include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): New definition.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Pause the execution (10s max) if any errors are displayed so the user
+ has a chance to see them.
+
+ * grub-core/kern/err.c (grub_err_printed_errors): New variable.
+ (grub_print_error): Increment grub_err_printed_errors.
+ * grub-core/normal/menu.c (grub_menu_execute_entry): Pause the
+ execution if any errors were displayed.
+ (show_menu): Remove old code for pause.
+ * grub-core/normal/menu_entry.c (run): Likewise.
+ * grub-core/normal/term.c (grub_normal_char_counter): Removed. All
+ users updated.
+ (grub_normal_get_char_counter): Likewise.
+ * include/grub/err.h (grub_err_printed_errors): New external variable.
+ * include/grub/normal.h (grub_normal_get_char_counter): Removed.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support multiboot VBE info.
+
+ * grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
+ Take VBE info into account.
+ (fill_vbe_info) [GRUB_MACHINE_HAS_VBE]: New function.
+ (retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
+ Call fill_vbe_info when appropriate.
+ (grub_multiboot_make_mbi): Account for the size occupied by VBE info.
+ * grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare tags
+ as supported.
+ (grub_multiboot_get_mbi_size): Take new tags into account.
+ (fill_vbe_tag) [GRUB_MACHINE_HAS_VBE]: New function.
+ (retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
+ Call fill_vbe_tag when appropriate.
+ (grub_multiboot_make_mbi): Properly align tags.
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_pm_interface): New
+ function.
+ * include/grub/i386/pc/vbe.h (grub_vbe_bios_get_pm_interface): New
+ proto.
+ * include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): New definition.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Suport manual terminal geometry specification.
+
+ * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions):
+ Save state in grub_ofconsole_terminfo_output.
+ (grub_ofconsole_term): Use grub_terminfo_getwh.
+ (grub_ofconsole_getwh): Removed.
+ * grub-core/term/serial.c (grub_serial_getwh): Removed.
+ (grub_serial_term): Use grub_terminfo_getwh.
+ * grub-core/term/terminfo.c (grub_terminfo_getwh): New function.
+ (options): New struct.
+ (OPTION_*): New enum.
+ (grub_cmd_terminfo): Transform into extcmd and handle new parameters.
+ * include/grub/terminfo.h (grub_terminfo_output_state): New fields
+ width and height.
+ (grub_terminfo_getwh): New proto.
+ * grub-core/lib/legacy_parse.c (grub_legacy_parse): Handle --lines.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle legacy "terminal" command.
+
+ * grub-core/lib/legacy_parse.c (legacy_command): New flags FLAG_TITLE
+ and FLAG_TERMINAL.
+ (legacy_commands): Add terminal and title.
+ (grub_legacy_parse): Handle terminal. Simplify title handling.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/arg.c (grub_arg_show_help): Correctly handle
+ parameters overflow.
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add grub-core/gnulib/sys, widthspec.bin, and
+ widthspec.h.
+
+ * docs/grub.texi (Shell-like scripting): Document `!'.
+ (Network): Simplify using new i386-pc-pxe format. Mention
+ grub-mknetdir.
+
+ * NEWS: Update.
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.am (SUBDIRS): Restore "."; it's important to force
+ ordering, so that e.g. ascii.h is built before grub-core/font/font.c
+ when needed.
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/commands/efi/lsefisystab.c: Correct header.
+ * grub-core/commands/efi/lssal.c: Likewise.
+ * grub-core/commands/testload.c: Likewise.
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in: Add explicit root argument to --set to
+ prevent the UUID being interpreted as an argument to --set (matches
+ previous change to prepare_grub_to_access_device).
+
+2010-09-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/emu/hostdisk.c: Include <sys/ioctl.h> and <sys/disklabel.h>
+ on FreeBSD. Define HAVE_DIOCGDINFO on NetBSD and FreeBSD to reduce
+ the verbosity of later #ifs.
+ (find_partition_start): Define this function on FreeBSD too.
+ (device_is_wholedisk) [__FreeBSD__ || __FreeBSD_kernel__]: New
+ function.
+ (grub_util_biosdisk_get_grub_dev): Use partition-start-sector logic
+ on FreeBSD.
+
+2010-09-20 Yves Blusseau <blusseau@zetam.org>
+
+ * util/grub-editenv.c: Use argp instead of getopt.
+
+2010-09-20 Yves Blusseau <blusseau@zetam.org>
+
+ * util/grub-setup.c: Use argp instead of getopt.
+
+2010-09-20 Yves Blusseau <blusseau@zetam.org>
+
+ Use gnulib-tool to create gnulib source files.
+
+ * Add gnulib files generated by gnulib-tool in build-aux, m4 and
+ grub-core/gnulib directories
+ * .bzignore: Add **/.deps and autogenerated gnulib files
+ * configure.ac: Assign auxiliary directory to build-aux, add invocation
+ of gnulib macros, add grub-core/gnulib/Makefile
+ * Makefile.am: Add gnulib directory in SUBDIRS (removing unnecessary .),
+ include m4 directory to aclocal.
+ * Makefile.util.def: Remove direct compilation of gnulib source files
+ and use the new grub-core/gnulib/libgnu.a.
+ * build-aux/config.rpath: move config.rpath from top directory to
+ build-aux
+ * conf/Makefile.common: Remove the macro _GL_UNUSED already defined
+ in gnulib headers
+ * conf/Makefile.extra-dist: Add m4/gnulib-cache.m4
+ * grub-core/Makefile.core.def: Remove unnecessary extra_dist
+ * grub-core/lib/posix_wrap/localcharset.h (locale_charset): Update
+ header.
+ * grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Return static
+ string.
+
+2010-09-20 Yves Blusseau <blusseau@zetam.org>
+
+ * .bzrignore: Add grub-kbdcomp, grub-menulst2cfg, *.marker,
+ grub-core/genmod.sh and grub-core/gensyminfo.sh
+
+2010-09-20 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Add a test for echo command options.
+
+ * tests/grub_cmd_echo.in: New test.
+ * Makefile.util.def: Rules for new test.
+
+2010-09-20 Szymon Janc <szymon@janc.net.pl>
+
+ Remove crc.mod and move crc command to hashsum.mod.
+ Remove lib/crc.c - users updated to use gcrypt implementation.
+
+ * grub-core/commands/crc.c: Removed.
+ * grub-core/Makefile.core.def (crc): Module removed.
+ * grub-core/commands/hashsum.c (aliases[]): Add crc alias.
+ * grub-core/commands/hashsum.c (GRUB_MOD_INIT): Register crc command.
+ * grub-core/commands/hashsum.c (GRUB_MOD_FINI): Unregister crc command.
+ * grub-core/lib/crc.c: Removed.
+ * include/grub/lib/crc.h: Removed.
+ * Makefile.util.def (crc): Remove lib/crc.c
+ * grub-core/Makefile.core.def (libgrub.a): Remove grub-core/lib/crc.c.
+ * util/grub-fstest.c (cmd_crd): Use libgcrypt crc implementation.
+ * Makefile.util.def (libgrub.a): Add grub-core/lib/libgcrypt-grub/cipher/crc.c.
+ * Makefile.util.def (grub-fstest): Add CFLAGS_GCRY to cflags.
+ * Makefile.util.def (grub-fstest): Add CPPFLAGS_GCRY to cppflags.
+ * grub-core/efiemu/prepare.c (grub_efiemu_crc): Use libgcrypt crc implementation.
+
+2010-09-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/boot/i386/pc/boot.S: Ignore %dl if it's not in a sane range.
+
+2010-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split config.h for util and core.
+
+ * acinclude.m4 (HAVE_ASM_USCORE): Transformed into a variable.
+ (ADDR32): Likewise.
+ (DATA32): Likewise.
+ (BSS_START_SYMBOL): Likewise.
+ (END_SYMBOL): Likewise.
+ (NEED_ENABLE_EXECUTE_STACK): Likewise. All users updated.
+ (grub_I386_ASM_ABSOLUTE_WITHOUT_ASTERISK): Removed.
+ * config.h.in: New file.
+ * configure.ac: Use config-util.h as config define file.
+ Rename MACHINE into GRUB_MACHINE. All users updated.
+ (NEED_REGISTER_FRAME_INFO): Transformed into a variable. All users
+ updated.
+ (NESTED_FUNC_ATTR): Likewise.
+ Substitue new variables.
+ (COND_HAVE_ASM_USCORE): New conditional.
+ * grub-core/Makefile.am (ASM_PREFIX): New variable.
+ (kernel_syms.lst): Use ASM_PREFIX.
+ * grub-core/kern/emu/console.c: Include config-util.h.
+ * grub-core/kern/emu/misc.c: Likewise.
+ * grub-core/kern/emu/mm.c: Likewise.
+ * include/grub/emu/misc.h: Likewise.
+ * include/grub/libgcc.h: Likewise.
+
+2010-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/efi/console.c (efi_codes): Fix GRUB_TERM_KEY_*
+ constants usage.
+ * grub-core/kern/emu/console.c (grub_ncurses_getkey):
+ Fix GRUB_TERM_KEY_* constants usage.
+ * grub-core/kern/emu/misc.c (asprintf): Fix vasprintf usage.
+
+2010-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/bus/usb/ohci.c (grub_ohci_cancel_transfer): Use %p to
+ print pointer.
+ * grub-core/bus/usb/uhci.c: Remove empty define.
+ (grub_uhci_check_transfer): Add missing cast.
+ * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Use %p to
+ print pointer.
+ * grub-core/term/usb_keyboard.c (grub_usb_keyboard_getkey): Use
+ PRIuGRUB_SIZE.
+ * include/grub/types.h (PRIuGRUB_SIZE): New definition.
+
+2010-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (legacycfg): Add
+ lib/i386/pc/vesa_modes_table.c on emu.
+
+2010-09-19 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Reduce number of temporary files generated by build system.
+
+ * grub-core/gencmdlist.sh: Removed.
+ * grub-core/genfslist.sh: Removed.
+ * grub-core/genhandlerlist.sh: Removed.
+ * grub-core/genmodsrc.sh: Removed.
+ * grub-core/genpartmaplist.sh: Removed.
+ * grub-core/genparttoollist.sh: Removed.
+ * grub-core/gentermiinallist.sh: Removed.
+ * grub-core/genvideolist.sh: Removed.
+
+ * grub-core/genmod.sh.in: New file.
+ * grub-core/gensyminfo.sh.in: New file.
+
+ * conf/Makefile.common (CPPFLAGS_*_LIST): New marker flags.
+ * conf/Makefile.extra-dist: Update with new files.
+ * gentpl.py: Remove rules related to unnecessary temporary files.
+ * grub-core/Makefile.am (syminfo.lst): New replacement for def-*
+ and und-* files.
+ * grub-core/Makefile.core.def: New rules for gensyminfo.sh and
+ genmod.sh scripts.
+ * grub-core/bus/usb/uhci.c: Remove empty #define.
+ * grub-core/genmoddep.awk: Updated with new syminfo format.
+ * util/bash-completion.d/Makefile.am: Add config.log to
+ CLEANFILES.
+
+2010-09-19 Yves Blusseau <blusseau@zetam.org>
+
+ * Makefile.util.def: Add forgotten $(LIBINTL) library.
+
+2010-09-19 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * util/grub-mkconfig.in: Check the config script for syntax errors
+ before saving.
+
+2010-09-19 Colin Watson <cjwatson@ubuntu.com>
+2010-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-install): Use util/grub-install.in on all
+ platforms.
+ * util/grub-install.in: Add EFI and IEEE1275 support.
+ * util/i386/efi/grub-install.in: Removed.
+ * util/ieee1275/grub-install.in: Likewise.
+
+2010-09-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/i386/cmostest.c (+parse_args): New function.
+ (grub_cmd_cmosclean): Likewise.
+ (GRUB_MOD_INIT): Register command cmosclean.
+ * util/grub-mkconfig.in: Export GRUB_BUTTON_CMOS_CLEAN.
+ * util/grub.d/00_header.in: Handle GRUB_BUTTON_CMOS_CLEAN.
+
+2010-09-18 Carles Pina i Estany <carles@pina.cat>
+2010-09-18 Aleš Nesrsta <starous@volny.cz>
+2010-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add keyboard layouts support.
+
+ * Makefile.util.def (grub-mklayout): New file.
+ (grub-kbdcomp): New script.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES) [COND_mips_yeeloong]:
+ Add keyboard_layouts.h.
+ * grub-core/Makefile.core.def (kernel): Add commands/keylayouts.c and
+ commands/boot.c on yeeloong.
+ (keylayouts): New module.
+ * grub-core/bus/usb/ohci.c
+ * grub-core/bus/usb/uhci.c
+ * grub-core/bus/usb/usbhub.c (rescan): New variable.
+ (grub_usb_add_hub): Poll interrupt pipe for device handling.
+ (attach_root_port): Likewise.
+ (poll_nonroot_hub): Likewise.
+ (grub_usb_poll_devices): Likewise.
+ (detach_device): Close transfer.
+ * grub-core/bus/usb/usbtrans.c (grub_usb_execute_and_wait_transfer): New
+ function.
+ (grub_usb_bulk_setup_readwrite): Likewise.
+ (grub_usb_bulk_finish_readwrite): Likewise.
+ * grub-core/commands/keylayouts.c: New file.
+ * grub-core/commands/keystatus.c (grub_getkeystatus): New function.
+ * grub-core/commands/menuentry.c (hotkey_aliases): All several new
+ aliases.
+ * grub-core/term/at_keyboard.c: Restructured to use keylayouts and
+ support scancode 2.
+ * grub-core/term/usb_keyboard.c: Restructured to use keylayouts.
+ * include/grub/keyboard_layouts.h: New file.
+ * util/grub-mklayout.c: New file.
+ * util/grub-kbdcomp.in: Likewise.
+
+2010-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify memory types.
+
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Include memory.h.
+ * grub-core/commands/lsmmap.c (grub_cmd_lsmmap): Output user-readable
+ types.
+ * grub-core/kern/i386/multiboot_mmap.c (grub_lower_mem): Removed.
+ (grub_upper_mem): Likewise.
+ * grub-core/kern/ieee1275/init.c (grub_upper_mem): Likewise.
+ * include/grub/memory.h (grub_memory_type_t): New enum.
+ All users updated.
+
+2010-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (lsapm): New module.
+ * grub-core/commands/i386/pc/lsapm.c: New file.
+ * grub-core/loader/i386/multiboot_mbi.c (make_mbi) [GRUB_MACHINE_PCBIOS]: Pass APM info.
+ * grub-core/loader/multiboot_mbi2.c (make_mbi) [GRUB_MACHINE_PCBIOS]:
+ Likewise.
+ * include/grub/i386/pc/apm.h: New file.
+ * include/multiboot.h (multiboot_apm_info): New struct.
+
+2010-09-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ GRUB-legacy configuration file support.
+
+ * Makefile.util.def (grub-menulst2cfg): New util.
+ * docs/man/grub-menulst2cfg.h2m: New file.
+ * grub-core/Makefile.core.def (legacycfg): New module.
+ * grub-core/commands/legacycfg.c: New file.
+ * grub-core/commands/menuentry.c (append_menu_entry): Rename to ...
+ (grub_normal_add_menu_entry): ... this.
+ * grub-core/commands/password.c (grub_cmd_password): Split main part to ...
+ (grub_normal_set_password): ...this.
+ * grub-core/commands/videoinfo.c (grub_cmd_videoinfo): Support MODE.
+ * grub-core/loader/i386/linux.c (linux_vesafb_res): Move to ..,
+ * grub-core/lib/i386/pc/vesa_modes_table.c: ... here.
+ * grub-core/lib/legacy_parse.c: New file.
+ * grub-core/normal/auth.c (grub_cmd_authenticate): New command.
+ * include/grub/i386/pc/vesa_modes_table.h: New file.
+ * include/grub/legacy_parse.h: Likewise.
+ * include/grub/normal.h (grub_normal_add_menu_entry): New proto.
+ * util/grub-menulst2cfg.c: New file.
+
+2010-09-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Initialise node.
+
+2010-09-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Fix devmapper memory pool
+ leak.
+ Reported and based on patch by: Modestas Vainius.
+
+2010-09-17 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix DM-RAID probing with recent versions of device-mapper udev
+ rules.
+
+ * grub-core/kern/emu/hostdisk.c (read_device_map): Don't
+ canonicalise device paths under /dev/mapper/.
+ (convert_system_partition_to_system_disk): Compare the
+ uncanonicalised path to /dev/mapper/ rather than the canonicalised
+ path, since device nodes under /dev/mapper/ are often symlinks.
+
+2010-09-17 Yves Blusseau <blusseau@zetam.org>
+
+ * .bzrignore: *.d removed (old rule), add *.image and symlist.h.
+
+2010-09-16 Yves Blusseau <blusseau@zetam.org>
+
+ * configure.ac: Avoid some annoying error messages if freetype-config
+ program is not found.
+
+2010-09-16 Colin Watson <cjwatson@ubuntu.com>
+
+ Support RAID on virtio devices, and others.
+
+ * grub-core/kern/emu/getroot.c [__MINGW32__] (find_root_device):
+ Rename to ...
+ [__MINGW32__] (grub_find_device): ... this.
+ [! __MINGW32__ && ! __CYGWIN__] (find_root_device): Rename to ...
+ [! __MINGW32__ && ! __CYGWIN__] (grub_find_device): ... this. Use a
+ reasonable default if dir is NULL.
+ [! __MINGW32__ && __CYGWIN__] (find_cygwin_root_device): Rename to
+ ...
+ [! __MINGW32__ && __CYGWIN__] (grub_find_device): ... this.
+ (grub_guess_root_device): Update callers.
+ * include/grub/emu/getroot.h (grub_find_device): Add prototype.
+
+ * util/raid.c (grub_util_getdiskname): Remove.
+ (grub_util_raid_getmembers): Use grub_find_device rather than
+ grub_util_getdiskname.
+
+2010-09-16 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (serial): Remove obsolete comment about GRUB
+ needing to be compiled with serial support.
+ (ls): Indicate that multiple files are accepted.
+ * grub-core/commands/ls.c (GRUB_MOD_INIT): Update help text to
+ indicate that multiple files are accepted.
+
+2010-09-16 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add *.1, *.8, grub-shell, grub-shell-tester,
+ libgrub_a_init.c, and util/bash-completion.d/grub.
+
+2010-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-setup.c (setup): Fix incorrect container semantics.
+
+2010-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/parttool.c (grub_cmd_parttool): Fix a variable
+ misusage.
+ Reported by: J. Nick Terry
+
+2010-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move embedding routines to partmap sources files.
+
+ * grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot)
+ [GRUB_UTIL]: New variable.
+ (gpt_partition_map_iterate): Set part.parent.
+ (gpt_partition_map_embed) [GRUB_UTIL]: New function.
+ (grub_gpt_partition_map) [GRUB_UTIL]: Set .embed.
+ * grub-core/partmap/msdos.c (pc_partition_map_embed) [GRUB_UTIL]:
+ New function.
+ (grub_msdos_partition_map) [GRUB_UTIL]: Set .embed.
+ * include/grub/partition.h (grub_embed_type_t) [GRUB_UTIL]: New type.
+ (grub_partition_map) [GRUB_UTIL]: New field embed.
+ * util/grub-setup.c (grub_gpt_partition_type_bios_boot): Removed.
+ (setup): Use ->embed.
+
+2010-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): New
+ function.
+ * include/grub/emu/hostdisk.h (grub_util_biosdisk_is_floppy): New proto.
+ * util/grub-setup.c (setup): Use grub_util_biosdisk_is_floppy.
+
+2010-09-15 Yves Blusseau <blusseau@zetam.org>
+
+ Add function to get completions from usage.
+
+ * util/bash-completion.d/grub-completion.bash.in: Add function to get
+ completions from usage. Use LC_ALL=C to get options properly.
+
+2010-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/basename-lgpl.c: Imported.
+ * grub-core/gnulib/basename.c: Likewise.
+ * grub-core/gnulib/dirname-lgpl.c: Likewise.
+ * grub-core/gnulib/dirname.c: Likewise.
+ * grub-core/gnulib/dirname.h: Likewise.
+ * grub-core/gnulib/stripslash.c: Likewise.
+
+2010-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/gnulib/error.c: Resynced.
+ * grub-core/gnulib/getopt.c: Likewise.
+ * grub-core/gnulib/getopt_int.h: Likewise.
+ * grub-core/gnulib/regex.h: Likewise.
+ * grub-core/gnulib/regex_internal.c: Likewise.
+ * grub-core/gnulib/regex_internal.h: Likewise.
+
+2010-09-15 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/lib/xzembed/xz_dec_stream.c (dec_main): Fix index and block
+ CRC calculations and validity checks.
+ * grub-core/lib/xzembed/xz_dec_stream.c (dec_index): Fix index CRC
+ calculations.
+
+2010-09-15 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_end): Fix memory leak.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix incorrect echo options handling.
+ Reported by: Yves Blusseau.
+
+ * include/grub/command.h (grub_command_flags_t): New flags
+ GRUB_COMMAND_ACCEPT_DASH and GRUB_COMMAND_OPTIONS_AT_START.
+ * grub-core/lib/arg.c (grub_arg_parse): Handle new flags.
+ * grub-core/commands/echo.c (GRUB_MOD_INIT): Use new flags.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/command.h (GRUB_COMMAND_FLAG_CMDLINE): Removed. All
+ users updated.
+ (GRUB_COMMAND_FLAG_MENU): Likewise.
+ (GRUB_COMMAND_FLAG_BOTH): Likewise.
+ (GRUB_COMMAND_FLAG_TITLE): Removed.
+ (GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
+ (GRUB_COMMAND_FLAG_EXTCMD): Moved into enum.
+ (GRUB_COMMAND_FLAG_DYNCMD): Likewise.
+ (GRUB_COMMAND_FLAG_BLOCKS): Likewise.
+ (grub_command_flags_t): New enum. All users updated.
+
+2010-09-14 Seth Goldberg <seth.goldberg@oracle.com>
+
+ Fix solaris compilation.
+
+ * grub-core/Makefile.core.def (kernel): Include gnulib/error.c on emu.
+ (grub-emu): Add LIBZFS and LIBNVPAIR to ldadd.
+ (grub-emu-list): Likewise.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove deprecated root command.
+
+ * grub-core/commands/minicmd.c (grub_mini_cmd_root): Removed. All users
+ updated.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/pc/grub-setup.c: Merge this ...
+ * util/sparc64/ieee1275/grub-setup.c: ... and this ...
+ * util/grub-setup.c: ... into this.
+ * include/grub/sparc64/ieee1275/boot.h (grub_boot_blocklist) [ASM_FILE]:
+ New struct.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/ext2.c (grub_ext2_open): Use return error value when
+ possible.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/partmap/sun.c (sun_partition_map_iterate): Don't needlesly
+ allocate p.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add
+ explicit root argument to set to prevent UUID to be interpreted as
+ argument to set.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/sparc64/ieee1275/crt0.S: Align stack.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't export grub_gate_a20.
+
+ * grub-core/kern/i386/pc/init.c: Remove leftovers.
+ * grub-core/kern/i386/pc/startup.S (FUNCTION(grub_gate_a20)): Rename
+ to ...
+ (grub_gate_a20): ... this. All users updated.
+ * include/grub/i386/pc/init.h: Removed. All users updated.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Create euro.pf2 which supports most European languages.
+
+ * Makefile.am (grubdata_DATA): Add euro.pf2.
+ (euro.pf2): New target.
+ (CLEANFILES): Add euro.pf2.
+
+2010-09-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Disable emu-usb by default to prevent inadvertent
+ device takeover.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Disable usbserial on grub-emu since our libusb code isn't good enough
+ yet.
+
+ * grub-core/Makefile.core.def (usbserial_common): Disable on emu.
+ (usbserial_pl2303): Likewise.
+ (usbserial_ftdi): Likewise.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/disk.h (grub_disk): Remove has_partitions.
+ All users updated.
+ * disk/loopback.c (grub_loopback): Remove has_partitions.
+ All users updated.
+ (options): Remove partitions. All users updated.
+ * util/grub-fstest.c (fstest): Don't pass "-p" to loopback.
+ * util/i386/pc/grub-setup.c (setup): copy partition table only when
+ actual partition table is found.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove readability checks (too many false negatives).
+
+ * util/grub-install.in: Remove readability checks.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Revert to old
+ way.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable acpi shutdown on all ACPI platforms.
+
+ * grub-core/Makefile.core.def (halt): Inlude commands/acpihalt.c
+ on coreboo, multiboot and EFI.
+ * grub-core/commands/acpihalt.c (get_sleep_type): Add missing casts.
+ (grub_acpi_halt): Likewise.
+ * grub-core/commands/i386/pc/halt.c (grub_halt): Call grub_acpi_halt.
+ (grub_cmd_halt): Don't call grub_acpi_halt directly.
+ * grub-core/lib/efi/halt.c (grub_halt): Call grub_acpi_halt.
+ * grub-core/lib/i386/halt.c (grub_halt)
+ [GRUB_MACHINE_COREBOOT || GRUB_MACHINE_MULTIBOOT]: Likewise.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/iorw.c (grub_cmd_read): Declare buf in smallest
+ context.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/video/efi_gop.c: Fix over-80-chars line.
+ * grub-core/video/efi_uga.c: Likewise.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Filter devaliases and never open same device twice.
+
+ * grub-core/disk/ieee1275/ofdisk.c (last_devpath): New variable.
+ (last_ihandle): Likewise.
+ (ofdisk_hash_ent): New member shortest.
+ (ofdisk_hash_add): Add canonical path too.
+ (scan): New function.
+ (grub_ofdisk_iterate): Iterate over hashed entries.
+ (compute_dev_path): Don't add :0.
+ (grub_ofdisk_open): Don't really open the disk.
+ (grub_ofdisk_close): Avoid closing unrelated disk.
+ (grub_ofdisk_read): Implement reopen logic.
+ * grub-core/kern/ieee1275/openfw.c (grub_ieee1275_canonicalise_devname):
+ New function.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_canonicalise_devname):
+ New proto.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix sparc64.
+
+ * configure.ac (GRUB_KERNEL_MACHINE_LINK_ADDR): Removed.
+ * grub-core/Makefile.core.def (kernel): Make ldflags just use the
+ right address. Add sparc64_ieee1275_ldflags.
+ * grub-core/loader/sparc64/ieee1275/linux.c: Remove leftover include.
+ * util/grub-mkimagexx.c (locate_sections): Correct grub_host_to_target32
+ to grub_host_to_target_addr
+ (load_image): Likewise.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/completion.c (complete_file): Handle device
+ containing slash.
+ Fix based on patch by Doug Nazar.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ grub-mknetdir script.
+
+ * Makefile.util.def (grub-mknetdir): New module.
+ * tests/util/grub-shell.in: Support boot=net
+ * util/grub-mknetdir.in: New file.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ videoinfo on non-vbe.
+
+ * grub-core/Makefile.core.def (vbeinfo): Removed.
+ (vbetest): Removed.
+ (videoinfo): New module.
+ * grub-core/commands/i386/pc/vbeinfo.c: Removed.
+ * grub-core/commands/i386/pc/vbetest.c: Removed.
+ * grub-core/commands/videoinfo.c: New file.
+ * grub-core/commands/videotest.c (grub_cmd_videotest): Support mode
+ specification.
+ (grub_cmd_videotest) [GRUB_MACHINE_PCBIOS]: Load vbe.mod when invoked
+ as vbetest.
+ (GRUB_MOD_INIT) [GRUB_MACHINE_PCBIOS]: New command vbetest.
+ (GRUB_MOD_FINI) [GRUB_MACHINE_PCBIOS]: Unregister vbetest.
+ * grub-core/video/efi_gop.c (grub_video_gop_fill_mode_info): Fill
+ mode_number. New parameter mode. All users updated.
+ (grub_video_gop_iterate): New function.
+ (grub_video_efi_gop): New member iterate.
+ * grub-core/video/i386/pc/vbe.c (framebuffer): Removed leftover fields.
+ (grub_vbe_set_video_mode): Remove setting useless fields.
+ (vbe2videoinfo): New function.
+ (grub_video_vbe_iterate): Likewise.
+ (grub_video_vbe_setup): Use vbe2videoinfo.
+ (grub_video_vbe_print_adapter_specific_info): New function.
+ (grub_video_vbe_adapter): New fields iterate and
+ print_adapter_specific_info.
+ * include/grub/video.h (GRUB_VIDEO_MODE_*): Transform into enum.
+ All users updated.
+ (grub_video_mode_info): New field mode_number.
+ (grub_video_adapter): New fields iterate and
+ print_adapter_specific_info.
+
+2010-09-13 Tristan Gingold <gingold@free.fr>
+2010-09-13 Robert Millan <rmh.grub@aybabtu.com>
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/efi/lsefisystab.c: New file.
+ * grub-core/commands/efi/lssal.c: Likewise.
+ * grub-core/Makefile.core.def (lsacpi): New module.
+ (lsefisystab): Likewise.
+ * include/grub/efi/api.h (GRUB_EFI_SAL_TABLE_GUID): New definition.
+ (GRUB_EFI_HCDP_TABLE_GUID): Likewise.
+ (grub_efi_sal_system_table): New struct.
+ (grub_efi_sal_system_table_entrypoint_descriptor): Likewise.
+ (grub_efi_sal_system_table_memory_descriptor): Likewise.
+ (grub_efi_sal_system_table_platform_features): Likewise.
+ (grub_efi_sal_system_table_translation_register_descriptor): Likewise.
+ (grub_efi_sal_system_table_purge_translation_coherence): Likewise.
+ (grub_efi_sal_system_table_ap_wakeup): Likewise.
+ * include/grub/types.h (PRIuGRUB_UINT64_T): New definition.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support explicit user claim that a device is BIOS-visible.
+
+ * grub-core/kern/emu/getroot.c (grub_util_get_dev_abstraction):
+ Return GRUB_DEV_ABSTRACTION_NONE if device is in device.map.
+ * grub-core/kern/emu/hostdisk.c
+ (convert_system_partition_to_system_disk): Support mdX.
+ (find_system_device): New parameter add. All users updated.
+ (grub_util_biosdisk_is_present): New function.
+ * include/grub/emu/hostdisk.h (grub_util_biosdisk_is_present): New
+ proto.
+
+2010-09-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Search hints support.
+
+ * commands/search.c (FUNC_NAME): New arguments hints and nhints.
+ All users updated.
+
+2010-09-13 Yves Blusseau <blusseau@zetam.org>
+
+ Bash completion script for util commands
+
+ * Makefile.am: Add util/bash-completion.d directory
+ * configure.ac: Likewise.
+ * util/bash-completion.d/Makefile.am: New file.
+ * util/bash-completion.d/grub-completion.bash.in: Likewise.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (put_glyphs_terminal): Correct sign.
+ (print_backlog): set backlog_ucs4 and backlog_glyphs.
+ Reported by: Yves Blusseau.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/misc.c (grub_normal_print_device_info): Show
+ partition size and offset.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (make_regex): Escape brackets.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_vprintf): Use va_copy when necessary.
+ (grub_xvasprintf): Likewise.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/main.c (main): Call hostfs_init only after init_all.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/menuentry.c (append_menu_entry): Don't rely on
+ args ending with NULL.
+
+2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_reset): Preserve context
+ pointer.
+
+2010-09-11 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/commands/lsacpi.c (grub_cmd_lsacpi): Fix prototype.
+
+2010-09-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Shutdown using ACPI.
+
+ * grub-core/Makefile.core.def (halt): Add commands/acpihalt.c on i386-pc.
+ * grub-core/commands/acpihalt.c: New file.
+ * grub-core/commands/i386/pc/halt.c (grub_cmd_halt): Call grub_acpi_halt.
+ * include/grub/acpi.h (grub_acpi_fadt): New member pm1a.
+ (grub_acpi_halt): New proto.
+ (GRUB_ACPI_SLP_EN): New const.
+ (GRUB_ACPI_SLP_TYP_OFFSET): Likewise.
+ (GRUB_ACPI_OPCODE_*): New enum.
+ (GRUB_ACPI_EXTOPCODE_*): Likewise.
+
+2010-09-11 Tristan Gingold <gingold@free.fr>
+2010-09-11 Robert Millan <rmh.grub@aybabtu.com>
+2010-09-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/lsacpi.c: New file.
+ * grub-core/Makefile.core.def (lsacpi): New module.
+ * include/grub/acpi.h (GRUB_ACPI_FADT_SIGNATURE): New definition.
+ (GRUB_ACPI_MADT_SIGNATURE): Likewise.
+ (grub_acpi_madt_entry_header): New struct.
+ (grub_acpi_madt): Likewise.
+ (grub_acpi_madt_entry_interrupt_override): Likewise.
+ (grub_acpi_madt_entry_sapic): Likewise.
+ (grub_acpi_madt_entry_lsapic): Likewise.
+ (grub_acpi_madt_entry_platform_int_source): Likewise.
+ * include/grub/types.h (PRIxGRUB_UINT32_T): New definition.
+ (PRIuGRUB_UINT32_T): Likewise.
+ (PRIxGRUB_UINT64_T): Likewise.
+
+2010-09-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement loading palette on ieee1275_fb.
+
+ * grub-core/video/ieee1275.c (stdout_ihandle): New variable.
+ (have_setcolors): Likewise.
+ (grub_video_ieee1275_init): Fill stdout_ihandle and have_setcolors.
+ (grub_video_ieee1275_setup): Use grub_video_ieee1275_set_palette.
+ (grub_video_ieee1275_set_palette): Implement.
+
+2010-09-11 Vladimir Serbinenko <phcoder@gmail.com>
+2010-09-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in (grub_partition): New variable.
+ Set prefix_drive on EFI and PC to (,$grub_partition) as last resort.
+ * util/i386/pc/grub-setup.c (setup): Don't touch prefix.
+ Fixes a bug reported by Yves Blusseau.
+
+2010-09-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix emu on mipsel.
+
+ * conf/Makefile.common (CFLAGS_PLATFORM): Add -mflush-func
+ =grub_cpu_flush_cache on all mips and not only yeeloong.
+ * configure.ac (COND_mips): New conditional.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add libgcc on all
+ platforms.
+ * grub-core/kern/emu/cache.S (__mips__): Use _flush_cache.
+ * grub-core/kern/emu/full.c (grub_arch_dl_init_linker)
+ [GRUB_LINKER_HAVE_INIT]: New function.
+ (grub_emu_post_init): Likewise.
+ * grub-core/kern/emu/lite.c (grub_emu_post_init): Likewise.
+ * grub-core/kern/emu/main.c: Use grub_emu_post_init.
+ * include/grub/cache.h (_mips): Include mips/cache.h.
+ * include/grub/disk.h [GRUB_UTIL || GRUB_MACHINE_EMU]: Add missing
+ LVM and RAID prototypes.
+ * include/grub/emu/misc.h (grub_emu_post_init): New proto.
+ * include/grub/mips/time.h (grub_cpu_idle) [GRUB_MACHINE_EMU]: New
+ function.
+
+2010-09-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Don't try to verify core.img until after
+ running grub-mkimage to create it.
+
+2010-09-10 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_hurd.in: Add misc readability checks.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+
+2010-09-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: ${imgext} won't be defined here until the
+ install branch is merged. For the meantime, only verify core.img on
+ i386-pc and sparc64-ieee1275 platforms.
+
+2010-09-10 Robert Millan <rmh@gnu.org>
+
+ Solaris support in grub_find_zpool_from_dir(). Thanks
+ Seth Goldberg for referring to getextmntent() facility.
+
+ * configure.ac: Check for getextmntent(), `sys/mnttab.h' and
+ `sys/mkdev.h'.
+ * grub-core/kern/emu/misc.c [HAVE_SYS_MNTTAB_H]: Include
+ `<sys/mnttab.h>'.
+ [HAVE_SYS_MKDEV_H]: Include `<sys/mkdev.h>'.
+ [HAVE_GETEXTMNTENT] (grub_find_zpool_from_dir): Add getextmntent()
+ method for finding zpool name.
+
+2010-09-10 Colin Watson <cjwatson@ubuntu.com>
+
+ grub-fstest needs the host and hostfs modules while other utilities
+ actively require those modules to be absent, so grub-fstest needs
+ its own initialisation and finalisation code.
+
+ * Makefile.am (grub_fstest.pp): New target.
+ (grub_fstest_init.lst): Likewise.
+ (grub_fstest_init.c): Likewise.
+ * Makefile.util.def (grub-fstest): Add grub_fstest_init.c.
+
+2010-09-10 Robert Millan <rmh@gnu.org>
+
+ * configure.ac: Check for `struct statfs.f_fstypename' and
+ `struct statfs.f_mntfromname'.
+
+ * grub-core/kern/emu/misc.c (grub_find_zpool_from_dir): Conditionalize
+ kFreeBSD-specific code.
+
+2010-09-10 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_kfreebsd.in: Fix ${kfreebsd_device} initialization
+ on ZFS. Now non-main filesystems are supported as / too.
+
+2010-09-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.util.def (libgrub.a): Move grub-core/kern/emu/hostfs.c
+ and grub-core/disk/host.c to ...
+ (grub-fstest): ... here. Having the host disk implementation
+ present confuses grub-probe and other utility programs.
+
+ * util/grub-mkconfig.in: Only verify readability of grub.cfg.new
+ when writing to a file, not when writing to stdout.
+
+2010-09-09 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * tests/partmap_test.in: New test for partitions.
+ * Makefile.util.def: Rules for new test.
+
+2010-09-09 Robert Millan <rmh@gnu.org>
+
+ * util/grub-probe.c (probe): Fix a pair of unhandled error
+ conditions.
+
+2010-09-09 Robert Millan <rmh@gnu.org>
+
+ Basic Btrfs support (detection and UUID).
+
+ * grub-core/fs/btrfs.c: New file.
+ * Makefile.util.def (library): Register btrfs.c.
+ * grub-core/Makefile.core.def: Likewise.
+
+2010-09-08 Robert Millan <rmh@gnu.org>
+
+ * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Improve
+ with (optional) parameters to specify device and relative path.
+ * util/grub-install.in: Use is_path_readable_by_grub() to
+ verify readability of a few critical files.
+ * util/grub-mkconfig.in: Use is_path_readable_by_grub() to
+ verify readability of grub.cfg.new.
+
+2010-09-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split minix.mod into minix.mod and minix2.mod.
+
+ * Makefile.util.def (libgrub.a): Add grub-core/fs/minix2.c.
+ * grub-core/Makefile.core.def (minix2): New module.
+ * grub-core/fs/minix.c: Use definitions instead of runtime version
+ checking.
+ * grub-core/fs/minix2.c: New file.
+
+2010-09-08 Yves Blusseau <blusseau@zetam.org>
+
+ Add new --boot-directory option to replace --root-directory
+
+ * util/grub-install.in: Add new --boot-directory option
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+
+2010-09-08 Yves Blusseau <blusseau@zetam.org>
+
+ * util/grub-mkconfig.in: Use new variable.
+
+2010-09-08 Yves Blusseau <blusseau@zetam.org>
+
+ * configure.ac: Define some useful variables.
+
+2010-09-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_HAS_CURSORONOFF when appropriate.
+ * grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_setcursor):
+ Use terminfo and don't use cursor-on/cursor-off unless it's known
+ to work.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New element
+ GRUB_IEEE1275_FLAG_HAS_CURSORONOFF.
+
+2010-09-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/kern/efi/init.c (grub_efi_set_prefix): If the prefix
+ starts with "(,", fill the drive containing the loaded image in
+ between those two characters, but expect that a full partition
+ specification including partition map names will follow.
+
+2010-09-08 Robert Millan <rmh@gnu.org>
+
+ * configure.ac: Remove `--enable-grub-fstest' option.
+ * Makefile.util.def (grub-fstest): Remove COND_GRUB_FSTEST condition.
+
+ * util/grub-mkconfig_lib.in (is_path_readable_by_grub): Use
+ `grub-fstest' instead of `grub-probe' for readability verification.
+ * util/grub-probe.c (probe): Remove readability verification kludge.
+
+2010-09-08 Robert Millan <rmh@gnu.org>
+
+ * util/grub-mkconfig.in: Pass `--device ${GRUB_DEVICE}' when
+ initializing `GRUB_FS'.
+
+2010-09-08 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Not command (!) support to GRUB script.
+
+ * tests/grub_script_not.in: New test.
+ * Makefile.util.def: Rules for new test.
+
+ * grub-core/script/execute.c (grub_script_execute_cmdline): Handle
+ ! command as a special case.
+ * grub-core/script/yylex.l (GRUB_PARSER_TOKEN_NOT): Removed.
+
+2010-09-07 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * grub-core/commands/wildcard.c (wildcard_expand): Fix wrong
+ grub_free.
+
+2010-09-07 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * docs/grub.texi (Shell-like scripting): Fix @dots to @dots{}.
+
+2010-09-07 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * docs/grub.texi (Shell-like scripting): Documentation for break,
+ continue, shift and return commands.
+
+2010-09-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rename CD-ROM to cd on BIOS.
+
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_drive): Recognise
+ "cd".
+ (grub_biosdisk_call_hook): Call with "cd" instead of arbitrary hdX.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/main.c (main): Reinit LVM and RAID.
+ * util/grub-probe.c (main): Likewise.
+ * util/i386/pc/grub-setup.c (main): Likewise.
+ * util/sparc64/ieee1275/grub-setup.c (main): Likewise.
+ Reported and debugged by: alexxy
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/disk/lvm.c (grub_lvm_scan_device) [GRUB_UTIL]: Output more
+ diagnostic info.
+
+2010-09-05 Jo Shields <directhex@apebox.org>
+
+ * util/grub.d/30_os-prober.in: Add missing classes.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Theme file format): Document new position format.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Theme file format): Replace Box_slice_names.png with
+ a table. Use @code instead of @verbatim.
+
+2010-09-05 Colin D Bennett <colin@gibibit.com>
+
+ Gfxmenu documentation.
+
+ * docs/grub.texi (Theme file format): New chapter.
+
+2010-09-05 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/Makefile.core.def (xzio): New module.
+ * grub-core/io/xzio.c: New file.
+ * grub-core/lib/xzembed/xz.h: New file (from xembed).
+ * grub-core/lib/xzembed/xz_config.h: Likewise.
+ * grub-core/lib/xzembed/xz_dec_bcj.c: Likewise.
+ * grub-core/lib/xzembed/xz_dec_lzma2.c: Likewise.
+ * grub-core/lib/xzembed/xz_dec_stream.c: Likewise.
+ * grub-core/lib/xzembed/xz_lzma2.h: Likewise.
+ * grub-core/lib/xzembed/xz_private.h: Likewise.
+ * grub-core/lib/xzembed/xz_stream.h: Likewise.
+ * include/grub/file.h (grub_file_filter_id): New compression filter
+ GRUB_FILE_FILTER_XZIO.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/file.h (GRUB_FILE_SIZE_UNKNOWN): New definition.
+ * grub-core/disk/loopback.c (grub_loopback_open): Handle unknown file
+ size.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/err.h (grub_err_t): Replace GRUB_ERR_BAD_GZIP_DATA with
+ GRUB_ERR_BAD_COMPRESSED_DATA. All users updated.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Uncompressed checksum support.
+
+ * grub-core/commands/hashsum.c (options): Add option --uncompress.
+ (check_list): New parameter uncompress.
+ (grub_cmd_hashsum): Handle --uncompress.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Reintroduce testload.
+
+ * grub-core/commands/minicmd.c (grub_rescue_cmd_testload) [0]: Moved
+ from here ...
+ * grub-core/commands/testload.c (grub_cmd_testload): ... here.
+ (GRUB_MOD_INIT): New function.
+ (GRUB_MOD_FINI): Likewise.
+ * grub-core/Makefile.core.def (testload): New module.
+
+2010-09-05 Szymon Janc <szymon@janc.net.pl>
+
+ * grub-core/lib/posix_wrap/sys/types.h (bool): Transform into an enum.
+ (uint8_t): New type.
+ (uint16_t): Likewise.
+ (uint32_t): Likewise.
+ (uint64_t): Likewise.
+
+2010-09-05 Szymon Janc <szymon@janc.net.pl>
+
+ * include/grub/crypto.h (GRUB_MD_CRC32): New definition.
+
+2010-09-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/io/gzio.c (grub_gzio_open): Removed "transparent" parameter.
+ Made static.
+ (grub_gzfile_open): Removed. All users updated.
+ (GRUB_MOD_INIT): New function.
+ (GRUB_MOD_FINI): Likewise.
+ * grub-core/kern/file.c (grub_file_filters_all): New variable.
+ (grub_file_filters_enabled): Likewise.
+ (grub_file_open): Handle filters.
+ * grub-core/loader/i386/bsd.c (GRUB_MOD_INIT): Load gzio.
+ * grub-core/normal/main.c (GRUB_MOD_INIT): Likewise.
+ * include/grub/file.h (grub_file_filter_id_t): New type.
+ (grub_file_filter_t): Likewise.
+ (grub_file_filters_all): New extern variable.
+ (grub_file_filters_enabled): Likewise.
+ (grub_file_filter_register): New inline function.
+ (grub_file_filter_unregister): Likewise.
+ (grub_file_filter_disable): Likewise.
+ (grub_file_filter_disable_compression): Likewise.
+ * include/grub/gzio.h: Removed.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Filename expansion support for wildcards in GRUB script.
+
+ * tests/grub_script_expansion.in: New test.
+ * Makefile.util.def: Rule for new test.
+
+ * grub-core/commands/wildcard.c: New file, implements filename
+ expansion support for GRUB script.
+ * grub-core/Makefile.core.def: Rule update for regexp.mod.
+ * grub-core/script/argv.c: Cosmetic changes.
+ * grub-core/script/execute.c (grub_script_arglist_to_argv):
+ Refactored to perform wildcard expansion on arguments.
+ * include/grub/script_sh.h (grub_script_wildcard_translator): New
+ struct.
+
+ * tests/util/grub-shell.in: Fix quoting for read input.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Support for updating environment variables with matched substrings
+ of regexp.
+
+ * tests/grub_cmd_regexp.in: New test.
+ * Makefile.util.def: Rule for new test.
+
+ * grub-core/commands/regexp.c: New option -s to update environment
+ variables with regexp matches.
+
+2010-09-04 Szymon Janc <szymon@janc.net.pl>
+
+ * include/grub/file.h (grub_file): New member not_easly_seekable.
+ (grub_file_seekable): New inline function.
+ * grub-core/io/gzio.c (test_header): Don't test end magic if file isn't
+ easily seekable.
+ (grub_gzio_open): Set not_easly_seekable.
+ * grub-core/fs/i386/pc/pxe.c (grub_pxefs_open): Set not_easily_seekable.
+ * grub-core/io/bufio.c (grub_bufio_open): Propagate not_easily_seekable.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Support for options to appear multiple times on cmdline.
+
+ * include/grub/lib/arg.h (grub_arg_list_alloc): New prototype.
+ * grub-core/commands/extcmd.c: Support for repeatable option.
+ * grub-core/lib/arg.c (grub_arg_list_alloc): New function for
+ repeatable option support.
+
+ Refactor menuentry into a regular command.
+
+ * grub-core/commands/menuentry.c: New file, menuentry command
+ implementation.
+ * grub-core/Makefile.core.def: Rule update for normal.mod.
+ * grub-core/normal/main.c: Moved menuentry creation to
+ grub-core/commands/menuentry.c.
+ * grub-core/normal/menu.c (grub_menu_execute_entry): Removed.
+ (grub_menu_execute_entry_real): Removed.
+ * grub-core/script/execute.c (grub_script_execute_sourcecode): New
+ function.
+ (grub_script_execute_menuentry): Removed.
+ * grub-core/script/parser.y (menuentry): Removed.
+ * grub-core/script/script.c (grub_script_create_cmdmenu): Removed.
+ * grub-core/script/yylex.l (menuentry): Removed.
+ * include/grub/menu.h (grub_menu_init): New prototype.
+ (grub_menu_fini): New prototype.
+ * include/grub/normal.h (grub_normal_add_menu_entry): Removed.
+ * include/grub/script_sh.h (grub_script_cmd_menuentry): Removed.
+ (grub_script_execute_sourcecode): New prototype.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ "return" command for GRUB script functions.
+
+ * tests/grub_script_return.in: New test.
+ * Makefile.util.def: Rules for new test.
+
+ * grub-core/script/execute.c (grub_script_return): New function.
+ * grub-core/script/main.c: Register/unregister return commaond.
+ * include/grub/script_sh.h (grub_script_return): New prototype.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ "setparams" command to update positional parameters.
+
+ * tests/grub_script_setparams.in: New test.
+ * Makefile.util.def: Rules for new test.
+
+ * grub-core/script/argv.c (grub_script_argv_make): New function.
+ * grub-core/script/execute.c (replace_scope): New function.
+ (grub_script_setparams): New function.
+ * grub-core/script/lexer.c: Remove unused variables.
+ * grub-core/script/main.c: Register/unregister setparams command.
+ * include/grub/script_sh.h (grub_script_argv_make): New prototype.
+ (grub_script_setparams): New prototype.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * grub-core/normal/completion.c (grub_normal_do_completion): Fix
+ grub_free order.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Support for passing block of commands as an argument to extcmds.
+
+ * Makefile.util.def: Rules for new test.
+ * tests/grub_script_blockarg.in: New test.
+ * grub-core/tests/test_blockarg.c: New file, block argument
+ command used in the test.
+
+ * include/grub/extcmd.h (grub_extcmd_context): New struct.
+ (grub_register_extcmd_prio): New function prototype.
+ (grub_extcmd_dispatcher): New function prototype.
+ * include/grub/command.h (GRUB_COMMAND_FLAG_BLOCKS): New command
+ type.
+ * include/grub/script_sh.h (struct grub_script): New members
+ `children', `next_siblings' and `refcnt' for block arguments and
+ reference counting.
+ (GRUB_SCRIPT_ARG_TYPE_BLOCK): New argument type.
+ (grub_script_arg): New member `script' for block argument.
+ (grub_script_argv): New member `script' for block argument.
+ (grub_parser_param): New member `scripts' for block argument.
+ (grub_script_mem_free): New extern function prototype.
+ (grub_script_ref): New function prototype.
+ (grub_script_unref): New function prototype.
+
+ * grub-core/normal/dyncmd.c (grub_dyncmd_dispatcher): Moved to
+ extcmd form to support block arguments.
+ * grub-core/script/argv.c: Block arguments support.
+ * grub-core/script/execute.c: Likewise.
+ * grub-core/script/lexer.c: Likewise.
+ * grub-core/script/main.c: Likewise.
+ * grub-core/script/script.c: Likewise.
+ * grub-core/script/parser.y: Likewise. New `block' and `block0'
+ non-terminals.
+
+ * grub-core/commands/acpi.c: Update extcmd implementations with
+ grub_extcmd_context_t.
+ * grub-core/commands/cat.c: Likewise.
+ * grub-core/commands/echo.c: Likewise.
+ * grub-core/commands/extcmd.c: Likewise.
+ * grub-core/commands/hashsum.c: Likewise.
+ * grub-core/commands/hdparm.c: Likewise.
+ * grub-core/commands/help.c: Likewise.
+ * grub-core/commands/hexdump.c: Likewise.
+ * grub-core/commands/i386/cpuid.c: Likewise.
+ * grub-core/commands/i386/pc/drivemap.c: Likewise.
+ * grub-core/commands/i386/pc/halt.c: Likewise.
+ * grub-core/commands/i386/pc/sendkey.c: Likewise.
+ * grub-core/commands/iorw.c: Likewise.
+ * grub-core/commands/keystatus.c: Likewise.
+ * grub-core/commands/loadenv.c: Likewise.
+ * grub-core/commands/ls.c: Likewise.
+ * grub-core/commands/lspci.c: Likewise.
+ * grub-core/commands/memrw.c: Likewise.
+ * grub-core/commands/probe.c: Likewise.
+ * grub-core/commands/search_wrap.c: Likewise.
+ * grub-core/commands/setpci.c: Likewise.
+ * grub-core/commands/sleep.c: Likewise.
+ * grub-core/disk/loopback.c: Likewise.
+ * grub-core/hello/hello.c: Likewise.
+ * grub-core/loader/i386/bsd.c: Likewise.
+ * grub-core/loader/xnu.c: Likewise.
+ * grub-core/term/gfxterm.c: Likewise.
+ * grub-core/term/serial.c: Likewise.
+ * grub-core/tests/lib/functional_test.c: Likewise.
+
+2010-09-04 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Multi-line quoted strings support.
+
+ * grub-core/script/lexer.c (append_newline): Removed.
+ (grub_script_lexer_yywrap): Refactored.
+ (grub_script_lexer_init): Refactored.
+ * grub-core/script/yylex.l (yywrap): New function.
+ (grub_lexer_resplit): New function.
+ (grub_lexer_unput): New function.
+ * include/grub/script_sh.h (grub_lexer_param): New members, unput
+ and resplit.
+ * tests/grub_script_echo1.in: Added few more testcases.
+
+2010-09-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c: Don't add abort alias in utils.
+ Reported by: echoline.
+
+2010-09-03 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Add missing files into "make dist" tarball for other platforms.
+
+ * gentpl.py (script): Use dist_noinst_DATA instead of EXTRA_DIST.
+ * conf/Makefile.common (dist_noinst_DATA): New variable.
+ * conf/Makefile.extra-dist: Added missing make dist files.
+ * grub-core/Makefile.core.def: Likewise.
+
+2010-09-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Compress grub_prefix.
+
+ * grub-core/boot/i386/pc/lnxboot.S: Use
+ GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE.
+ * grub-core/kern/i386/pc/startup.S: Move grub_prefix to compressed part.
+ * include/grub/offsets.h: Rename GRUB_MACHINE_DATA_END to
+ GRUB_MACHINE_PREFIX_END. All users updated.
+ (GRUB_KERNEL_I386_PC_PREFIX): Set to GRUB_KERNEL_I386_PC_RAW_SIZE.
+ (GRUB_KERNEL_I386_PC_PREFIX_END): Set to GRUB_KERNEL_I386_PC_PREFIX
+ + 0x40.
+ (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease.
+ * util/grub-mkimage.c (image_target_desc): Change data_end to
+ prefix_end. All users updated.
+
+2010-09-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/loader/i386/bsd.c (grub_freebsd_boot): Set %ebp to sane
+ value.
+ (grub_openbsd_boot): Likewise.
+ (grub_netbsd_boot): Likewise.
+ * grub-core/loader/i386/xnu.c (grub_xnu_boot_resume): Likewise.
+ (grub_xnu_boot): Likewise.
+
+2010-09-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Clean LIBS variable after tests.
+
+2010-09-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * INSTALL: Document that libdevmapper needs to be 1.02.34 or later.
+
+2010-09-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for dm_log_with_errno_init in libdevmapper and
+ echo if libdevmapper will be used.
+
+2010-09-02 Ian Turner <Ian.Turner@deshaw.com>
+
+ * grub-core/fs/i386/pc/pxe.c (grub_pxefs_read): Keep the blocksize
+ constant for the same file.
+
+2010-09-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/i386/multiboot_mmap.c: Remove leftover include.
+
+2010-09-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add *.pp, **/.dirstamp, grub-core/*.module, and
+ grub-core/*.pp.
+
+2010-09-02 Colin Watson <cjwatson@ubuntu.com>
+
+ Zero %ebp and %edi when entering Linux's 32-bit entry point, as
+ required by the boot protocol.
+
+ * include/grub/i386/relocator.h (struct grub_relocator32_state): Add
+ ebp and edi members.
+ * grub-core/lib/i386/relocator.c (grub_relocator_boot): Handle
+ state.ebp and state.edi.
+ * grub-core/lib/i386/relocator32.S (grub_relocator32_start): Set
+ %ebp and %edi according to grub_relocator32_ebp and
+ grub_relocator32_edi respectively.
+ * grub-core/loader/i386/linux.c (grub_linux_boot): Zero state.ebp
+ and state.edi.
+
+2010-09-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add i386-pc-pxe image target.
+
+ * util/grub-mkimage.c (image_target_desc): New enum value
+ IMAGE_I386_PC_PXE.
+ (image_targets): New target i386-pc-pxe.
+ (generate_image): Handle i386-pc-pxe image.
+
+2010-09-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix grub_pxe_scan.
+
+ * grub-core/fs/i386/pc/pxe.c (grub_pxe_pxenv): Put correct type bangpxe.
+ (grub_pxe_scan): Fix types and pxe_rm_entry computation.
+ All users updated.
+ * include/grub/i386/pc/pxe.h (grub_pxe_bangpxe): New struct.
+ (grub_pxe_pxenv): Correct type.
+
+2010-09-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: Document most of the important changes since 1.98.
+
+2010-09-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in (usage): Tidy up usage output (and hence
+ generated manual page) a little.
+
+2010-09-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi: Add myself as an author.
+
+2010-09-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (libgrub.a): Add missing sunpc.
+ Reported by: Seth Goldberg.
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Interrupt wrapping and code simplifications.
+
+ * Makefile.util.def (grub-mkrescue): Use x86 tg instead of
+ x86_noieee1275 which are functionaly equivalent in this case.
+ (grub-install): Make source on each platform explicit. Enable on
+ all noemu.
+ * gentpl.py (x86_efi_pc): Removed group.
+ (x86_noefi): Likewise.
+ (i386_noefi): Likewise.
+ (x86_noieee1275): Likewise.
+ (i386_noieee1275): Likewise.
+ (i386_noefi_noieee1275): Likewise.
+ (i386_pc_qemu_coreboot): Likewise.
+ (i386_coreboot_multiboot): Likewise.
+ (i386_pc_coreboot_multiboot_qemu): Likewise.
+ (x86_noefi_mips): Likewise.
+ (noieee1275): Likewise.
+ (ieee1275_mips): Likewise.
+ (noemu_noieee1275): Likewise.
+ (cmos): New group.
+ (usb): Likewise.
+ (videoinkernel): Likewise.
+ (videomodules): Likewise.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove
+ include/grub/elf.h, include/grub/elfload.h, include/grub/net.h,
+ include/grub/reader.h, include/grub/symbol.h, include/grub/types.h,
+ include/grub/loader.h, include/grub/msdos_partition.h,
+ include/grub/machine/biosdisk.h, include/grub/machine/boot.h,
+ include/grub/machine/console.h, include/grub/machine/vga.h,
+ include/grub/machine/vbe.h, include/grub/machine/init.h,
+ include/grub/machine/kernel.h, include/grub/cpu/time.h,
+ include/grub/cpu/types.h, include/grub/gzio.h and include/grub/menu.h
+ (KERNEL_HEADER_FILES) [i386-pc]: Add include/grub/machine/int.h.
+ (KERNEL_HEADER_FILES) [i386-ieee1275]: Add include/grub/i386/pit.h
+ * grub-core/Makefile.core.def (kernel): Explicit the source for
+ startup. Explicit the platforms using kern/generic/rtc_get_time_ms.c.
+ Split ieee1275_mips. Remove kern/i386/halt.c. Remove kern/i386/misc.S.
+ Enable kern/i386/pit.c on all x86. Remove kern/i386/ieee1275/init.c.
+ Use videoinkernel tag.
+ (usb): Enable on all usb.
+ (usbserial_common): Likewise.
+ (usbserial_pl2303): Likewise.
+ (usbserial_ftdi): Likewise.
+ (uhci): Enable on all x86.
+ (ohci): Enable on all pci.
+ (cmostest): Enable on all CMOS.
+ (acpi): Include commands/acpi.c on all platforms.
+ (halt): Add relevant lib/*/halt.c.
+ (hdparm): Enable on all pci.
+ (lspci): Likewise.
+ (usbtest): Enable on all usb.
+ (ata): Enable on all pci.
+ (ata_pthru): Likewise.
+ (usbms): Enable on all usb.
+ (usb_keyboard): Likewise.
+ (font): Use tag videomodules.
+ (bufio): Likewise.
+ (datetime): Use tag cmos. Enable on all noemu.
+ (mmap): Use tags common and x86.
+ (gfxterm): Use tag videomodules.
+ (bitmap): Likewise.
+ (bitmap_scale): Likewise.
+ (video_fb): Likewise.
+ (video): Likewise.
+ * grub-core/bus/usb/ohci.c (grub_ohci_td): Make link_td a pointer and
+ adjust padding accordingly. All users updated.
+ (grub_ohci_transaction): Fix bad format specification.
+ (GRUB_MOD_INIT): Add asserts for struct size.
+ * grub-core/bus/usb/uhci.c (grub_uhci_pci_iter): Add explicit casts.
+ (grub_alloc_td): Likewise.
+ (grub_free_queue): Likewise.
+ (grub_uhci_transfer): Likewise.
+ (grub_uhci_transaction): Fix bad format specification.
+ * grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
+ (grub_usb_bulk_readwrite): Likewise.
+ * grub-core/kern/i386/misc.S (grub_stop): Moved from here ...
+ * grub-core/commands/i386/pc/halt.c (stop): ...here. Transformed into C.
+ Made static.
+ * grub-core/lib/i386/halt.c (stop): ... and here. Transformed into C.
+ Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_halt): Moved from here ...
+ * grub-core/commands/i386/pc/halt.c (grub_halt): ...here.
+ Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_int13_extensions):
+ Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_int13_extensions):
+ ... here. Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_biosdisk_rw_standard):
+ Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_rw_standard):
+ ... here. Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S
+ (grub_biosdisk_check_int13_extensions): Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c
+ (grub_biosdisk_check_int13_extensions): ... here. Transformed into C.
+ Made static.
+ * grub-core/kern/i386/pc/startup.S
+ (grub_biosdisk_get_cdinfo_int13_extensions): Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c
+ (grub_biosdisk_get_cdinfo_int13_extensions): ... here.
+ Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S
+ (grub_biosdisk_get_diskinfo_int13_extensions): Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c
+ (grub_biosdisk_get_diskinfo_int13_extensions): ... here.
+ Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S
+ (grub_biosdisk_get_diskinfo_standard): Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c
+ (grub_biosdisk_get_diskinfo_standard): ... here.
+ Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S
+ (grub_biosdisk_get_num_floppies): Moved from here ...
+ * grub-core/disk/i386/pc/biosdisk.c
+ (grub_biosdisk_get_num_floppies): ... here.
+ Transformed into C. Made static.
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_diskinfo_real):
+ New function.
+ * grub-core/kern/i386/pc/startup.S (grub_pxe_scan): Moved from here ...
+ * grub-core/fs/i386/pc/pxe.c (grub_pxe_scan): ... here.
+ Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_rm_entry): Moved from here ...
+ * grub-core/fs/i386/pc/pxe.c (grub_rm_entry): ... here.
+ Transformed into C. Made static.
+ * grub-core/kern/i386/ieee1275/init.c: Removed.
+ * grub-core/kern/i386/misc.S: Likewise.
+ * grub-core/kern/i386/pc/startup.S (grub_get_memsize):
+ Splitted from here ...
+ * grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): ... here.
+ Transformed into C. Made static. All users updated.
+ * grub-core/kern/i386/pc/mmap.c (grub_get_ext_memsize): ... and here.
+ Transformed into C. Made static. All users updated.
+ * grub-core/kern/i386/pc/startup.S (grub_get_eisa_mmap):
+ Moved from here...
+ * grub-core/kern/i386/pc/mmap.c (grub_get_eisa_mmap): ... here.
+ Transformed into C. Made static. All users updated.
+ * grub-core/kern/i386/pc/startup.S (grub_get_mmap_entry):
+ Moved from here...
+ * grub-core/kern/i386/pc/mmap.c (grub_get_mmap_entry): ... here.
+ Transformed into C. Made static. All users updated.
+ * grub-core/kern/i386/pc/startup.S (grub_stop_floppy):
+ Removed (replaced by C version).
+ * grub-core/kern/i386/pc/startup.S (grub_vga_set_mode):
+ Moved from here...
+ * grub-core/video/i386/pc/vga.c (grub_vga_set_mode): ...here.
+ Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_controller_info):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_controller_info):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode_info):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode_info):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_mode):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_mode):
+ ... here. Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_mode):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_mode):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S
+ (grub_vbe_bios_getset_dac_palette_width):Moved from here...
+ * grub-core/video/i386/pc/vbe.c
+ (grub_vbe_bios_getset_dac_palette_width):... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_memory_window):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_memory_window):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_memory_window):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_memory_window):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_scanline_length):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_scanline_length):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_scanline_length):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_scanline_length):
+ ... here. Transformed into C.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_display_start):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_display_start):
+ ... here. Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_get_display_start):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_display_start):
+ ... here. Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_vbe_bios_set_palette_data):
+ Moved from here...
+ * grub-core/video/i386/pc/vbe.c (grub_vbe_bios_set_palette_data):
+ ... here. Transformed into C. Made static.
+ * grub-core/kern/i386/pc/startup.S (grub_pxe_call): Receive
+ pxe_rm_entry as third argument.
+ (grub_bios_interrupt): New function.
+ * grub-core/kern/i386/qemu/mmap.c: Remove useless include.
+ * grub-core/kern/i386/qemu/startup.S (codestart): Do cli;hlt instead
+ of calling grub_stop.
+ * grub-core/kern/efi/efi.c (grub_halt): Moved from here ...
+ * grub-core/lib/efi/halt.c (grub_halt): ...here.
+ * grub-core/kern/emu/main.c (grub_halt): Moved from here ...
+ * grub-core/lib/emu/halt.c (grub_halt): ... here.
+ * grub-core/lib/i386/halt.c: Moved from here ...
+ * grub-core/lib/i386/halt.c: ... here.
+ * grub-core/kern/ieee1275/openfw.c (grub_halt): Moved from here ...
+ * grub-core/lib/ieee1275/halt.c (grub_halt): ... here.
+ * grub-core/loader/i386/pc/linux.c (grub_linux16_boot): Call
+ grub_stop_floppy.
+ * grub-core/loader/i386/xnu.c (guessfsb) [IEEE1275]: Enable.
+ * include/grub/i386/coreboot/init.h: Removed.
+ * include/grub/i386/multiboot/init.h: Likewise.
+ * include/grub/i386/pc/biosdisk.h: Removed all function prototypes.
+ * include/grub/i386/pc/init.h: Likewise except grub_gate_a20.
+ * include/grub/i386/pc/int.h: New file.
+ * include/grub/i386/pc/pxe.h (GRUB_PXE_SIGNATURE): New definition.
+ (grub_pxe_scan): Removed.
+ (grub_pxe_call): Update prototype.
+ * include/grub/i386/pc/vbe.h: Removed EXPORT_FUNC and useless
+ prototypes.
+ * include/grub/i386/pc/vga.h (grub_vga_set_mode): Removed.
+ * include/grub/i386/qemu/init.h: Removed.
+ * include/grub/mips/yeeloong/kernel.h (grub_reboot): Add missing
+ noreturn.
+ (grub_halt): Likewise.
+ * include/grub/misc.h (grub_halt): Removed EXPORT_FUNC.
+ (grub_reboot): Likewise.
+ * grub-core/kern/i386/coreboot/init.c (grub_stop_floppy): Moved from here...
+ * include/grub/i386/floppy.h (grub_stop_floppy): ...here. Inlined.
+ * grub-core/kern/i386/pc/startup.S (grub_hard_stop): Removed.
+
+2010-08-30 Robert Millan <rmh@gnu.org>
+
+ * NEWS: Document addition of ZFS support in `grub-install' and
+ `grub-mkconfig'.
+
+2010-08-30 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * conf/Makefile.common (CPPFLAGS_DEFAULT): Remove leading / from
+ dprintf output.
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove leftover embedding of font objects.
+
+ * include/grub/kernel.h (OBJ_TYPE_FONT): Removed.
+ * util/grub-install.in (font): Removed.
+ * util/grub-mkimage.c (generate_image): Remove font support. All users
+ updated.
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove leftover embedding of font objects.
+
+ * include/grub/kernel.h (OBJ_TYPE_FONT): Removed.
+ * util/grub-install.in (font): Removed.
+ * util/grub-mkimage.c (generate_image): Remove font support. All users
+ updated.
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Network): Fix reference to pxe_blksize.
+ Reported by: Ian Turner
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/menu.c (grub_wait_after_message): Add a 10 second
+ timeout to avoid indefinite boot stalling.
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/color.c (grub_env_write_color_normal): Fix a warning.
+ (grub_env_write_color_highlight): Likewise.
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (print_more): Return to normal and not
+ to standard state after printing "---MORE---".
+
+2010-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/i386/vga_common.c (grub_console_setcolorstate):
+ Mask out the bit 0x80 since it has other meaning that specifiing color.
+
+2010-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ New relocator. Allows for more kernel support and more straightforward
+ loader writing.
+
+ * Makefile.am (BOOTTARGET): New variable.
+ (QEMU32): Likewise.
+ (linux.init.x86_64): New target.
+ (linux.init.i386): Likewise.
+ (multiboot.elf): Likewise.
+ (kfreebsd.elf): Likewise.
+ (kfreebsd.aout): Likewise.
+ (pc-chainloader.elf): Likewise.
+ (pc-chainloader.bin): Likewise.
+ (ntldr.elf): Likewise.
+ (ntldr.bin): Likewise.
+ (multiboot2.elf): Likewise.
+ (kfreebsd.init.x86_64): Likewise.
+ (kfreebsd.init.i386): Likewise.
+ (knetbsd.init.i386): Likewise.
+ (kopenbsd.init.i386): Likewise.
+ (knetbsd.init.x86_64): Likewise.
+ (kopenbsd.init.x86_64): Likewise.
+ (linux-initramfs.i386): Likewise.
+ (linux-initramfs.x86_64): Likewise.
+ (kfreebsd-mfsroot.i386.img): Likewise.
+ (knetbsd.image.i386): Likewise.
+ (kopenbsd.image.i386): Likewise.
+ (kopenbsd.image.x86_64): Likewise.
+ (knetbsd.miniroot-image.i386.img): Likewise.
+ (kfreebsd-mfsroot.x86_64.img): Likewise.
+ (knetbsd.image.x86_64): Likewise.
+ (knetbsd.miniroot-image.x86_64.img): Likewise.
+ (kfreebsd-mfsroot.i386.gz): Likewise.
+ (bootcheck-kfreebsd-i386): Likewise.
+ (kfreebsd-mfsroot.x86_64.gz): Likewise.
+ (bootcheck-kfreebsd-x86_64): Likewise.
+ (knetbsd.miniroot-image.i386.gz): Likewise.
+ (bootcheck-knetbsd-i386): Likewise.
+ (bootcheck-kopenbsd-i386): Likewise.
+ (bootcheck-kopenbsd-x86_64): Likewise.
+ (knetbsd.miniroot-image.x86_64.gz): Likewise.
+ (bootcheck-knetbsd-x86_64): Likewise.
+ (bootcheck-linux-i386): Likewise.
+ (bootcheck-linux-x86_64): Likewise.
+ (bootcheck-linux16-i386): Likewise.
+ (bootcheck-linux16-x86_64): Likewise.
+ (bootcheck-multiboot): Likewise.
+ (bootcheck-multiboot2): Likewise.
+ (bootcheck-kfreebsd-aout): Likewise.
+ (bootcheck-pc-chainloader): Likewise.
+ (bootcheck-ntldr): Likewise.
+ (CLEANFILES): Add new targets.
+ (BOOTCHECKS): New variable.
+ (.PHONY): Add bootchecks.
+ (SUCCESSFUL_BOOT_STRING): New variable.
+ (BOOTCHECK_TIMEOUT): Likewise.
+ (bootcheck): New target
+ * Makefile.util.def (grub-mkrescue): Enable on i386-multiboot.
+ * configure.ac: Correct efiemu excuse.
+ * docs/grub.texi (Supported kernels): New chapter.
+ * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add
+ include/grub/mm_private.h. Simplify inclusion of
+ include/grub/boot.h, include/grub/loader.h
+ and include/grub/msdos_partition.h
+ (KERNEL_HEADER_FILES) [i386_coreboot]:
+ Remove include/grub/machine/loader.h. Add include/grub/i386/pit.h.
+ (KERNEL_HEADER_FILES) [i386_multiboot]: Likewise.
+ (KERNEL_HEADER_FILES) [i386_qemu]: Likewise.
+ (KERNEL_HEADER_FILES) [i386_ieee1275]: Remove
+ include/grub/machine/loader.h.
+ (KERNEL_HEADER_FILES) [x86_64-efi]: Likewise.
+ * grub-core/Makefile.core.def (kernel): Remove kern/i386/loader.S from
+ extra_dist.
+ (pci.mod): Enable on i386-multiboot.
+ (acpi.mod): Enable on i386-multiboot and i386-coreboot.
+ (efiemu.mod): Enable on i386-coreboot, i386-ieee1275, i386-multiboot and
+ i386-qemu.
+ (relocator.mod): Rewritten.
+ (aout.mod): Enable on all x86.
+ (bsd.mod): Likewise.
+ (ntldr.mod): New module.
+ (linux.mod): Use loader/i386/linux.c on all x86.
+ (xnu.mod): Enable on all x86.
+ (vga_text.mod): disable on EFI and QEMU.
+ * grub-core/efiemu/i386/coredetect.c: Remove useless include.
+ * grub-core/efiemu/i386/pc/cfgtables.c: Likewise.
+ * grub-core/efiemu/loadcore.c: Likewise.
+ * grub-core/efiemu/main.c: Likewise.
+ (grub_efiemu_exit_boot_services): Removed.
+ (grub_efiemu_finish_boot_services): Likewise.
+ * grub-core/efiemu/mm.c (grub_efiemu_finish_boot_services): New
+ function.
+ * grub-core/efiemu/i386/nocfgtables.c: New file.
+ * grub-core/kern/dl.c (grub_dl_unload_all): Removed.
+ * grub-core/kern/efi/efi.c (grub_efi_exit_boot_services): Removed.
+ (grub_efi_finish_boot_services): Moved from here ...
+ * grub-core/kern/efi/mm.c (grub_efi_finish_boot_services): ...here.
+ Fille finish memory map and related data.
+ (finish_mmap_buf): New variable.
+ (grub_efi_uintn_t finish_mmap_size): Likewise.
+ (grub_efi_uintn_t finish_key): Likewise.
+ (grub_efi_uintn_t finish_desc_size): Likewise.
+ (grub_efi_uint32_t finish_desc_version): Likewise.
+ (grub_efi_is_finished): Likewise.
+ (grub_efi_get_memory_map): Use saved memory map if EFI is already
+ finished.
+ * grub-core/kern/elf.c (grub_elf32_phdr_iterate): Make global.
+ (grub_elf64_phdr_iterate): Likewise.
+ * grub-core/kern/i386/coreboot/init.c (grub_os_area_addr): Removed.
+ (grub_os_area_size): Likewise.
+ (grub_machine_init): Don't reserve os area.
+ * grub-core/kern/i386/coreboot/startup.S: Don't include loader.S.
+ * grub-core/kern/i386/ieee1275/startup.S: Likewise.
+ * grub-core/kern/i386/loader.S: Removed.
+ * grub-core/kern/i386/pc/init.c (grub_os_area_addr): Removed.
+ (grub_os_area_size): Likewise.
+ (grub_machine_init): Don't reserve os area.
+ * grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot):
+ Don't call grub_dl_unload_all.
+ Don't include loader.S.
+ * grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_iterate):
+ Declare the memory after _end as available.
+ * grub-core/kern/mm.c (GRUB_MM_FREE_MAGIC): Moved from here...
+ * include/grub/mm_private.h (GRUB_MM_FREE_MAGIC): ... here.
+ (GRUB_MM_ALLOC_MAGIC): Moved from here...
+ * include/grub/mm_private.h (GRUB_MM_ALLOC_MAGIC): ... here.
+ * grub-core/kern/mm.c (grub_mm_header): Moved from here...
+ * include/grub/mm_private.h (grub_mm_header): ... here.
+ * grub-core/kern/mm.c (GRUB_MM_ALIGN): Moved from here...
+ * include/grub/mm_private.h (GRUB_MM_ALIGN): ... here.
+ * grub-core/kern/mm.c (grub_mm_region): Moved from here ...
+ (grub_mm_region): ..here. Removed addr. Added pre_size.
+ All users updated.
+ * grub-core/kern/mm.c (base): Renamed to ...
+ (grub_mm_base): ... this. Made global.
+ (grub_real_malloc): Alloc from end of region.
+ (grub_memalign): Don't attempt to malloc if grub_mm_base is NULL.
+ * grub-core/kern/powerpc/cache.S (grub_arch_sync_caches): Move to ...
+ * grub-core/kern/powerpc/cache_flush.S: ... here.
+ * grub-core/lib/efi/relocator.c: New file.
+ * grub-core/lib/i386/relocator.c: Rewritten.
+ * grub-core/lib/i386/relocator16.S: New file.
+ * grub-core/lib/i386/relocator32.S: Likewise.
+ * grub-core/lib/i386/relocator64.S: Likewise.
+ * grub-core/lib/i386/relocator_asm.S: Rewritten.
+ * grub-core/lib/i386/relocator_common.S: New file.
+ * grub-core/lib/ieee1275/relocator.c: Likewise.
+ * grub-core/lib/mips/relocator.c: Rewritten.
+ * grub-core/lib/mips/relocator_asm.S: Renamed variables and minor
+ stylistic adjustments.
+ * grub-core/lib/powerpc/relocator.c: New file.
+ * grub-core/lib/powerpc/relocator_asm.S: Likewise.
+ * grub-core/lib/relocator.c: Rewritten.
+ * grub-core/lib/x86_64/relocator_asm.S: New file.
+ * grub-core/loader/aout.c (grub_aout_load): Make load_addr a void *.
+ * grub-core/loader/i386/bsd.c (NETBSD_DEFAULT_VIDEO_MODE): New const.
+ (bsd_tag): New struct.
+ (tags): New variable.
+ (tags_last): Likewise.
+ (netbsd_module): New struct.
+ (netbsd_mods): New variable.
+ (netbsd_mods_last): Likewise.
+ (openbsd_opts): New parameter "serial".
+ (OPENBSD_SERIAL_ARG): New definition.
+ (netbsd_opts): New parameter "serial".
+ (NETBSD_SERIAL_ARG): New definition.
+ (grub_freebsd_add_meta): Reorganised into ...
+ (grub_bsd_add_meta): ...this. All users updated.
+ (grub_freebsd_add_mmap): Reorganised into ...
+ (generate_e820_mmap): ...this...
+ (grub_bsd_add_mmap): ...and this. All users updated.
+ (grub_freebsd_list_modules): Use tags.
+ (grub_netbsd_add_meta_module): New function.
+ (grub_netbsd_list_modules): Likewise.
+ (grub_freebsd_boot): Use relocator and finish EFI.
+ (grub_openbsd_boot): Likewise.
+ (grub_netbsd_setup_video): New function.
+ (grub_netbsd_add_modules): Likewise.
+ (grub_netbsd_boot): Use grub_netbsd_add_modules, relocator, netbsd_tags
+ and finish EFI.
+ (grub_bsd_unload): Unload tags.
+ (grub_bsd_load_aout): Use relocator.
+ (grub_bsd_elf32_size_hook): New function.
+ (grub_bsd_elf32_hook): Use relocator.
+ (grub_bsd_elf64_size_hook): New function.
+ (grub_bsd_elf64_hook): Use relocator.
+ (grub_bsd_load_elf): Use relocator and call grub_openbsd_find_ramdisk.
+ (grub_bsd_load): Zero-out openbsd_ramdisk.
+ (grub_bsd_load): Use relocator.
+ (grub_cmd_openbsd): Support serial.
+ (grub_cmd_netbsd): Support modules.
+ (grub_cmd_freebsd_module): Use relocator.
+ (grub_netbsd_module_load): New function.
+ (grub_cmd_netbsd_module): Likewise.
+ (grub_cmd_openbsd_ramdisk): Likewise.
+ (GRUB_MOD_INIT): Register knetbsd_module, knetbsd_module_elf and
+ kopenbsd_ramdisk.
+ (GRUB_MOD_FINI): Unregister new commands.
+ * grub-core/loader/i386/bsdXX.c (load): Remove useless checks.
+ (grub_freebsd_load_elfmodule_obj): Use relocator.
+ (grub_freebsd_load_elfmodule): Likewise.
+ (grub_freebsd_load_elf_meta): Likewise.
+ (grub_netbsd_load_elf_meta): New function.
+ (grub_openbsd_find_ramdisk): Likewise.
+ * grub-core/loader/i386/bsd_helper.S: Removed.
+ * grub-core/loader/i386/bsd_pagetable.c: Support relocator.
+ * grub-core/loader/i386/bsd_trampoline.S: Removed.
+ * grub-core/loader/i386/efi/linux.c: Likewise.
+ * grub-core/loader/i386/ieee1275/linux.c: Likewise.
+ * grub-core/loader/i386/linux.c (HAS_VGA_TEXT): New const.
+ (DEFAULT_VIDEO_MODE): Likewise.
+ (real_mode_target): New variable.
+ (prot_mode_target): Likewise.
+ (initrd_mem_target): Likewise.
+ (relocator): Likewise.
+ (efi_mmap_buf): Likewise.
+ (efi_mmap_size): Likewise.
+ (find_efi_mmap_size): Moved from grub-core/loader/i386/efi/linux.c.
+ (free_pages): Use relocator.
+ (allocate_pages): Account for efi_mmap and use relocator. Return error.
+ (grub_linux_setup_video): Return error.
+ (grub_linux_trampoline_start): Removed.
+ (grub_linux_trampoline_end): Likewise.
+ (grub_linux_boot): Use relocator and DEFAULT_VIDEO_MODE. Pass console
+ andd video parameters depending on firmware.
+ [GRUB_MACHINE_IEEE1275]: Pass OFW parameters.
+ [GRUB_MACHINE_EFI]: Pass EFI parameters.
+ (grub_cmd_linux) [GRUB_MACHINE_EFI]: Likewise.
+ (grub_cmd_initrd): Use relocator.
+ * grub-core/loader/i386/linux_trampoline.S: Removed.
+ * grub-core/loader/i386/multiboot_mbi.c (elf_sec_num): New variable.
+ (elf_sec_entsize): Likewise.
+ (elf_sec_shstrndx): Likewise.
+ (elf_sections): Likewise.
+ (grub_multiboot_load): Use relocator.
+ (grub_multiboot_get_mbi_size): Account for sections.
+ (grub_multiboot_make_mbi): Use relocator and support sections.
+ (grub_multiboot_add_elfsyms): New function.
+ (grub_multiboot_free_mbi): Free sections.
+ * grub-core/loader/i386/pc/linux.c (relocator): New variable.
+ (grub_linux_real_target): Likewise.
+ (grub_linux_real_chunk): Likewise.
+ (grub_linux16_prot_size): Likewise.
+ (grub_linux16_boot): Use relocator.
+ (grub_linux_unload): Unload relocator.
+ (grub_cmd_linux): Use relocator.
+ (grub_cmd_initrd): Likewise.
+ * grub-core/loader/i386/pc/ntldr.c: New file.
+ * grub-core/loader/i386/xnu.c (guessfsb) [GRUB_MACHINE_IEEE1275]:
+ Don't try to guess CPU frequency.
+ (grub_xnu_set_video): Stretch bitmap.
+ (grub_xnu_boot): Use relocator.
+ * grub-core/loader/mips/linux.c (grub_linux_boot): Use relocator.
+ (grub_linux_unload): Free relocator.
+ (grub_linux_load32): Use relocator.
+ (grub_linux_load64): Likewise.
+ (grub_cmd_initrd): Likewise.
+ * grub-core/loader/multiboot.c (grub_multiboot_boot): Use relocator.
+ (grub_multiboot_unload): Unload relocator.
+ (grub_cmd_multiboot): Use relocator.
+ (grub_cmd_module): Likewise.
+ * grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elfXX):
+ Use relocator and support sections.
+ * grub-core/loader/multiboot_mbi2.c(elf_sec_num): New variable.
+ (elf_sec_entsize): Likewise.
+ (elf_sec_shstrndx): Likewise.
+ (elf_sections): Likewise.
+ (grub_multiboot_load): Use relocator.
+ (grub_multiboot_get_mbi_size): Account for sections.
+ (grub_multiboot_make_mbi): Use relocator and support sections.
+ (grub_multiboot_add_elfsyms): New function.
+ * grub-core/loader/powerpc/ieee1275/linux.c: Remove useless include.
+ * grub-core/loader/sparc64/ieee1275/linux.c: Likewise.
+ * grub-core/loader/xnu.c (grub_xnu_heap_malloc): Use relocator.
+ Prototype changed. All users updated.
+ (grub_xnu_align_heap): Simplified.
+ (grub_xnu_writetree_toheap): Likewise.
+ (grub_xnu_unload): Unload relocator.
+ (grub_cmd_xnu_kernel): Use relocator.
+ (grub_cmd_xnu_kernel64): Likewise.
+ (grub_xnu_register_memory): Simplified.
+ * grub-core/loader/xnu_resume.c (grub_xnu_resume): Use relocator.
+ * grub-core/term/efi/console.c (grub_console_putchar): Abort if
+ EFI is finished.
+ (grub_console_checkkey): Likewise.
+ (grub_console_getkey): Likewise.
+ (grub_console_getwh): Likewise.
+ (grub_console_getxy): Likewise.
+ (grub_console_gotoxy): Likewise.
+ (grub_console_cls): Likewise.
+ (grub_console_setcolorstate): Likewise.
+ (grub_console_setcursor): Likewise.
+ * grub-core/term/ns8250.c (grub_ns8250_hw_get_port): New function.
+ * grub-core/tests/boot/kbsd.init-i386.S: New file.
+ * grub-core/tests/boot/kbsd.init-x86_64.S: Likewise.
+ * grub-core/tests/boot/kbsd.spec.txt: Likewise.
+ * grub-core/tests/boot/kernel-8086.S: Likewise.
+ * grub-core/tests/boot/kernel-i386.S: Likewise.
+ * grub-core/tests/boot/kfreebsd-aout.cfg: Likewise.
+ * grub-core/tests/boot/kfreebsd.cfg: Likewise.
+ * grub-core/tests/boot/kfreebsd.init-i386.S: Likewise.
+ * grub-core/tests/boot/kfreebsd.init-x86_64.S: Likewise.
+ * grub-core/tests/boot/knetbsd.cfg: Likewise.
+ * grub-core/tests/boot/kopenbsd.cfg: Likewise.
+ * grub-core/tests/boot/kopenbsdlabel.txt: Likewise.
+ * grub-core/tests/boot/linux.cfg: Likewise.
+ * grub-core/tests/boot/linux.init-i386.S: Likewise.
+ * grub-core/tests/boot/linux.init-x86_64.S: Likewise.
+ * grub-core/tests/boot/linux16.cfg: Likewise.
+ * grub-core/tests/boot/multiboot.cfg: Likewise.
+ * grub-core/tests/boot/multiboot2.cfg: Likewise.
+ * grub-core/tests/boot/ntldr.cfg: Likewise.
+ * grub-core/tests/boot/pc-chainloader.cfg: Likewise.
+ * include/grub/aout.h (grub_aout_load): Make load_addr a void *.
+ * include/grub/autoefi.h (grub_autoefi_finish_boot_services):
+ New definition.
+ * include/grub/dl.h (grub_dl_unload_all): Removed.
+ * include/grub/efi/efi.h (grub_efi_exit_boot_services): Likewise.
+ (grub_efi_finish_boot_services): Change prototype.
+ (grub_efi_is_finished): New variable.
+ * include/grub/efiemu/efiemu.h (grub_efiemu_finish_boot_services):
+ Changed prototype.
+ (grub_efiemu_finish_boot_services): Removed.
+ (grub_machine_efiemu_init_tables): New prototype.
+ * include/grub/elfload.h (grub_elf32_phdr_iterate): Likewise.
+ (grub_elf64_phdr_iterate): Likewise.
+ * include/grub/i386/bsd.h: Include relocator.h.
+ (freebsd_tag_header): New struct.
+ (grub_openbsd_bios_mmap): Removed.
+ (grub_unix_real_boot): Removed.
+ (grub_freebsd_load_elfmodule32): Changed prototype.
+ (grub_freebsd_load_elfmodule_obj64): Likewise.
+ (grub_freebsd_load_elf_meta32): Likewise.
+ (grub_freebsd_load_elf_meta64): Likewise.
+ (grub_freebsd_add_meta): Removed.
+ (grub_netbsd_load_elf_meta32): New prototype.
+ (grub_netbsd_load_elf_meta64): Likewise.
+ (grub_bsd_add_meta): Likewise.
+ (grub_openbsd_ramdisk_descriptor): New struct.
+ (grub_openbsd_find_ramdisk32): New prototype.
+ (grub_openbsd_find_ramdisk64): Likewise.
+ * include/grub/i386/coreboot/loader.h: Removed.
+ * include/grub/i386/efi/loader.h: Likewise.
+ * include/grub/i386/ieee1275/loader.h: Likewise.
+ * include/grub/i386/linux.h (linux_kernel_header): Change void *
+ to grub_uint32_t.
+ * include/grub/i386/loader.h: Removed.
+ * include/grub/i386/memory.h (GRUB_MEMORY_CPU_CR4_PAE_ON): Correct the
+ value.
+ (GRUB_MEMORY_CPU_CR4_PSE_ON): New definition.
+ (grub_phys_addr_t): New type.
+ (grub_vtop): New inline function.
+ (grub_map_memory): Likewise.
+ (grub_unmap_memory): Likewise.
+ * include/grub/i386/multiboot/loader.h: Removed.
+ * include/grub/i386/netbsd_bootinfo.h (NETBSD_BTINFO_BOOTDISK): Removed.
+ (NETBSD_BTINFO_CONSOLE): New definition.
+ (NETBSD_BTINFO_SYMTAB): Likewise.
+ (NETBSD_BTINFO_MODULES): Likewise.
+ (NETBSD_BTINFO_FRAMEBUF): Likewise.
+ (grub_netbsd_bootinfo): New struct.
+ (grub_netbsd_btinfo_common): Use explicit bitsize.
+ (grub_netbsd_btinfo_mmap_entry): Removed.
+ (GRUB_NETBSD_MAX_BOOTPATH_LEN): New definition.
+ (grub_netbsd_btinfo_bootdisk): New struct.
+ (grub_netbsd_btinfo_symtab): Likewise.
+ (grub_netbsd_btinfo_serial): Likewise.
+ (grub_netbsd_btinfo_modules): Likewise.
+ (grub_netbsd_btinfo_framebuf): Likewise.
+ (GRUB_NETBSD_MAX_ROOTDEVICE_LEN): New definition.
+ * include/grub/i386/openbsd_bootarg.h (OPENBSD_BOOTARG_CONSOLE):
+ Likewise.
+ (grub_openbsd_bootargs): Use explicit bitsize.
+ (grub_openbsd_bootarg_console): New struct.
+ (GRUB_OPENBSD_COM_MAJOR): New definition.
+ (GRUB_OPENBSD_VGA_MAJOR): Likewise.
+ * include/grub/i386/pc/efiemu.h: Removed.
+ * include/grub/i386/pc/loader.h: Don't include cpu/loader.h.
+ * include/grub/i386/qemu/loader.h: Removed.
+ * include/grub/i386/relocator.h: Rewritten.
+ * include/grub/i386/xnu.h (grub_xnu_heap_will_be_at): Removed.
+ * include/grub/mips/memory.h: New file.
+ * include/grub/mips/multiboot.h: Rewritten.
+ * include/grub/mips/relocator.h: Rewritten.
+ * include/grub/mips/yeeloong/memory.h (grub_phys_addr_t): New type.
+ (grub_vtop): New function.
+ (grub_map_memory): Likewise.
+ (grub_unmap_memory): Likewise.
+ * include/grub/misc.h (ALIGN_DOWN): New definition.
+ * include/grub/mm.h (grub_mm_check_real): New proto.
+ (GRUB_MM_CHECK): New definition.
+ * include/grub/mm_private.h: New file.
+ * include/grub/multiboot.h (grub_multiboot_relocator): New variable.
+ (grub_multiboot_get_mbi_size): Removed.
+ (grub_multiboot_make_mbi): Change prottype.
+ (grub_multiboot_set_accepts_video): New proto.
+ (grub_multiboot_add_elfsyms): Likewise.
+ (grub_multiboot_payload_eip): New variable.
+ * include/grub/ns8250.h (grub_ns8250_hw_get_port) [!ASM_FILE]:
+ New prototype.
+ * include/grub/offsets.h (GRUB_KERNEL_I386_MULTIBOOT_PREFIX):
+ New definition.
+ (GRUB_KERNEL_I386_MULTIBOOT_DATA_END): Likewise.
+ (GRUB_KERNEL_I386_MULTIBOOT_MOD_ALIGN): Likewise.
+ * include/grub/powerpc/ieee1275/loader.h: Removed.
+ * include/grub/powerpc/memory.h: New file.
+ * include/grub/powerpc/relocator.h: Likewise.
+ * include/grub/relocator.h: Likewise.
+ * include/grub/relocator_private.h: Likewise.
+ * include/grub/sparc64/ieee1275/loader.h: Removed.
+ * include/grub/x86_64/memory.h: New file.
+ * include/grub/xnu.h (grub_xnu_writetree_toheap): Changed prototype.
+ (grub_xnu_heap_malloc): Likewise.
+ (grub_xnu_heap_real_start): Removed.
+ (grub_xnu_heap_start): Likewise.
+ (grub_xnu_relocator): New variable.
+ (grub_xnu_heap_target_start): Likewise.
+ * tests/util/grub-shell.in: Support non-pc.
+ * util/grub-mkimage.c (image_targets): Fix multiboot target.
+
+2010-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Avoid deadloop
+ on malloc error.
+ (grub_bidi_logical_to_visual): Check that malloc succeded.
+ * grub-core/normal/term.c (grub_puts_terminal): Fix fallback to dumb
+ puts.
+ (grub_xputs_normal): Likewise.
+
+2010-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/Makefile.core.def (kernel): Add kern/mips/cache_flush.S to
+ extra_dist.
+
+2010-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/efiemu/runtime/efiemu.sh: Removed.
+
+2010-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.util.def (grub-ofpathname): Add missing ldadd.
+
+2010-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/misc.c (grub_real_dprintf): Always refresh after
+ dprintf.
+
+2010-08-29 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * Makefile.util.def: Use ldadd instead of ldflags for libraries.
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/term.c (print_more): Fix a memory leak.
+ (grub_puts_terminal): Revert to dumb puts if memory allocation fails.
+ (grub_xputs_normal): Likewise.
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/lexer.c (grub_script_lexer_init): Don't look before
+ the begining of the string
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/script/script.c (grub_script_parse): Free parsed on
+ failure.
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/completion.c (grub_normal_do_completion): Free argv
+ on failure.
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/normal/cmdline.c (grub_cmdline_get): Free cl_terms on
+ return.
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/gfxterm.c (grub_gfxterm_term_fini): Free the text buffer.
+ (scroll_up): Fix a memory leak.
+
+2010-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Handle grub_disk_read
+ errors.
+
+2010-08-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle USB pendrives exposed as floppies.
+
+ * grub-core/boot/i386/pc/boot.S: Check LBA even on what appears to be
+ floppy.
+ * grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise.
+ Check for partitions on all devices.
+
+2010-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/term/ieee1275/ofconsole.c (put): Correct prototype.
+ (readkey): Likewise.
+
+2010-08-25 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Multiple variable names support to "export" command.
+
+ * normal/context.c (grub_cmd_export): "export" command supports
+ multiple variable names.
+
+2010-08-23 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/30_os-prober.in: Fix conversion from grub-probe
+ --target=drive output to Mach device name.
+
+2010-08-23 BVK Chaitanya <bvk.groups@gmail.com>
+
+ New Automake based build system for GRUB.
+
+ * ABOUT-NLS: New file.
+ * Makefile.am: New file. GRUB host utils' rules that doesn't fit
+ in Makefile.util.def file.
+ * Makefile.util.def: New file. Autogen build definitions file for
+ GRUB host utils.
+ * conf/Makefile.common: New file. Common variables for GRUB host
+ utils and target modules.
+ * conf/Makefile.extra-dist: New file. Extra files for make dist.
+ * docs/Makefile.am: New file. Automake file for docs.
+ * gentpl.py: New file. Python script to generate Autogen
+ template.
+ * grub-core/Makefile.am: New file. GRUB target modules' rules
+ that doesn't fit in Makefile.core.def file.
+ * grub-core/Makefile.core.def: New file. Autogen build
+ definitions file for GRUB target modules.
+ * grub-core/lib/setjmp.S: New file. Wrapper for target_cpu
+ specific setjmp.S file.
+ * po/Makefile.am: New file.
+
+ * .bzrignore: New ignores.
+ * INSTALL: New requirements, without Ruby.
+ * acinclude.m4: Use TARGET_IMG_BASE_LDOPT variable instead.
+ * autogen.sh: Updated to invoke autogen as necessary.
+ * configure.ac: Separate *FLAGS with HOST_ and TARGET_ prefixes,
+ and defines for Automake conditionals.
+ * geninit.sh: Refactoring.
+
+ * include/grub/dl.h: Allow build rules to define GRUB_MOD_* if
+ necessary.
+ * include/grub/emu/getroot.h (grub_make_system_path_relative_to_its_root):
+ New prototype.
+
+ * include/grub/test.h: Fix functional test modules' naming.
+ * grub-core/tests/example_functional_test.c: Fix test module name.
+
+ * util/misc.c: Hosted versions' of grub functions for libgrub.a
+ * tests/lib/unit_test.c: Remove hosted versions of grub functions.
+ * util/grub-editenv.c: Likewise.
+ * util/grub-fstest.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/grub-mkfont.c: Likewise.
+ * util/grub-mkimage.c: Likewise.
+ * util/grub-mkpasswd-pbkdf2.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/grub-script-check.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/sparc64/ieee1275/grub-setup.c: Likewise.
+
+ * tests/util/grub-shell.in: Fix override directory path.
+ * util/grub-mkrescue.in: Replace @pkglib_DATA@ with files.
+ * util/import_gcry.py: Create Makefile.gcry.def file instead.
+
+ * util/lvm.c: Update #includes.
+ * util/raid.c: Likewise.
+ * util/resolve.c: Likewise.
+ * grub-core/bus/emu/pci.c: Likewise.
+ * grub-core/lib/posix_wrap/stdlib.h: Likewise.
+ * grub-core/lib/posix_wrap/string.h: Likewise.
+ * grub-core/kern/emu/main.c: Likewise.
+
+ * grub-core/gensymlist.sh: New file. Script for generating kernel
+ symbols file.
+ * grub-core/genmoddep.awk: Support new kernel_syms.lst format.
+
+ * grub-core/gentrigtables.c: Fix unused variable warnings.
+
+ * Makefile.in: Removed.
+ * conf/any-emu.rmk: Removed.
+ * conf/common.rmk: Removed.
+ * conf/i386-coreboot.rmk: Removed.
+ * conf/i386-efi.rmk: Removed.
+ * conf/i386-ieee1275.rmk: Removed.
+ * conf/i386-multiboot.rmk: Removed.
+ * conf/i386-pc.rmk: Removed.
+ * conf/i386-qemu.rmk: Removed.
+ * conf/i386.rmk: Removed.
+ * conf/mips-yeeloong.rmk: Removed.
+ * conf/mips.rmk: Removed.
+ * conf/powerpc-ieee1275.rmk: Removed.
+ * conf/sparc64-ieee1275.rmk: Removed.
+ * conf/tests.rmk: Removed.
+ * conf/x86-efi.rmk: Removed.
+ * conf/x86_64-efi.rmk: Removed.
+ * gendistlist.sh: Removed.
+ * geninitheader.sh: Removed.
+ * genkernsyms.sh.in: Removed.
+ * genmk.rb: Removed.
+ * gensymlist.sh.in: Removed.
+ * mkinstalldirs: Removed.
+ * boot: Moved ...
+ * grub-core/boot: ... to here.
+ * bus: Moved ...
+ * grub-core/bus: ... to here.
+ * commands: Moved ...
+ * grub-core/commands: ... to here.
+ * disk: Moved ...
+ * grub-core/disk: ... to here.
+ * efiemu: Moved ...
+ * grub-core/efiemu: ... to here.
+ * font: Moved ...
+ * grub-core/font: ... to here.
+ * fs: Moved ...
+ * grub-core/fs: ... to here.
+ * gencmdlist.sh: Moved ...
+ * grub-core/gencmdlist.sh: ... to here.
+ * genemuinit.sh: Moved ...
+ * grub-core/genemuinit.sh: ... to here.
+ * genemuinitheader.sh: Moved ...
+ * grub-core/genemuinitheader.sh: ... to here.
+ * genfslist.sh: Moved ...
+ * grub-core/genfslist.sh: ... to here.
+ * genhandlerlist.sh: Moved ...
+ * grub-core/genhandlerlist.sh: ... to here.
+ * genmoddep.awk: Moved ...
+ * grub-core/genmoddep.awk: ... to here.
+ * genmodsrc.sh: Moved ...
+ * grub-core/genmodsrc.sh: ... to here.
+ * genpartmaplist.sh: Moved ...
+ * grub-core/genpartmaplist.sh: ... to here.
+ * genparttoollist.sh: Moved ...
+ * grub-core/genparttoollist.sh: ... to here.
+ * genterminallist.sh: Moved ...
+ * grub-core/genterminallist.sh: ... to here.
+ * gentrigtables.c: Moved ...
+ * grub-core/gentrigtables.c: ... to here.
+ * genvideolist.sh: Moved ...
+ * grub-core/genvideolist.sh: ... to here.
+ * gettext: Moved ...
+ * grub-core/gettext: ... to here.
+ * gfxmenu: Moved ...
+ * grub-core/gfxmenu: ... to here.
+ * gnulib: Moved ...
+ * grub-core/gnulib: ... to here.
+ * hello: Moved ...
+ * grub-core/hello: ... to here.
+ * hook: Moved ...
+ * grub-core/hook: ... to here.
+ * io: Moved ...
+ * grub-core/io: ... to here.
+ * kern: Moved ...
+ * grub-core/kern: ... to here.
+ * lib: Moved ...
+ * grub-core/lib: ... to here.
+ * loader: Moved ...
+ * grub-core/loader: ... to here.
+ * mmap: Moved ...
+ * grub-core/mmap: ... to here.
+ * normal: Moved ...
+ * grub-core/normal: ... to here.
+ * partmap: Moved ...
+ * grub-core/partmap: ... to here.
+ * parttool: Moved ...
+ * grub-core/parttool: ... to here.
+ * script: Moved ...
+ * grub-core/script: ... to here.
+ * term: Moved ...
+ * grub-core/term: ... to here
+ * tests/example_functional_test.c: Moved ...
+ * grub-core/tests/example_functional_test.c: ... to here.
+ * tests/lib/functional_test.c: Moved ...
+ * grub-core/tests/lib/functional_test.c: ... to here.
+ * tests/lib/test.c: Moved ...
+ * grub-core/tests/lib/test.c: ... to here.
+ * video: Moved ...
+ * grub-core/video: ... to here.
+
+2010-08-23 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Replace --enable-grub-emu-modules with grub-emu-lite.
+
+ * kern/emu/cache.S: New file. Wrapper for $target_cpu specific
+ cache.S.
+
+ * include/grub/emu/misc.h (grub_emu_init): New prototype.
+ * kern/emu/full.c: New file. For grub-emu specific initialization.
+ * kern/emu/lite.c: New file. For grub-emu-lite initialization.
+ * kern/emu/main.c: Call initialization function grub_emu_init.
+
+ * Makefile.in: Include grub-emu-lite in install.
+ * commands/parttool.c: Use grub_no_autoload to differentiate
+ between grub-emu and grub-emu-lite.
+ * include/grub/misc.h: New variable grub_no_autoload.
+
+ * conf/any-emu.rmk: New rules for grub-emu-lite.
+ * configure.ac: Remove --enable-grub-emu-modules.
+ * genmk.rb: Cleanup unnecessary rules.
+ * include/grub/dl.h: Remove GRUB_NO_MODULES macro.
+
+ * normal/main.c: Don't load list files on grub-emu-lite.
+ * util/misc.c (grub_arch_sync_caches): Removed.
+
+2010-08-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/mips/startup.S (grub_prefix): Update comment to refer to
+ grub-mkimage rather than grub-mkelfimage.
+ * kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise.
+
+2010-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/at_keyboard.c (grub_at_keyboard_getkey_noblock): Don't discard
+ a key after CapsLock or NumLock. It's just a qemu bug.
+
+2010-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/usb.h (grub_usb_device): Add 'data' field back. It's
+ needed by libusb wrapper.
+
+2010-08-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * docs/grub.texi (GNU/Hurd): Document booting GNU/Hurd.
+
+2010-08-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/multiboot.c (grub_cmd_module): Don't unzip module if
+ --nounzip is passed.
+
+2010-08-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ USB hotunplugging and USB serial support.
+
+ * bus/usb/ohci.c (grub_ohci_transfer): Fill *actual and respect timeout.
+ * bus/usb/uhci.c (grub_free_queue): Compute *actual.
+ (grub_uhci_transfer): Respect timeout and set *actual.
+ * bus/usb/usb.c (grub_usb_device_initialize): Correctly skip fields of
+ non-standard length.
+ (grub_usb_device_attach): Autoload modules.
+ (GRUB_MOD_INIT): Set grub_term_poll_usb.
+ (GRUB_MOD_FINI): Unset grub_term_poll_usb.
+ * bus/usb/usbhub.c (grub_usb_hub): Replace speed with devices. All
+ users updated.
+ (grub_usb_add_hub): Fill nports and children.
+ (attach_root_port): Receive hub instead of controller.
+ All users updated. Fill hub->devices.
+ (grub_usb_root_hub): Allocate hub->devices.
+ (detach_device): New function.
+ (poll_nonroot_hub): Fill children and detach devices.
+ * bus/usb/usbtrans.c (grub_usb_bulk_readwrite): Accept timeout and
+ actual arguments. All users updated.
+ (grub_usb_bulk_read_extended): New function.
+ * bus/usb/serial/common.c: New file.
+ * bus/usb/serial/ftdi.c: Likewise.
+ * bus/usb/serial/pl2303.c: Likewise.
+ * commands/terminal.c (handle_command): Support wildcard.
+ * commands/usbtest.c: Output "Unknown" instead of empty string.
+ * conf/any-emu.rmk (pkglib_MODULES): Add usbserial_common.mod.
+ (usbserial_common_mod_SOURCES): New variable.
+ (usbserial_common_mod_CFLAGS): Likewise.
+ (usbserial_common_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add usbserial_pl2303.mod.
+ (usbserial_pl2303_mod_SOURCES): New variable.
+ (usbserial_pl2303_mod_CFLAGS): Likewise.
+ (usbserial_pl2303_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add usbserial_ftdi.mod.
+ (usbserial_ftdi_mod_SOURCES): New variable.
+ (usbserial_ftdi_mod_CFLAGS): Likewise.
+ (usbserial_ftdi_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add serial.mod.
+ (serial_mod_SOURCES): New variable.
+ (serial_mod_CFLAGS): Likewise.
+ (serial_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/mips-yeeloong.rmk: Likewise.
+ * conf/i386.rmk (serial_mod_SOURCES): Add term/ns8250.c.
+ * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
+ * disk/usbms.c (first_available_slot): New variable.
+ (grub_usbms_attach): Don't reuse free slots due to potential cache
+ problems.
+ * include/grub/serial.h: Moved to ..
+ * include/grub/ns8250.h: ...this.
+ * include/grub/serial.h: New file.
+ * include/grub/term.h (grub_term_poll_usb): New variable.
+ * include/grub/terminfo.h (grub_terminfo_input_state): Pass term to
+ readkey. All users updated.
+ (grub_terminfo_output_state): Pass term to put.
+ * include/grub/usb.h (GRUB_USB_REQTYPE): New enum.
+ (grub_usb_controller_dev): Add timeout and actual arguments to
+ transfer. All users updated.
+ (grub_usb_interface): New field detach_data.
+ (grub_usb_device): New fields children and nports.
+ (grub_usb_ep_type_t): New type.
+ (grub_usb_get_ep_type): New function.
+ (grub_usb_bulk_read_extended): Likewise.
+ * include/grub/usbdesc.h (grub_usb_desc): New type.
+ * include/grub/usbserial.h: New file.
+ * include/grub/usbtrans.h (grub_usb_transaction): New field preceding.
+ * kern/term.c (grub_term_poll_usb): New variable.
+ (grub_getkey): Call grub_term_poll_usb if set.
+ (grub_checkkey): Likewise.
+ (grub_getkeystatus): Likewise.
+ * term/serial.c: Moved controller-specific parts to ...
+ * term/ns8250.c: ... here.
+ * term/serial.c: Mostly rewritten.
+ * term/usb_keyboard.c: Reorganised to use GET_REPORT only on attaching
+ according to spec.
+
+2010-08-20 Robert Millan <rmh@gnu.org>
+
+ Make kFreeBSD code more generic to support ext2fs as root, ufs as
+ a separate module and maybe other interesting combinations.
+
+ * util/grub.d/10_kfreebsd.in (load_kfreebsd_module): New function.
+ (kfreebsd_entry): Use load_kfreebsd_module() to load modules.
+ (kfreebsd_entry): Add generic filesystem module load routine.
+ Map GRUB `ext2' to kFreeBSD `ext2fs'.
+
+2010-08-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/i386/pc/sendkey.c (keysym_table): Rename "numlock" to
+ "numcenter" (I misunderstood the purpose of this entry).
+ * docs/grub.texi (sendkey): Likewise.
+
+2010-08-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/i386/pc/sendkey.c (options): Remove "keep" from all
+ status flag options; simply omitting the option is equivalent and
+ simpler. Rename "wait" to "pause". Rename "sysreq" to "sysrq".
+ (keysym_table): Rename "num5numlock" to "numlock".
+ (grub_cmd_sendkey): Reinitialise `andmask' and `ormask', so that we
+ can uniformly say that only the last of multiple `sendkey'
+ invocations has any effect.
+ * docs/grub.texi (sendkey): New section.
+
+2010-08-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/i386/pc/sendkey.c (options): Fix three typos.
+
+2010-08-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Implement sendkey support.
+
+ * commands/i386/pc/sendkey.c: New file.
+ * conf/i386-pc.rmk (pkglib_MODULES): Add sendkey.mod.
+ (sendkey_mod_SOURCES): New variable.
+ (sendkey_mod_CFLAGS): Likewise.
+ (sendkey_mod_LDFLAGS): Likewise.
+
+2010-08-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Move AM_INIT_AUTOMAKE after AC_CANONICAL_TARGET to
+ fix warnings from Autoconf.
+
+2010-08-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * acinclude.m4 (grub_ASM_USCORE): Use a more accurate grep pattern,
+ to avoid false positives with some assemblers that output things
+ like "someprefix_func" as part of their output.
+
+2010-08-15 Robert Millan <rmh@gnu.org>
+
+ * kern/emu/misc.c (grub_get_libzfs_handle): Handle libzfs_init()
+ errors.
+ * kern/emu/getroot.c (find_root_device_from_libzfs): Handle
+ grub_get_libzfs_handle() errors.
+
+2010-08-14 Robert Millan <rmh@gnu.org>
+
+ * kern/emu/misc.c (grub_find_zpool_from_dir): Abort function if
+ filesystem is not ZFS.
+
+2010-08-12 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix for misspelled color names defaulting to black/black (bug
+ reported by Doug Nazar)
+
+ * include/grub/normal.h (grub_parse_color_name_pair): Add return
+ status to prototype.
+ * normal/color.c (grub_parse_color_name_pair): Return failure
+ status.
+ (grub_env_write_color_normal): Ignore bad color names.
+ (grub_env_write_color_highlight): Likewise.
+ * normal/main.c (GRUB_MOD_INIT): Set default color names.
+
+2010-08-12 BVK Chaitanya <bvk.groups@gmail.com>
+
+ "shift" command support to GRUB script.
+
+ * include/grub/script_sh.h (grub_script_shift): New prototype.
+ * script/execute.c (grub_script_shift): New function.
+ * script/main.c (grub_script_init): Register shift command.
+ (grub_script_fini): Unregister shift command.
+ * util/grub-script-check.c (grub_script_cmd_shift): New function.
+
+ * tests/grub_script_shift.in: New testcase.
+ * conf/tests.rmk: Rules for new testcase.
+
+2010-08-12 BVK Chaitanya <bvk.groups@gmail.com>
+
+ "continue" command support to GRUB script.
+
+ * script/execute.c (grub_script_execute_cmdwhile): Continue support.
+ (grub_script_break): Continue support.
+ * script/main.c (grub_script_init): Register continue command.
+ (grub_script_fini): Unregister continue command.
+
+ * tests/grub_script_continue.in: New testcase.
+ * conf/tests.rmk: Rules for new testcase.
+
+2010-08-12 BVK Chaitanya <bvk@dbook>
+
+ "break" command support to GRUB script.
+
+ * conf/common.rmk: Rule updates to grub-script-check.
+ * include/grub/misc.h (grub_min): New function.
+ * include/grub/script_sh.h (grub_script_init): New prototype.
+ (grub_script_fini): New prototype.
+ (grub_script_break): New prototype.
+ * script/main.c (grub_script_init): New function.
+ (grub_script_fini): New function.
+ * script/execute.c (grub_script_break): New function.
+ * normal/main.c: Calls to grub_script_{init,fini}.
+ * util/grub-script-check.c (grub_script_break): New function.
+
+ * tests/grub_script_break.in: New testcase.
+ * conf/tests.rmk: Rules for new test case.
+
+2010-08-12 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Function parameters support to GRUB script.
+
+ * script/yylex.l (VARIABLE): Regular expression update.
+ * script/function.c (grub_script_function_call): Moved ...
+ * script/execute.c (grub_script_function_call): ... to here.
+ (grub_script_execute_arglist_to_argv): Removed.
+ (grub_script_arglist_to_argv): New function.
+ * script/argv.c: New file.
+ (grub_script_argv_free): New function.
+ (grub_script_argv_next): Likewise.
+ (grub_script_argv_append): Likewise.
+ (grub_script_argv_split_append): Likewise.
+ * include/grub/script_sh.h (grub_script_argv): New struct.
+ (grub_script_argv_free): New function.
+ (grub_script_argv_next): Likewise.
+ (grub_script_argv_append): Likewise.
+ (grub_script_argv_split_append): Likewise.
+
+ * conf/common.rmk (normal.mod): New source script/argv.c.
+
+ * tests/grub_script_echo1.in: More tests.
+ * tests/grub_script_vars1.in: Likewise.
+ * tests/grub_script_functions.in: New test case.
+ * conf/tests.rmk: Rules for new testcase.
+
+2010-08-12 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Remove grub_script_cmdblock struct.
+
+ * include/grub/script_sh.h: Remove grub_script_cmdblock.
+ * script/parser.y: Likewise.
+ * script/execute.c: Rename cmdblock suffix to cmdlist.
+ * script/script.c: Likewise.
+ * util/grub-script-check.c: Likewise.
+
+2010-08-11 Yves Blusseau <blusseau@zetam.org>
+
+ * .bzrignore: add grub-macho2img
+
+2010-08-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/qemu/init.c (grub_qemu_init_cirrus): Fix compilation error.
+
+2010-08-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove the dump of sm712 initialisation sequence.
+
+ * include/grub/pci.h (GRUB_PCI_CLASS_SUBCLASS_VGA): New const.
+ * include/grub/vga.h (GRUB_VGA_IO_ARX_READ): New register.
+ (GRUB_VGA_IO_MISC_WRITE): Likewise.
+ (GRUB_VGA_CR_*): Added many registers.
+ (GRUB_VGA_SR_*): Likewise.
+ (GRUB_VGA_GR_*): Likewise.
+ (grub_vga_write_arx): New function.
+ (grub_video_hw_config): New struct.
+ (grub_vga_set_geometry): New function.
+ * kern/i386/qemu/init.c (load_palette): Use grub_vga_write_arx and
+ GRUB_PCI_CLASS_SUBCLASS_VGA.
+ * video/cirrus.c (grub_video_cirrus_setup): Use grub_vga_set_geometry.
+ * video/sm712.c (grub_sm712_write_reg): New function
+ (grub_sm712_read_reg): Likewise.
+ (grub_sm712_sr_write): Likewise.
+ (grub_sm712_gr_write): Likewise.
+ (grub_sm712_cr_write): Likewise.
+ (grub_sm712_write_arx): Likewise.
+ (grub_sm712_cr_shadow_write): Likewise.
+ (grub_sm712_write_dda_lookup): Likewise.
+ (grub_video_sm712_setup): Initialise the video rather then
+ blindly replay the dump.
+ (main) [TEST]: Add a routine to be able to compile as standalone for
+ tests.
+ * video/sm712_init.c (sm712_init): Removed.
+ (sm712_sr_seq1): New array.
+ (sm712_sr_seq2): Likewise.
+
+2010-08-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/vga.h: Add missing grub/pci.h include.
+
+2010-08-10 Yves Blusseau <blusseau@zetam.org>
+
+ * util/grub-macho2img.c (main): fix typo
+
+2010-08-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/vga.h (grub_vga_gr_write): Add GRUB_MACHINE_PCI_IO_BASE.
+ (grub_vga_gr_read): Likewise.
+ (grub_vga_cr_write): Likewise.
+ (grub_vga_cr_read): Likewise.
+ (grub_vga_sr_write): Likewise.
+ (grub_vga_sr_read): Likewise.
+ (grub_vga_palette_read): Likewise.
+ (grub_vga_palette_write): Likewise.
+ * video/sm712.c (GRUB_SM712_REG_BASE): New definition.
+ (grub_sm712_sr_read): New function.
+ (grub_video_sm712_setup): Use grub_vga_sr_write and grub_sm712_sr_read.
+ * video/sm712_init.c (sm712_init): Substract GRUB_MACHINE_PCI_IO_BASE.
+
+2010-08-09 Robert Millan <rmh@gnu.org>
+
+ * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Filter
+ out unused variables on non-ZFS build.
+
+2010-08-08 Robert Millan <rmh@gnu.org>
+
+ Fix path generation for sub-filesystems in ZFS.
+
+ * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): Add
+ missing slash.
+
+2010-08-08 Robert Millan <rmh@gnu.org>
+
+ * util/grub-fstest.c (read_file, cmd_cmp): Improve error message.
+
+2010-08-08 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_kfreebsd.in: When files required for ZFS do not
+ exist, issue a proper error message (rely on `ls' for translated
+ strings).
+
+2010-08-08 Robert Millan <rmh@gnu.org>
+
+ Fix grub-probe invocation.
+
+ * util/grub.d/10_kfreebsd.in: s/label/fs_label/g.
+
+2010-08-04 Robert Millan <rmh@gnu.org>
+
+ * configure.ac: Remove checks for getfsstat() and getmntany().
+ Add checks for `<sys/param.h>' and `<sys/mount.h>'.
+ * kern/emu/misc.c [HAVE_GETMNTANY]: Remove `<sys/mnttab.h>'.
+ [HAVE_SYS_PARAM_H]: Include `<sys/param.h>'.
+ [HAVE_SYS_MOUNT_H]: Include `<sys/mount.h>'.
+ [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_mount_point_from_dir): Remove
+ function.
+ (grub_find_zpool_from_dir): Use statfs() instead of indirect matching
+ via find_mount_point_from_dir() and getfsstat() / getmntany().
+
+2010-08-04 Robert Millan <rmh@gnu.org>
+
+ * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
+ (grub_find_zpool_from_mount_point): Merge into ...
+ (grub_find_zpool_from_dir): ... this.
+ * kern/emu/misc.c: Likewise.
+
+ * kern/emu/misc.c
+ (grub_make_system_path_relative_to_its_root): Replace
+ grub_find_mount_point_from_dir() / grub_find_zpool_from_mount_point()
+ with grub_find_zpool_from_dir().
+ * kern/emu/getroot.c (find_root_device_from_libzfs): Likewise.
+
+2010-08-04 Robert Millan <rmh@gnu.org>
+
+ Support OpenSolaris in ZFS device resolution.
+
+ * configure.ac: Check for getmntany().
+ * kern/emu/misc.c [HAVE_GETMNTANY]: Include `<sys/mnttab.h>'.
+ [HAVE_GETMNTANY] (grub_find_zpool_from_mount_point): Add OpenSolaris
+ support.
+
+2010-08-03 Robert Millan <rmh@gnu.org>
+
+ Fix grub-emu build.
+
+ * include/grub/util/misc.h: Move `<grub/util/libzfs.h>' to ...
+ * include/grub/emu/misc.h: ... here.
+
+ * include/grub/util/misc.h (grub_get_libzfs_handle): Move function ...
+ * include/grub/emu/misc.h (grub_get_libzfs_handle): ... here.
+
+ * util/misc.c: Remove `<grub/util/libzfs.h>'.
+ [HAVE_LIBZFS] (libzfs_handle, fini_libzfs)
+ (grub_get_libzfs_handle): Move to ...
+ * kern/emu/misc.c [HAVE_LIBZFS] (__libzfs_handle, fini_libzfs)
+ (grub_get_libzfs_handle): ... here.
+
+2010-08-03 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * script/execute.c (grub_script_execute_cmdline): Check for NULL
+ as command name case.
+
+2010-08-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * disk/raid.c (insert_array): Select unique numbers for named arrays
+ as well, for use as keys in the disk cache.
+
+2010-08-01 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_kfreebsd.in: Initialize ${kfreebsd_device} as the
+ kFreeBSD device name, except on ZFS where the filesystem label is
+ used.
+ (kfreebsd_entry): On ZFS root, load `opensolaris.ko', `zfs.ko' and
+ `/boot/zfs/zpool.cache'.
+ Set mountfrom kernel variable using ${kfreebsd_device}.
+
+2010-08-01 Robert Millan <rmh@gnu.org>
+
+ Make it even harder to use uninitialized `libzfs_handle' (and
+ make the interface a bit simpler).
+
+ * include/grub/util/misc.h (grub_util_init_libzfs)
+ (libzfs_handle): Remove.
+ (grub_get_libzfs_handle): New prototype.
+
+ * util/misc.c [HAVE_LIBZFS] (libzfs_handle): Add `static'
+ attribute.
+ (grub_util_init_libzfs): Remove.
+ (grub_get_libzfs_handle): New function.
+
+ * kern/emu/getroot.c (find_root_device_from_libzfs): Use
+ grub_get_libzfs_handle() to obtain a libzfs handle instead of
+ accessing `libzfs_handle' directly.
+
+2010-08-01 Robert Millan <rmh@gnu.org>
+
+ * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
+ (grub_find_zpool_from_mount_point): New function prototypes.
+
+ * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
+ * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
+
+ * kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
+ * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this. Remove
+ `static' attribute.
+
+ * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
+ finding zpool from mount point into ...
+ * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
+
+ * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
+ requested path is part of a ZFS pool, use
+ grub_find_zpool_from_mount_point() to detect its filesystem name,
+ and generate a path with `/fsname@path' syntax.
+
+2010-08-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/util/libzfs.h (libzfs_init): Set argument list to
+ (void) rather than () so that this is a proper prototype.
+
+2010-08-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * lib/arg.c (grub_arg_show_help): Add the necessary spacing.
+
+2010-08-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/emu/getroot.c (find_mount_point_from_dir): Compile only if
+ [HAVE_LIBZFS && HAVE_LIBNVPAIR]
+
+2010-08-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in: Remove ${efi_dir} after building efi.img.
+
+2010-08-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * script/yylex.l (NAME): Remove [:digit:], redundant with [:alnum:].
+
+2010-08-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Document GRUB_CMDLINE_XEN
+ and GRUB_CMDLINE_XEN_DEFAULT. Recommend setting
+ GRUB_GFXPAYLOAD_LINUX=text rather than unsetting it in order to
+ disable gfxpayload.
+ (Shell-like scripting): Add real content.
+ (Serial terminal): Suggest `terminal_input serial; terminal_output
+ serial' rather than putting the two commands on separate lines,
+ since console input will be inoperative after the first command.
+ (menuentry): Document --class, --users, and --hotkey options.
+ (terminfo): Describe what `visually-ordered UTF-8' means (thanks,
+ Vladimir Serbinenko).
+
+2010-08-01 Vladimir Serbinenko <phcoder@gmail.com>
+2010-08-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/misc.c (grub_memset): Optimise to reduce cache stalls.
+
+2010-08-01 Robert Millan <rmh@gnu.org>
+
+ * include/grub/emu/misc.h (grub_find_mount_point_from_dir)
+ (grub_find_zpool_from_mount_point): New function prototypes.
+
+ * kern/emu/getroot.c [HAVE_GETFSSTAT]: Move `<sys/mount.h>' to ...
+ * kern/emu/misc.c [HAVE_GETFSSTAT]: ... here.
+
+ * kern/emu/getroot.c (find_mount_point_from_dir): Move to ...
+ * kern/emu/misc.c (grub_find_mount_point_from_dir): ... this. Remove
+ `static' attribute.
+
+ * kern/emu/getroot.c (find_root_device_from_libzfs): Split code for
+ finding zpool from mount point into ...
+ * kern/emu/misc.c (grub_find_zpool_from_mount_point): ... this.
+
+ * kern/emu/misc.c (grub_make_system_path_relative_to_its_root): When
+ requested path is part of a ZFS pool, use
+ grub_find_zpool_from_mount_point() to detect its filesystem name,
+ and generate a path with `/fsname@path' syntax.
+
+2010-08-01 Robert Millan <rmh@gnu.org>
+
+ Prevent accidental use of uninitialized libzfs_handle.
+
+ * util/grub-probe.c (main): Move grub_util_init_libzfs() call to ...
+ * kern/emu/getroot.c (find_root_device_from_libzfs): ... here.
+ * util/misc.c (grub_util_init_libzfs): Make this function idempotent.
+
+2010-08-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/20_linux_xen.in: Don't use UUID for LVM root (matching
+ util/grub.d/10_linux.in). Fixes Debian bug #591093.
+
+2010-08-01 Robert Millan <rmh@gnu.org>
+
+ * kern/emu/getroot.c: Include `<grub/util/misc.h>'.
+
+2010-07-31 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_kfreebsd.in: Make module handling more generic.
+
+2010-07-31 Robert Millan <rmh@gnu.org>
+
+ * kern/emu/misc.c: Add missing license header.
+
+2010-07-31 Robert Millan <rmh@gnu.org>
+
+ * configure.ac: Check for `libzfs.h' and `libnvpair.h'.
+
+ * include/grub/util/libnvpair.h: Include `<config.h>'.
+ [HAVE_LIBNVPAIR_H]: Include `<libnvpair.h>' instead of
+ declaring libnvpair prototypes ourselves.
+ * include/grub/util/libzfs.h: Include `<config.h>'.
+ [HAVE_LIBZFS_H]: Include `<libzfs.h>' instead of
+ declaring libzfs prototypes ourselves.
+
+ (libzfs_handle): Moved to ...
+ * include/grub/util/misc.h (libzfs_handle): ... here.
+ Include `<grub/util/libzfs.h>'.
+
+2010-07-30 Robert Millan <rmh@gnu.org>
+
+ * include/grub/emu/misc.h: Add missing license header.
+
+2010-07-30 Robert Millan <rmh@gnu.org>
+
+ Enable `grub-probe -t device' resolution on ZFS.
+
+ * configure.ac: Check for getfsstat(), libzfs and libnvpair.
+ * include/grub/util/libnvpair.h: New file.
+ * include/grub/util/libzfs.h: New file.
+
+ * kern/emu/getroot.c: Include `<assert.h>' and `<error.h>'.
+ [HAVE_LIBZFS && HAVE_LIBNVPAIR]: Include `<grub/util/libzfs.h>' and
+ `<grub/util/libnvpair.h>'.
+ [HAVE_GETFSSTAT]: Include `<sys/mount.h>'.
+
+ (find_mount_point_from_dir): New static function.
+ [HAVE_LIBZFS && HAVE_LIBNVPAIR] (find_root_device_from_libzfs): New
+ function.
+ [HAVE_LIBZFS && HAVE_LIBNVPAIR] (grub_guess_root_device): Use
+ find_root_device_from_libzfs() before ressorting to find_root_device().
+
+ * include/grub/util/misc.h (grub_util_init_libzfs): New function
+ prototype.
+ * util/misc.c: Include `<grub/util/libzfs.h>'.
+ (grub_util_init_libzfs): New function.
+ [HAVE_LIBZFS] (libzfs_handle): New global variable.
+ [HAVE_LIBZFS] (fini_libzfs): New static function.
+ (grub_util_init_libzfs): New function.
+ * util/grub-probe.c (main): Call grub_util_init_libzfs().
+
+2010-07-30 Robert Millan <rmh@gnu.org>
+
+ * include/grub/emu/misc.h (grub_make_system_path_relative_to_its_root)
+ (xmalloc, xrealloc, xstrdup, xasprintf): Add
+ `warn_unused_result' attribute.
+ * include/grub/misc.h (grub_strdup, grub_strndup, grub_strlen)
+ (grub_xasprintf, grub_xvasprintf): Likewise.
+ * include/grub/emu/misc.h (xasprintf): Remove duplicate prototype.
+
+2010-07-29 Robert Millan <rmh@gnu.org>
+
+ * util/grub-probe.c (PRINT_FS_LABEL): New enum value.
+ (probe): Handle `PRINT_FS_LABEL'.
+ (main): Handle `-t fs_label'.
+
+2010-07-29 Robert Millan <rmh@gnu.org>
+
+ * configure.ac: Remove grub-mkisofs checks.
+
+2010-07-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/ieee1275/grub-install.in: Don't use empty grub_device.
+ Reported by: Lennart Sorensen.
+
+2010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/00_header.in: Remove compatibility with terminal.mod
+ prior to terminal_input/terminal_output separation. It's been over 1.5
+ years and those versions weren't widely deployed.
+
+2010-07-22 Colin Watson <cjwatson@ubuntu.com>
+
+ * disk/raid.c (insert_array): Don't count named arrays when looking
+ for unused array numbers.
+ Reported and tested by: Michael Guntsche.
+
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * bus/usb/emu/usb.c (grub_usb_poll_devices): Add a dummy
+ implementation of this so that grub-emu links again, with a note
+ that this should support hotplugging in the future.
+
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/emu/getroot.c (grub_util_get_grub_dev): Use xasprintf.
+
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * disk/loopback.c (grub_cmd_loopback): Don't leak a grub_file_t
+ handle on failure.
+ (grub_loopback_close): Remove empty function.
+ (grub_loopback_dev): Remove close method.
+
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Disable EFI cursor when the EFI console becomes inactive.
+
+ * term/efi/console.c (grub_efi_console_init): New function.
+ (grub_efi_console_fini): New function.
+ (grub_console_term_output): Register init and fini methods.
+
+2010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell-tester.in: Remove bashism and declare as
+ sh script.
+
+2010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/loopback.c (grub_loopback): Replace filename with file.
+ (delete_loopback): Handle new semantics.
+ (grub_cmd_loopback): Likewise.
+ (grub_loopback_iterate): Likewise.
+ (grub_loopback_close): Likewise.
+
+2010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/efi/grub-install.in: Revert to platform-specific behaviour
+ with -p "".
+ Reported by: Tito Keitel.
+
+2010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Naming convention): Document new naming convention.
+
+2010-07-20 Vadim Solomin <vadic052@gmail.com>
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ Generate device.map in something closer to the old ordering.
+
+ * util/deviceiter.c (struct device): New declaration.
+ (compare_file_names): Rename to ...
+ (compare_devices): ... this. Sort by kernel name in preference to
+ the stable by-id name, but keep the latter as a fallback comparison.
+ Update header comment.
+ (grub_util_iterate_devices) [__linux__]: Construct and sort an array
+ of `struct device' rather than of plain file names.
+
+2010-07-20 Thomas Frauendorfer <Thomas.Frauendorfer@googlemail.com>
+
+ * lib/i386/relocator_asm.S [! __x86_64__]: Don't try to disable amd64
+ on i386.
+
+2010-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/acpi.c (setup_common_tables): Use sizeof instead of
+ hardcoding size.
+ (setv1table): Likewise.
+
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * disk/raid.c (insert_array): Use md/%s to name mdadm 1.x devices,
+ removing the homehost if present.
+ * kern/emu/getroot.c (get_mdadm_name) [__linux__]: New function.
+ (grub_util_get_grub_dev): Use md/%s to name mdadm 1.x devices,
+ removing the homehost if present.
+ (grub_util_get_grub_dev) [__linux__]: Get the array name from mdadm
+ if possible.
+ * util/i386/pc/grub-setup.c (main): Handle md/* devices.
+
+ * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Add start_sector
+ parameter. Set its pointer target to 0.
+ * disk/mdraid_linux.c (grub_mdraid_detect): Add start_sector
+ parameter. Set its pointer target to 0 for 0.9 metadata, or to the
+ `data_offset' value from the superblock for 1.x metadata.
+ * disk/raid.c (grub_raid_read): Offset reads by the start sector of
+ data on the device.
+ (insert_array): Record the start sector of data on the device.
+ (grub_raid_register): Pass start_sector parameters to
+ grub_raid_list->detect and insert_array.
+ * include/grub/raid.h (struct grub_raid_array): Add start_sector
+ member.
+ (struct grub_raid): Add start_sector parameter to `detect'.
+
+ * disk/mdraid_linux.c (struct grub_raid_super_1x): Remove
+ __attribute__ ((packed)), leaving a comment.
+ (grub_mdraid_detect): Split out 0.9 and 1.x detection to ...
+ (grub_mdraid_detect_09): ... here and ...
+ (grub_mdraid_detect_1x): ... here.
+
+2010-07-20 Peter Henn <peter.henn@web.de>
+
+ * disk/mdraid_linux.c (grub_mdraid_detect): Fix calculation of 1.x
+ chunk size and disk size, which are already given as sector counts
+ as distinct from the 0.90 units. Fetch the correct device number
+ from the role table instead of using the table index.
+
+2010-07-20 Felix Zielcke <fzielcke@z-51.de>
+
+ * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Set array->name to NULL.
+ * disk/mdraid_linux.c (grub_raid_super_1x): New structure.
+ (WriteMostly1): New macro.
+ Set array->name to NULL for metadata format 0.90. Add support for
+ metadata 1.x. Fix some comments.
+ * disk/raid.c (): Add support for name based RAID arrays. Fix a
+ few comments.
+ * util/getroot.c (grub_util_get_grub_dev): Add support for
+ /dev/md/name style devices.
+
+2010-07-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Ignore 20_linux_xen.
+
+2010-07-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/import_unicode.py: Remove unnecessary imports.
+
+2010-07-17 Aleš Nesrsta <starous@volny.cz>
+
+ Hotplugging and USB hub support.
+
+ * bus/usb/ohci.c (grub_ohci_td): Add convenience fields.
+ (grub_ohci): Likewise.
+ (GRUB_OHCI_REG_CONTROL_BULK_ENABLE): New definition.
+ (GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE): Likewise.
+ (GRUB_OHCI_RESET_CONNECT_CHANGE): Likewise.
+ (GRUB_OHCI_CTRL_EDS): Likewise.
+ (GRUB_OHCI_BULK_EDS): Likewise.
+ (GRUB_OHCI_TDS): Likewise.
+ (GRUB_OHCI_ED_ADDR_MASK): Likewise.
+ (grub_ohci_ed_phys2virt): New function.
+ (grub_ohci_virt_to_phys): Likewise.
+ (grub_ohci_td_phys2virt): Likewise.
+ (grub_ohci_td_virt2phys): Likewise.
+ (grub_ohci_pci_iter): Allocate memory and don't wait for stable
+ attachment.
+ (grub_ohci_find_ed): New function.
+ (grub_ohci_alloc_td): Likewise.
+ (grub_ohci_free_td): Likewise.
+ (grub_ohci_free_tds): Likewise.
+ (grub_ohci_transfer): Use previously allocated memory.
+ (grub_ohci_portstatus): Reset status changed bit.
+ (grub_ohci_detect_dev): Supply status changed.
+ (grub_ohci_fini_hw): Free memory.
+ (grub_ohci_restore_hw): Reallocate memory.
+ * bus/usb/uhci.c (grub_uhci_portstatus): Don't reset on disable.
+ Reset status change.
+ (grub_uhci_detect_dev): Supply status_change.
+ * bus/usb/usb.c (attach_hooks): New var.
+ (grub_usb_device_attach): New function.
+ (grub_usb_register_attach_hook_class): Likewise.
+ (grub_usb_unregister_attach_hook_class): Likewise.
+ * bus/usb/usbhub.c (grub_usb_hub_add_dev): Handle errors correctly.
+ (grub_usb_add_hub): Reset connection changed bit.
+ (attach_root_port): New function.
+ (grub_usb_root_hub): Likewise.
+ (poll_nonroot_hub): Likewise.
+ (grub_usb_poll_devices): Likewise.
+ * commands/usbtest.c (grub_cmd_usbtest): Poll devices before listing.
+ * disk/usbms.c (grub_usbms_open): Use device hooks.
+ (grub_usbms_iterate) :Poll devices.
+ (grub_usbms_finddevs): Split into ...
+ (grub_usbms_attach): ... this ...
+ (grub_usbms_attach): ... and this.
+ * include/grub/usb.h (grub_usb_controller_dev): Supply status_changed
+ in detect_dev.
+ (grub_usb_interface): New fields attached and detach_hook.
+ (grub_usb_attach_hook_class): New type.
+ (grub_usb_attach_desc): New struct.
+ (grub_usb_register_attach_hook_class): New function.
+ (grub_usb_unregister_attach_hook_class): Likewise.
+ (grub_usb_poll_devices): Likewise.
+ (grub_usb_device_attach): Likewise.
+ * include/grub/usbtrans.h (GRUB_USB_HUB_FEATURE_C_CONNECTED): New const.
+ (GRUB_USB_HUB_STATUS_C_CONNECTED): Likewise.
+
+2010-07-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/bsdlabel.h (GRUB_PC_PARTITION_BSD_LABEL_WHOLE_DISK_PARTITION): New definition.
+ * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Use FreeBSD
+ delta determination style. Works with most NetBSD partitions too.
+
+2010-07-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/partition.c [GRUB_UTIL]: Add missing util/misc.h inclusion.
+ * partmap/bsdlabel.c [GRUB_UTIL]: Likewise.
+
+2010-07-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/scsi.c (grub_scsi_open): Fix incorrect pointer dereference.
+
+2010-07-14 Anton Blanchard <anton@samba.org>
+
+ * loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Do not reject
+ ET_DYN files.
+
+2010-07-14 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * Makefile.in: Use the substituted @USE_NLS@ instead of ENABLE_NLS.
+
+2010-07-14 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * kern/partition.c (grub_partition_check_containment): New function to
+ check that a partition is physically contained in a parent. Since
+ offsets are relative (and non-negative), this reduces to checking that
+ the partition ends before its parent.
+ (grub_partition_map_probe): Discard out-of-range sub-partitions.
+ (grub_partition_iterate): Likewise.
+ * include/grub/partition.h (grub_partition_map): Slightly more detailed
+ comments.
+ * partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Discard
+ partitions that start before their parent, and add debug printfs.
+
+2010-07-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in (.SUFFIX): Spell correctly, as ...
+ (.SUFFIXES): ... this. Fixes bug where `make foo' (where foo is a
+ bare module name without `.mod', e.g. `test') tried to invoke a
+ Modula-2 compiler.
+
+2010-07-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * README: Point to the Info manual.
+
+2010-07-13 Jiro SEKIBA <jir@unicus.jp>
+
+ * fs/nilfs2.c: fix macro NILFS_2ND_SUPER_BLOCK to calculate
+ 2nd superblock position from partition size.
+
+2010-07-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in (MAINTAINER_CLEANFILES): Remove
+ unicode/UnicodeData.txt, unicode/BidiMirroring.txt, and
+ unicode/ArabicShaping.txt again; these are inputs to autogen.sh, not
+ outputs.
+
+2010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Restructure SCSI .id handling.
+ Reported and tested by: Aleš Nesrsta.
+
+ * disk/ata.c (grub_atapi_close): Removed. All users updated.
+ (grub_atapi_dev): Changed .name to "ata". New field .id.
+ * disk/usbms.c (grub_usbms_close): Removed. All users updated.
+ (grub_usbms_dev): New field .id.
+ * disk/scsi.c (grub_scsi_iterate): Generate name.
+ (grub_scsi_open): Parse name.
+ * include/grub/scsi.h (grub_make_scsi_id): New function.
+ (grub_scsi_dev): Change iterate and open to number instead of naming
+ busses. All users updated.
+ (grub_scsi): Remove name. Add .bus.
+
+2010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/help.c (grub_cmd_help): Fix a typo.
+
+2010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/term.c (put_glyphs_terminal): Fix state->num_lines counting.
+ Reported and tested by: Colin Watson.
+
+2010-07-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Don't use tar GNU-ism since it's not necessary
+ in this context.
+
+2010-07-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * tests/util/grub-shell.in: Remove bashisms and declare as sh script.
+
+2010-07-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix
+ indentation.
+
+2010-07-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c
+ and disk/raid6_recover.c.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
+
+2010-07-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * term/gfxterm.c (repaint_schedulded): Rename to ...
+ (repaint_scheduled): ... this. Update all callers.
+ (repaint_was_schedulded): Rename to ...
+ (repaint_was_scheduled): ... this. Update all callers.
+
+2010-07-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/deviceiter.c (grub_util_iterate_devices): Skip MD devices,
+ which we expect to be handled by upper layers.
+
+2010-07-06 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * bus/usb/usbhub.c: #include time.h header.
+
+2010-07-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * fs/reiserfs.c (grub_reiserfs_iterate_dir): Zero out first byte of
+ entry_name also for entries without stat blocks (e.g. ".."); fixes
+ corruption of the first entry in a directory.
+
+2010-07-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Process GRUB_THEME and GRUB_BACKGROUND
+ after setting gfxterm as the active terminal. GRUB_BACKGROUND
+ doesn't work otherwise.
+
+2010-07-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Features): Update list of supported file systems.
+ (GNU/Linux): Update for GRUB 2.
+ (Serial terminal): Remove mention of --disable-serial, which was a
+ GRUB Legacy configure option. Update instructions to use
+ `terminal_input' and `terminal_output' rather than `terminal'.
+ (Vendor power-on keys): Copy-edit. Add cross-references to `Simple
+ configuration' and `Installing GRUB using grub-install'.
+ (Menu entry editor): Update for GRUB 2.
+ (terminfo): Add vt100-color, ieee1275, and dumb terminal types.
+ Document new -a, -u, and -v options.
+ (initrd): New section.
+ (initrd16): New section.
+ (linux): New section.
+ (linux16): New section.
+ (search): The `var' argument to `--set' is optional.
+ (GRUB only offers a rescue shell): Go into a little more detail on
+ drive ordering.
+
+2010-07-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in: Set LINGUAS to empty if ENABLE_NLS is undefined.
+
+2010-07-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in (MAINTAINER_CLEANFILES): Add unicode/UnicodeData.txt,
+ unicode/BidiMirroring.txt, unicode/ArabicShaping.txt, and unidata.c.
+
+2010-07-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/i386/pc/grub-setup.c (setup): Rename prefix to
+ install_prefix, in line with install_dos_part and install_bsd_part.
+ Add new prefix variable, which is copied to install_prefix after
+ comparing core.img in memory with the one read from disk in the
+ no-embedding case, and use that rather than overwriting
+ install_prefix immediately when installing to a partition.
+ Fixes Debian bug #586621; based on patches by Matt Kraai and M. Vefa
+ Bicakci.
+
+2010-07-04 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * configure.ac: Avoid == in test command, it's not portable.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+2010-07-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/emu/getroot.c [__GNU__]: Include <sys/mman.h> for munmap.
+
+2010-07-04 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/i386/pc/grub-setup.c (setup): Do not embed when there are
+ multiple (top-level) partmaps.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/efi/grub-install.in: Don't use empty grub_device.
+ Reported by: Tino Keitel.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Bidi and diacritics support.
+
+ * Makefile.in (widthspec.bin): New target.
+ (widthspec.h): Likewise.
+ (TARGET_CFLAGS): Add -DHAVE_UNIFONT_WIDTHSPEC=1 if font was available.
+ * autogen.sh: Generate unidata.c.
+ * commands/cat.c (grub_cmd_cat): Don't use grub_putchar.
+ * commands/ls.c (grub_ls_list_devices): Likewise.
+ (grub_ls_list_files): Likewise.
+ * commands/minicmd.c (grub_mini_cmd_cat): Likewise.
+ (grub_mini_cmd_lsmod): Likewise.
+ * commands/read.c: Likewise.
+ * kern/corecmd.c (grub_core_cmd_ls): Likewise.
+ * kern/rescue_reader.c (grub_rescue_read_line): Likewise.
+ * lib/arg.c (grub_arg_show_help): Likewise.
+ * lib/crypto.c (grub_password_get): Likewise.
+ * normal/auth.c (grub_username_get): Likewise.
+ * normal/misc.c (grub_normal_print_device_info): Likewise.
+ * commands/help.c (grub_cmd_help): Use grub_unicode_aglomerate_comb.
+ * conf/common.rmk (grub_mkfont_SOURCES): Add unidata.c.
+ (gfxmenu_mod_SOURCES): Add gfxmenu/font.c.
+ (normal/charset.c_DEPENDENCIES): New variable.
+ (normal_mod_SOURCES): Add normal/charset.c and unidata.c.
+ (pkglib_MODULES): Remove charset.mod.
+ (charset_mod_SOURCES): Removed.
+ (charset_mod_CFLAGS): Likewise.
+ (charset_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES) [ieee1275]: Remove terminfo.mod.
+ * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Add term/terminfo.c
+ and term/tparm.c.
+ * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
+ (kernel_img_HEADERS): Add terminfo.h.
+ * font/font.c (ascii_glyph_lookup): Return NULL on failure.
+ Fill ->font. Reverse ascii bitmaps.
+ (grub_font_get_xheight): New function.
+ * font/font.c (grub_font_get_string_width): Moved from here ...
+ * gfxmenu/font.c (grub_font_get_string_width): ... here.
+ * font/font.c (grub_font_draw_string): Moved from here ...
+ * gfxmenu/font.c (grub_font_draw_string): ... here.
+ * font/font.c (grub_font_dup_glyph): New function.
+ (grub_font_blit_glyph): Likewise.
+ (grub_font_blit_glyph_mirror): Likewise.
+ (blit_comb): Likewise.
+ (grub_font_construct_dry_run): Likewise.
+ (grub_font_get_constructed_device_width): Likewise.
+ (grub_font_construct_glyph): Likewise.
+ * include/grub/charset.h (grub_ucs4_to_utf8): New proto.
+ * include/grub/misc.h (grub_utf8_to_ucs4): Moved from here ...
+ * include/grub/charset.h (grub_utf8_to_ucs4): ... here.
+ * include/grub/font.h (GRUB_FONT_CODE_CHAR_MASK): New constant.
+ (GRUB_FONT_CODE_RIGHT_JOINED): Likewise.
+ (GRUB_FONT_CODE_LEFT_JOINED): Likewise.
+ (grub_font_get_xheight): New proto.
+ (grub_font_get_constructed_device_width): Likewise.
+ (grub_font_construct_glyph): Likewise.
+ * include/grub/font.h (grub_font_get_string_width): Moved from here ...
+ * include/grub/gfxmenu_view.h (grub_font_get_string_width): ... here.
+ * include/grub/font.h (grub_font_draw_string): Moved from here ...
+ * include/grub/gfxmenu_view.h (grub_font_draw_string): ... here.
+ * include/grub/i386/vga_common.h (grub_console_putchar): Moved from here..
+ * include/grub/i386/pc/console.h (grub_console_putchar): ... here.
+ * include/grub/i386/vga_common.h (grub_console_real_putchar): Removed.
+ (grub_console_getcharwidth): Likewise.
+ * include/grub/misc.h (grub_xputs): New proto.
+ (grub_puts): Inlined.
+ * include/grub/normal.h (grub_print_ucs4): Add margin specification.
+ (grub_normal_get_line_counter): Removed.
+ (grub_install_newline_hook): Likewise.
+ (grub_normal_get_char_counter): New proto.
+ (grub_normal_reset_more): Likewise.
+ (grub_xputs_normal): Likewise.
+ * include/grub/powerpc/ieee1275/console.h: Removed.
+ * include/grub/sparc64/ieee1275/console.h: Likewise.
+ * include/grub/term.h (GRUB_TERM_CODE_TYPE_MASK): New definition.
+ (GRUB_TERM_CODE_TYPE_ASCII): Likewise.
+ (GRUB_TERM_CODE_TYPE_CP437): Likewise.
+ (GRUB_TERM_CODE_TYPE_UTF8_LOGICAL): Likewise.
+ (GRUB_TERM_CODE_TYPE_UTF8_VISUAL): Likewise.
+ (GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS): Likewise.
+ (grub_term_input): Pass reference to self. All users updated.
+ (grub_term_output): Pass grub_unicode_glyph to putchar and getcharwidth.
+ Pass reference to self. New fields normal_color, highlight_color and
+ data. All users updated.
+ (grub_putchar): Removed.
+ (grub_putcode): Remove EXPORT_FUNC since it's not in kernel anymore.
+ (grub_unicode_estimate_width): New function.
+ (grub_term_getcharwidth): Add defaults.
+ (GRUB_TERM_DEFAULT_NORMAL_COLOR): New definition.
+ (GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR): Likewise.
+ (GRUB_TERM_DEFAULT_STANDARD_COLOR): Likewise.
+ (grub_cls): Remove EXPORT_FUNC.
+ (grub_setcolorstate): Inline.
+ (grub_newline_hook): Removed.
+ * include/grub/terminfo.h: Rewritten. All users updated.
+ * include/grub/unicode.h: New file.
+ * include/grub/video.h (grub_video_signed_rect): New type.
+ * kern/emu/console.c (grub_console_highlight_color): Removed.
+ (grub_console_normal_color): Likewise.
+ (grub_console_standard_color): Made static.
+ (grub_ncurses_putchar): Remove mapping.
+ (grub_ncurses_getcharwidth): Removed.
+ (grub_ncurses_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
+ (grub_ncurses_setcolor): Removed.
+ (grub_ncurses_getcolor): Likewise.
+ * kern/i386/pc/startup.S (grub_console_real_putchar): Renamed to ...
+ (grub_console_putchar): ... this.
+ (grub_console_putchar): Handle argument difference.
+ * kern/ieee1275/init.c (grub_machine_init): Split console_init into
+ console_init_early and console_init_lately.
+ * kern/sparc64/ieee1275/init.c (grub_machine_init): Likewise.
+ * kern/misc.c (grub_puts): Removed.
+ (grub_vprintf): Store UTF-8 string instead of outputting it directly.
+ (grub_vsnprintf_real): Remove str = NULL support.
+ * kern/misc.c (grub_utf8_to_ucs4): Move from here ...
+ * normal/charset.c (grub_utf8_to_ucs4): ... here.
+ * kern/term.c (grub_putcode): Renamed to ...
+ (grub_putcode_dumb): ... this. Pass grub_unicode_glyph instead of code.
+ (grub_putchar): Removed.
+ (grub_xputs_dumb): New function.
+ (grub_xputs): New variable.
+ * lib/charset.c: Move from here ...
+ * normal/charset.c: ... to here.
+ (grub_ucs4_to_utf8): New function.
+ (grub_ucs4_to_utf8_alloc): Use grub_ucs4_to_utf8.
+ (join_types): New variable.
+ (unpack_join): New function.
+ (bidi_types): New variable.
+ (unpack_bidi): New function.
+ (get_bidi_type): Likewise.
+ (get_join_type): Likewise.
+ (is_mirrored): Likewise.
+ (grub_unicode_get_comb_type): Likewise.
+ (grub_unicode_estimate_width) [HAVE_UNIFONT_WIDTHSPEC]: Likewise.
+ (is_type_after): Likewise.
+ (grub_unicode_aglomerate_comb): Likewise.
+ (bidi_line_wrap): Likewise.
+ (grub_bidi_line_logical_to_visual): Likewise.
+ (grub_bidi_logical_to_visual): Likewise.
+ (grub_unicode_mirror_code): Likewise.
+ (grub_unicode_shape_code): Likewise.
+ * normal/cmdline.c (grub_cmdline_get): Reset more counter.
+ Don't use grub_putchar.
+ * normal/main.c (grub_normal_init_page): Use grub_putcode.
+ (grub_normal_reader_init): Likewise.
+ (grub_xputs_saved): New variable.
+ (GRUB_MOD_INIT): Set grub_xputs.
+ (GRUB_MOD_FINI): Restore grub_xputs.
+ * normal/menu.c (grub_wait_after_message): Don't use grub_putchar.
+ (menu_init): Avoid printing gfxmenu error.
+ (show_menu): Use grub_normal_get_char_counter.
+ * normal/menu_entry.c (update_screen): Fix out-of-array.
+ (complete): Avoid NULL dereferencing.
+ * grub_menu_entry_run (grub_menu_entry_run): Don't use putchar.
+ * normal/menu_text.c (print_spaces): Removed.
+ (grub_print_ucs4): Likewise.
+ (grub_print_message_indented): Use grub_print_ucs4.
+ (print_message): Use grub_putcode.
+ (print_entry): Hanlde diacritics.
+ * normal/term.c (term_state): New type.
+ (grub_more_lines): Removed.
+ (term_states): New variable.
+ (grub_normal_line_counter): Renamed to ..
+ (grub_normal_char_counter): ...this. All users updated.
+ (grub_normal_get_line_counter): Renamed to ...
+ (grub_normal_get_char_counter): ... this.
+ (grub_normal_reset_more): New function.
+ (process_newline): Removed.
+ (print_more): New function.
+ (grub_install_newline_hook): Removed.
+ (map_code): New function.
+ (grub_puts_terminal): Use grub_print_ucs4.
+ (putglyph): New function.
+ (putcode_real): Likewise.
+ (grub_putcode): Use putcode_real.
+ (get_maxwidth): New function.
+ (get_startwidth): Likewise.
+ (print_ucs4_terminal): Likewise.
+ (find_term_state): Likewise.
+ (put_glyphs_terminal): Likewise.
+ (print_backlog): Likewise.
+ (print_ucs4_real): Likewise.
+ (grub_print_ucs4): Likewise.
+ (grub_xputs_normal): Likewise.
+ * term/efi/console.c (grub_console_putchar): Output diacritics.
+ (grub_console_getcharwidth): Removed.
+ (grub_console_term_output): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
+ * term/gfxterm.c (clear_char): Free chars.
+ (scroll_up): Avoid leaking memory.
+ (grub_gfxterm_putchar): Support diacritics.
+ (grub_video_term): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
+ * term/i386/pc/console.c (grub_console_term_output): Declare as
+ GRUB_TERM_CODE_TYPE_VGA.
+ * term/i386/pc/vga.c (grub_vga_term): Declare as
+ GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS.
+ * term/i386/pc/vga_text.c (grub_vga_text_term): Declare as
+ GRUB_TERM_CODE_TYPE_VGA.
+ * term/i386/vga_common.c (map_char): Removed.
+ (grub_console_putchar): Likewise.
+ (grub_console_getcharwidth): Likewise.
+ * term/ieee1275/ofconsole.c: Simplify using terminfo.
+ (colors): Reordered to match terminfo.
+ (grub_ofconsole_normal_color): Removed.
+ (grub_ofconsole_writeesc): Likewise.
+ (grub_ofconsole_highlight_color): Likewise.
+ (grub_ofconsole_getcharwidth): Likewise.
+ (grub_ofconsole_setcolorstate): Likewise.
+ (grub_ofconsole_setcolor): Likewise.
+ (grub_ofconsole_getcolor): Likewise.
+ (grub_ofconsole_readkey): Renamed to ...
+ (readkey): ... this. Remove escape sequence handling. Return -1 on no
+ key.
+ (grub_ofconsole_checkkey): Removed.
+ (grub_ofconsole_getkey): Likewise.
+ (grub_ofconsole_getxy): Likewise.
+ (grub_ofconsole_gotoxy): Likewise.
+ (grub_ofconsole_cls): Likewise.
+ (grub_ofconsole_refresh): Likewise.
+ (grub_ofconsole_terminfo_input): New struct.
+ (grub_ofconsole_terminfo_output): Likewise.
+ (grub_ofconsole_term_input): Use terminfo.
+ (grub_ofconsole_term_output): Likewise.
+ (grub_console_init): Split into ...
+ (grub_console_init_early): ...this and ...
+ (grub_console_init_lately): ...this. Use terminfo.
+ (grub_ofconsole_putchar): Renamed to ...
+ (put): ... this. Remove mapping.
+ (grub_ofconsole_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
+ * term/serial.c: Simplify using terminfo.
+ (xpos): Removed.
+ (ypos): Likewise.
+ (keep_track): Likewise.
+ (registered): Likewise.
+ (input_buf): Likewise.
+ (npending): Likewise.
+ (serial_translate_key_sequence): Likewise.
+ (fill_input_buf): Likewise.
+ (grub_serial_checkkey): Likewise.
+ (grub_serial_getkey): Likewise.
+ (grub_serial_getxy): Likewise.
+ (grub_serial_gotoxy): Likewise.
+ (grub_serial_putchar): Likewise.
+ (grub_serial_cls): Likewise.
+ (grub_serial_setcolorstate): Likewise.
+ (grub_serial_setcursor): Likewise.
+ (serial_hw_init): Use serial_hw_fetch.
+ (grub_serial_terminfo_input): New variable.
+ (grub_serial_terminfo_output): Likewise.
+ (grub_serial_term_input): Use terminfo.
+ (grub_serial_term_output): Likewise.
+ * term/terminfo.c (putstr): Use put.
+ (grub_terminfo_all_free): New function
+ (grub_terminfo_set_current): New types vt100-color, ieee1275 and dumb.
+ (grub_terminfo_output_register): New function.
+ (grub_terminfo_output_unregister): Likewise.
+ (grub_terminfo_getxy): Likewise.
+ (grub_terminfo_readkey): Likewise.
+ (grub_terminfo_checkkey): Likewise.
+ (grub_terminfo_getkey): Likewise.
+ (grub_terminfo_input_init): Likewise.
+ (print_terminfo): Likewise.
+ (grub_cmd_terminfo): Handle encoding.
+ (grub_terminfo_gotoxy): Track position.
+ (grub_terminfo_cls): Likewise.
+ (grub_terminfo_putchar): Likewise.
+ (grub_terminfo_setcolorstate): Handle colors
+ (grub_terminfo_cursor_on): This ...
+ (grub_terminfo_cursor_off): ... and this merged into ...
+ (grub_terminfo_setcursor): ... this.
+ * term/tparm.c (grub_terminfo_tparm): Avoid NULL dereferencing.
+ * unicode/ArabicShaping.txt: New file (imported from Unicode).
+ * unicode/BidiMirroring.txt: Likewise.
+ * unicode/UnicodeData.txt: Likewise.
+ * unicode/COPYING: Likewise.
+ * util/grub-editenv.c (grub_putchar): Removed.
+ (grub_xputs_real): New function.
+ (grub_xputs): New variable.
+ * util/grub-fstest.c (grub_putchar): Removed.
+ (grub_xputs_real): New function.
+ (grub_xputs): New variable.
+ * util/grub-mkdevicemap.c (grub_putchar): Removed.
+ (grub_xputs_real): New function.
+ (grub_xputs): New variable.
+ * util/grub-probe.c (grub_putchar): Removed.
+ (grub_xputs_real): New function.
+ (grub_xputs): New variable.
+ * util/grub-script-check.c (grub_putchar): Removed.
+ (grub_xputs_real): New function.
+ (grub_xputs): New variable.
+ * util/i386/pc/grub-setup.c (grub_putchar): Removed.
+ (grub_xputs_real): New function.
+ (grub_xputs): New variable.
+ * util/import_unicode.py: New file.
+ * util/grub-mkfont.c (ft_errmsgs): New array.
+ (grub_glyph_info): Make bitmap a pointer.
+ (file_formats): New type WIDTH_SPEC.
+ (grub_font_info): New members glyphs_unsorted, glyphs_sorted, num_glyphs.
+ (options): Add width-spec.
+ (help): Likewise.
+ (add_char): Renamed to ...
+ (add_glyph): ... this.
+ (add_glyph): Use index. Show freetype errors. Cut blank space at borders.
+ (glyph_replace): New type.
+ (subst_rightjoin), (subst_leftjoin), (subst_medijoin): New variables.
+ (add_char): New function.
+ (add_subst): Likewise.
+ (process_cursive): Likewise.
+ (add_font): Handle GSUB.
+ (write_font_width_spec): New function.
+ (main): Sort glyphs.
+ * commands/minicmd.c (grub_mini_cmd_clear): Moved from here ...
+ * normal/main.c (grub_mini_cmd_clear): ..here. All users updated.
+ * kern/term.c (grub_cls): Moved from here...
+ * normal/term.c (grub_cls): ... here.
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/types.h: Define the C99-style PRIxGRUB_SIZE macro,
+ suitable for using within the format argument of printf when
+ converting grub_size_t.
+ * disk/usbms.c (grub_usbms_transfer): Use PRIxGRUB_SIZE rather than
+ "x" to convert grub_size_t arguments.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gfxmenu/gui_list.c (draw_menu): Use viewport to simplify code and fix
+ too long captions.
+ (list_get_minimal_size): Take selection box into account.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * font/font.c (grub_font_get_glyph_with_fallback): Avoid dereferencing
+ NULL font.
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/deviceiter.c (grub_util_iterate_devices): Skip device-mapper
+ devices when iterating over /dev/disk/by-id; they will be handled
+ later if appropriate, which they aren't always (e.g. LVM).
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/misc.h (grub_reboot): Declare as noreturn.
+ * kern/efi/efi.c (grub_reboot): Don't return, even if reset_system
+ fails.
+ (grub_halt): Likewise.
+ * kern/ieee1275/openfw.c (grub_reboot): Don't return, even if
+ reset-all fails.
+ (grub_halt): Don't return, even if all of shut-down, power-off, and
+ poweroff fail.
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/efi/init.c (grub_efi_init): set_watchdog_timer takes four
+ arguments, not three.
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (uses_abstraction): New function.
+ * util/grub.d/10_linux.in: Use it to check for LVM, so that
+ LVM-on-RAID is handled correctly.
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Changes from GRUB Legacy): New section.
+ (Future): Fix typo.
+
+2010-07-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Sometimes
+ grub.d/README accidentally ends up executable for one reason or
+ another. Ignore it.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * partmap/gpt.c (MAX_SECTOR_LOG): New definition.
+ (gpt_partition_map_iterate): Support non-512B sectors.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/efi/init.c (grub_efi_init): Disable watchdog.
+ Tested by: Seth Goldberg.
+
+2010-07-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/multiboot.c (grub_multiboot_boot) [GRUB_USE_MULTIBOOT2]:
+ Properly align mbi.
+ Reported by: Seth Goldberg.
+
+2010-07-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Avoid module duplication.
+
+2010-07-01 Sean Finney <seanius@seanius.net>
+
+ * util/grub.d/10_linux.in: Don't use UUID for LVM root.
+
+2010-07-01 Sean Finney <seanius@seanius.net>
+
+ * disk/lvm.c (grub_lvm_scan_device): Skip snapshots.
+
+2010-07-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/lvm.c (grub_lvm_checkvalue): New function.
+ (grub_lvm_check_flag): Likewise.
+
+2010-07-01 Robert Millan <rmh@gnu.org>
+
+ * kern/emu/hostdisk.c (convert_system_partition_to_system_disk):
+ Support 'p' as partition separator on kernel of FreeBSD (used
+ with GPT labels).
+ (grub_util_biosdisk_get_grub_dev): Likewise.
+
+2010-07-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Yeeloong firmware port.
+
+ * boot/mips/yeeloong/fwstart.S: New file.
+ * bus/cs5536.c (gpiodump): New const.
+ (set_io_space): New function.
+ (set_iod): Likewise.
+ (set_p2d): Likewise.
+ (grub_cs5536_init_geode): Likewise.
+ * commands/mips/yeeloong/lsspd.c: New file.
+ * conf/mips-qemu-mips.rmk (pkglib_MODULES): Add serial.mod.
+ (serial_mod_SOURCES): New variable.
+ (serial_mod_CFLAGS): Likewise.
+ (serial_mod_LDFLAGS): Likewise.
+ * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Add term/serial.c,
+ term/terminfo.c and term/tparm.c.
+ (pkglib_IMAGES): Add fwstart.img.
+ (fwstart_img_SOURCES): New variable.
+ (fwstart_img_CFLAGS): Likewise.
+ (fwstart_img_ASFLAGS): Likewise.
+ (fwstart_img_LDFLAGS): Likewise.
+ (fwstart_img_FORMAT): Likewise.
+ (pkglib_MODULES): Add lsspd.mod.
+ (lsspd_mod_SOURCES): New variable.
+ (lsspd_mod_CFLAGS): Likewise.
+ (lsspd_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add halt.mod.
+ (halt_mod_SOURCES): New variable.
+ (halt_mod_CFLAGS): Likewise.
+ (halt_mod_LDFLAGS): Likewise.
+ * conf/mips.rmk (pkglib_MODULES): Remove serial.mod.
+ (serial_mod_SOURCES): Removed.
+ (serial_mod_CFLAGS): Likewise.
+ (serial_mod_LDFLAGS): Likewise.
+ * disk/ata.c (check_device): New function.
+ (grub_ata_device_initialize): Use check_device.
+ (grub_ata_iterate): Recheck devices.
+ (grub_ata_open): Likewise.
+ (grub_atapi_iterate): Likewise.
+ (grub_atapi_open): Likewise.
+ * include/grub/ata.h (GRUB_ATA_CH0_PORT1): New macro.
+ (GRUB_ATA_CH1_PORT1): Likewise.
+ (GRUB_ATA_CH0_PORT2): Likewise.
+ (GRUB_ATA_CH1_PORT2): Likewise.
+ * include/grub/mips/loongson.h: New file.
+ * include/grub/mips/yeeloong/ec.h: Likewise.
+ * include/grub/mips/yeeloong/serial.h (GRUB_MACHINE_SERIAL_PORT): New definition.
+ (GRUB_MACHINE_SERIAL_DIVISOR_115200): Likewise.
+ (GRUB_MACHINE_SERIAL_PORTS) [ASM_FILE]: Remove.
+ * include/grub/misc.h (grub_halt): Declare as noreturn.
+ * include/grub/serial.h (UART_ENABLE_FIFO): Renamed to ...
+ (UART_ENABLE_FIFO_TRIGGER14): ... this. All users updated.
+ (UART_ENABLE_FIFO_TRIGGER1): New definition.
+ (UART_ENABLE_DTRRTS): Likewise.
+ (UART_ENABLE_MODEM): Removed.
+ (UART_ENABLE_OUT2): New const.
+ * include/grub/term.h (grub_term_register_input_active): New function.
+ (grub_term_register_output_active): Likewise.
+ * kern/mips/startup.S [GRUB_MACHINE_MIPS_YEELOONG]: Handle 0xffffffff
+ argument.
+ * kern/mips/yeeloong/init.c (grub_get_rtc): Macroify.
+ (init_pci): New function.
+ (grub_machine_init): Execute platform init when firmware. Init serial.
+ (grub_halt): Implement.
+ (grub_exit): Likewise.
+ (grub_reboot): Likewise.
+ * term/serial.c (serial_hw_init): Update macros.
+ [GRUB_MACHINE_MIPS_YEELOONG]: Init on startup.
+ * util/grub-mkimage.c (image_target_desc): New id IMAGE_YEELOONG_FLASH.
+ (image_targets): New target mipsel-yeeloong-flash.
+ (generate_image): Support IMAGE_YEELOONG_FLASH.
+ * video/sm712.c (GRUB_SM712_TOTAL_MEMORY_SPACE): New definition.
+ (grub_video_sm712_setup): Init card.
+ (grub_video_sm712_set_palette): Removed.
+ * video/sm712_init.c: New file.
+
+2010-06-30 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in (install-local): Temporarily prepend $(builddir) to
+ PATH when running help2man and then run it on the unadorned
+ executable names, rather than passing $(builddir)/* paths to
+ help2man. This avoids the build directory ending up in generated
+ manual pages.
+
+2010-06-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Use 'set -e' rather than '#! /bin/sh -e',
+ to avoid accidents when debugging with 'sh -x'.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_netbsd.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/20_linux_xen.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2010-06-29 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/cat.c (grub_cmd_cat): Fix buffer overrun if '\r' is the
+ last character in the buffer.
+ Reported by: Vladimir Serbinenko.
+
+2010-06-29 Robert Millan <rmh@gnu.org>
+
+ * docs/grub.texi (Simple configuration): Document ${GRUB_BADRAM}.
+ (Command-line and menu entry commands): Document `badram' command.
+
+2010-06-28 Robert Millan <rmh@gnu.org>
+
+ * util/grub-mkconfig.in: Export `GRUB_BADRAM' variable.
+ * util/grub.d/00_header.in: When `GRUB_BADRAM' is set, issue badram
+ command using ${GRUB_BADRAM} as parameter.
+
+2010-06-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Device map): New section.
+ (Themes): New section (stub).
+ * Makefile.in (docs/grub.info): The info documentation now builds
+ without errors. Make sure it stays that way.
+
+2010-06-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use normal parser for menu entries.
+ Reported by: Thomas Frauendorfer
+
+ * include/grub/parser.h (grub_parser_execute): Don't export.
+ * normal/menu.c (grub_menu_execute_entry_real): New function.
+ (grub_menu_execute_entry): Use grub_menu_execute_entry_real.
+
+2010-06-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Embedded configuration): New section (replacing
+ old "Preset Menu" stub).
+ (Images): New section.
+ (configfile): Note that any menu entries defined in `file' are shown
+ immediately.
+
+2010-06-28 Josh Triplett <josh@joshtriplett.org>
+
+ * mmap/i386/pc/mmap_helper.S: Set CF on return.
+
+2010-06-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Add --debug-image= option.
+
+2010-06-28 Colin Watson <cjwatson@ubuntu.com>
+
+ Change grub-mkdevicemap to emit /dev/disk/by-id/ names where
+ possible on Linux.
+
+ * util/deviceiter.c (check_device): Rename to ...
+ (check_device_readable_unique): ... this. Update all callers.
+ Maintain and check a list of which devices (by canonicalized name)
+ have already been seen.
+ (clear_seen_devices): New function.
+ (compare_file_names) [__linux__]: New function.
+ (grub_util_iterate_devices): Clear the list of seen devices on exit
+ and (just in case) on entry.
+ (grub_util_iterate_devices) [__linux__]: Iterate over non-partition
+ devices in /dev/disk/by-id/, in sorted order. Remove DM-RAID
+ seen-devices list, superseded by general code in check_device.
+
+2010-06-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/cat.c (options): New variable.
+ (grub_cmd_cat): Parse options. If the --dos option is given, print
+ DOS-style "\r\n" line endings as simple newlines (Debian bug
+ #586358).
+ (GRUB_MOD_INIT): Use extcmd.
+ (GRUB_MOD_FINI): Likewise.
+ * docs/grub.texi (cat): Document --dos.
+
+2010-06-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ XEN with Linux grub-mkconfig support.
+
+ * conf/common.rmk (grub-mkconfig_SCRIPTS) [linux]: Add 20_linux_xen.
+ * util/grub-mkconfig.in: Export GRUB_CMDLINE_XEN and
+ GRUB_CMDLINE_XEN_DEFAULT.
+ * util/grub.d/20_linux_xen.in: New file.
+
+2010-06-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Initialise VGA video on qemu ourselves.
+
+ * boot/i386/qemu/boot.S: Don't call 0xc000.
+ * conf/i386-qemu.rmk (kern/i386/qemu/init.c_DEPENDENCIES): New variable.
+ (kernel_img_SOURCES): Add kern/i386/qemu/init.c and bus/pci.c.
+ (kernel_img_HEADERS): Add pci.h.
+ * conf/i386.rmk (pkglib_MODULES) [qemu]: Remove pci.mod.
+ * configure.ac: Force unifont on qemu and yeeloong.
+ * include/grub/i386/qemu/kernel.h (grub_qemu_init_cirrus): New proto.
+ (grub_vga_palette_write): Use correct register.
+ * kern/i386/coreboot/init.c (grub_machine_init) [GRUB_MACHINE_QEMU]:
+ Call grub_qemu_init_cirrus.
+ * kern/i386/qemu/init.c: New file.
+ * term/i386/pc/vga_text.c (inc_y): Never read outside the screen.
+
+ * commands/videotest.c (grub_cmd_videotest): Handle double buffering.
+
+2010-06-26 Pavel Roskin <proski@gnu.org>
+
+ * util/grub.d/10_linux.in: Add support for initrd images on Fedora
+ 13.
+
+2010-06-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Explain that
+ GRUB_DISABLE_LINUX_RECOVERY and GRUB_DISABLE_NETBSD_RECOVERY must be
+ set to `true' to disable their respective recovery entries, not
+ merely set.
+
+2010-06-26 Colin Watson <cjwatson@ubuntu.com>
+
+ Make the `source' command slightly faster.
+
+ * normal/main.c (grub_normal_execute): Don't re-read list files when
+ nested.
+
+2010-06-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * loader/i386/multiboot_mbi.c (retrieve_video_parameters): Set red
+ field position and mask size to red fields from mode_info, not
+ green.
+ * loader/multiboot_mbi2.c (retrieve_video_parameters): Likewise.
+ Remove redundant tag->common.framebuffer_type assignment.
+ Reported by: Seth Goldberg.
+
+2010-06-23 Colin Watson <cjwatson@ubuntu.com>
+
+ Sync up other versions of the Linux loader with Robert Millan's
+ change of 2010-01-09, "Make loader output a bit more user-friendly".
+
+ * loader/i386/efi/linux.c (grub_linux_boot): Move debug info to
+ grub_dprintf().
+ (grub_cmd_linux): Likewise.
+ (grub_cmd_initrd): Likewise.
+ * loader/i386/ieee1275/linux.c (grub_cmd_linux): Likewise.
+ * loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
+
+2010-06-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/efi/mm.c (grub_efi_mm_init): Handle systems with memory maps
+ larger than MEMORY_MAP_SIZE.
+
+2010-06-21 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix parallel build.
+
+ * conf/common.rmk: Add grub_script.tab.h as a grub-script-check
+ dependency.
+ * script/parser.y: #include grub_script.tab.h header.
+
+2010-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support >3GiB and <16MiB RAM in i386-qemu.
+
+ * kern/i386/qemu/mmap.c (QEMU_CMOS_MEMSIZE2_HIGH): New const.
+ (QEMU_CMOS_MEMSIZE2_LOW): Likewise.
+ (grub_lower_mem): Removed.
+ (grub_upper_mem): Likewise.
+ (mem_size): Made static.
+ (above_4g): New variable.
+ (grub_machine_mmap_init): Detect small mem_size and above_4g.
+ (grub_machine_mmap_iterate): Order in ascending order and add above_4g
+ support.
+
+2010-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Cirrus 5446 and Bochs video cards support.
+
+ * conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and
+ video_bochs.mod
+ (video_cirrus_mod_SOURCES): New variable.
+ (video_cirrus_mod_CFLAGS): Likewise.
+ (video_cirrus_mod_LDFLAGS): Likewise.
+ (video_bochs_mod_SOURCES): Likewise.
+ (video_bochs_mod_CFLAGS): Likewise.
+ (video_bochs_mod_LDFLAGS): Likewise.
+ * include/grub/vga.h: New file.
+ * include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed.
+ (grub_video_fb_set_page_t): New type.
+ (grub_video_fb_setup): New prototype.
+ (grub_video_fb_swap_buffers): Likewise.
+ (grub_video_fb_get_info_and_fini): Likewise.
+ * term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h.
+ (CRTC_DATA_PORT): Likewise.
+ (CRTC_CURSOR): Likewise.
+ (CRTC_CURSOR_ADDR_HIGH): Likewise.
+ (CRTC_CURSOR_ADDR_LOW): Likewise.
+ (CRTC_CURSOR_DISABLE): Likewise.
+ (update_cursor): Use grub_vga_cr_write.
+ (grub_vga_text_setcursor): Likewise.
+ * video/bochs.c: New file.
+ * video/fb/video_fb.c (render_target): Moved into framebuffer variable.
+ (palette): Likewise.
+ (palette_size): Likewise.
+ (framebuffer): New variable.
+ (grub_video_fb_init): Use 'framebuffer'.
+ (grub_video_fb_fini): Likewise.
+ (grub_video_fb_get_info): Likewise.
+ (grub_video_fb_get_palette): Likewise.
+ (grub_video_fb_set_palette): Likewise.
+ (grub_video_fb_set_viewport): Likewise.
+ (grub_video_fb_get_viewport): Likewise.
+ (grub_video_fb_map_color): Likewise.
+ (grub_video_fb_map_rgb): Likewise.
+ (grub_video_fb_map_rgba): Likewise.
+ (grub_video_fb_unmap_color): Likewise.
+ (grub_video_fb_unmap_color_int): Likewise.
+ (grub_video_fb_fill_rect): Likewise.
+ (grub_video_fb_blit_bitmap): Likewise.
+ (grub_video_fb_blit_render_target): Likewise.
+ (grub_video_fb_scroll): Likewise.
+ (grub_video_fb_create_render_target): Likewise.
+ (grub_video_fb_doublebuf_blit_init): Likewise.
+ (grub_video_fb_set_active_render_target): Handle doublebuffering.
+ (doublebuf_pageflipping_update_screen): New function.
+ (doublebuf_pageflipping_init): Likewise.
+ (grub_video_fb_setup): Likewise.
+ (grub_video_fb_swap_buffers): Likewise.
+ (grub_video_fb_get_info_and_fini): Likewise.
+ * video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields.
+ All users updated.
+ (doublebuf_pageflipping_commit): Restructured into ...
+ (doublebuf_pageflipping_set_page): ... this.
+ (doublebuf_pageflipping_update_screen): Removed.
+ (doublebuf_pageflipping_init): Likewise.
+ (double_buffering_init): Likewise.
+ (grub_video_vbe_setup): Use grub_video_fb_setup.
+ (grub_video_vbe_swap_buffers): Removed.
+ (grub_video_vbe_set_active_render_target): Likewise.
+ (grub_video_vbe_get_active_render_target): Likewise.
+ (grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini.
+ (grub_video_vbe_adapter): Use grub_video_fb_swap_buffers,
+ grub_video_fb_set_active_render_target and
+ grub_video_fb_get_active_render_target.
+ * video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h.
+ (SEQUENCER_DATA_PORT): Likewise.
+ (MAP_MASK_REGISTER): Likewise.
+ (CRTC_ADDR_PORT): Likewise.
+ (CRTC_DATA_PORT): Likewise.
+ (START_ADDR_HIGH_REGISTER): Likewise.
+ (START_ADDR_LOW_REGISTER): Likewise.
+ (GRAPHICS_ADDR_PORT): Likewise.
+ (GRAPHICS_DATA_PORT): Likewise.
+ (READ_MAP_REGISTER): Likewise.
+ (INPUT_STATUS1_REGISTER): Likewise.
+ (INPUT_STATUS1_VERTR_BIT): Likewise.
+ (get_map_mask): Use grub_vga_sr_read.
+ (set_map_mask): Use grub_vga_sr_write.
+ (set_read_map): Use grub_vga_gr_write.
+ (set_start_address): Use grub_vga_cr_write.
+ * video/sm712.c (framebuffer): Remove leftover fields.
+
+2010-06-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Capitalise and export GRUB_PREFIX. Stop
+ setting GRUB_VIDEO_BACKEND. Make it available as a user override
+ instead. Replace the gfxterm backend check with a check that
+ ${GRUB_PREFIX}/video.lst is non-empty.
+ * util/grub.d/00_header.in: Use GRUB_PREFIX rather than computing it
+ again.
+ (load_video): New generated function. Call it before loading
+ gfxterm rather than loading ${GRUB_VIDEO_BACKEND}.
+ * util/grub.d/10_linux.in (linux_entry): Call load_video.
+ * util/grub.d/30_os-prober.in (osx_entry): Likewise.
+ * docs/grub.texi (Simple configuration): Document
+ GRUB_VIDEO_BACKEND.
+
+2010-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use video functions in linux and xnu loaders.
+
+ * conf/i386-pc.rmk (xnu_mod_SOURCES): Remove loader/i386/pc/xnu.c.
+ * conf/x86-efi.rmk (xnu_mod_SOURCES): Remove loader/i386/efi/xnu.c.
+ * include/grub/i386/xnu.h (grub_xnu_set_video): Removed.
+ * loader/i386/efi/linux.c (grub_linux_setup_video): Copied from
+ loader/i386/pc/linux.c.
+ (grub_linux_boot): Resynced with loader/i386/pc/linux.c.
+ (find_line_len): Removed.
+ (find_framebuf): Likewise.
+ (grub_cmd_linux): Declare grub_linux_boot as possibly returning.
+ * loader/i386/efi/xnu.c: Removed.
+ * loader/i386/pc/xnu.c: Moved from here...
+ * loader/i386/xnu.c: ...here.
+
+ Enable priorities in video drivers.
+
+ * include/grub/video.h (grub_video_adapter_prio_t): New type.
+ (grub_video_adapter): New field prio.
+ (grub_video_register): Respect prio when inserting.
+ * video/efi_gop.c (grub_video_gop_adapter): Add prio.
+ * video/efi_uga.c (grub_video_uga_adapter): Likewise.
+ * video/emu/sdl.c (grub_video_sdl_adapter): Likewise.
+ * video/i386/pc/vbe.c (grub_video_vbe_adapter): Likewise.
+ * video/i386/pc/vga.c (grub_video_vga_adapter): Likewise.
+ * video/ieee1275.c (grub_video_ieee1275_adapter): Likewise.
+ * video/sm712.c (grub_video_sm712_adapter): Likewise.
+
+ Fix SDL driver ID.
+
+ * include/grub/video.h (grub_video_driver_id_t): New value
+ GRUB_VIDEO_DRIVER_SDL.
+ * video/emu/sdl.c (grub_video_sdl_adapter): Add id.
+
+2010-06-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/i386/pc/grub-setup.c (usage): Pass an extra `program_name'
+ argument to printf.
+ * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
+
+2010-06-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/i386/pc/grub-setup.c (usage): Fix syntax error.
+ * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
+
+2010-06-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/i386/pc/grub-setup.c (usage): Warn against running grub-setup
+ directly, and recommend grub-install instead.
+ * util/sparc64/ieee1275/grub-setup.c (usage): Likewise.
+
+2010-06-17 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix i386-pc prefix handling with nested partitions (Debian bug
+ #585068). Note that the case where the core image is booted using
+ multiboot and relocated from its original location still requires
+ more work.
+
+ * kern/i386/pc/init.c (make_install_device): If the prefix starts
+ with "(,", fill the boot drive in between those two characters, but
+ expect that a full partition specification including partition map
+ names will follow.
+ * util/i386/pc/grub-setup.c (setup): Unless an explicit prefix was
+ specified, write a prefix without the drive name but including a
+ full partition specification.
+
+2010-06-16 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Ignore non-option arguments, for
+ compatibility with older versions (before 2010-06-12) which did the
+ same. In particular, this makes it easier to ship an update-grub
+ wrapper which is compatible with that used with GRUB Legacy (Debian
+ bug #586056).
+
+2010-06-14 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * Makefile.in (install-local): Use $$file.h2m instead of $$dest.h2m
+ for manual page generation.
+
+2010-06-14 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * po/POTFILES: Remove leftover commands/handler.c.
+
+2010-06-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Remove vestige of old argument parsing that
+ left this script non-functional.
+
+2010-06-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/man/grub-emu.h2m: New file.
+
+2010-06-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Commands): Document reduced command set in rescue
+ mode.
+ (cpuid): New section.
+
+2010-06-13 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Use the
+ new partition naming style.
+ * util/grub-install.in: Adapt sed subtitutions in grub-probe calls.
+
+2010-06-12 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Add "-o grub.iso" like cmdline options support.
+
+ * util/grub-install.in: Improve cmdline option parsing.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/i386/efi/grub-install.in: Likewise.
+ * util/ieee1275/grub-install.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2010-06-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Ignore 41_custom.
+
+2010-06-12 Thomas Schmitt <scdbackup@gmx.net>
+
+ * util/grub-mkrescue.in: Pass unrecognized options to xorriso.
+
+2010-06-12 Colin Watson <cjwatson@ubuntu.com>
+
+ Avoid false positives in fs.lst, partmap.lst, and video.lst due to
+ prototype declarations.
+
+ * genmk.rb (PModule::rule): Define GRUB_LST_GENERATOR when
+ generating fs, partmap, and video lists.
+ * include/grub/fs.h (grub_fs_register): Omit prototype if
+ GRUB_LST_GENERATOR is defined.
+ * include/grub/partition.h (grub_partition_map_register): Likewise.
+ * include/grub/video.h (grub_video_register): Likewise.
+
+2010-06-12 Javier Martín <lordhabbit@gmail.com>
+
+ * include/grub/types.h: Check for GRUB_CPU_SIZEOF_LONG when appropriate.
+
+2010-06-12 Thomas Schmitt <scdbackup@gmx.net>
+
+ * util/grub-mkrescue.in: Support --xorriso argument.
+
+2010-06-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Use -graft-points instead of -pathspecs.
+ Suggested by: Thomas Schmitt.
+
+2010-06-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Add --sort-weight arguments to xorriso.
+ Suggested by: Thomas Schmitt.
+
+2010-06-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ custom.cfg support.
+
+ * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 41_custom.
+ * util/grub.d/41_custom.in: New file.
+
+2010-06-12 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in (make_image): Remove sh module, which has
+ been merged back into normal.
+
+2010-06-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/efi/uga_draw.h (GRUB_EFI_UGA_GLT_MAX): Rename to ...
+ (GRUB_EFI_UGA_BLT_MAX): ... this (typo fix).
+
+2010-06-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in (install-local): Include $(srcdir)/docs/man/$$dest.h2m
+ when generating manual pages.
+ * docs/man/grub-bin2h.h2m: New file.
+ * docs/man/grub-editenv.h2m: New file.
+ * docs/man/grub-fstest.h2m: New file.
+ * docs/man/grub-install.h2m: New file.
+ * docs/man/grub-macho2img.h2m: New file.
+ * docs/man/grub-mkconfig.h2m: New file.
+ * docs/man/grub-mkdevicemap.h2m: New file.
+ * docs/man/grub-mkfont.h2m: New file.
+ * docs/man/grub-mkimage.h2m: New file.
+ * docs/man/grub-mkpasswd-pbkdf2.h2m: New file.
+ * docs/man/grub-mkrelpath.h2m: New file.
+ * docs/man/grub-mkrescue.h2m: New file.
+ * docs/man/grub-ofpathname.h2m: New file.
+ * docs/man/grub-pe2elf.h2m: New file.
+ * docs/man/grub-probe.h2m: New file.
+ * docs/man/grub-reboot.h2m: New file.
+ * docs/man/grub-script-check.h2m: New file.
+ * docs/man/grub-set-default.h2m: New file.
+ * docs/man/grub-setup.h2m: New file.
+
+2010-06-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use FOR_* macros instead of *_iterate whenever possible.
+
+ * commands/handler.c: Removed.
+ * commands/help.c (grub_cmd_help): Use FOR_COMMANDS.
+ * commands/minicmd.c (grub_mini_cmd_lsmod): Use FOR_DL_MODULES.
+ * conf/any-emu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
+ * conf/common.rmk (script/lexer.c_DEPENDENCIES): Add grub_script.yy.h.
+ (grub_probe_SOURCES): Remove kern/parser.c.
+ (util/grub-script-check.c_DEPENDENCIES): Removed.
+ (grub_script_check_SOURCES): Remove kern/handler.c, kern/parser.c
+ and grub_script_check_init.c.
+ (grub_script_check_init.lst): Removed.
+ (grub_script_check_init.h): Likewise.
+ (grub_script_check_init.c): Likewise.
+ (pkglib_MODULES): Remove handler.mod and sh.mod.
+ (handler_mod_SOURCES): Removed.
+ (handler_mod_CFLAGS): Likewise.
+ (handler_mod_LDFLAGS): Likewise.
+ (normal_mod_SOURCES): Remove normal/handler.c.
+ Add script/main.c, script/script.c, script/execute.c,
+ script/function.c, script/lexer.c, grub_script.tab.c
+ and grub_script.yy.c.
+ * conf/i386-coreboot.rmk (kernel_img_SOURCES): Remove kern/handler.c.
+ * conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Likewise.
+ (grub_setup_SOURCES): Remove kern/parser.c.
+ * conf/i386-qemu.rmk (kernel_img_SOURCES): Remove kern/handler.c.
+ * conf/mips-qemu-mips.rmk (kernel_img_SOURCES): Likewise.
+ * conf/mips-yeeloong.rmk (kernel_img_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
+ (grub_setup_SOURCES): Remove kern/parser.c.
+ * conf/x86-efi.rmk (kernel_img_SOURCES): Remove kern/handler.c.
+ * gettext/gettext.c (grub_gettext_delete_list): Don't use grub_list_pop.
+ * include/grub/command.h (grub_command_iterate): Removed.
+ (FOR_COMMANDS): New macro.
+ * include/grub/dl.h (grub_dl): New member next.
+ (grub_dl_iterate): Removed.
+ (grub_dl_head): New variable declaration.
+ (FOR_DL_MODULES): New macro.
+ * include/grub/fs.h: Include list.h.
+ (grub_fs): Make next first element.
+ (grub_fs_list): New variable declaration.
+ (grub_fs_register): Make inline.
+ (grub_fs_unregister): Likewise.
+ (grub_fs_iterate): Removed.
+ (FOR_FILESYSTEMS): New macro.
+ * include/grub/handler.h: Removed.
+ * include/grub/list.h (grub_list_hook_t): Removed.
+ (grub_list_test_t): Likewise.
+ (grub_list_pop): Likewise.
+ (grub_list_iterate): Likewise.
+ (grub_list_insert): Likewise.
+ (FOR_LIST_ELEMENTS): New macro.
+ * include/grub/parser.h (grub_parser_class): Removed.
+ (grub_parser_register): Likewise.
+ (grub_parser_unregister): Likewise.
+ (grub_parser_get_current): Likewise.
+ (grub_parser_set_current): Likewise.
+ (grub_register_rescue_parser): Likewise.
+ (grub_rescue_parse_line): New function.
+ * include/grub/partition.h (FOR_PARTITION_MAPS): Use FOR_LIST_ELEMENTS.
+ * include/grub/script_sh.h (grub_script_function_list): New variable
+ declaration.
+ (FOR_SCRIPT_FUNCTIONS): New macro.
+ (grub_script_function_iterate): Removed.
+ (grub_normal_parse_line): New prototype.
+ * include/grub/term.h (FOR_ACTIVE_TERM_INPUTS): Use FOR_LIST_ELEMENTS.
+ (FOR_DISABLED_TERM_INPUTS): Likewise.
+ (FOR_ACTIVE_TERM_OUTPUTS): Likewise.
+ (FOR_DISABLED_TERM_OUTPUTS): Likewise.
+ * include/grub/video.h (grub_video_adapter): Move 'next' to first
+ element.
+ (grub_video_register): Inline.
+ (grub_video_unregister): Likewise.
+ (grub_video_adapter_list): New variable declaration.
+ (grub_video_iterate): Removed.
+ (FOR_VIDEO_ADAPTERS): New macro.
+ * kern/dl.c (grub_dl_list): Removed. All users updated.
+ (grub_dl_iterate): Removed.
+ * kern/fs.c (grub_fs_list): Make global.
+ (grub_fs_register): Removed.
+ (grub_fs_unregister): Likewise.
+ (grub_fs_iterate): Likewise.
+ * kern/handler.c: Removed.
+ * kern/list.c (grub_list_pop): Removed.
+ (grub_list_iterate): Likewise.
+ (grub_list_insert): Likewise.
+ (grub_named_list_find): Use FOR_LIST_ELEMENTS.
+ (grub_prio_list_insert): Don't use grub_list_insert.
+ * kern/main.c (grub_register_rescue_parser): Don't call
+ grub_register_rescue_parser.
+ * kern/parser.c (grub_parser_class): Removed.
+ (grub_parser_execute): Use grub_rescue_parse_line.
+ * kern/rescue_parser.c (grub_rescue_parse_line): Make global.
+ (grub_rescue_parser): Removed.
+ (grub_register_rescue_parser): Likewise.
+ * kern/rescue_reader.c (grub_rescue_run): Use grub_rescue_parse_line.
+ * normal/auth.c (is_authenticated): Use FOR_LIST_ELEMENTS.
+ (grub_auth_check_authentication): Likewise.
+ * normal/completion.c (iterate_command): Removed.
+ (grub_normal_do_completion): Use FOR_COMMANDS.
+ * normal/handler.c: Removed.
+ * normal/main.c (read_config_file): Remove parser changing.
+ (grub_normal_execute): Don't call read_handler_list.
+ (grub_normal_read_line_real): Statically allocate prompt.
+ (grub_cmdline_run): Use grub_normal_parse_line.
+ (GRUB_MOD_FINI): Don't call free_handler_list.
+ * normal/menu_entry.c (run): Likewise.
+ * script/function.c (grub_script_function_list): Make global.
+ (grub_script_function_iterate): Removed.
+ * script/main.c (grub_normal_parse_line): Make global.
+ (grub_sh_parser): Removed.
+ (GRUB_MOD_INIT): Likewise.
+ (GRUB_MOD_FINI): Likewise.
+ * tests/lib/functional_test.c (grub_functional_test): Use
+ FOR_LIST_ELEMENTS.
+ * tests/lib/test.c (free_failures): Don't use grub_list_pop.
+ (grub_test_run): Use FOR_LIST_ELEMENTS.
+ * tests/lib/unit_test.c (main): Likewise.
+ * util/deviceiter.c (grub_util_iterate_devices): Don't use
+ grub_list_pop.
+ * util/grub-fstest.c (grub_term_input_class): Removed.
+ (grub_term_output_class): Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/sparc64/ieee1275/grub-setup.c: Likewise.
+ * util/grub-script-check.c (main): Don't call grub_init_all and
+ grub_fini_all.
+ * video/video.c (grub_video_adapter_list): Make global.
+ (grub_video_register): Removed.
+ (grub_video_unregister): Likewise.
+ (grub_video_iterate): Likewise.
+
+2010-06-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * docs/grub.texi (Vendor power-on button): Add Asus EeePC 1005PE as
+ reported by Henrique Ferreiro.
+
+2010-06-09 Robert Millan <rmh@gnu.org>
+
+ * util/grub.d/10_linux.in: Prefer compressed images over non-compressed
+ ones, when both are available.
+
+2010-06-08 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Make --version uniform and avoid hard-coded program name.
+
+ * util/grub-mkimage.c (main): Use `program_name' instead of
+ hard-coded string.
+ * util/i386/pc/grub-setup.c (main): Likewise.
+ * util/sparc64/ieee1275/grub-setup.c (parse_options): Likewise.
+ * util/grub-install.in: Save the basename of $0 in $self, and use the
+ latter in informational messages. Use the same format for --version
+ as the binary programs.
+ * util/grub-mkconfig.in: Likewise.
+ * util/grub-mkrescue.in: Likewise.
+ * util/grub-reboot.in: Likewise.
+ * util/grub-set-default.in: Likewise.
+ * util/i386/efi/grub-install.in: Likewise.
+ * util/ieee1275/grub-install.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkrescue.in: Likewise.
+
+2010-06-08 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/i386/pc/grub-setup.c (setup): Use absolute offsets for start of
+ embedding area. Use <= instead of == when checking for non-emptiness.
+
+2010-06-08 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * configure.ac: Add `.' to the directories searched for unifont.
+
+2010-06-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add ascii.bitmaps, ascii.h, grub_script.yy.c, and
+ grub_script.yy.h.
+
+2010-06-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (History): Expand to cover GRUB 2.
+ (Serial terminal): Refer to `terminal_input' and `terminal_output'
+ commands, not `terminal'.
+ (serial): Likewise.
+ (terminal_input): New section.
+ (terminal_output): New section.
+ (uppermem): New section (stub).
+ (Obtaining and Building GRUB): Refer to Bazaar, not Subversion.
+
+2010-06-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Security): Menu entries are unrestricted by
+ default, not restricted to superusers as I had previously thought.
+ Reword to account for this.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/emu/misc.c (device_mapper_null_log): New function.
+ (grub_device_mapper_supported): New function.
+ * include/grub/emu/misc.h (grub_device_mapper_supported): Add
+ prototype.
+ * kern/emu/hostdisk.c (find_partition_start): Check whether
+ device-mapper is supported before trying to use it.
+ * util/deviceiter.c (grub_util_iterate_devices): Likewise.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Naming convention): Use GRUB 2 syntax.
+ (File name syntax): Likewise.
+ (help): --all is no longer supported in GRUB 2. Be more precise
+ about pattern matching.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * normal/completion.c (grub_normal_do_completion): When completing
+ arguments to "set" and the current word contains an equals sign,
+ skip to after the equals sign before starting completion.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * fs/i386/pc/pxe.c (grub_pxe_open): Fix parsing of gateway_ip.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Network): New section.
+ (Device syntax): The network device is called `(pxe)' in GRUB 2, not
+ `(nd)' as in GRUB Legacy.
+ (pxe_unload): New section.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Troubleshooting): `echo' is not usually available
+ in the rescue shell, so recommend using `set' instead. Thanks,
+ Jordan Uggla.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Filesystem): Refer to `search' instead of `find'.
+ (password): New section.
+ (password_pbkdf2): New section.
+ (search): New section.
+ (Security): New section.
+ (Troubleshooting): New section, currently very incomplete.
+ (Invoking grub-mkpasswd-pbkdf2): New section.
+ (Internals): New section, currently very incomplete.
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Add some more quoting (of
+ "${prev_saved_entry}" and "${boot_once}") needed to make savedefault
+ work again.
+ Reported by: Mario 'BitKoenig' Holbe (Debian bug #584812).
+
+2010-06-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (main): Rename top-level `c' variable
+ to `count', fixing variable shadowing that broke the -c option.
+
+2010-06-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Quote values assigned to `saved_entry',
+ in case they contain spaces.
+
+2010-06-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Prepend
+ "part_" to partmap module names, in line with grub-install.
+ Reported by: Jindřich Makovička (Debian bug #584426).
+
+2010-06-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkimage.c: Make target-related error messages slightly
+ more helpful; -O talks about "format". Explicitly point to the use
+ of -O if no target is specified.
+ Reported by: Didier Raboud (Debian bug #584415).
+
+2010-06-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * INSTALL: Document several build requirements for optional features
+ (libdevmapper, ncurses, libusb, SDL, FreeType, GNU Unifont).
+
+2010-06-02 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * kern/emu/hostdisk.c (convert_system_partition_to_system_disk)
+ [__NetBSD__]: Handle all device names matching /dev/r[a-z]+[0-9][a-z].
+ (find_partition_start) [__NetBSD__]: Correct error messages for NetBSD.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Simple configuration): Fix copy-and-paste typo.
+ Thanks to Jordan Uggla for spotting this.
+
+2010-06-02 Aleš Nesrsta <starous@volny.cz>
+
+ Finally make USB usable.
+
+ * bus/usb/ohci.c (grub_ohci_reg_t): Add missing values.
+ (GRUB_OHCI_RHUB_PORT_POWER_MASK): New macro.
+ (GRUB_OHCI_RHUB_PORT_ALL_POWERED): Likewise.
+ (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_MASK): Likewise.
+ (GRUB_OHCI_REG_FRAME_INTERVAL_FSMPS_SHIFT): Likewise.
+ (GRUB_OHCI_REG_FRAME_INTERVAL_FI_SHIFT): Likewise.
+ (GRUB_OHCI_FSMPS): Likewise.
+ (GRUB_OHCI_PERIODIC_START): Likewise.
+ (GRUB_OHCI_FRAME_INTERVAL): Likewise.
+ (GRUB_OHCI_SET_PORT_ENABLE): Likewise.
+ (GRUB_OHCI_CLEAR_PORT_ENABLE): Likewise.
+ (GRUB_OHCI_SET_PORT_RESET): Likewise.
+ (GRUB_OHCI_SET_PORT_RESET_STATUS_CHANGE): Likewise.
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Various important fixups.
+ (grub_ohci_transaction): Likewise.
+ (grub_ohci_transfer): Improve condition detection algorithms.
+ Handle toggle property. Program the transactions correctly.
+ Improve error handling. Various important fixups.
+ (grub_ohci_portstatus): Put register writes in right order.
+ * bus/usb/uhci.c (grub_free_queue): Compute last_trans.
+ (grub_uhci_transfer): Don't show "failed" message on success.
+ * bus/usb/usb.c (grub_usb_set_configuration): Zero-fill whole "toggle"
+ array.
+ (grub_usb_device_initialize): Read first 8 bytes of descriptor to
+ determine its size.
+ * bus/usb/usbtrans.c (grub_usb_control_msg): Use descdev.maxsize0 even
+ before initialization is completed. Use IN direction for empty
+ transfers. Use last_trans and compute toggle.
+ * include/grub/usbtrans.h (grub_usb_transfer): New field last_trans.
+ (GRUB_USB_FEATURE_ENDP_HALT): Correct the value.
+ (GRUB_USB_FEATURE_DEV_REMOTE_WU): Likewise.
+ (GRUB_USB_FEATURE_TEST_MODE): Likewise.
+ * include/grub/usb.h (grub_usb_err_t): New value GRUB_USB_ERR_UNRECOVERABLE.
+ (grub_usb_device): Increase toggle to 256.
+ (grub_usbms_subclass_t): New values GRUB_USBMS_SUBCLASS_RBC,
+ GRUB_USBMS_SUBCLASS_MMC2, GRUB_USBMS_SUBCLASS_UFI and
+ GRUB_USBMS_SUBCLASS_SFF8070.
+ * include/grub/scsicmd.h (grub_scsi_test_unit_ready): New structure.
+ (grub_scsi_inquiry): New member page and alloc_length.
+ (grub_scsi_request_sense): New structure.
+ (grub_scsi_request_sense_data): Likewise.
+ (grub_scsi_read_capacity): New fields logical_block_addr, PMI and
+ control.
+ * disk/scsi.c (grub_scsi_request_sense): New function.
+ (grub_scsi_test_unit_ready): Likewise.
+ (grub_scsi_inquiry): Fill new fields.
+ (grub_scsi_read_capacity): Likewise.
+ (grub_scsi_read10): Add request sense at the end.
+ (grub_scsi_read12): Likewise.
+ (grub_scsi_write10): Likewise.
+ (grub_scsi_write12): Likewise.
+ (grub_scsi_open): Add Test Unit Ready.
+ * disk/usbms.c (grub_usbms_finddevs): Check configcnt.
+ Support additional subclasses. Con't clear halt yet. Activate the
+ proper config. Calculate LUNs correctly.
+ (grub_usbms_transfer): Various important fixups.
+
+2010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * bus/pci.c (grub_pci_iterate) [GRUB_MACHINE_MIPS_YEELOONG]: Skip ghosts.
+ * bus/usb/ohci.c (grub_ohci_portstatus): Handle R/WC correctly.
+ (grub_ohci_fini_hw): New function.
+ (grub_ohci_restore_hw): Likewise.
+ (GRUB_MOD_INIT(ohci)): Register preboot hook.
+ (GRUB_MOD_FINI(ohci)): Shutdown OHCI.
+ * term/usb_keyboard.c: Remove include of grub/machine/console.h.
+
+2010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Dedicated DMA allocations.
+
+ * bus/pci.c (grub_memalign_dma32): New function
+ (grub_dma_free): Likewise.
+ (grub_dma_get_virt): Likewise.
+ (grub_dma_get_phys): Likewise.
+ * bus/usb/ohci.c (grub_ohci): New members hcca_addr and hcca_chunk.
+ (grub_ohci_pci_iter): Use dma32_alloc.
+ (grub_ohci_transfer): Likewise.
+ * bus/usb/usbtrans.c (grub_usb_control_msg): Likewise.
+ (grub_usb_bulk_readwrite): Likewise.
+ * include/grub/pci.h: Add declarations.
+
+2010-06-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ CS5536 support.
+
+ * bus/cs5536.c: New file.
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Check for CS5536.
+ * conf/i386.rmk (pkglib_MODULES): Add cs5536.mod.
+ (cs5536_mod_SOURCES): New variable.
+ (cs5536_mod_CFLAGS): Likewise.
+ (cs5536_mod_LDFLAGS): Likewise.
+ * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add cs5536.h and
+ machine/pci.h.
+ (kernel_img_SOURCES): Add bus/cs5536.c.
+ (pkglib_MODULES): Add usb.mod, usbtest.mod, ohci.mod, usbms.mod and
+ usb_keyboard.mod.
+ (usb_mod_SOURCES): New variable.
+ (usb_mod_CFLAGS): New variable.
+ (usb_mod_LDFLAGS): New variable.
+ (usbtest_mod_SOURCES): New variable.
+ (usbtest_mod_CFLAGS): New variable.
+ (usbtest_mod_LDFLAGS): New variable.
+ (ohci_mod_SOURCES): New variable.
+ (ohci_mod_CFLAGS): New variable.
+ (ohci_mod_LDFLAGS): New variable.
+ (usbms_mod_SOURCES): New variable.
+ (usbms_mod_CFLAGS): New variable.
+ (usbms_mod_LDFLAGS): New variable.
+ (usb_keyboard_mod_SOURCES): New variable.
+ (usb_keyboard_mod_CFLAGS): New variable.
+ (usb_keyboard_mod_LDFLAGS): New variable.
+ * include/grub/smbus.h: New file.
+ * include/grub/cs5536.h: New file.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Add safety check to make sure that
+ ${locale_dir} exists before trying to probe it.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (SCO UnixWare): Remove, at Vladimir's request and
+ per the GNU Coding Standards; this is now too obscure to be worth
+ documenting.
+ (QNX): Likewise.
+ (chainloader): Remove cross-reference to `SCO UnixWare'.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Chain-loading): New section.
+ (DOS/Windows): New section, borrowed from GRUB Legacy with details
+ adjusted for GRUB 2.
+ (SCO UnixWare): Likewise.
+ (QNX): Likewise.
+ (chainloader): Add reference to `Block list syntax'.
+ (drivemap): New section.
+ (parttool): New section.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (GNU GRUB manual): Remove reference to `Invoking
+ the grub shell'.
+ (Installation): Add reference to `Making a GRUB bootable CD-ROM'.
+ (Installing GRUB using grub-install): Remove reference to the grub
+ shell; mention `grub-mkimage' and `grub-setup' instead.
+ (Invoking grub-install): Likewise.
+ (Interface): Add reference to `Menu entry editor'.
+ (serial): Remove `--device' option.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Configuration): New section, documenting
+ configuration file generation using grub-mkconfig. I've left a slot
+ for documenting the full shell scripting format but have not yet
+ started on writing that up.
+ (Invoking grub-mkconfig): New section.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (direntry): Remove grub-terminfo reference.
+ (GNU GRUB manual): Likewise.
+ (General commands): Update description of `terminfo' for GRUB 2.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/gptsync.c (grub_cmd_gptsync): Fix typos.
+ (GRUB_MOD_INIT): Fix capitalisation.
+ * docs/grub.texi (Command-line and menu entry commands): Document
+ gettext and gptsync commands.
+
+2010-06-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * conf/any-emu.rmk (kernel_img_SOURCES) [!x86]: Include
+ kern/$(target_cpu)/cache.S even if TARGET_NO_MODULES = yes.
+
+2010-06-01 Colin Watson <cjwatson@ubuntu.com>
+
+ Add btrfs probing support, currently only in the single-device case.
+
+ * kern/emu/getroot.c (find_root_device_from_mountinfo): New
+ function.
+ (grub_guess_root_device): Call find_root_device_from_mountinfo
+ before looking in /dev.
+
+2010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Use
+ GRUB_DISK_SIZE_UNKNOWN.
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Likewise.
+
+2010-05-31 Jiro SEKIBA <jir@unicus.jp>
+
+ * include/grub/disk.h (GRUB_DISK_SIZE_UNKNOWN): New macro.
+ * fs/nilfs.c: Support 2nd super block in case 1st one is accidently
+ corrupted or not synced properly.
+
+2010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/main.c (grub_normal_add_menu_entry): Avoid going out of args.
+ Reported by: Seth Goldberg.
+
+2010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix incorrect
+ addition of dest.
+ Reported by: Seth Goldberg.
+
+2010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/setpci.c (grub_setpci_iter): Fix an incorrect function check.
+ Reported by: Seth Goldberg.
+
+2010-05-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/multiboot_elfxx.c (grub_multiboot_load_elfXX) [__mips]: Check
+ 64-bit address as signed on MIPS.
+
+2010-05-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: AC_PROG_LEX sets LEX to ":" if lex is missing, not
+ to the empty string.
+
+2010-05-28 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix grub-emu issues on NetBSD, with gcc 4.1.3.
+
+ * conf/any-emu.rmk: Remove unnecessary COMMON_CFLAGS.
+ * include/grub/emu/misc.h (canonicalize_file_name): New Prototype.
+ * kern/misc.c (__enable_execute_stack): Disable on
+ GRUB_MACHINE_EMU.
+
+2010-05-28 Colin Watson <cjwatson@ubuntu.com>
+
+ Make grub-probe work with symbolic links under /dev/mapper as well
+ as with real block devices. The Linux world seems to be (at best)
+ in transition here, and GRUB shouldn't get caught in the middle.
+
+ * kern/emu/getroot.c (find_root_device): Follow symbolic links under
+ /dev/mapper.
+
+2010-05-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-script-check.c (main): Ensure defined behaviour on empty
+ input files (in which case exit zero).
+
+2010-05-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/emu/misc.c (canonicalize_file_name): realpath can still
+ return NULL for various reasons even if it has a maximum-length
+ buffer: for example, there might be a symlink loop, or the path
+ might exceed PATH_MAX. If this happens, return NULL.
+
+2010-05-27 Robert Millan <rmh@gnu.org>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Insert
+ partmap module to handle cross-partmap setups.
+ Reported by Orestes Mas. Gràcies!
+
+2010-05-27 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in: Initialise override_dir rather than
+ assuming that it's unset or empty in the environment.
+
+2010-05-26 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * kern/emu/hostdisk.c (find_partition_start) [__NetBSD__]: Renamed
+ variable index into p_index to suppress a warning with -Wshadow.
+
+2010-05-25 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * INSTALL: Added flex >= 2.5.35 requirement.
+
+2010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/usbtest.c (grub_usb_get_string): Properly support UTF-16.
+
+2010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ cmostest support.
+
+ * commands/i386/cmostest.c: New file.
+ * conf/i386-coreboot.rmk (pkglib_MODULES): Add cmostest.mod.
+ (cmostest_mod_SOURCES): New variable.
+ (cmostest_mod_CFLAGS): Likewise.
+ (cmostest_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * docs/grub.texi (Vendor power-on keys): New section.
+ * util/grub-mkconfig.in: export GRUB_DEFAULT_BUTTON,
+ GRUB_HIDDEN_TIMEOUT_BUTTON, GRUB_TIMEOUT_BUTTON
+ and GRUB_BUTTON_CMOS_ADDRESS.
+ * util/grub.d/00_header.in: Handle powering-on by separate button.
+
+2010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gfxmenu/gui_list.c (draw_menu): Don't add scrollbar width to padding.
+ Removed drawing_scrollbar argument. All users updated
+ Fixes #29792.
+ Reported by Jo Shields
+
+2010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gfxmenu/view.c (grub_gfxmenu_draw_terminal_box): Apply only to current
+ buffer since gfxterm handles double repaint.
+
+2010-05-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gfxmenu/gfxmenu.c (grub_gfxmenu_try): Change viewport on both buffers.
+ * term/gfxterm.c (real_scroll): Likewise.
+
+2010-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/pc/mmap.c (grub_machine_mmap_iterate): Zero-fill entry
+ before calling BIOS.
+
+2010-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i18n.h: Always enable grub_gettext.
+
+2010-05-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/pc/init.c (make_install_device): Fix a leftover usage of old
+ partition naming style.
+
+2010-05-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Fix handling of -o so that it works when
+ not the first option.
+
+2010-05-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrelpath.c (usage): Remove excess apostrophe.
+
+2010-05-20 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/misc.c: Move inclusion of <limits.h> to ...
+ * kern/emu/misc.c: ... here. Needed for canonicalize_file_name.
+
+2010-05-20 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev) [__NetBSD__]:
+ Fix merge error in NetBSD code.
+ (find_partition_start) [__NetBSD__]: Likewise.
+
+2010-05-19 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix grub-mkrescue usage unit testing.
+
+ * tests/util/grub-shell.in: Use --grub-mkimage with grub-mkrescue.
+
+2010-05-18 Christian Franke <franke@computer.org>
+
+ * util/grub.d/10_windows.in: Use path names instead of
+ drive letters to prevent warning from Cygwin 1.7.
+ Add drivemap command to menuentry if needed.
+
+2010-05-18 Justus Winter <4winter@informatik.uni-hamburg.de>
+
+ * util/grub.d/10_hurd.in: Include all gnumach* kernels, not only
+ gnumach and gnumach.gz.
+
+2010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i18n.h (gettext): Inline instead of using #define.
+ (grub_gettext): Likewise.
+ (_): Likewise.
+
+2010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.in (CPPFLAGS): Replace -DGRUB_LIBDIR with
+ -DGRUB_PKGLIBROOTDIR= and prepend @PACKAGE_TARNAME@. All users updated.
+ * util/grub-mkimage.c (image_targets): Add i386-multiboot.
+ (main): Add a slash after pkglibdirroot.
+
+2010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-install.in: Add missing "in" keyword.
+
+2010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Remove -O i386-pc duplication.
+ Reported by: Seth Goldberg.
+
+2010-05-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES: Rename util/grub-mkrawimage.c to util/grub-mkimage.c.
+
+2010-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Check for Linux device-mapper support.
+
+ * util/hostdisk.c (device_is_mapped): New function.
+ (find_partition_start): New function, partly broken out from
+ linux_find_partition and grub_util_biosdisk_get_grub_dev but with
+ device-mapper support added.
+ (linux_find_partition): Use find_partition_start.
+ (convert_system_partition_to_system_disk): Add `st' argument.
+ Support Linux /dev/mapper/* devices if device-mapper support is
+ available; only DM-RAID devices are understood at present.
+ (find_system_device): Add `st' argument. Pass it to
+ convert_system_partition_to_system_disk.
+ (grub_util_biosdisk_get_grub_dev): Pass stat result to
+ find_system_device and convert_system_partition_to_system_disk. Use
+ find_partition_start.
+
+ * conf/common.rmk (grub_mkdevicemap_SOURCES): Add kern/env.c,
+ kern/err.c, kern/list.c, kern/misc.c, and kern/emu/mm.c.
+ * util/deviceiter.c [__linux__]: Define MINOR.
+ (grub_util_iterate_devices): Add support for DM-RAID disk devices.
+ * util/mkdevicemap.c (grub_putchar): New function.
+ (grub_getkey): New function.
+ (grub_refresh): New function.
+ (main): Set debug=all if -v -v is used.
+
+2010-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ Fix build with non-GNU libcs.
+
+ * util/misc.c (canonicalize_file_name): Move to ...
+ * kern/emu/misc.c (canonicalize_file_name): ... here. Needed by
+ grub_make_system_path_relative_to_its_root.
+
+2010-05-18 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkrescue.in: Sync up with grub-install in terms of how
+ we handle finding grub-mkimage. Default to finding grub-mkimage in
+ ${bindir} with program_transform_name applied, and provide a
+ --grub-mkimage option to override this.
+
+2010-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove grub-mkisofs.
+
+ * conf/common.rmk (bin_UTILITIES): Remove grub-mkisofs.
+ (grub_mkisofs_SOURCES): Removed.
+ (grub_mkisofs_CFLAGS): Removed.
+ * util/mkisofs/defaults.h: Removed.
+ * util/mkisofs/eltorito.c: Likewise.
+ * util/mkisofs/exclude.h: Likewise.
+ * util/mkisofs/hash.c: Likewise.
+ * util/mkisofs/include/: Likewise.
+ * util/mkisofs/include/fctldefs.h: Likewise.
+ * util/mkisofs/include/mconfig.h: Likewise.
+ * util/mkisofs/include/prototyp.h: Likewise.
+ * util/mkisofs/include/statdefs.h: Likewise.
+ * util/mkisofs/iso9660.h: Likewise.
+ * util/mkisofs/joliet.c: Likewise.
+ * util/mkisofs/match.c: Likewise.
+ * util/mkisofs/match.h: Likewise.
+ * util/mkisofs/mkisofs.c: Likewise.
+ * util/mkisofs/mkisofs.h: Likewise.
+ * util/mkisofs/msdos_partition.h: Likewise.
+ * util/mkisofs/multi.c: Likewise.
+ * util/mkisofs/name.c: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/tree.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+
+2010-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify grub-mkimage accross platforms.
+
+ * Makefile.in (CPPFLAGS): Set GRUB_LIBDIR to $(libdir).
+ * conf/common.rmk (bin_UTILITIES): Removed grub-mkelfimage.
+ (grub_mkelfimage_SOURCES): Removed.
+ (util/elf/grub-mkimage.c_DEPENDENCIES): Renamed to ..
+ (util/grub-mkimage.c_DEPENDENCIES): .. this.
+ (bin_UTILITIES): Add grub-mkimage.
+ (grub_mkimage_SOURCES): New variable.
+ (kernel_img_HEADERS): Remove machine/kernel.h.
+ * conf/i386-pc.rmk (pkglib_IMAGES): Remove kernel.img.
+ (pkglib_PROGRAMS): Add kernel.img.
+ (kernel_img_HEADERS): Add machine/kernel.h.
+ (kernel_img_FORMAT): Removed.
+ (bin_UTILITIES): Remove grub-mkimage.
+ (grub_mkimage_SOURCES): Removed.
+ (grub_mkimage_CFLAGS): Likewise.
+ (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
+ * conf/i386-qemu.rmk (pkglib_IMAGES): Remove kernel.img.
+ (pkglib_PROGRAMS): Add kernel.img.
+ (bin_UTILITIES): Remove grub-mkimage.
+ (grub_mkimage_SOURCES): Removed.
+ (grub_mkimage_CFLAGS): Likewise.
+ (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
+ * conf/mips-qemu-mips.rmk (pkglib_IMAGES): Remove kernel.img.
+ (pkglib_PROGRAMS): Add kernel.img.
+ * conf/mips-yeeloong.rmk (pkglib_IMAGES): Remove kernel.img.
+ (pkglib_PROGRAMS): Add kernel.img.
+ * conf/mips.rmk (bin_UTILITIES): Remove grub-mkimage.
+ (grub_mkimage_SOURCES): Removed.
+ (grub_mkimage_CFLAGS): Likewise.
+ (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
+ * conf/sparc64-ieee1275.rmk (pkglib_IMAGES): Remove kernel.img.
+ (pkglib_PROGRAMS): Add kernel.img.
+ (bin_UTILITIES): Remove grub-mkimage.
+ (grub_mkimage_SOURCES): Removed.
+ (grub_mkimage_CFLAGS): Likewise.
+ (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
+ * conf/x86-efi.rmk (bin_UTILITIES): Remove grub-mkimage.
+ (grub_mkimage_SOURCES): Removed.
+ (grub_mkimage_CFLAGS): Likewise.
+ (util/grub-mkrawimage.c_DEPENDENCIES): Likewise.
+ * configure.ac (machine_CFLAGS): Add "-DMACHINE".
+ * include/grub/efi/pe32.h (grub_pe32_optional_header): Split into ...
+ (grub_pe32_optional_header): ... this.
+ (grub_pe64_optional_header): ... and this. All users updated.
+ (GRUB_PE32_PE32_MAGIC): Split into ..
+ (GRUB_PE32_PE32_MAGIC): .. this.
+ (GRUB_PE32_PE64_MAGIC): .. and this.
+ (GRUB_PE32_SIGNATURE_SIZE): New definition.
+ * include/grub/elf.h (PT_GNU_STACK): New definition.
+ * include/grub/i386/coreboot/kernel.h: Merged into include/grub/offsets.h. All users updated.
+ * include/grub/i386/efi/kernel.h: Likewise.
+ * include/grub/i386/kernel.h: Likewise.
+ * include/grub/i386/pc/kernel.h: Likewise.
+ * include/grub/i386/qemu/boot.h: Likewise.
+ * include/grub/mips/kernel.h: Likewise.
+ * include/grub/mips/qemu-mips/kernel.h: Likewise.
+ * include/grub/powerpc/ieee1275/kernel.h: Likewise.
+ * include/grub/powerpc/kernel.h: Likewise.
+ * include/grub/sparc64/ieee1275/boot.h: Likewise.
+ * include/grub/sparc64/ieee1275/kernel.h: Likewise.
+ * include/grub/sparc64/kernel.h: Likewise.
+ * include/grub/x86_64/efi/kernel.h: Likewise.
+ * include/grub/x86_64/kernel.h: Likewise.
+ * include/grub/offsets.h: New file.
+ * include/grub/kernel.h (grub_module_info): Split into ...
+ (grub_module_info32): ... this.
+ (grub_module_info64): ... and this.
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_KERNEL_SEG): Moved from here ...
+ * include/grub/offsets.h (GRUB_BOOT_I386_PC_KERNEL_SEG): ... here.
+ (grub_boot_blocklist): Moved from here ...
+ * include/grub/offsets.h (grub_pc_bios_boot_blocklist): ... here.
+ * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): Moved from here.
+ * include/grub/offsets.h (GRUB_MEMORY_I386_PC_UPPER): .. here.
+ * include/grub/types.h (grub_target_to_host16): Removed.
+ (grub_target_to_host32): Likewise.
+ (grub_target_to_host64): Likewise.
+ (grub_host_to_target16): Likewise.
+ (grub_host_to_target32): Likewise.
+ (grub_host_to_target64): Likewise.
+ (grub_host_to_target_addr): Likewise.
+
+ Support grub-mkrescue for efi, coreboot and qemu.
+
+ * conf/x86-efi.rmk (bin_SCRIPTS): Add grub-mkrescue.
+ * kern/efi/init.c (grub_efi_set_prefix): Handle baked in prefix.
+ * util/elf/grub-mkimage.c: Merged into util/grub-mkimage.c.
+ * util/grub-mkrawimage.c: Moved from here ...
+ * util/grub-mkimage.c: ... here. All users updated.
+ (ALIGN_ADDR): Use image_target.
+ (TARGET_NO_FIELD): New const.
+ (image_target_desc): New type.
+ (image_targets): New array.
+ (grub_target_to_host64): Use image_target.
+ (grub_target_to_host32): Likewise.
+ (grub_target_to_host16): Likewise.
+ (grub_host_to_target64): Likewise.
+ (grub_host_to_target32): Likewise.
+ (grub_host_to_target16): Likewise.
+ (grub_host_to_target_addr): Likewise.
+ (generate_image): Handle multiimage.
+ (main): Require -O parameter. All users updated.
+ * util/grub-mkimagexx.c: New file. Based on util/grub-mkrawimage.c and
+ util/efi/grub-mkimage.c
+ * util/grub-mkrescue.in: Handle coreboot, efi and qemu.
+ New option --rom-directory.
+ Use xorriso.
+ * util/i386/efi/grub-mkimage.c: Removed.
+ * util/i386/pc/grub-setup.c (grub_target_to_host16): New definition.
+ (grub_target_to_host32): Likewise.
+ (grub_target_to_host64): Likewise.
+ (grub_host_to_target16): Likewise.
+ (grub_host_to_target32): Likewise.
+ (grub_host_to_target64): Likewise.
+ * util/sparc64/ieee1275/grub-setup.c (grub_target_to_host16): New definition.
+ (grub_target_to_host32): Likewise.
+ (grub_target_to_host64): Likewise.
+ (grub_host_to_target16): Likewise.
+ (grub_host_to_target32): Likewise.
+ (grub_host_to_target64): Likewise.
+
+2010-05-17 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Source tree is reorganized for emu build.
+
+ * include/grub/util/console.h: Move from here...
+ * include/grub/emu/console.h: ...to here.
+ * include/grub/util/getroot.h: Move from here...
+ * include/grub/emu/getroot.h: ...to here.
+ * include/grub/util/hostdisk.h: Move from here...
+ * include/grub/emu/hostdisk.h: ...to here.
+ * util/console.c: Move from here...
+ * kern/emu/console.c: ...to here.
+ * util/getroot.c: Move from here...
+ * kern/emu/getroot.c: ...to here.
+ * util/grub-emu.c: Move from here...
+ * kern/emu/main.c: ...to here.
+ * util/hostdisk.c: Move from here...
+ * kern/emu/hostdisk.c: ...to here.
+ * util/hostfs.c: Move from here...
+ * kern/emu/hostfs.c: ...to here.
+ * util/mm.c: Move from here...
+ * kern/emu/mm.c: ...to here.
+ * util/pci.c: Move from here...
+ * bus/emu/pci.c: ...to here.
+ * util/sdl.c: Move from here...
+ * video/emu/sdl.c: ...to here.
+ * util/time.c: Move from here...
+ * kern/emu/time.c: ...to here.
+ * util/usb.c: Move from here...
+ * bus/usb/emu/usb.c: ...to here.
+
+ * include/grub/emu/misc.h: New header for grub-emu functions.
+ * kern/emu/misc.c: grub-emu functions separated from util/misc.c
+
+ * conf/any-emu.rmk: Rule updates for above renames.
+ * conf/common.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/i386-qemu.rmk: Likewise.
+ * conf/mips.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86-efi.rmk: Likewise.
+
+ * disk/lvm.h: #include updates for above renames.
+ * util/grub-mkrelpath.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/sparc64/ieee1275/grub-setup.c: Likewise.
+ * kern/emu/console.c: Likewise.
+ * kern/emu/getroot.c: Likewise.
+ * kern/emu/hostdisk.c: Likewise.
+ * kern/emu/main.c: Likewise. (was grub-emu.c earlier)
+
+ * include/grub/dl.h: Remove grub_dl_{ref,unref}.
+ * include/grub/util/misc.h: Move grub-emu functions to emu/misc.h.
+ * kern/dl.c: Handle null mod in grub_dl_{ref,unref}.
+ * util/misc.c: Remove grub-emu functions.
+
+2010-05-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix gfxmenu crash.
+ Reported by: Thorsten Grützmacher.
+
+ * gfxmenu/gui_circular_progress.c (circprog_destroy): Unregister
+ timeout hook.
+ (circprog_set_property): Register and unregister timeout hook.
+ * gfxmenu/gui_label.c (grub_gui_label): New fields template and value.
+ (label_destroy): Free template. and unregister hook.
+ (label_set_state): New function.
+ (label_set_property): Handle templates and hooks.
+ * gfxmenu/gui_progress_bar.c (progress_bar_destroy): Unregister
+ timeout hook.
+ (progress_bar_set_property): Register and unregister timeout hook.
+ * gfxmenu/view.c (TIMEOUT_COMPONENT_ID): Move from here ...
+ * include/grub/gui.h (GRUB_GFXMENU_TIMEOUT_COMPONENT_ID): ...to here
+ * gfxmenu/view.c (grub_gfxmenu_timeout_notifications): New variable.
+ (update_timeout_visit): Removed.
+ (update_timeouts): New function.
+ (redraw_timeouts): Likewise.
+ (grub_gfxmenu_print_timeout): Use update_timeouts and redraw_timeouts.
+ (grub_gfxmenu_clear_timeout): Likewise.
+ * include/grub/gui.h (grub_gfxmenu_set_state_t): New type.
+ (grub_gfxmenu_timeout_notify): Likewise.
+ (grub_gfxmenu_timeout_notifications): New external variable.
+ (grub_gfxmenu_timeout_register): New function.
+ (grub_gfxmenu_timeout_unregister): Likewise.
+
+2010-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Transform (broken) vga terminal into (working) vga video driver.
+
+ * conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
+ video/i386/pc/vga.c.
+ * include/grub/video.h (grub_video_driver_id):
+ Add GRUB_VIDEO_DRIVER_VGA.
+ * term/i386/pc/vga.c: Renamed to ...
+ * video/i386/pc/vga.c: ...this
+ (DEBUG_VGA): Removed.
+ (CHAR_WIDTH): Likewise.
+ (CHAR_HEIGHT): Likewise.
+ (TEXT_WIDTH): Likewise.
+ (TEXT_HEIGHT): Likewise.
+ (DEFAULT_FG_COLOR): Likewise.
+ (DEFAULT_BG_COLOR): Likewise.
+ (colored_char): Likewise.
+ (xpos): Likewise.
+ (ypos): Likewise.
+ (cursor_state): Likewise.
+ (fg_color): Likewise.
+ (bg_color): Likewise.
+ (text_buf): Likewise.
+ (page): Likewise.
+ (font): Likewise.
+ (framebuffer): New variable.
+ (set_read_map): Disabled.
+ (setup): New variable.
+ (is_target): Likewise.
+ (grub_vga_mod_init): Likewise.
+ (grub_vga_mod_fini): Likewise.
+ (check_vga_mem): Likewise.
+ (write_char): Likewise.
+ (write_cursor): Likewise.
+ (scroll_up): Likewise.
+ (grub_vga_putchar): Likewise.
+ (grub_vga_getcharwidth): Likewise.
+ (grub_vga_getwh): Likewise.
+ (grub_vga_getxy): Likewise.
+ (grub_vga_gotoxy): Likewise.
+ (grub_vga_cls): Likewise.
+ (grub_vga_setcolorstate): Likewise.
+ (grub_vga_setcursor): Likewise.
+ (grub_video_vga_init): New function.
+ (grub_video_vga_setup): Likewise.
+ (grub_video_vga_fini): Likewise.
+ (update_target): Likewise.
+ (grub_video_vga_blit_bitmap): Likewise.
+ (grub_video_vga_blit_render_target): Likewise.
+ (grub_video_vga_set_active_render_target): Likewise.
+ (grub_video_vga_get_active_render_target): Likewise.
+ (grub_video_vga_swap_buffers): Likewise.
+ (grub_video_vga_set_palette): Likewise.
+ (grub_video_vga_get_info_and_fini): Likewise.
+ (grub_vga_term): Removed.
+ (grub_video_vga_adapter): New variable.
+ (GRUB_MOD_INIT): Register a video driver instead of terminal.
+ (GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
+
+2010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/readers/jpeg.c: Indented.
+
+2010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Various jpeg cleanups.
+
+ * video/readers/jpeg.c (grub_jpeg_get_huff_code): Use ARRAY_SIZE.
+ (grub_jpeg_decode_quan_table): Use sizeof.
+ (grub_jpeg_decode_du): Use ARRAY_SIZE.
+
+2010-05-05 Peter Hurley <No e-mail available> (tiny change)
+
+ * video/readers/jpeg.c (grub_jpeg_decode_huff_table): Loop over all
+ tables. Ignore non-last ac bit.
+ (grub_jpeg_decode_quan_table): Likewise.
+
+2010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New value
+ GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM.
+ * kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM on qemu.
+ * kern/ieee1275/init.c (grub_claim_heap): Don0t allocate below
+ 1.5MiB if GRUB_IEEE1275_FLAG_NO_PRE1_5M_CLAIM is set.
+
+2010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one
+ error.
+
+2010-05-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code.
+
+2010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/parttool.c (grub_cmd_parttool): Fix #if !GRUB_NO_MODULES
+ condition.
+
+2010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/mm.c (grub_real_malloc): Put magic and size assignment in common
+ part.
+
+2010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/mm.c (grub_mm_init_region): Check for region size after aligning
+ pointers.
+
+2010-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/mm.c (grub_real_malloc): Fix size calculation when extra == 0.
+
+2010-05-01 Christian Franke <franke@computer.org>
+
+ * util/grub-mkconfig_lib.in (make_system_path_relative_to_its_root):
+ Remove broken Cygwin path conversion.
+ * util/misc.c: [__CYGWIN__] Add include and define.
+ [__CYGWIN__] (get_win32_path): Copy function from getroot.c, modify
+ for Cygwin 1.7.
+ (make_system_path_relative_to_its_root): Simplify loop, replace early
+ return by break.
+ [__CYGWIN__] Add conversion to win32 path.
+ Include "/" case in trailing slash removal.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/main.c (grub_load_config): Fix copy-pasted comment.
+ Reported by: Seth Goldberg
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/help.c (grub_cmd_help): Fix a typo.
+ Reported by: Seth Goldberg
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command
+ name and add N_.
+ * commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise.
+ * commands/iorw.c (GRUB_MOD_INIT): Likewise.
+ * commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise.
+ * commands/regexp.c (GRUB_MOD_INIT): Likewise.
+ * commands/setpci.c (GRUB_MOD_INIT): Likewise.
+ * commands/terminal.c (GRUB_MOD_INIT): Likewise.
+ * efiemu/main.c (GRUB_MOD_INIT): Likewise.
+ * font/font_cmd.c (GRUB_MOD_INIT): Likewise.
+ * kern/corecmd.c (GRUB_MOD_INIT): Likewise.
+ * mmap/mmap.c (GRUB_MOD_INIT): Likewise.
+ * normal/context.c (GRUB_MOD_INIT): Likewise.
+ * normal/main.c (GRUB_MOD_INIT): Likewise.
+ * term/gfxterm.c (GRUB_MOD_INIT): Likewise.
+ * term/serial.c (GRUB_MOD_INIT): Likewise.
+ * term/terminfo.c (GRUB_MOD_INIT): Likewise.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/mm.c (grub_real_malloc): Satisfy alignment requirement when
+ extra == 0.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/iorw.c: New file.
+ * conf/i386.rmk (pkglib_MODULES): Add iorw.mod.
+ (iorw_mod_SOURCES): New variable.
+ (iorw_mod_CFLAGS): Likewise.
+ (iorw_mod_LDFLAGS): Likewise.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Hotkey support
+
+ * include/grub/menu.h (grub_menu_entry): New field 'hotkey'.
+ * normal/main.c (hotkey_aliases): New variable.
+ (grub_normal_add_menu_entry): Parse "--hotkey".
+ * normal/menu_text.c (run_menu): Handle hotkeys.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/coreboot/init.c (grub_machine_init): Call
+ grub_machine_mmap_init on qemu.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * boot/i386/qemu/boot.S: Add a missing .code16.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use LBIO on coreboot.
+
+ * conf/i386-coreboot.rmk (kernel_img_SOURCES): Change
+ kern/i386/multiboot_mmap.c to kern/i386/coreboot/mmap.c.
+ * include/grub/i386/coreboot/memory.h (GRUB_LINUXBIOS_MEMBER_LINK):
+ New declaration.
+ * kern/i386/coreboot/init.c (grub_machine_init): Don't call
+ grub_machine_mmap_init on coreboot.
+ * kern/i386/coreboot/mmap.c (grub_linuxbios_table_iterate): Handle
+ GRUB_LINUXBIOS_MEMBER_LINK.
+ (grub_machine_mmap_iterate): Fix declaration.
+ * kern/i386/coreboot/startup.S: Don't save mbi location on coreboot.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split coreboot and multiboot ports.
+
+ * conf/i386-multiboot.rmk: New file.
+ * configure.ac: Add multiboot port.
+ * include/grub/i386/multiboot/boot.h: New file.
+ * include/grub/i386/multiboot/console.h: Likewise.
+ * include/grub/i386/multiboot/init.h: Likewise.
+ * include/grub/i386/multiboot/kernel.h: Likewise.
+ * include/grub/i386/multiboot/loader.h: Likewise.
+ * include/grub/i386/multiboot/memory.h: Likewise.
+ * include/grub/i386/multiboot/serial.h: Likewise.
+ * include/grub/i386/multiboot/time.h: Likewise.
+ * include/grub/multiboot.h: Add GRUB_MACHINE_MULTIBOOT to ifdef.
+ * loader/multiboot.c: Likewise.
+ * loader/multiboot_mbi2.c: Likewise.
+ * util/grub-mkrescue.in: Generate multiboot rescue.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/parser.c (grub_parser_execute): Cope with read-only config.
+
+2010-05-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge handling of input and output terminals. Fix a hang.
+
+ * commands/terminal.c (abstract_terminal): New struct.
+ (handle_command): New function. Based on grub_cmd_terminal_input.
+ (grub_cmd_terminal_input): Use handle_command.
+ (grub_cmd_terminal_output): Use handle_command.
+
+2010-05-01 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix comment handling.
+
+ * tests/grub_script_comments.in: New testcase.
+ * conf/tests.rmk: Rules for new testcase.
+ * script/yylex.l: Updated flex rules.
+
+2010-04-28 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * docs/grub.texi (play): Document that zero pitches produce rests.
+ * commands/i386/pc/play.c (grub_cmd_play): Call 'grub_file_open' only
+ if argc is 1.
+
+2010-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/x86-efi.rmk (linux_mod_SOURCES): Write explicitly to avoid
+ autogen issues.
+
+2010-04-26 Christian Franke <franke@computer.org>
+
+ * include/grub/util/getroot.h (grub_get_prefix): Remove prototype.
+ * util/getroot.c [__CYGWIN__] (get_win32_path): Remove function.
+ (grub_get_prefix): Remove function.
+ * util/grub-emu.c (main): Replace grub_get_prefix () call by
+ make_system_path_relative_to_its_root ().
+ * util/sparc64/ieee1275/grub-setup.c (main): Likewise.
+
+2010-04-24 Christian Franke <franke@computer.org>
+
+ * Makefile.in (TARGET_LDFLAGS): Add -static-libgcc.
+ (kernel_img_LDFLAGS): Remove -static-libgcc.
+
+2010-04-24 Christian Franke <franke@computer.org>
+
+ * configure.ac: Do not CHECK_BSS_START_SYMBOL
+ and CHECK_END_SYMBOL if grub-emu is built.
+ Unset TARGET_OBJ2ELF if grub-emu is built
+ without module support.
+
+2010-04-24 Jiro SEKIBA <jir@unicus.jp>
+
+ Nilfs2 support.
+
+ * conf/common.rmk (grub_probe_SOURCES): Add fs/nilfs2.c.
+ (grub_fstest_SOURCES): Likewise.
+ (pkglib_MODULES): Add nilfs2.mod.
+ (nilfs2_mod_SOURCES): New variable.
+ (nilfs2_mod_CFLAGS): Likewise.
+ (nilfs2_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
+ * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add fs/nilfs2.c.
+ * fs/nilfs2.c: New file.
+
+2010-04-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Refuse to compile for x86_64-efi is mcmodel=large
+ is not supported.
+
+2010-04-19 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Add grub-mkconfig support for NetBSD.
+
+ * util/grub.d/10_netbsd.in: grub-mkconfig helper script for NetBSD.
+ * util/grub-mkconfig.in: export new NetBSD specific variables.
+ * po/POTFILES-shell: added 10_netbsd.in.
+ * util/grub-mkconfig_lib.in: check for gettext binary, default to echo.
+
+2010-04-19 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix emu build with grub-emu-pci and grub-emu-modules.
+
+ * include/grub/util/misc.h: Export grub_util_{info,error,warn}
+ functions.
+ * include/grub/libpciaccess.h: New file.
+ * conf/any-emu.rmk: Update kernel headers for emu build.
+
+2010-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/udf.c (grub_udf_iterate_dir): Silence a spurious warning.
+
+2010-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/udf.c (grub_udf_iterate_dir): Decode the Unicode filenames.
+
+2010-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * boot/sparc64/ieee1275/boot.S: Various size-reducing changes.
+ Retrieve chosen/bootpath if bootpath isn't hardcoded.
+ * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Add
+ util/ieee1275/ofpath.c.
+ * util/sparc64/ieee1275/grub-ofpathname.c: Renamed to ...
+ * util/ieee1275/grub-ofpathname.c: ... this. All users updated
+ * include/grub/sparc64/ieee1275/boot.h
+ (GRUB_BOOT_MACHINE_KERNEL_SECTOR): Renamed to ...
+ (GRUB_BOOT_MACHINE_KERNEL_BYTE): ...this. Moved 8 bytes lower.
+ * util/hostdisk.c (grub_util_biosdisk_get_osdev): New function.
+ * util/ieee1275/ofpath.c (grub_util_devname_to_ofpath): Make argument
+ const char *.
+ * util/sparc64/ieee1275/grub-setup.c (compute_dest_ofpath): Removed.
+ (setup): Use KERNEL_BYTE instead of KERNEL_SECTOR.
+ Use grub_util_devname_to_ofpath. Zero-fill boot_devpath on same disk
+ install.
+
+2010-04-18 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub-mkconfig.in: Corrected two == equality tests.
+ Set grub_prefix as in grub-install for NetBSD and OpenBSD.
+ * configure.ac: All definitions and uses of TARGET_IMG_LDFLAGS_AC now
+ expect a number appended to it.
+ * acinclude.m4 (grub_PROG_OBJCOPY_ABSOLUTE): ${TARGET_IMG_LDFLAGS_AC}
+ expects a number appended to it.
+
+2010-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * po/POTFILES: Renamed multiboot_loader.c to multiboot.c
+
+2010-04-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/hostdisk.c (make_device_name): Change to new partition naming.
+
+2010-04-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/lvm.c (grub_lvm_memberlist): Issue an error if pv->disk = 0.
+
+2010-04-17 Christian Franke <franke@computer.org>
+
+ * Makefile.in: Add missing localedir setting.
+
+2010-04-14 Colin Watson <cjwatson@ubuntu.com>
+
+ Restore TEXTDOMAINDIR correction from r1889, lost apparently by
+ mistake in r2156. Noticed by Anthony Fok.
+
+ * util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased
+ @localedir@.
+ * util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
+
+2010-04-14 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix a spurious, uninitialized variable warning.
+
+ * loader/i386/bsdXX.c (grub_freebsd_load_elfmodule_obj):
+ Initialize variable, shdr.
+ (grub_freebsd_load_elfmodule): Likewise.
+ (grub_freebsd_load_elf_meta): Likewise.
+
+2010-04-13 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix for escaped dollar in double quoted strings.
+
+ * script/yylex.l: Updated flex rules.
+ * conf/tests.rmk: Rule for new testcase.
+ * tests/grub_script_dollar.in: New testcase.
+
+2010-04-13 Carles Pina i Estany <carles@pina.cat>
+2010-04-13 Colin Watson <cjwatson@ubuntu.com>
+
+ Enclose all translated strings in grub.cfg in single quotes, and
+ escape them appropriately (Ubuntu bug #552921).
+
+ * util/grub-mkconfig_lib.in (gettext_quoted): New function.
+ * util/grub.d/10_hurd.in: Use it.
+ * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
+ * util/grub.d/10_linux.in (linux_entry): Likewise.
+
+2010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix cygwin compilation.
+
+ * configure.ac: Define NEED_REGISTER_FRAME_INFO.
+ * include/grub/misc.h (__register_frame_info)
+ [NEED_REGISTER_FRAME_INFO && !UTIL]: New export.
+ (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
+ * kern/misc.c (__register_frame_info)
+ [NEED_REGISTER_FRAME_INFO && !UTIL]: New empty function.
+ (__deregister_frame_info) [NEED_REGISTER_FRAME_INFO && !UTIL]: Likewise.
+
+2010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Respect grub_cv_asm_uscore when defining dummy symbols.
+
+2010-04-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Unify libgcc processing.
+
+ * Makefile.in (kernel_img_LDFLAGS): New variable.
+ * conf/common.rmk (kernel_img_HEADERS): Add libgcc.h.
+ * conf/i386-coreboot.rmk (kernel_img_LDFLAGS): Append instead of
+ overwriting.
+ * conf/i386-ieee1275.rmk (kernel_img_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk (kernel_img_LDFLAGS): Likewise.
+ * conf/i386-qemu.rmk (kernel_img_LDFLAGS): Likewise.
+ * conf/x86-efi.rmk (kernel_img_LDFLAGS): Likewise.
+ * conf/mips-qemu-mips.rmk (kernel_img_LDFLAGS): Append instead of
+ overwriting. Remove -lgcc and -static-libgcc
+ * conf/mips-yeeloong.rmk (kernel_img_LDFLAGS): Likewise.
+ * conf/mips.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
+ * conf/powerpc-ieee1275.rmk (kernel_img_HEADERS): Remove cpu/libgcc.h
+ (kernel_img_LDFLAGS): Append instead of overwriting.
+ Remove -lgcc and -static-libgcc
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * include/grub/powerpc/libgcc.h: Move to ...
+ * include/grub/libgcc.h: .. this.
+ * include/grub/libgcc.h: Don't export most of the function on x86.
+ (__bswapsi2): New export.
+ (__bswapdi2): Likewise.
+ * include/grub/mips/libgcc.h: Removed.
+ * include/grub/sparc64/libgcc.h: Likewise.
+
+2010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Remove
+ disk_info_msg (conflicts with gettexting into languages with cases).
+
+2010-04-10 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Add grub-probe support for NetBSD.
+
+ * util/getroot.c (find_root_device): Convert block device to
+ character device on NetBSD.
+ * util/probe.c (probe): Require character device on NetBSD.
+ * util/hostdisk.c: NetBSD specific headers.
+ (configure_device_driver): new function to tune device driver
+ parameters (currently only for NetBSD floppy driver).
+ (grub_util_biosdisk_open): NetBSD specific code (get disk size
+ via disklabel ioctl).
+ (open_device): call configure_device_driver on NetBSD.
+ (convert_system_partition_to_system_disk): NetBSD specific code.
+ (device_is_wholedisk): Likewise.
+ (grub_util_biosdisk_get_grub_dev): Likewise.
+ (make_device_name): Fixed a typo in bsd_part_str.
+ * configure.ac: check for opendisk() and getrawpartition() on
+ NetBSD and set LIBUTIL.
+ * Makefile.in: add LIBUTIL to LIBS.
+
+2010-04-10 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Documentation fix.
+
+ * util/grub-script-check.c: Better help message.
+
+2010-04-10 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix FreeBSD build.
+
+ * configure.ac: Flex version check.
+ * conf/common.rmk: Add -Wno-error to sh.mod.
+ * script/yylex.l: Remove all #pragma.
+
+2010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/util/misc.h (canonicalise_file_name): Add missing
+ prototype.
+ Reported by: Seth Goldberg.
+
+2010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/multiboot.c (GRUB_MOD_INIT) [GRUB_USE_MULTIBOOT2]:
+ Rename "module" to "module2".
+ Reported by: Seth Goldberg.
+
+2010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/memory.h (grub_machine_mmap_iterate): Remove
+ EXPORT_FUNC.
+ Reported by: Seth Goldberg.
+
+2010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * lib/posix_wrap/locale.h: Add missing file.
+ Reported by: Seth Goldberg.
+
+2010-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ grub-emu module load support.
+
+ * Makefile.in (TARGET_NO_MODULES): New variable. All users of
+ NO_DYNAMIC_MODULES switched to this.
+ (TARGET_CFLAGS): Add -DGRUB_TARGET_NO_MODULES=1 if applicable.
+ (CFLAGS): Likewise.
+ * conf/any-emu.rmk: Generate symlist.
+ (kernel_img_HEADERS): Add util/datetime.h.
+ (kernel_img_HEADERS) [sdl]: Add sdl.h.
+ (kernel_img_HEADERS) [libusb]: Add libusb.h.
+ (kernel_img_SOURCES) [TARGET_NO_MODULES = no && !x86]: Add
+ kern/$(target_cpu)/cache.S.
+ * configure.ac (grub-emu-modules): New option.
+ * genmk.rb: Handle multiple source lists.
+ * include/grub/sdl.h: New file.
+ * include/grub/libusb.h: Likewise.
+ * util/grub-emu.c (main): Hanle (host) root.
+ * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Error with
+ GRUB_ERR_UNKNOWN_DEVICE.
+ * util/misc.c: Move mm functions to ...
+ * util/mm.c: ... here. All users updated.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.in (RMKFILES): Search in srcdir and not current directory.
+ (MAINTAINER_CLEANFILES): Don't add $(srcdir) to MKFILES. Add few
+ missing files.
+ (maintainer-clean): Remove libgcrypt-grub.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/efi/console.c (grub_console_checkkey): Macroify key contants.
+
+2010-04-09 EFI Coder <eficoder@hotmail.com>
+
+ * normal/menu_text.c (print_message): Clean up the message and show
+ the Fn information when on EFI
+ * term/efi/console.c (grub_console_checkkey): Add F4 support.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/autofs.c (read_fs_list): New parameter 'prefix'.
+ All users updated.
+ * normal/crypto.c (read_crypto_list): Likewise.
+ * normal/dyncmd.c (read_command_list): Likewise.
+ * normal/term.c (read_terminal_list): Likewise.
+ * normal/main.c (read_lists): Use explicit prefix.
+ (read_lists_hook): Use read_lists.
+ (grub_normal_execute): Likewise.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Fix incorrect path in coreboot part.
+ Reported by: Thomas Schmitt.
+ Add -no-emul-boot to grub-mkisofs parameters.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * font/font.c: Indented.
+
+2010-04-09 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Elif support to GRUB script (by Deepak Vankadaru).
+
+ * tests/grub_script_if.in: New testcase.
+ * conf/tests.rmk: Rule for new testcase.
+ * script/parser.y: Grammar rules for elif.
+
+2010-04-09 BVK Chaitanya <bvk.groups@gmail.com>
+
+ While and until loops support to GRUB script.
+
+ * include/grub/script_sh.h (grub_script_cmdwhile): New struct.
+ (grub_script_create_cmdwhile): New function prototype.
+ (grub_script_execute_cmdwhile): New function prototype.
+ * script/execute.c (grub_script_execute_cmdwhile): New function.
+ * script/parser.y (command): New commands.
+ (whilecmd): New grammar rule.
+ (untilcmd): New grammar rule.
+ * script/script.c (grub_script_create_cmdwhile): New function.
+ * util/grub-script-check.c (grub_script_execute_cmdwhile): New
+ function.
+
+ * tests/grub_script_while1.in: New testcase.
+ * conf/tests.rmk: Rule for new testcase.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/00_header.in: Add few missing quotes. Recognise *.jpeg
+ as *.jpg.
+
+2010-04-09 Mario Vazquez <mariovazq@gmail.com>
+
+ GRUB_BACKGROUND support.
+
+ * util/grub-mkconfig.in: Export GRUB_BACKGROUND.
+ * util/grub.d/00_header.in: Parse GRUB_BACKGROUND.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Load fonts and modules for gfxmenu in grub-mkconfig.
+ Idea by: Mario Vazquez
+
+ * util/grub.d/00_header.in: Load pf2 and image modules.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ grub-mkconfig multiple terminal support.
+
+ * util/grub-mkconfig.in: Handle multiple terminals correctly.
+ * util/grub.d/00_header.in: Likewise.
+
+2010-04-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.in: Specify files explicitly instead of using $< and $@ since
+ we use cd $(srcdir).
+
+2010-04-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/10_linux.in: Only use the first word of
+ GRUB_DISTRIBUTOR for --class, to avoid problems if somebody puts
+ spaces in GRUB_DISTRIBUTOR.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+
+2010-04-06 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Fix unit testing framework for Qemu 0.12.
+
+ * tests/util/grub-shell.in: Remove -serial stdio option.
+
+2010-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ POSIX header file wrappers.
+
+ * lib/posix_wrap/assert.h: New file. Wrapper for its POSIX
+ equivalents.
+ * lib/posix_wrap/ctype.h: Likewise.
+ * lib/posix_wrap/errno.h: Likewise.
+ * lib/posix_wrap/langinfo.h: Likewise.
+ * lib/posix_wrap/limits.h: Likewise.
+ * lib/posix_wrap/localcharset.h: Likewise.
+ * lib/posix_wrap/stdint.h: Likewise.
+ * lib/posix_wrap/stdio.h: Likewise.
+ * lib/posix_wrap/stdlib.h: Likewise.
+ * lib/posix_wrap/string.h: Likewise.
+ * lib/posix_wrap/sys/types.h: Likewise.
+ * lib/posix_wrap/unistd.h: Likewise.
+ * lib/posix_wrap/wchar.h: Likewise.
+ * lib/posix_wrap/wctype.h: Likewise.
+ * conf/common.rmk (grub_script.yy.c): Remove #include elimination.
+ (grub_script.yy.h): Likewise.
+ * script/yylex.l: Remove POSIX emulation #defines.
+ * Makefile.in (POSIX_CFLAGS): New variable.
+ (GNULIB_UTIL_CFLAGS): Likewise.
+
+ Regexp support.
+
+ * conf/common.rmk (pkglib_MODULES): Add regexp.mod.
+ (regexp_mod_SOURCES): New variable.
+ (regexp_mod_CFLAGS): Likewise.
+ (regexp_mod_LDFLAGS): Likewise.
+ * commands/regexp.c: New file.
+ * gnulib/regcomp.c: New file. Imported from gnulib.
+ * gnulib/regex.c: Likewise.
+ * gnulib/regex_internal.c: Likewise.
+ * gnulib/regex_internal.h: Likewise.
+ * gnulib/regexec.c: Likewise.
+ * gnulib/regex.h: Likewise.
+
+2010-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot_mbi.c (grub_multiboot_load): Correctly report
+ unsupported video mode types.
+
+2010-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/pc/startup.S (grub_getrtsecs): Removed (dead code).
+
+2010-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/pc/init.h (grub_get_mmap_entry): Don't export.
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Remove machine/init.h.
+
+2010-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove unused grub_vga_get_font.
+
+ * kern/i386/pc/startup.S (grub_vga_get_font): Removed.
+ * include/grub/i386/pc/vga.h (grub_vga_get_font): Likewise.
+
+2010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * kern/misc.c: Disable the __enable_execute_stack hack for utilities.
+ * include/grub/misc.h: Likewise.
+
+2010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub-install.in: Add `|| exit 1' to all grub-probe calls
+ for which failure is fatal.
+
+2010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/grub-install.in: Use mkdir -p to create grub directory.
+ * util/i386/efi/grub-install.in: Likewise.
+ * util/ieee1275/grub-install.in: Likewise.
+
+2010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * Makefile.in (LEX): new variable.
+
+2010-04-03 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * util/i386/efi/grub-dumpdevtree: replaced the non-portable `==' by
+ `=' and added double quotes on operands of this equality test.
+
+2010-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.in (uninstall): Remove a leftover debug echo.
+ Reported by: Grégoire Sutre
+
+2010-04-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ MIPS multiboot2 support.
+
+ * conf/mips.rmk (pkglib_MODULES): Add multiboot2.mod.
+ (multiboot2_mod_SOURCES): New variable.
+ (multiboot2_mod_CFLAGS): Likewise.
+ (multiboot2_mod_LDFLAGS): Likewise.
+ (multiboot2_mod_ASFLAGS): Likewise.
+ * include/grub/i386/multiboot.h (MULTIBOOT_INITIAL_STATE): New
+ definition.
+ (MULTIBOOT_ENTRY_REGISTER): Likewise.
+ (MULTIBOOT_MBI_REGISTER): Likewise.
+ (MULTIBOOT_ARCHITECTURE_CURRENT): Likewise.
+ (MULTIBOOT_ELF32_MACHINE): Likewise.
+ (MULTIBOOT_ELF64_MACHINE): Likewise.
+ * include/grub/mips/multiboot.h: New file.
+ * include/grub/video.h (grub_video_driver_id): New type
+ GRUB_VIDEO_DRIVER_SM712.
+ (grub_video_get_info_and_fini): Export.
+ (grub_video_get_palette): Likewise.
+ (grub_video_get_driver_id): Likewise.
+ * include/multiboot2.h: Resynced with spec.
+ * loader/i386/multiboot.c: Moved from here ...
+ * loader/multiboot.c: ... here. All users updated.
+ (grub_multiboot_boot): Use platform-specific macros.
+ * loader/i386/multiboot_elfxx.c: Moved from here ...
+ * loader/multiboot_elfxx.c: ... here. All users updated.
+ (E_MACHINE): Use MULTIBOOT_ELF32_MACHINE and MULTIBOOT_ELF64_MACHINE.
+ * loader/i386/multiboot_mbi2.c (grub_multiboot_load): Check arcitecture.
+ * video/sm712.c (grub_video_sm712_adapter): Add missing id field.
+
+2010-04-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Import gnulib argp module.
+
+ * gnulib/argp-ba.c: New file.
+ * gnulib/argp-eexst.c: Likewise.
+ * gnulib/argp-fmtstream.c: Likewise.
+ * gnulib/argp-fmtstream.h: Likewise.
+ * gnulib/argp-fs-xinl.c: Likewise.
+ * gnulib/argp-help.c: Likewise.
+ * gnulib/argp-namefrob.h: Likewise.
+ * gnulib/argp-parse.c: Likewise.
+ * gnulib/argp-pin.c: Likewise.
+ * gnulib/argp-pv.c: Likewise.
+ * gnulib/argp-pvh.c: Likewise.
+ * gnulib/argp-version-etc.c: Likewise.
+ * gnulib/argp-version-etc.h: Likewise.
+ * gnulib/argp-xinl.c: Likewise.
+ * gnulib/argp.h: Likewise.
+
+2010-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/device.c (grub_device_iterate): Clear errors after failed
+ opening device.
+
+2010-03-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/ieee1275/openfw.c (grub_children_iterate): Skip device itself if
+ returned by firmware.
+
+2010-03-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot_mbi2.c (retrieve_video_parameters): Fix
+ compilation on coreboot and qemu
+
+2010-03-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/multiboot2.h: Resync with spec.
+
+2010-03-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Multiboot2 tag support
+
+ * conf/i386.rmk (multiboot2_mod_SOURCES): Replace
+ loader/i386/multiboot_mbi.c with loader/i386/multiboot_mbi2.c.
+ Remove loader/multiboot_loader.c.
+ * include/grub/i386/multiboot.h (grub_multiboot_real_boot): Removed.
+ (grub_multiboot2_real_boot): Likewise.
+ * include/grub/multiboot.h (grub_multiboot_set_accepts_video): Removed.
+ (grub_get_multiboot_mmap_count): New proto.
+ (grub_fill_multiboot_mmap): Likewise.
+ (grub_multiboot_set_video_mode): Likewise.
+ (grub_multiboot_set_console): Likewise.
+ (grub_multiboot_load): Likewise.
+ (grub_multiboot_load_elf): Likewise.
+ (GRUB_MULTIBOOT_CONSOLE_EGA_TEXT): New definition.
+ (GRUB_MULTIBOOT_CONSOLE_FRAMEBUFFER): Likewise.
+ * include/multiboot.h: Resynced with specification.
+ * include/multiboot2.h: Resynced with specification.
+ * loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): Moved from here...
+ * loader/i386/multiboot.c (DEFAULT_VIDEO_MODE): ... here.
+ * loader/i386/multiboot_mbi.c (HAS_VGA_TEXT): Moved from here ..
+ * include/grub/multiboot.h (GRUB_MACHINE_HAS_VGA_TEXT): ... here. All
+ users updated.
+ * loader/i386/multiboot_mbi.c (accepts_video): Moved from here...
+ * loader/i386/multiboot.c (accepts_video): ... here. All users updated.
+ * loader/i386/multiboot_mbi.c (grub_multiboot_set_accepts_video):
+ Removed.
+ * loader/i386/multiboot_mbi.c (grub_get_multiboot_mmap_len):
+ Moved from here...
+ * loader/i386/multiboot.c (grub_get_multiboot_mmap_len): ... here.
+ * loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
+ Moved from here...
+ * loader/i386/multiboot.c (grub_fill_multiboot_mmap): ... here.
+ * loader/i386/multiboot_mbi.c (set_video_mode): Moved from here...
+ * loader/i386/multiboot.c (grub_multiboot_set_video_mode): ... here.
+ All users updated.
+ * loader/i386/multiboot_mbi2.c: New file.
+
+2010-03-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Resync with gnulib.
+
+ * Makefile.in (GNULIB_CFLAGS): New variable.
+ * conf/common.rmk (grub_mkisofs_CFLAGS): Add GNULIB_CFLAGS.
+ (grub_script_check_CFLAGS): New variable.
+ * gnulib/alloca.h: Resync with gnulib.
+ * gnulib/error.c: Likewise.
+ * gnulib/error.h: Likewise.
+ * gnulib/fnmatch.c: Likewise.
+ * gnulib/fnmatch_loop.c: Likewise.
+ * gnulib/getdelim.c: Likewise.
+ * gnulib/getline.c: Likewise.
+ * gnulib/getopt.c: Likewise.
+ * gnulib/getopt1.c: Likewise.
+ * gnulib/getopt_int.h: Likewise.
+ * gnulib/gettext.h: Likewise.
+ * gnulib/progname.c: Likewise.
+ * gnulib/progname.h: Likewise.
+
+2010-03-27 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ Fix a build failure (-Wundef -Werror) when ENABLE_NLS is not defined,
+ which is the case with --disabled-nls.
+
+ * include/grub/i18n.h: Use (defined(ENABLE_NLS)
+ && ENABLE_NLS) instead of ENABLE_NLS in all #if preprocessor macros.
+ * util/misc.c: Likewise.
+ * util/mkisofs/mkisofs.c: Likewise.
+ * util/mkisofs/mkisofs.h: Likewise.
+
+2010-03-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Simplify Apple CC support.
+
+ * commands/i386/pc/drivemap_int13h.S: Use LOCAL when possible.
+ Add 0 byte at the end not to have a symbol with empty target.
+ * mmap/i386/pc/mmap_helper.S: Likewise.
+ * genmk.rb: Ignore errors 2030 and 2050.
+ * kern/i386/pc/startup.S: Use LOCAL when possible.
+
+2010-03-26 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Testcase and the fix for final semicolon on cmdline.
+
+ * tests/grub_script_final_semicolon.in: New testcase.
+ * conf/tests.rmk: Rules for the new testcase.
+ * script/parser.y: Grammar fix.
+
+2010-03-26 BVK Chaitanya <bvk@localhost>
+
+ Blank lines testcase for GRUB script.
+
+ * tests/grub_script_blanklines.in: New testcase.
+ * conf/tests.rmk: Rules for the new testcase.
+
+2010-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't use __FILE__.
+
+ * genmk.rb: Add -DGRUB_FILE to all C targets.
+ * fs/reiserfs.c: Replace __FILE__ with GRUB_FILE.
+ * include/grub/list.h: Likewise.
+ * include/grub/misc.h: Likewise.
+ * include/grub/mm.h: Likewise.
+ * include/grub/test.h: Likewise.
+ * kern/mm.c: Likewise.
+ * lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
+
+2010-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Sunpc partitions support.
+
+ * conf/common.rmk (grub_probe_SOURCES): Add partmap/sunpc.c.
+ (grub_fstest_SOURCES): Likewise.
+ (pkglib_MODULES): Add part_sunpc.mod.
+ (part_sunpc_mod_SOURCES): New variable.
+ (part_sunpc_mod_CFLAGS): Likewise.
+ (part_sunpc_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/sunpc.c.
+ * partmap/sunpc.c: New file.
+
+2010-03-26 BVK Chaitanya <bvk@localhost>
+
+ For loop support to GRUB script.
+
+ * include/grub/script_sh.h (grub_script_cmdfor): New struct.
+ (grub_script_create_cmdfor): New function prototype.
+ (grub_script_execute_cmdfor): New function prototype.
+ * script/execute.c (grub_script_execute_cmdfor): New function.
+ * script/parser.y (command): New for command.
+ (forcmd): New grammar rule.
+ * script/script.c (grub_script_create_cmdfor): New function.
+ * util/grub-script-check.c (grub_script_execute_cmdfor): New
+ function.
+ * tests/grub_script_for1.in: New testcase.
+ * conf/tests.rmk: Rules for new testcase.
+
+2010-03-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Nested partitions
+
+ * commands/blocklist.c (grub_cmd_blocklist): Don't check whether
+ 'partition' is NULL, grub_partition_get_start already does that.
+ * commands/loadenv.c (check_blocklists): Likewise.
+ (write_blocklists): Likewise.
+ * conf/common.rmk (grub_probe_SOURCES): Add partmap/bsdlabel.c.
+ (grub_fstest_SOURCES): Likewise.
+ (pkglib_MODULES): Add part_bsd.mod.
+ (part_bsd_mod_SOURCES): New variable.
+ (part_bsd_mod_CFLAGS): Likewise.
+ (part_bsd_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/bsdlabel.c.
+ (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * include/grub/bsdlabel.h: New file.
+ * include/grub/partition.h (grub_partition_map): Remove 'probe' and
+ 'get_name'.
+ (grub_partition): Add 'parent' and 'number'. Remove 'data'.
+ (grub_partition_map_list): New variable.
+ (grub_partition_map_register): Inline.
+ (grub_partition_map_unregister): Likewise.
+ (FOR_PARTITION_MAPS): New macro.
+ (grub_partition_map_iterate): Removed.
+ (grub_partition_get_start): Handle nested partitions.
+ * include/grub/msdos_partition.h: Remove bsd-related entries.
+ (grub_pc_partition): Remove.
+ * kern/disk.c (grub_disk_close): Free partition data.
+ (grub_disk_adjust_range): Handle nested partitions.
+ * kern/partition.c (grub_partition_map_probe): New function.
+ (grub_partition_probe): Parse name to number, handle subpartitions.
+ (get_partmap): New function.
+ (grub_partition_iterate): Handle subpartitions.
+ (grub_partition_get_name): Likewise.
+ * loader/i386/pc/bsd.c (grub_bsd_get_device): Likewise.
+ * loader/i386/multiboot.c (grub_multiboot_get_bootdev): Likewise.
+ * loader/i386/pc/chainloader.c (grub_chainloader_cmd): Likewise.
+ * partmap/acorn.c (acorn_partition_map_iterate): Don't force raw access.
+ Set 'number'.
+ (acorn_partition_map_probe): Remove.
+ (acorn_partition_map_get_name): Likewise.
+ * partmap/amiga.c (amiga_partition_map_iterate): Don't force raw access.
+ Set 'number'.
+ Set 'index' to 0 since there can be only one partition entry per sector.
+ (amiga_partition_map_probe): Remove.
+ (amiga_partition_map_get_name): Likewise.
+ * partmap/apple.c (apple_partition_map_iterate): Don't force raw access.
+ Set 'number'.
+ Set 'offset' and 'index' to real positions of partitions.
+ (apple_partition_map_probe): Remove.
+ (apple_partition_map_get_name): Likewise.
+ * partmap/bsdlabel.c: New file.
+ * partmap/gpt.c (gpt_partition_map_iterate): Don't force raw access.
+ Set 'number'.
+ Allocate 'data' so it can be correctly freed.
+ Set 'index' to offset inside sector.
+ (gpt_partition_map_probe): Remove.
+ (gpt_partition_map_get_name): Likewise.
+ * partmap/msdos.c (grub_partition_parse): Remove.
+ (pc_partition_map_iterate): Don't force raw access.
+ Set 'number'.
+ Make 'ext_offset' a local variable.
+ (pc_partition_map_probe): Remove.
+ (pc_partition_map_get_name): Remove.
+ * partmap/sun.c (sun_partition_map_iterate): Don't force raw access.
+ Set 'number'.
+ (sun_partition_map_probe): Remove.
+ (sun_partition_map_get_name): Likewise.
+ * parttool/msdospart.c (grub_pcpart_boot): Handle nested partitions.
+ (grub_pcpart_type): Likewise.
+ * util/hostdisk.c (open_device): Handle new numbering scheme.
+ (grub_util_biosdisk_get_grub_dev): Handle nested partitions.
+ * util/i386/pc/grub-setup.c (setup): Handle new numbering scheme.
+ * util/grub-probe.c (probe_partmap): Handle nested paritions.
+ * util/grub-install.in: Insert all subpartition modules.
+ * util/ieee1275/grub-install.in: Likewise.
+
+2010-03-24 Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+
+ * kern/dl.c (grub_dl_resolve_symbols): Improve error message
+ grammar.
+
+2010-03-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add grub-bin2h, grub-reboot, and grub-set-default.
+
+2010-03-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in: Copy .mo files from @datadir@/locale, to
+ match where 'make install' puts them.
+ * util/i386/efi/grub-install.in: Likewise.
+
+2010-03-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * .bzrignore: Add gentrigtables, grub-script-check,
+ grub_script_check_init.c, grub_script_check_init.h, and
+ trigtables.c.
+
+2010-03-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/parser.c: Indented.
+
+2010-03-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/i386/pc/vesafb.c: Removed (orphaned, deprecated and broken).
+
+2010-03-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/fb/fbblit.c (grub_video_fbblit_blend_XXXA8888_1bit): Handle
+ alpha_mask_size == 0 case.
+
+2010-03-14 BVK Chaitanya <bvk.groups@gmail.com>
+
+ GRUB shell lexer and parser improvements.
+
+ * conf/any-emu.rmk: Build rule updates.
+ * conf/common.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+ * configure.ac: Configure check for flex.
+
+ * include/grub/script_sh.h (grub_script_arg_type_t): More argument
+ types.
+ (grub_lexer_param): Struct member updates.
+ (grub_parser_param): Likewise.
+ (GRUB_LEXER_TOKEN_MAX): Maximum token size.
+ (GRUB_LEXER_RECORD_INCREMENT): Memory increments' size.
+ (grub_script_lexer_init): Prototype update.
+ (grub_script_lexer_record_start): Likewise.
+ (grub_script_lexer_record_stop): Likewise.
+ (grub_script_lexer_yywrap): New function prototype.
+ (grub_script_lexer_fini): Likewise.
+ (grub_script_execute_argument_to_string): Removed by...
+ (grub_script_execute_argument_to_argv): ...better version.
+
+ * script/execute.c (ROUND_UPTO): New macro.
+ (grub_script_execute_cmdline): Out of memory fixes.
+ (grub_script_execute_menuentry): Likewise.
+ (grub_script_execute_argument_to_string): Removed. Update all
+ users by...
+ (grub_script_execute_argument_to_argv): ...better version.
+ * script/function.c (grub_script_function_create): Use
+ grub_script_execute_argument_to_argv instead of
+ grub_script_execute_argument_to_string.
+
+ * script/lexer.c (check_varstate): Removed.
+ (check_textstate): Removed.
+ (grub_script_lexer_record_start): Likewise.
+ (grub_script_lexer_record_stop): Likewise.
+ (recordchar): Replaced with...
+ (grub_script_lexer_record): ...new function.
+ (nextchar): Removed.
+ (grub_script_lexer_init): Rewritten.
+ (grub_script_yylex): Rewritten.
+ (append_newline): New function.
+ (grub_script_lexer_yywrap): New function.
+ (grub_script_lexer_fini): New function.
+ (grub_script_yyerror): Sets error flag.
+
+ * script/yylex.l: New file.
+ (grub_lexer_yyfree): Wrapper for flex yyffre.
+ (grub_lexer_yyalloc): Likewise.
+ (grub_lexer_yyrealloc): Likewise.
+ * script/parser.y: Refactored.
+
+ * script/script.c (grub_script_arg_add): Out of memory fixes.
+ (grub_script_add_arglist): Likewise.
+ (grub_script_create_cmdline): Likewise.
+ (grub_script_create_cmdmenu): Likewise.
+ (grub_script_add_cmd): Likewise.
+ (grub_script_parse): Use grub_script_lexer_fini to deallocated.
+ * util/grub-script-check.c (grub_script_execute_menuentry): Remove
+ unnecessary code.
+
+ * tests/grub_script_echo1.in: New testcase.
+ * tests/grub_script_vars1.in: New testcase.
+ * tests/grub_script_echo_keywords.in: New testcase.
+
+2010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove some redundancy in build system.
+
+ * Makefile.in (TARGET_CFLAGS): Add -ffreestanding.
+ (TARGET_ASFLAGS): Add -nostdinc -fno-builtin.
+ (TARGET_LDFLAGS): Add -nostdlib.
+ (TARGET_IMG_LDFLAGS): Likewise.
+ * commands/lsmmap.c (grub_cmd_lsmmap) [GRUB_MACHINE_EMU]: Don't do
+ anything since mmap isn't available.
+ * conf/any-emu.rmk (kernel_img_SOURCES): Remove commands/boot.c.
+ Add util/time.c.
+ (pkglib_MODULES): Remove reboot.mod.
+ (reboot_mod_SOURCES): Removed.
+ (reboot_mod_CFLAGS): Likewise.
+ (reboot_mod_LDFLAGS): Likewise.
+ * conf/common.rmk (script/lexer.c_DEPENDENCIES): New variable.
+ (MOSTLYCLEANFILES): Add symlist.c kernel_syms.lst.
+ (DEFSYMFILES): Add kernel_syms.lst.
+ (kernel_img_HEADERS): Add common headers.
+ (symlist.c): New target.
+ (kernel_syms.lst): Likewise.
+ (pkglib_MODULES): Add memdisk.mod.
+ (memdisk_mod_SOURCES): New variable.
+ (memdisk_mod_CFLAGS): Likewise.
+ (memdisk_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add reboot.mod.
+ (reboot_mod_SOURCES): New variable.
+ (reboot_mod_CFLAGS): Likewise.
+ (reboot_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add date.mod.
+ (date_mod_SOURCES): New variable.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add datehook.mod.
+ (datehook_mod_SOURCES): New variable.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add lsmmap.mod.
+ (lsmmap_mod_SOURCES): New variable.
+ (lsmmap_mod_CFLAGS): Likewise.
+ (lsmmap_mod_LDFLAGS): Likewise.
+ (pkglib_MODULES): Add boot.mod.
+ (boot_mod_SOURCES): New variable.
+ (boot_mod_CFLAGS): Likewise.
+ (boot_mod_LDFLAGS): Likewise.
+ * conf/i386-coreboot.rmk: Removed redundant parts.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/mips-yeeloong.rmk: Likewise.
+ * conf/mips.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Moved qemu parts ..
+ * conf/i386-qemu.rmk: ... here
+ * conf/i386-efi.rmk: Moved common parts to...
+ * conf/x86-efi.rmk: ... here.
+ * conf/i386.rmk: Added modules common to all x86 variants.
+ * configure.ac: Add -m32/-m64 to TARGET_ASFLAGS.
+ * disk/memdisk.c: Remove grub/machine/kernel.h.
+ * gensymlist.sh.in: Include symbol.h.
+ * hook/datehook.c: Correct module name.
+ * include/grub/datetime.h (grub_get_datetime) [GRUB_MACHINE_EMU]: Export.
+ (grub_set_datetime) [GRUB_MACHINE_EMU]: Likewise.
+ * include/grub/i386/efi/serial.h: New file.
+ * include/grub/x86_64/efi/serial.h: Likewise.
+ * util/time.c: Likewise.
+ * video/ieee1275.c (grub_video_ieee1275_setup): Handle 64-bit void *.
+
+2010-03-14 Colin King <colin.king@ubuntu.com>
+2010-03-14 Colin Watson <cjwatson@ubuntu.com>
+
+ Shrink the pre-partition-table part of boot.img by eight bytes.
+
+ * boot/i386/pc/boot.S (ERR): New macro.
+ (chs_mode): Use ERR.
+ (geometry_error): Likewise.
+ (hd_probe_error): Remove. This is only used once, so we wrwite
+ it inline instead.
+ (read_error): Instead of printing read_error_string, just set up
+ %si and fall through to ...
+ (error_message): ... this new function, also used by ERR.
+
+2010-03-14 Colin Watson <cjwatson@ubuntu.com>
+
+ Speed up consecutive hostdisk operations on the same device.
+
+ * util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
+ (grub_util_biosdisk_open): Initialise disk->data.
+ (struct linux_partition_cache): New structure.
+ (linux_find_partition): Cache partition start positions; these are
+ expensive to compute on every read and write.
+ (open_device): Cache open file descriptor in disk->data, so that we
+ don't have to reopen it and flush the buffer cache for consecutive
+ operations on the same device.
+ (grub_util_biosdisk_close): New function.
+ (grub_util_biosdisk_dev): Set `close' member.
+
+ * conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
+ * conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
+
+2010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Compile parts of grub-emu as modules.
+
+ * Makefile.in (TARGET_CPPFLAGS) [emu]: Remove -nostdinc -isystem.
+ (pkglib_DATA) [emu]: Remove moddep.lst command.lst fs.lst
+ partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst.
+ (all-local): Add $(GRUB_EMU).
+ (install-local): Install $(GRUB_EMU).
+ (uninstall): Uninstall $(GRUB_EMU).
+ * commands/parttool.c: Replace GRUB_UTIL with GRUB_NO_MODULES.
+ * kern/dl.c: Likewise.
+ * commands/sleep.c: Not include machine/time.h.
+ * conf/any-emu.rmk (COMMON_LDFLAGS): New variable.
+ (COMMON_CFLAGS): Likewise.
+ (sbin_UTILITIES): Remove grub-emu.
+ (grub_emu_SOURCES): Removed.
+ (kernel_img_RELOCATABLE): New variable.
+ (pkglib_PROGRAMS): Add kernel.img.
+ (kernel_img_SOURCES): New variable
+ (kernel_img_CFLAGS): Likewise.
+ (kernel_img_LDFLAGS): Likewise.
+ (TARGET_NO_STRIP): Likewise.
+ (TARGET_NO_DYNAMIC_MODULES): Likewise.
+ (pkglib_MODULES): Add progname.mod, hostfs.mod, host.mod, reboot.mod,
+ halt.mod, cpuid.mod, usb.mod, sdl.mod and pci.mod.
+ (grub-emu): New target.
+ (GRUB_EMU): New variable.
+ * configure.ac: Whitelist -emu as possible x86_64 architecture.
+ * efiemu/main.c: Replace GRUB_UTIL with GRUB_MACHINE_EMU.
+ * loader/xnu.c: Likewise.
+ * include/grub/pci.h: Likewise.
+ * genemuinit.sh: New file.
+ * genemuinitheader.sh: Likewise.
+ * genmk.rb: Don't strip if TARGET_NO_STRIP is yes.
+ Support TARGET_NO_DYNAMIC_MODULES.
+ * include/grub/dl.h (GRUB_NO_MODULES): New variable.
+ * commands/search.c: Fix GRUB_MOD_INIT and GRUB_MOD_FINI arguments.
+ * disk/loopback.c: Likewise.
+ * font/font_cmd.c: Likewise.
+ * partmap/acorn.c: Likewise.
+ * partmap/amiga.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * partmap/gpt.c: Likewise.
+ * partmap/msdos.c: Likewise.
+ * partmap/sun.c: Likewise.
+ * parttool/msdospart.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * video/bitmap.c: Likewise.
+ * video/readers/jpeg.c: Likewise.
+ * video/readers/png.c: Likewise.
+ * video/readers/tga.c: Likewise.
+ * video/video.c: Likewise.
+ * util/grub-emu.c (read_command_list): Removed.
+ (main): Don't call util_init_nls.
+ * util/misc.c (grub_err_printf) [!GRUB_UTIL]: Removed.
+ (grub_util_init_nls) [!GRUB_UTIL]: Likewise.
+
+2010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add datetime.mod,
+ date.mod, datehook.mod.
+ (datetime_mod_SOURCES): New variable.
+ (datetime_mod_CFLAGS): Likewise.
+ (datetime_mod_LDFLAGS): Likewise.
+ (date_mod_SOURCES): Likewise.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (datehook_mod_SOURCES): Likewise.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * lib/ieee1275/datetime.c: New file.
+
+2010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add ieee1275_fb.mod.
+ (ieee1275_fb_mod_SOURCES): New variable.
+ (ieee1275_fb_mod_CFLAGS): Likewise.
+ (ieee1275_fb_mod_LDFLAGS): Likewise.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_devices_iterate):
+ New proto.
+ * kern/ieee1275/init.c (HEAP_MAX_SIZE): Increased.
+ (HEAP_MAX_ADDR): Likewise.
+ * kern/ieee1275/openfw.c (grub_children_iterate): Don't skip empty
+ type.
+ Correct stop condition.
+ (grub_ieee1275_devices_iterate): New function.
+ * video/ieee1275.c: New file.
+
+2010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge sparc grub-mkimage into generic grub-mkimage and a.out support.
+
+ * boot/sparc64/ieee1275/boot.S (boot_continue): Use SCRATCH_PAD_BOOT
+ as scratch.
+ * boot/sparc64/ieee1275/diskboot.S (after_info_block): Use
+ SCRATCH_PAD_DISKBOOT as scratch.
+ (bootit): Pass Openfirmware pointer in %o4.
+ * conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link at 0x4400 instead
+ of 0x200000.
+ (grub_mkimage_SOURCES): Replace util/sparc64/ieee1275/grub-mkimage.c
+ with util/grub-mkrawimage.c.
+ * configure.ac: Handle GRUB_MACHINE_SPARC64 and GRUB_MACHINE_MIPS.
+ * include/grub/aout.h (AOUT_MID_SUN): New definition.
+ (grub_aout_get_type) [GRUB_UTIL]: Removed.
+ (grub_aout_load) [GRUB_UTIL]: Likewise.
+ * include/grub/kernel.h (grub_modules_get_end): New proto.
+ * include/grub/sparc64/ieee1275/boot.h (SCRATCH_PAD): Removed.
+ (SCRATCH_PAD_BOOT): New definition.
+ (SCRATCH_PAD_DISKBOOT): Likewise.
+ (GRUB_BOOT_MACHINE_IMAGE_ADDRESS): Set to 0x4400.
+ * include/grub/sparc64/ieee1275/ieee1275.h
+ (grub_ieee1275_original_stack): New variable
+ * include/grub/sparc64/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
+ New definition
+ (GRUB_KERNEL_MACHINE_STACK_SIZE): Likewise.
+ (GRUB_PLATFORM_IMAGE_FORMATS): Likewise.
+ (GRUB_PLATFORM_IMAGE_DEFAULT_FORMAT): Likewise.
+ (GRUB_PLATFORM_IMAGE_DEFAULT): Likewise.
+ (GRUB_PLATFORM_IMAGE_RAW): Likewise.
+ (GRUB_PLATFORM_IMAGE_AOUT): Likewise.
+ (grub_platform_image_format_t): New type.
+ * kern/mips/yeeloong/init.c (grub_modules_get_end): Move from here ...
+ * kern/main.c (grub_modules_get_end)
+ [GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_SPARC64]: ... here.
+ * kern/sparc64/ieee1275/crt0.S: Store firmware entry point in %o0.
+ (codestart): Switch stacks.
+ * kern/sparc64/ieee1275/init.c (grub_ieee1275_original_stack): New
+ variable.
+ (grub_heap_init): Use grub_modules_get_end.
+ * loader/sparc64/ieee1275/linux.c (grub_linux_boot): Restore original
+ stack.
+ * util/grub-mkrawimage.c (generate_image): Support sparc64.
+ (main): Likewise.
+ * util/sparc64/ieee1275/grub-mkimage.c: Removed.
+
+2010-03-14 Thorsten Glaser <tg@mirbsd.org>
+
+ * util/grub-mkrescue.in: Base ISO UUID on UTC.
+
+2010-03-08 Matt Kraai <kraai@ftbfs.org>
+
+ * util/i386/pc/grub-setup.c (setup): Fix a grammatical error (Debian
+ bug #559005).
+
+2010-03-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * genmoddep.awk: Output all missing symbols and not only first.
+
+2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: Put the date of 1.98 release.
+
+2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Update CPPFLAGS and not CFLAGS when checking for
+ ft2build.h.
+
+2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/cmdline.c (grub_cmdline_get): Fix gabled line after
+ completition in the middle of string.
+
+2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrescue.in: Use mktemp with explicit template.
+
+2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/bsd.c (grub_bsd_get_device): Fix a memory leak.
+
+2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Free the
+ right pointer.
+
+2010-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix FreeBSD compilation.
+
+ * Makefile.in (TARGET_CPPFLAGS): Remove -nostdinc -isystem.
+ * configure.ac: Add -nostdinc -isystem to TARGET_CPPFLAGS if it works.
+
+2010-03-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/import_gcry.py: Add autogenerated files to MAINTAINER_CLEANFILES.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gettext/gettext.c (grub_gettext_init_ext): Fix a memory leak.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/scsi.c (grub_scsi_iterate): Fix a memory leak.
+
+2010-03-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ Support relative image path in theme file.
+
+ * gfxmenu/gui_image.c (grub_gui_image): New member theme_dir.
+ (image_set_property): Handle theme_dir and relative path.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Alias amd64 to x86_64.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: mention multiboot on EFI.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/main.c (grub_load_modules): Handle errors from init functions of
+ embeded modules.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/autofs.c (autoload_fs_module): Handle errors.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Disable linux.mod on qemu-mips since it's not functional and leads
+ to compilation failure.
+
+ * conf/mips.rmk (pkglib_MODULES): Remove linux.mod.
+ * conf/mips-yeeloong.rmk (pkglib_MODULES): Add linux.mod.
+ * conf/mips.rmk (linux_mod_SOURCES): Move from here ...
+ * conf/mips-yeeloong.rmk (linux_mod_SOURCES): ... here
+ * conf/mips.rmk (linux_mod_CFLAGS): Move from here ...
+ * conf/mips-yeeloong.rmk (linux_mod_CFLAGS): ... here
+ * conf/mips.rmk (linux_mod_ASFLAGS): Move from here ...
+ * conf/mips-yeeloong.rmk (linux_mod_ASFLAGS): ... here
+ * conf/mips.rmk (linux_mod_LDFLAGS): Move from here ...
+ * conf/mips-yeeloong.rmk (linux_mod_LDFLAGS): ... here
+ Reported by: BVK Chaitanya
+
+2010-03-04 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * INSTALL: Add gettext as a dependency and add qemu to a new section
+ "Prerequisites for make-check".
+
+2010-03-04 Christian Franke <franke@computer.org>
+
+ * util/grub-pe2elf.c: Add missing include "progname.h".
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/crypto.c (read_crypto_list): Fix a typo.
+ Reported by: Seth Goldberg.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.in (DISTCLEANFILES): Add stamp-h1.
+ Reported by: Seth Goldberg.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * Makefile.in (CLEANFILES) [FONT_SOURCE && grub_mkfont]: Add
+ ascii.bitmaps.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * genmk.rb: Remove terminal*.lst in make clean.
+ Reported by: Seth Goldberg.
+
+2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/efi/grub-install.in: Copy gettext files.
+
+2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/ext2.c (grub_ext2_read_block): Fix an integer overflow.
+
+2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Wait for user entry basing on presence of output rather than on errors.
+
+ * include/grub/normal.h (grub_normal_get_line_counter): New proto.
+ (grub_install_newline_hook): Likewise.
+ * normal/main.c (GRUB_MOD_INIT): Call grub_install_newline_hook.
+ * normal/menu.c (show_menu): Check line_counter to determine presence
+ of output.
+ * normal/term.c (grub_normal_line_counter): New variable.
+ (grub_normal_get_line_counter): New function.
+ (grub_install_newline_hook): Likewise.
+
+2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error.
+
+2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Update version to 1.98.
+
+2010-02-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub.d/10_linux.in (linux_entry): Don't default to
+ gfxpayload=keep if Linux doesn't support video handover.
+
+2010-02-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't compile video modules on yeeloong since video subsystem is part
+ of kernel.
+
+ * conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
+ video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
+ * conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
+ video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
+ * conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
+ * include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
+ * include/grub/bitmap_scale.h: Likewise.
+ * include/grub/bufio.h: Likewise.
+ * include/grub/font.h: Likewise.
+ * include/grub/gfxterm.h: Likewise.
+ * include/grub/video.h: Likewise.
+ * include/grub/vbe.h: Don't include video_fb.h.
+ * video/i386/pc/vbe.c: Include video_fb.h.
+ * commands/i386/pc/vbetest.c: Include video.h.
+
+2010-02-25 Jordan Uggla <jordan.uggla@gmail.com>
+
+ * util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable.
+ * util/grub-mkconfig_lib.in (save_default_entry): Only save a new
+ default entry if GRUB_SAVEDEFAULT=true. This allows using
+ GRUB_DEFAULT=saved on its own to let grub-reboot work, without
+ saving a new default on every boot.
+
+2010-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/crypto.c (read_crypto_list): Fix a memory leak.
+ * normal/term.c (read_terminal_list): Likewise.
+ * normal/main.c (grub_normal_init_page): Likewise.
+ (grub_normal_read_line_real): Likewise.
+
+2010-02-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Fix a
+ memory leak.
+ Reported by: Seth Goldberg.
+
+2010-02-24 Joey Korkames <joey+lists@kidfixit.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Remove
+ duplicate declaration of `start'.
+
+2010-02-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/iso9660.c (grub_iso9660_iterate_dir): Strip version from joliet
+ filename.
+ Reported by: Georgy Buranov
+
+2010-02-20 Carles Pina i Estany <carles@pina.cat>
+
+ * util/grub-mkrawimage.c (usage): Change string formatting to
+ improve gettext.
+
+2010-02-20 Manoel Rebelo Abranches <mrabran@br.ibm.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Add delete and
+ backspace keys.
+
+2010-02-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/fb/video_fb.c (grub_video_fb_scroll): Fix a pixel size bug.
+ Reported by: Michael Suchanek.
+
+2010-02-18 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub-mkconfig.in: Export GRUB_INIT_TUNE.
+ * util/grub.d/00_header.in: Handle GRUB_INIT_TUNE.
+
+2010-02-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove any reference to non-free fonts.
+
+ * commands/videotest.c (grub_cmd_videotest): Use unifont by default.
+ * docs/gfxmenu-theme-example.txt: Removed. It's both outdated and
+ uses non-free components.
+ * font/font.c (grub_font_get_name): Remove example name.
+ * gfxmenu/gui_label.c (grub_gui_label_new): Use unifont by default.
+ * gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
+ * gfxmenu/gui_progress_bar.c (grub_gui_progress_bar_new): Likewise.
+ * gfxmenu/view.c (grub_gfxmenu_view_new): Likewise.
+
+2010-02-16 Georgy Buranov <gburanov@gmail.com>
+
+ * disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix a typo.
+
+2010-02-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/serial.c (serial_get_divisor) [GRUB_MACHINE_MIPS_YEELOONG]:
+ Double divisor.
+ (serial_hw_init) [GRUB_MACHINE_MIPS_YEELOONG]: Don't enable advanced
+ features.
+ (GRUB_MOD_INIT) [GRUB_MACHINE_MIPS_YEELOONG]: Default to 115200.
+
+2010-02-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * gensymlist.sh.in: Use TARGET_CC instead of CC.
+
+2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * commands/i386/pc/play.c (GRUB_MOD_INIT(play)): Fix help.
+ * docs/grub.texi (Command-line and menu entry commands): Document play
+ command.
+
+2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * commands/i386/pc/play.c (grub_cmd_play): If grub_file_open fails,
+ parse arguments as inline tempo and notes. Move code for playing notes
+ to...
+ (play): ... new function.
+
+2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * commands/i386/pc/play.c (T_REST, T_FINE, struct note, beep_on): Use
+ grub_uint16_t instead of short.
+ (grub_cmd_play): Use grub_uint32_t instead of int, convert data from
+ disk from little endian to cpu endianness.
+
+2010-02-07 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * commands/i386/pc/play.c (BASE_TEMPO): Set to 60 *
+ GRUB_TICKS_PER_SECOND instead of 120.
+
+2010-02-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Wait for possible
+ escape sequence after \e.
+
+2010-02-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Don't output
+ non-ASCII characters.
+
+2010-02-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Enclose
+ set root in single quotes to prevent \, from being unescaped.
+
+2010-02-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Prevent unknown commands from stopping menuentry execution.
+
+ * script/execute.c (grub_script_execute_cmdline): Print error after
+ unknown command.
+
+2010-02-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/i386/pc/pxe.c (GRUB_MOD_INIT): Fix typo.
+ Reported by: Pavel Pisa.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * io/gzio.c (grub_gzio_open): Use grub_zalloc.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge grub_ieee1275_map_physical into grub_map and rename to
+ grub_ieee1275_map
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_map): New proto.
+ * include/grub/sparc64/ieee1275/ieee1275.h (grub_ieee1275_map_physical):
+ Remove.
+ * kern/ieee1275/openfw.c (grub_map): Rename to ...
+ (grub_ieee1275_map): ... this. All users updated. Add phys_lo when
+ necessary.
+ * kern/sparc64/ieee1275/ieee1275.c (grub_ieee1275_map_physical): Remove.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Check device type before
+ opening and not after.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Macroify
+ constants.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/sparc64/ieee1275/linux.c (align_addr): Remove.
+ (alloc_phys): Use ALIGN_UP instead of align_addr.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/sparc64/ieee1275/linux.c (alloc_phys): Correct bounds checking.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/sparc64/ieee1275/crt0.S (codestart): Move modules backwards.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Remove excessively
+ verbose dprintf.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix over-4GiB seek on sparc64.
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_seek):
+ Replace pos_i and pos_lo with pos. All users updated.
+ * include/grub/powerpc/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
+ New constant.
+ * include/grub/sparc64/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
+ Likewise.
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_seek): Split pos into pos_hi
+ and pos_lo.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrawimage.c (main): Call set_program_name.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Properly align 64-bit targets.
+
+ * util/grub-mkrawimage.c (ALIGN_ADDR): New macro.
+ (generate_image): Use ALIGN_ADDR.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Properly create cross-endian images.
+
+ * include/grub/types.h (grub_host_to_target_addr): New macro
+ * util/grub-mkrawimage.c (generate_image): Add missing host_to_target.
+
+2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkrawimage.c (generate_image): Add forgotten ALIGN_UP.
+
+2010-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Pass SIMPLE framebuffer size in bytes and not 64K blocks.
+
+ * loader/i386/efi/linux.c (grub_linux_setup_video): Don't divide by 64K.
+ * loader/i386/linux.c (grub_linux_setup_video): Likewise.
+ (grub_linux_boot): Divide by 64K when on VESA.
+
+2010-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support GRUB_GFXPAYLOAD_LINUX.
+
+ * util/grub-mkconfig.in: Export GRUB_GFXPAYLOAD_LINUX.
+ * util/grub.d/10_linux.in (linux_entry): Handle GRUB_GFXPAYLOAD_LINUX.
+
+2010-02-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * script/execute.c (grub_script_execute_cmdline): Use grub_print_error
+ to show messages instead of discarding them.
+ Process errors after executing command and not before. Keep old method
+ too as precaution.
+
+2010-02-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for ft2build.h.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/ieee1275/openfw.c (grub_halt): Try executing "poweroff".
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * genkernsyms.sh.in: Use TARGET_CC.
+
+2010-02-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: Update.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/multiboot2.h: Remove leftover file.
+ * include/grub/normal.h [GRUB_UTIL]: Remove leftover declarations.
+ * include/grub/partition.h [GRUB_UTIL]: Likewise.
+
+2010-02-07 Yves Blusseau <blusseau@zetam.org>
+
+ * gnulib/getdelim.c: add missing header (type ssize_t must be defined).
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix warnings in grub-emu when compiling with maximum warning options.
+
+ * util/grub-emu.c (ENABLE_RELOCATABLE): New definition.
+ (grub_arch_modules_addr): Return 0 and not NULL.
+ * util/misc.c (ENABLE_RELOCATABLE): New definition.
+ (xstrdup): Use newstr instead of dup.
+ * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Rename one instance
+ of disk to dsk to avoid shadowing.
+ (find_free_slot): Fix prototype.
+ * util/getroot.c (grub_util_is_dmraid): Make static.
+ * include/grub/time.h (grub_get_rtc) [GRUB_MACHINE_EMU || GRUB_UTIL]:
+ Add missing prototype.
+ * util/sdl.c (grub_video_sdl_set_viewport): Remove.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/linux.c (grub_linux_setup_video): Handle error
+ appropriately.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/reiserfs.c (grub_reiserfs_read): Use #if 0 instead of commenting
+ code out.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/cache.h (grub_arch_sync_caches) [i386 || x86_64]: Inline.
+ * kern/i386/coreboot/init.c (grub_arch_sync_caches): Remove.
+ * kern/i386/efi/init.c (grub_arch_sync_caches): Likewise.
+ * kern/i386/ieee1275/init.c (grub_arch_sync_caches): Likewise.
+ * kern/i386/pc/init.c (grub_arch_sync_caches): Likewise.
+ * util/misc.c (grub_arch_sync_caches) [i386 || x86_64]: Likewise.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/err.h (grub_err_printf): Don't export.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/dl.h (grub_dl_register_symbol): Don't export.
+
+2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i18n.h (grub_gettext_dummy): Removed.
+ * kern/misc.c (grub_gettext_dummy): Make static.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/misc.c (grub_utf8_to_ucs4): Don't eat valid characters preceeded
+ by non-valid ones.
+ * kern/term.c (grub_putchar): Likewise.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * partmap/sun.c (sun_partition_map_iterate): Restructure flow to fix
+ buggy hook call and memory leak.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/ls.c (grub_ls_list_files): Free pathname on exit.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/fat.c (grub_fat_iterate_dir): Free unibuf at exit.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/pc/xnu.c (grub_xnu_set_video): Add const qualifier to
+ modevar.
+ Return grub_errno on allocation error.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Correct error handling.
+
+2010-02-06 Yves Blusseau <blusseau@zetam.org>
+
+ * conf/common.rmk (grub_script_check_SOURCES): add missing dependencies.
+ (grub_mkpasswd_pbkdf2_SOURCES): Likewise.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/i386/pc/pxe.c (grub_pxefs_dir): Return with failure on
+ non-pxe disk.
+ (grub_pxefs_open): Likewise.
+
+2010-02-06 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/10_hurd.in: Add --class information to menuentries.
+ * util/grub.d/10_kfreebsd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+
+2010-02-06 Colin D Bennett <colin@gibibit.com>
+
+ * conf/common.rmk (pkglib_MODULES): Add gfxmenu.mod.
+ (gfxmenu_mod_SOURCES): New variable.
+ (gfxmenu_mod_CFLAGS): Likewise.
+ (gfxmenu_mod_LDFLAGS): Likewise.
+ * include/grub/term.h (grub_term_set_current_output): Declare
+ argument as const.
+ * docs/gfxmenu-theme-example.txt: New file.
+ * gfxmenu/gfxmenu.c: Likewise.
+ * gfxmenu/gui_box.c: Likewise.
+ * gfxmenu/gui_canvas.c: Likewise.
+ * gfxmenu/gui_circular_progress.c: Likewise.
+ * gfxmenu/gui_image.c: Likewise.
+ * gfxmenu/gui_label.c: Likewise.
+ * gfxmenu/gui_list.c: Likewise.
+ * gfxmenu/gui_progress_bar.c: Likewise.
+ * gfxmenu/gui_string_util.c: Likewise.
+ * gfxmenu/gui_util.c: Likewise.
+ * gfxmenu/icon_manager.c: Likewise.
+ * gfxmenu/model.c: Likewise.
+ * gfxmenu/named_colors.c: Likewise.
+ * gfxmenu/theme_loader.c: Likewise.
+ * gfxmenu/view.c: Likewise.
+ * gfxmenu/widget-box.c: Likewise.
+ * include/grub/gfxmenu_model.h: Likewise.
+ * include/grub/gfxmenu_view.h: Likewise.
+ * include/grub/gfxwidgets.h: Likewise.
+ * include/grub/gui.h: Likewise.
+ * include/grub/gui_string_util.h: Likewise.
+ * include/grub/icon_manager.h: Likewise.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Agglomerate scrolling in gfxterm.
+
+ * term/gfxterm.c (grub_virtual_screen): New member 'total_screen'.
+ (grub_virtual_screen_setup): Initialise 'total_screen'.
+ (write_char): Split to ...
+ (paint_char): ... this ...
+ (write_char): ... and this.
+ (paint_char): Handle delayed scrolling.
+ (draw_cursor): Likewise.
+ (scroll_up): Split to ...
+ (real_scroll): ... this ...
+ (scroll_up): ... and this.
+ (real_scroll): Handle multi-line scroll and draw below-the-bottom
+ characters.
+ (grub_gfxterm_refresh): Call real_scroll.
+
+2010-02-06 Colin D Bennett <colin@gibibit.com>
+
+ * include/grub/misc.h (grub_iscntrl): New inline function.
+ (grub_isalnum): Likewise.
+ (grub_strtol): Likewise.
+
+2010-02-06 Colin D Bennett <colin@gibibit.com>
+
+ * normal/menu_text.c (get_entry_number): Move from here ...
+ * normal/menu.c (get_entry_number): ... moved here.
+ * include/grub/menu.h (grub_menu_get_default_entry_index):
+ New prototype.
+ * normal/menu.c (grub_menu_get_default_entry_index): New function.
+ * normal/menu_text.c (run_menu): Use grub_menu_get_default_entry_index.
+ * include/grub/menu_viewer.h (grub_menu_viewer_init): New prototype.
+ (grub_menu_viewer_should_return): Likewise.
+ * normal/main.c (GRUB_MOD_INIT (normal)): Call grub_menu_viewer_init.
+ * normal/menu_text.c (run_menu): Enable menu switching.
+ * normal/menu_viewer.c (should_return): New variable.
+ (menu_viewer_changed): Likewise.
+ (grub_menu_viewer_show_menu): Handle menu viewer changes.
+ (grub_menu_viewer_should_return): New function.
+ (menuviewer_write_hook): Likewise.
+ (grub_menu_viewer_init): Likewise.
+
+2010-02-06 Colin D Bennet <colin@gibibit.com>
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support for gfxterm in a window.
+
+ * include/grub/gfxterm.h: New file.
+ * include/grub/video.h (struct grub_video_rect): New declaration.
+ (grub_video_rect_t): Likewise.
+ * term/gfxterm.c (struct grub_gfxterm_window): New type.
+ (refcount): New variable.
+ (render_target): Likewise.
+ (window): Likewise.
+ (repaint_callback): Likewise.
+ (grub_virtual_screen_setup): Use 'render_target'.
+ (init_window): New function.
+ (grub_gfxterm_init_window): Likewise.
+ (grub_gfxterm_init): Check reference counter.
+ Use init_window.
+ (destroy_window): New function.
+ (grub_gfxterm_destroy_window): Likewise.
+ (grub_gfxterm_fini): Check reference counter.
+ Use destroy_window.
+ (redraw_screen_rect): Restore viewport.
+ Use 'render_target' and 'window'.
+ Call 'repaint_callback'.
+ (write_char): Use 'render_target'.
+ (draw_cursor): Likewise.
+ (scroll_up): Restore viewport.
+ Use 'render_target' and 'window'.
+ Call 'repaint_callback'.
+ (grub_gfxterm_cls): Likewise.
+ (grub_gfxterm_refresh): Use 'window'.
+ (grub_gfxterm_set_repaint_callback): New function.
+ (grub_gfxterm_background_image_cmd): Use 'window'.
+ (grub_gfxterm_get_term): New function.
+ (GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0.
+
+2010-02-06 Colin D Bennett <colin@gibibit.com>
+
+ Bitmap scaling support.
+
+ * conf/common.rmk (pkglib_MODULES): Add bitmap_scale.mod.
+ (bitmap_scale_mod_SOURCES): New variable.
+ (bitmap_scale_mod_CFLAGS): Likewise.
+ (bitmap_scale_mod_LDFLAGS): Likewise.
+ * include/grub/bitmap_scale.h: New file.
+ * term/gfxterm.c (BACKGROUND_CMD_ARGINDEX_MODE): New definiton.
+ (background_image_cmd_options): New variable.
+ (grub_gfxterm_background_image_cmd): Support bitmap stretching.
+ (cmd): Rename and change type to ...
+ (background_image_cmd_handle): ... this. All users updated.
+ (GRUB_MOD_INIT(term_gfxterm)): Make background_image extended command.
+ * video/bitmap_scale.c: New file.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ SDL support.
+
+ * Makefile.in (LIBSDL): New variable.
+ (enable_grub_emu_sdl): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add video files.
+ (grub_emu_SOURCES) [enable_grub_emu_sdl]: Add util/sdl.c.
+ (grub_emu_LDFLAGS) [enable_grub_emu_sdl]: Add $(LIBSDL).
+ * configure.ac: Detect SDL availability and add --enable-grub-emu-sdl
+ * util/sdl.c: New file.
+
+2010-02-06 Colin D Bennett <colin@gibibit.com>
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Double buffering support.
+
+ * commands/i386/pc/videotest.c (grub_cmd_videotest): Swap doublebuffers.
+ * include/grub/video.h: Update comment.
+ * include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
+ New type.
+ (grub_video_fb_doublebuf_blit_init): New prototype.
+ * term/gfxterm.c (scroll_up): Support double buffering.
+ (grub_gfxterm_refresh): Likewise.
+ * video/fb/video_fb.c (doublebuf_blit_update_screen): New function.
+ (grub_video_fb_doublebuf_blit_init): Likewise.
+ * video/i386/pc/vbe.c (framebuffer): Remove 'render_target'. Add
+ 'front_target', 'back_target', 'offscreen_buffer', 'page_size',
+ 'displayed_page', 'render_page' and 'update_screen'.
+ (grub_video_vbe_fini): Free offscreen buffer.
+ (doublebuf_pageflipping_commit): New function.
+ (doublebuf_pageflipping_update_screen): Likewise.
+ (doublebuf_pageflipping_init): Likewise.
+ (double_buffering_init): Likewise.
+ (grub_video_vbe_setup): Enable doublebuffering.
+ (grub_video_vbe_swap_buffers): Implement.
+ (grub_video_vbe_set_active_render_target): Handle double buffering.
+ (grub_video_vbe_get_active_render_target): Likewise.
+ (grub_video_vbe_get_info_and_fini): Likewise. Free offscreen_buffer.
+ (grub_video_vbe_adapter): Use grub_video_vbe_get_active_render_target.
+ (grub_video_vbe_enable_double_buffering): Likewise.
+ (grub_video_vbe_swap_buffers): Use update_screen.
+ (grub_video_set_mode): Use double buffering.
+
+2010-02-06 Robert Millan <rmh.grub@aybabtu.com>
+
+ * maintainance/gentrigtables.py: Remove.
+ * lib/trig.c: Likewise.
+
+ * gentrigtables.c: New file. C rewrite of gentrigtables.py.
+
+ * conf/common.rmk (trig_mod_SOURCES): Replace `lib/trig.c' with
+ `trigtables.c'.
+ (trigtables.c): New rule.
+ (gentrigtables): Likewise.
+ (DISTCLEANFILES): Add `trigtables.c' and `gentrigtables'.
+
+2010-02-06 Robert Millan <rmh.grub@aybabtu.com>
+
+ * maintainance/gentrigtables.py: Avoid duplicate hardcoding of
+ integer constants.
+
+2010-02-06 Colin D Bennet <colin@gibibit.com>
+
+ Trigonometry support.
+
+ * include/grub/trig.h: New file.
+ * lib/trig.c: Likewise.
+ * maintainance/gentrigtables.py: Likewise.
+ * conf/common.rmk (pkglib_MODULES): Add trig.mod.
+ (trig_mod_SOURCES): New variable.
+ (trig_mod_CFLAGS): Likewise.
+ (trig_mod_LDFLAGS): Likewise.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Support whole
+ disk devices.
+
+2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/ieee1275/openfw.c (grub_devalias_iterate): Stop iterating on
+ error.
+
+2010-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/hostdisk.c (open_device): Don't use partition device when reading
+ before the partition.
+ (grub_util_biosdisk_read): Don't read from partition and before the
+ partition in single operation.
+ (grub_util_biosdisk_write): Don't write to partition and before the
+ partition in single operation.
+
+2010-02-03 Torsten Landschoff <torsten@debian.org>
+
+ * kern/disk.c (grub_disk_read): Fix offset computation when reading
+ last sectors.
+
+2010-02-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_read): Handle non-2048 aligned
+ CDROM reads.
+ (grub_biosdisk_write): Refuse to write to CDROM.
+
+2010-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Fix off-by-one error.
+
+2010-01-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * font/font.c (find_glyph): Check that bmp_idx is available before
+ using it.
+ (grub_font_get_string_width): Never call grub_font_get_glyph_internal
+ with (font == NULL).
+
+2010-01-28 Christian Schmitt <chris@ilovelinux.de>
+
+ * util/ieee1275/grub-install.in: Fix nvsetenv arguments.
+
+2010-01-28 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * include/grub/script_sh.h (sourcecode): Add const qualifier.
+ * util/grub-script-check.c (getline): Fix empty lines case.
+
+2010-01-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (check): Exit with fail status when one of the tests
+ fails.
+ * tests/example_functional_test.c (example_test): Fix reversed assert.
+ * tests/example_unit_test.c (example_test): Likewise.
+
+2010-01-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/10_linux.in: This script does not use any of the
+ contents of gettext.sh, only the external command `gettext', so stop
+ sourcing it. (Moreover, gettext.sh isn't necessarily installed in
+ the same prefix as GRUB.)
+ * util/grub.d/10_kfreebsd.in: Likewise.
+
+2010-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/cmdline.c (grub_cmdline_get): Fix completion in the middle
+ of the line.
+
+2010-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/disk.c (grub_disk_read): Fix offset computation when reading
+ last sectors.
+
+2010-01-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/hashsum.c (hash_file): Avoid possible stack overflow by
+ having a 4KiB and not 32KiB buffer size.
+
+2010-01-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/hostfs.c: Include `<errno.h>'.
+ (grub_hostfs_read): Handle errors from fseeko() and fread().
+
+2010-01-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/disk.c (grub_disk_read): Fix bug that would cause infinite
+ loop when using read hooks on files whose size isn't sector-aligned.
+
+2010-01-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ Remove unused parameter.
+
+ * fs/iso9660.c (struct grub_iso9660_data): Remove `length' parameter.
+ (grub_iso9660_open): Remove initialization of `data->length'.
+
+2010-01-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-fstest.c (fstest): Rewrite allocation, fixing a few
+ memleak conditions.
+
+2010-01-27 Carles Pina i Estany <carles@pina.cat>
+
+ * util/lvm.c: New macro LVM_DEV_MAPPER_STRING.
+ (grub_util_lvm_isvolume): Use LVM_DEV_MAPPER_STRING.
+
+2010-01-26 Carles Pina i Estany <carles@pina.cat>
+
+ * util/bin2h.c (usage): Fix warning (space after backslash).
+
+2010-01-26 Carles Pina i Estany <carles@pina.cat>
+
+ * font/font.c: Include `grub/fontformat.h.
+ Remove font file format constants.
+ (grub_font_load): Use the new macros.
+ * include/grub/fontformat.h: New file.
+ * util/grub-mkfont.c: Include `grub/fontformat.c'.
+ (write_font_pf2): Use the new macros.
+
+2010-01-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/bin2h.c (usage): Make --help actually explain what `grub-bin2h'
+ does.
+
+2010-01-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_PXE_DL): New macro.
+
+ * boot/i386/pc/pxeboot.S: Include `<grub/machine/boot.h>'.
+ (_start): Macroify `0x7F'.
+
+ * kern/i386/pc/init.c: Include `<grub/machine/boot.h>'.
+ (make_install_device): Use "(pxe)" as fallback prefix when booting
+ via PXE.
+
+2010-01-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Reset LIBS after check for libgcc symbols.
+
+2010-01-25 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/hostdisk.c (open_device): Add trailing newline to debug
+ message.
+
+2010-01-25 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * configure.ac: Check for `limits.h'.
+ * util/misc.c: Include `<limits.h>' (for PATH_MAX).
+
+2010-01-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/mips/linux.c (grub_cmd_linux, grub_cmd_initrd): Don't
+ capitalize error strings.
+
+2010-01-24 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/10_hurd.in: Add a recovery mode.
+
+2010-01-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for libgcc symbols with -nostdlib.
+
+2010-01-23 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * acinclude.m4: Quote underquoted AC_DEFUN parameters.
+
+2010-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_setcolorstate): Allocate on
+ stack since heap may be unavailable at that point.
+ (grub_ofconsole_gotoxy): Likewise.
+
+2010-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Check for _restgpr_14_x.
+ * include/grub/powerpc/libgcc.h [HAVE__RESTGPR_14_X]: Add _restgpr_*_x
+ and _savegpr_* prototypes.
+
+2010-01-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ Use generic grub_reboot() for i386-efi.
+
+ * kern/efi/efi.c [__i386__] (grub_reboot): Remove.
+ * kern/i386/efi/startup.S: Include `"../realmode.S"'.
+ * kern/i386/realmode.S: Include `<grub/i386/pc/memory.h>'.
+
+2010-01-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/ieee1275/init.c (grub_machine_set_prefix): Don't check for
+ presence of "prefix" variable as it breaks when normal.mod is
+ embedded.
+
+2010-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Allocate on
+ stack since heap is unavailable at that point.
+
+2010-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/bsd.h (FREEBSD_N_BIOS_GEOM): Removed.
+ (grub_freebsd_bootinfo): Rewritten.
+ * loader/i386/bsd.c (grub_freebsd_boot): Use new grub_freebsd_bootinfo.
+
+2010-01-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/misc.c (make_system_path_relative_to_its_root): Fix typo.
+
+2010-01-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * po/POTFILES: Remove mkisofs-related files. They have their own TLP
+ domain now.
+
+2010-01-20 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/misc.c (make_system_path_relative_to_its_root): Change the work
+ around for handling "/" to the correct fix. Fix a memory leak. Use
+ xstrdup instead of strdup.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/mips.rmk (kernel_img_HEADERS): Add env_private.h
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Optimise glyph lookup by Basic Multilingual Plane lookup array.
+
+ * font/font.c (struct grub_font): New member 'bmp_idx'.
+ (font_init): Initialise 'bmp_idx'.
+ (load_font_index): Fill 'bmp_idx'.
+ (find_glyph): Make inline. Use bmp_idx for BMP characters.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/fb/video_fb.c (grub_video_fb_scroll): Optimise by avoiding
+ unnecessary calls.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move context handling out of the kernel.
+
+ * conf/any-emu.rmk (grub_emu_SOURCES): Add normal/context.c.
+ * conf/common.rmk (normal_mod_SOURCES): Add normal/context.c.
+ * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add env_private.h.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * include/grub/env.h: Include grub/menu.h.
+ (grub_env_var_type): Removed.
+ (grub_env_var): Replaced field 'type' with 'global'.
+ (grub_env_find): New prototype.
+ (grub_env_context_open): Remove EXPORT_FUNC.
+ (grub_env_context_close): Likewise.
+ (grub_env_export): Likewise.
+ (grub_env_set_data_slot): Removed.
+ (grub_env_get_data_slot): Likewise.
+ (grub_env_unset_data_slot): Likewise.
+ (grub_env_unset_menu): New prototype.
+ (grub_env_set_menu): Likewise.
+ (grub_env_get_menu): Likewise.
+ * include/grub/env_private.h: New file.
+ * include/grub/normal.h (grub_context_init): New prototype.
+ (grub_context_fini): Likewise.
+ * kern/corecmd.c (grub_core_cmd_export): Moved from here ...
+ * normal/context.c (grub_cmd_export): ... to here.
+ * kern/env.c: Include env_private.h.
+ (HASHSZ): Moved to include/grub/env_private.h.
+ (grub_env_context): Likewise.
+ (grub_env_sorted_var): Likewise.
+ (current_context): Renamed from this ...
+ (grub_current_context): ...to this. 'static' removed. All users updated.
+ (grub_env_find): Removed 'static'.
+ (grub_env_context_open): Moved to normal/context.c.
+ (grub_env_context_close): Likewise.
+ (grub_env_export): Likewise.
+ (mangle_data_slot_name): Removed.
+ (grub_env_set_data_slot): Likewise.
+ (grub_env_get_data_slot): Likewise.
+ (grub_env_unset_data_slot): Likewise.
+ * kern/main.c (grub_set_root_dev): Don't export root.
+ It will be done later.
+ (grub_main): Don't export prefix.
+ It will be done later.
+ * normal/context.c: New file.
+ * normal/main.c (free_menu): Use grub_env_unset_menu.
+ (grub_normal_add_menu_entry): Use grub_env_get_menu.
+ (read_config_file): Use grub_env_get_menu and grub_env_set_menu.
+ (GRUB_MOD_INIT(normal)): Call grub_context_init.
+ (GRUB_MOD_FINI(normal)): Call grub_context_fini.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ setpci support.
+
+ * commands/setpci.c: New file.
+ * conf/i386.rmk (pkglib_MODULES): Add setpci.mod.
+ (setpci_mod_SOURCES): New variable.
+ (setpci_mod_CFLAGS): Likewise.
+ (setpci_mod_LDFLAGS): Likewise.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Byte-addressable PCI configuration space.
+
+ * bus/pci.c (grub_pci_make_address): Use byte address instead of
+ dword address.
+ (grub_pci_iterate): Use macroses GRUB_PCI_REG_PCI_ID and
+ GRUB_PCI_REG_CACHELINE.
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Use macroses
+ GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG0.
+ * bus/usb/uhci.c (grub_ohci_pci_iter): Use macroses
+ GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESS_REG4.
+ * commands/efi/fixvideo.c (scan_card): Use macros GRUB_PCI_REG_CLASS.
+ * commands/efi/loadbios.c (enable_rom_area): Pass byte-address to
+ grub_pci_make_address.
+ (lock_rom_area): Likewise.
+ * commands/lspci.c (grub_lspci_iter): Use macroses
+ GRUB_PCI_REG_CLASS and GRUB_PCI_REG_ADDRESSES. Handle byte-addressing
+ of grub_pci_make_address.
+ * disk/ata.c (grub_ata_pciinit): Likewise.
+ * include/grub/pci.h (GRUB_PCI_REG_PCI_ID): New macro.
+ (GRUB_PCI_REG_VENDOR): Likewise.
+ (GRUB_PCI_REG_DEVICE): Likewise.
+ (GRUB_PCI_REG_COMMAND): Likewise.
+ (GRUB_PCI_REG_STATUS): Likewise.
+ (GRUB_PCI_REG_REVISION): Likewise.
+ (GRUB_PCI_REG_CLASS): Likewise.
+ (GRUB_PCI_REG_CACHELINE): Likewise.
+ (GRUB_PCI_REG_LAT_TIMER): Likewise.
+ (GRUB_PCI_REG_HEADER_TYPE): Likewise.
+ (GRUB_PCI_REG_BIST): Likewise.
+ (GRUB_PCI_REG_ADDRESSES): Likewise.
+ (GRUB_PCI_REG_ADDRESS_REG): Likewise.
+ (GRUB_PCI_REG_ADDRESS_REG): Likewise.
+ (GRUB_PCI_REG_ADDRESS_REG): Likewise.
+ (GRUB_PCI_REG_ADDRESS_REG): Likewise.
+ (GRUB_PCI_REG_ADDRESS_REG): Likewise.
+ (GRUB_PCI_REG_ADDRESS_REG): Likewise.
+ (GRUB_PCI_REG_CIS_POINTER): Likewise.
+ (GRUB_PCI_REG_SUBVENDOR): Likewise.
+ (GRUB_PCI_REG_SUBSYSTEM): Likewise.
+ (GRUB_PCI_REG_ROM_ADDRESS): Likewise.
+ (GRUB_PCI_REG_CAP_POINTER): Likewise.
+ (GRUB_PCI_REG_IRQ_LINE): Likewise.
+ (GRUB_PCI_REG_IRQ_PIN): Likewise.
+ (GRUB_PCI_REG_MIN_GNT): Likewise.
+ (GRUB_PCI_REG_MAX_LAT): Likewise.
+ * loader/i386/efi/linux.c (find_framebuf): Use GRUB_PCI_REG_CLASS.
+ * loader/i386/efi/xnu.c (find_framebuf): Likewise.
+ * video/efi_uga.c (find_framebuf): Likewise.
+ * video/sm712.c (grub_video_sm712_setup): Likewise.
+ * util/pci.c (grub_pci_make_address): Use byte-addressed configuration
+ space.
+
+2010-01-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/10_linux.in (linux_entry): Set gfxpayload=keep when it
+ can be reliably determined to be supported.
+
+2010-01-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): If `vga=' was used, write down
+ that VESA is supported.
+ (grub_linux_boot): Use generic framebuffer unless VESA is known to be
+ supported.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/common.rmk (font/font.c_DEPENDENCIES): Condition on FONT_SOURCE.
+
+2010-01-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/misc.c (make_system_path_relative_to_its_root): Work around
+ special-casing of "/", as previous incarnation of this routine did.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix any-emu compilation.
+
+ * conf/any-emu.rmk (bin_UTILITIES): Add grub-bin2h.
+ * grub_bin2h_SOURCES: New variable.
+
+2010-01-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/00_header.in: Fix stupid mistake from last commit.
+
+2010-01-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/00_header.in: Fix handling of locale_dir.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add /usr/share/fonts/unifont/unifont.pcf.gz
+ as possible unifont location (Gentoo).
+ Reported by: Alexander Brüning
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't try to generate lists for kernel.img.
+
+ * conf/i386-efi.rmk (pkglib_PROGRAMS): New variable.
+ (pkglib_MODULES): Remove kernel.img.
+ (kernel_img_EXPORTS): Removed.
+ (kernel_img_RELOCATABLE): New variable.
+ * conf/x86_64-efi.rmk: Likewise.
+ * genmk.rb: Remove *_EXPORTS support and add *_RELOCATABLE support.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/misc.h (grub_sprintf): Removed. All users switched to
+ grub_xasprintf or grub_snprintf.
+ (grub_vsprintf): Likewise.
+ (grub_snprintf): New proto.
+ (grub_vsnprintf): Likewise.
+ (grub_xasprintf): Likewise.
+ (grub_xvasprintf): Likewise.
+ * kern/misc.c (grub_vprintf): Use grub_vsnprintf_real.
+ (grub_sprintf): Removed.
+ (grub_vsnprintf): New function.
+ (grub_snprintf): Likewise.
+ (grub_xvasprintf): Likewise.
+ (grub_xasprintf): Likewise.
+ (grub_vsprintf): Renamed to ...
+ (grub_vsnprintf_real): ...this. New argument max_len.
+
+2010-01-20 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * include/grub/script_sh.h (sourcecode): Remove const qualifier to
+ fix grub-script-check warning.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/font.h (grub_font_load): Fix prototype.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/mips.rmk (kernel_img_HEADERS) [yeeloong]: Add pci.h.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/x86_64/at_keyboard.h: New file.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/mips/linux.c: Include missing grub/i18n.h.
+
+2009-12-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/menu.c (notify_execution_failure): Clarify error message.
+
+2009-12-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * commands/loadenv.c (check_blocklists): Use `grub_err_t' as
+ return value (and revert all return statements). Update users.
+
+2010-01-20 Dan Merillat <debian@dan.merillat.org>
+
+ * kern/device.c (grub_device_iterate): Allocate new part_ent
+ structure based on sizeof (*p) rather than sizeof (p->next), to
+ account for structure padding.
+
+ * util/grub-probe.c (probe_raid_level): Return -1 immediately if
+ disk is NULL, which might happen for LVM physical volumes with no
+ LVM signature.
+
+2009-12-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/mips/linux.c (grub_cmd_initrd)
+ (GRUB_MOD_INIT(linux)): Adjust and gettextize a few strings.
+
+2009-12-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/mips/yeeloong/init.c (grub_video_sm712_init)
+ (grub_video_video_init, grub_video_bitmap_init)
+ (grub_font_manager_init, grub_term_gfxterm_init)
+ (grub_at_keyboard_init): New extern declarations.
+ (grub_machine_init): Initialize gfxterm and at_keyboard.
+
+ * kern/main.c (grub_main): Revert grub_printf delay kludge.
+
+ * util/grub-install.in: Revert embed of `at_keyboard.mod' and
+ `gfxterm.mod' into core image.
+
+ * conf/mips.rmk (pkglib_IMAGES, kernel_img_SOURCES)
+ (kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
+ (kernel_img_FORMAT): Copy to ...
+
+ * conf/mips-qemu-mips.rmk (pkglib_IMAGES, kernel_img_SOURCES)
+ (kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
+ (kernel_img_FORMAT): ... here, and ...
+
+ * conf/mips-yeeloong.rmk (pkglib_IMAGES, kernel_img_SOURCES)
+ (kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
+ (kernel_img_FORMAT): ... here.
+
+ (kernel_img_SOURCES): Add files necessary for output (gfxterm)
+ and input (at_keyboard) terminals in kernel.
+ (kernel_img_CFLAGS): Add `-DUSE_ASCII_FAILBACK'.
+
+ (pkglib_MODULES): Remove `pci.mod'.
+ (pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS)
+ (sm712_mod_SOURCES, sm712_mod_CFLAGS, sm712_mod_LDFLAGS)
+ (at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
+ (at_keyboard_mod_LDFLAGS): Remove variables.
+
+2010-01-11 Felix Zielcke <fzielcke@z-51.de>
+
+ * po/POTFILES: Replace `term/i386/pc/serial.c' with `term/serial.c'.
+
+2009-12-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/mips/libgcc.h: Only export symbols for functions
+ that libgcc provides.
+
+2009-12-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ MIPS support.
+
+ * bus/bonito.c: New file.
+ * bus/pci.c (grub_pci_iterate): Use GRUB_PCI_NUM_BUS and
+ GRUB_PCI_NUM_DEVICES.
+ * term/i386/pc/serial.c: Move to ...
+ * term/serial.c: ... here. All users updated.
+ * util/i386/pc/grub-mkimage.c: Move to ...
+ * util/grub-mkrawimage.c: ... here. All users updated.
+ * term/i386/pc/at_keyboard.c: Move to ...
+ * term/at_keyboard.c: ... here. All users updated.
+ * conf/mips-qemu-mips.rmk: New file.
+ * conf/mips-yeeloong.rmk: Likewise.
+ * conf/mips.rmk: Likewise.
+ * configure.ac: New platforms mipsel-yeeloong, mips-qemu-mips and
+ mipsel-qemu-mips.
+ * disk/ata.c (grub_ata_device_initialize): Add GRUB_MACHINE_PCI_IO_BASE
+ to port addresses.
+ (grub_ata_pciinit): Support CS5536.
+ * font/font.c (grub_font_load): Use grub_file_t instead of filename.
+ * font/font_cmd.c (loadfont_command): Open file before passing it to
+ grub_font_load.
+ (pseudo_file_read): New function.
+ (pseudo_file_close): Likewise.
+ (pseudo_fs): New structure.
+ (load_font_module): New function.
+ (GRUB_MOD_INIT(font_manager)): Load embedded font.
+ * fs/cpio.c (grub_cpio_open): Handle partial matches correctly.
+ * genmk.rb: Strip .rel.dyn, .reginfo, .note and .comment.
+ * genmoddep.awk: Ignore __gnu_local_gp. It's defined by linker.
+ * include/grub/i386/at_keyboard.h: Split into ...
+ * include/grub/at_keyboard.h: ... this ...
+ * include/grub/i386/at_keyboard.h: ... and this.
+ * include/grub/dl.h (grub_arch_dl_init_linker) [_mips && !GRUB_UTIL]:
+ New prototype.
+ * include/grub/elfload.h (grub_elf32_size): New parameter. All users
+ updated.
+ (grub_elf64_size): Likewise.
+ * include/grub/font.h (grub_font_load): Use grub_file_t instead of
+ filename.
+ * include/grub/i386/io.h (grub_port_t): New type. All users updated.
+ * include/grub/i386/coreboot/serial.h: Rewritten.
+ * include/grub/i386/ieee1275/serial.h: Include
+ grub/i386/coreboot/serial.h instead of grub/i386/pc/serial.h.
+ * include/grub/i386/pc/serial.h: Moved from here ...
+ * include/grub/serial.h: ... to here. All users updated.
+ * include/grub/i386/pci.h (GRUB_MACHINE_PCI_IO_BASE): New definition.
+ (GRUB_PCI_NUM_BUS): Likewise.
+ (GRUB_PCI_NUM_DEVICES): Likewise.
+ (grub_pci_device_map_range): Add missing volatile keyword.
+ * include/grub/kernel.h (OBJ_TYPE_FONT): New enum value.
+ * include/grub/mips/at_keyboard.h: New file.
+ * include/grub/mips/cache.h: Likewise.
+ * include/grub/mips/io.h: Likewise.
+ * include/grub/mips/kernel.h: Likewise.
+ * include/grub/mips/libgcc.h: Likewise.
+ * include/grub/mips/pci.h: Likewise.
+ * include/grub/mips/qemu-mips/boot.h: Likewise.
+ * include/grub/mips/qemu-mips/kernel.h: Likewise.
+ * include/grub/mips/qemu-mips/loader.h: Likewise.
+ * include/grub/mips/qemu-mips/memory.h: Likewise.
+ * include/grub/mips/qemu-mips/serial.h: Likewise.
+ * include/grub/mips/qemu-mips/time.h: Likewise.
+ * include/grub/mips/relocator.h: Likewise.
+ * include/grub/mips/time.h: Likewise.
+ * include/grub/mips/types.h: Likewise.
+ * include/grub/mips/yeeloong/at_keyboard.h: Likewise.
+ * include/grub/mips/yeeloong/boot.h: Likewise.
+ * include/grub/mips/yeeloong/kernel.h: Likewise.
+ * include/grub/mips/yeeloong/loader.h: Likewise.
+ * include/grub/mips/yeeloong/memory.h: Likewise.
+ * include/grub/mips/yeeloong/pci.h: Likewise.
+ * include/grub/mips/yeeloong/serial.h: Likewise.
+ * include/grub/mips/yeeloong/time.h: Likewise.
+ * kern/dl.c (grub_dl_resolve_symbols): Handle STT_OBJECT correctly.
+ * kern/elf.c (grub_elf32_size): New parameter. All users
+ updated.
+ (grub_elf64_size): Likewise.
+ * kern/main.c (grub_main): Call grub_arch_dl_init_linker if necessary.
+ Load modules before saying "Welcome to GRUB!".
+ Call grub_refresh after saying "Welcome to GRUB!".
+ * kern/mips/cache.S: New file.
+ * kern/mips/cache_flush.S: Likewise.
+ * kern/mips/dl.c: Likewise.
+ * kern/mips/init.c: Likewise.
+ * kern/mips/qemu-mips/init.c: Likewise.
+ * kern/mips/startup.S: Likewise.
+ * kern/mips/yeeloong/init.c: Likewise.
+ * kern/term.c (grub_putcode): Handle NULL terminal.
+ (grub_getcharwidth): Likewise.
+ (grub_getkey): Likewise.
+ (grub_checkkey): Likewise.
+ (grub_getkeystatus): Likewise.
+ (grub_getxy): Likewise.
+ (grub_getwh): Likewise.
+ (grub_gotoxy): Likewise.
+ (grub_cls): Likewise.
+ (grub_setcolorstate): Likewise.
+ (grub_setcolor): Likewise.
+ (grub_getcolor): Likewise.
+ (grub_refresh): Likewise.
+ * lib/mips/relocator.c (JUMP_SIZEOF): Fix incorrect value.
+ (write_jump): Add hatch nop.
+ * lib/mips/relocator_asm.S: Use kern/mips/cache_flush.S.
+ * lib/mips/setjmp.S: New file.
+ * loader/mips/linux.c: Likewise.
+ * term/i386/pc/at_keyboard.c: Move from here ...
+ * term/at_keyboard.c: ... to here.
+ * term/i386/pc/serial.c: Moved from here ...
+ * term/serial.c: ... to here. All users updated.
+ (TEXT_HEIGHT): Set to 24 to fit linux terminal.
+ (serial_hw_io_addr): Use GRUB_MACHINE_SERIAL_PORTS.
+ (serial_translate_key_sequence): Avoid deadlock.
+ (grub_serial_getkey): Handle backspace.
+ (grub_serial_putchar): Fix newline handling.
+ * util/i386/pc/grub-mkimage.c: Move from here ...
+ * util/grub-mkrawimage.c: ... to here. All users updated.
+ (generate_image): New parameters 'font_path' and 'format'.
+ Support embedding font.
+ Use grub_host_to_target* instead of grub_cpu_to_le*.
+ (generate_image) [GRUB_MACHINE_MIPS]: Support ELF encapsulation.
+ (options) [GRUB_PLATFORM_IMAGE_DEFAULT]: New option "--format".
+ (options): New option "--font".
+ (usage): Likewise.
+ (main) [GRUB_PLATFORM_IMAGE_DEFAULT]: Handle "--format".
+ (main): Handle "--font".
+ * term/gfxterm.c (grub_virtual_screen): New member bg_color_display.
+ (grub_virtual_screen_setup): Set bg_color_display.
+ (redraw_screen_rect): Use bg_color_display instead of incorrect
+ bg_color.
+ (grub_gfxterm_cls): Likewise.
+ * util/elf/grub-mkimage.c (load_modules): New parameter 'config_path'.
+ Support embedding config file.
+ (add_segments): Likewise.
+ (options): New option "--config".
+ (main): Handle "--config".
+ * video/sm712.c: New file.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix parallel builds.
+
+ * conf/common.rmk (font/font.c_DEPENDENCIES): New variable (makes
+ font.c depend on ascii.h).
+
+2010-01-12 Carles Pina i Estany <carles@pina.cat>
+
+ * Makefile.in (DUSE_ASCII_FAILBACK): New macro.
+
+2010-01-11 Carles Pina i Estany <carles@pina.cat>
+
+ * font/font.c (GENERATE_ASCII): Change the name to USE_ASCII_FAILBACK.
+ By default: disabled.
+ * Makefile.in (ascii.h): Remove the non-needed grub/bin2h size
+ parameter.
+
+2010-01-10 Carles Pina i Estany <carles@pina.cat>
+
+ * font/font.c: Update copyright years.
+ * util/grub-mkfont.c (write_font_ascii_bitmap): Change comment format.
+
+2010-01-10 Carles Pina i Estany <carles@pina.cat>
+
+ * font/font.c: Include `ascii.h'.
+ (ASCII_BITMAP_SIZE): New macro.
+ (ascii_font_glyph): Define.
+ (ascii_glyph_lookup): New function.
+ (grub_font_get_string_width): Change comment. If glyph not found, use
+ ascii_glyph_lookup.
+ (grub_font_get_glyph_with_fallback): If glyph not available returns
+ ascii_glyph_lookup.
+ * util/grub-mkfont.c (file_formats): New enum.
+ (options): Add `ascii-bitmaps' new option.
+ (usage): Add `asii-bitmaps' new option.
+ (write_font_ascii_bitmap): New function.
+ (write_font): Rename to ...
+ (write_font_p2): ... this. Remove print_glyphs call.
+ (main): Use file_format. Implement code for ranges if ascii-bitmaps is
+ used. Call print_glyphs.
+ * Makefile.in (pkgdata_DATA): Add `ascii.h'.
+
+2010-01-14 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (bin_UTILITIES): Add `grub-bin2h'.
+ (grub_bin2h_SOURCES): New variable.
+ * util/bin2h.c: New file.
+
+2010-01-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/multiboot.h: Resynced with spec.
+ * include/multiboot2.h: Likewise.
+ * loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap): Handle
+ GRUB_MACHINE_MEMORY_ACPI_RECLAIMABLE and GRUB_MACHINE_MEMORY_NVS.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/term.h (grub_term_register_input,
+ grub_term_register_output): Check return of terminal init()
+ routines, and abort if errors are raised.
+
+ * commands/terminal.c: Update copyright year.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * commands/terminal.c (grub_cmd_terminal_input)
+ (grub_cmd_terminal_output): Check return of terminal init()
+ routines, and abort if errors are raised.
+
+2010-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/bsd.h: Fix include pathes.
+
+2010-01-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing *BSD copyright headers.
+
+ * include/grub/aout.h: Add BSD licence.
+ * include/grub/i386/bsd.h: Parts under different licences moved to ...
+ * include/grub/i386/freebsd_linker.h: ... here,
+ * include/grub/i386/freebsd_reboot.h: ... here,
+ * include/grub/i386/netbsd_bootinfo.h: ... here,
+ * include/grub/i386/netbsd_reboot.h: ... here,
+ * include/grub/i386/openbsd_bootarg.h: ... here,
+ * include/grub/i386/openbsd_reboot.h: ... and here. Added appropriate
+ licence to each file.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * acinclude.m4: Remove `nop' assembly instruction; it's not
+ implemented by all architectures.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/efi/linux.c (grub_cmd_linux): Stop pretending we're
+ ELILO. This is no longer necessary.
+
+2010-01-18 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Added new tool, grub-scrit-check to verify grub.cfg syntax.
+
+ * util/grub-script-check.c: grub-script-check tool.
+ * conf/common.rmk: Make rules for grub-script-check.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix annoying UI bug in rescue mode. Thanks to Tristan Gingold for
+ spotting it back in 2008. Shame on me for forgetting he did.
+
+ * kern/rescue_reader.c (grub_rescue_run): Skip zero-length lines.
+
+2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/linux.h (GRUB_VIDEO_TYPE_TEXT): Rename to ...
+ (GRUB_VIDEO_LINUX_TYPE_TEXT): ... this. Update all users.
+ (GRUB_VIDEO_TYPE_VLFB): Rename to ...
+ (GRUB_VIDEO_LINUX_TYPE_VESA): ... this. Update all users.
+ (GRUB_VIDEO_TYPE_EFI): Rename to ...
+ (GRUB_VIDEO_LINUX_TYPE_SIMPLE): ... this. Update all users.
+
+2010-01-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/test.h: Add license header.
+ * tests/example_functional_test.c: Likewise.
+ * tests/example_unit_test.c: Likewise.
+ * tests/lib/functional_test.c: Likewise.
+ * tests/lib/test.c: Likewise.
+ * tests/lib/unit_test.c: Likewise.
+
+2010-01-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use flag-based instead of hook-based video mode selection and "auto"
+ keyword.
+
+ * include/grub/video.h (grub_video_adapter): Changed 'setup' member.
+ (grub_video_set_mode): Changed prototype. All users updated.
+ (grub_video_check_mode_flag): New inline function.
+ * video/video.c (parse_modespec): New function.
+ (grub_video_set_mode): Parse flags and keywords.
+
+2010-01-17 Carles Pina i Estany <carles@pina.cat>
+
+ * util/misc.c (grub_util_info): Fix the order of the parameters in a
+ fprintf call.
+
+2010-01-16 Grégoire Sutre <gregoire.sutre@gmail.com>
+
+ * genmk.rb (class SCRIPT): Replace option -i of sed by a pipe.
+
+2010-01-16 Carles Pina i Estany <carles@pina.cat>
+
+ * util/grub-editenv.c (usage): Use `program_name' instead of hardcoded
+ string.
+ * util/grub-emu.c (usage): Likewise.
+ * util/grub-mkpasswd-pbkdf2.c (usage): Likewise.
+ * util/i386/efi/grub-mkimage.c (usage): Likewise.
+ * util/i386/pc/grub-mkimage.c (usage): Likewise.
+ * util/i386/pc/grub-setup.c (usage): Likewise.
+
+2010-01-16 Carles Pina i Estany <carles@pina.cat>
+
+ * util/misc.c (grub_util_warn): Gettextizze, print full stop after
+ the message.
+ (grub_util_info): Likewise.
+ (grub_util_error): Likewise.
+ * util/elf/grub-mkimage.c: Fix capitalisation, quotes, full stops
+ and/or new lines in `grub_util_warna', `grub_util_info',
+ `grub_util_error' calls.
+ * util/getroot.c: Likewise.
+ * util/grub-editenv.c: Likewise.
+ * util/grub-emu.c: Likewise.
+ * util/grub-fstest.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/grub-mkfont.c: Likewise.
+ * util/grub-mkpasswd-pbkdf2.c: Likewise.
+ * util/grub-mkrelpath.c: Likewise.
+ * util/grub-pe2elf.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/hostdisk.c: Likewise.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+ * util/i386/pc/grub-mkimage.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/ieee1275/ofpath.c: Likewise.
+ * util/mkisofs/eltorito.c: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+ * util/raid.c: Likewise.
+ * util/sparc64/ieee1275/grub-mkimage.c: Likewise.
+ * util/sparc64/ieee1275/grub-setup.c: Likewise.
+
+2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable multiboot on non-pc.
+
+ * conf/i386-coreboot.rmk, conf/i386-pc.rmk (pkglib_MODULES): Move
+ multiboot.mod and multiboot2.mod to ...
+ * conf/i386.rmk (pkglib_MODULES): ... here.
+ * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_SOURCES):
+ Moved to ...
+ * conf/i386.rmk (multiboot_mod_SOURCES): .. here.
+ * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_CFLAGS):
+ Moved to ...
+ * conf/i386.rmk (multiboot_mod_CFLAGS): .. here.
+ * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_ASFLAGS):
+ Moved to ...
+ * conf/i386.rmk (multiboot_mod_ASFLAGS): .. here.
+ * conf/i386-coreboot.rmk, conf/i386-pc.rmk (multiboot_mod_LDFLAGS):
+ Moved to ...
+ * conf/i386.rmk (multiboot_mod_LDFLAGS): .. here.
+ * conf/x86_64-efi.rmk (pkglib_MODULES): Remove ata.mod and
+ relocator.mod.
+ (ata_mod_SOURCES): Removed.
+ (ata_mod_CFLAGS): Likewise.
+ (ata_mod_LDFLAGS): Likewise.
+ (relocator_mod_SOURCES): Removed.
+ (relocator_mod_CFLAGS): Likewise.
+ (relocator_mod_ASFLAGS): Likewise.
+ (relocator_mod_LDFLAGS): Likewise.
+ Include i386.mk.
+ * include/grub/x86_64/multiboot.h: New file.
+ * loader/i386/multiboot.c (grub_multiboot_boot) [GRUB_MACHINE_EFI]:
+ Terminate EFI.
+
+2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Video multiboot support.
+
+ * include/grub/multiboot.h (grub_multiboot_set_accepts_video):
+ New prototype.
+ * include/multiboot.h: Resynced with multiboot specification.
+ * include/multiboot2.h: Likewise.
+ * loader/i386/multiboot.c (UNSUPPORTED_FLAGS): Support video flags.
+ (grub_multiboot): Parse MULTIBOOT_VIDEO_MODE fields.
+ * loader/i386/multiboot_mbi.c (DEFAULT_VIDEO_MODE): New constant.
+ (HAS_VGA_TEXT): Likewise.
+ (accepts_video): New variable.
+ (grub_multiboot_set_accepts_video): New function.
+ (grub_multiboot_get_mbi_size): Account for video structures.
+ (set_video_mode): New function.
+ (retrieve_video_parameters): Likewise.
+ (grub_multiboot_make_mbi): Fill video fields.
+
+2010-01-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Video driver ids.
+
+ * include/grub/video.h (grub_video_driver_id): New type.
+ (grub_video_adapter): New member 'id'. All users updated.
+ (grub_video_get_driver_id): New proto.
+ * video/video.c (grub_video_get_driver_id): New function.
+
+2010-01-14 Carles Pina i Estany <carles@pina.cat>
+
+ * util/grub.d/30_os-prober.in: Use `set var=val' rather than plain
+ `var=val'.
+
+2010-01-14 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/cmdline.c (print_completion): Gettextizze.
+
+2001-01-14 Carles Pina i Estany <carles@pina.cat>
+
+ * loader/i386/pc/chainloader.c: Include `<grub/mm.h>'.
+
+2010-01-14 Carles Pina i Estany <carles@pina.cat>
+
+ * gettext/gettext.c (grub_gettext_translate): Push and pop
+ grub_errno.
+ (grub_gettext_delete_list): Change comment style.
+ * kern/err.c (grub_error): Gettextizze.
+ (grub_fatal): Gettextizze.
+
+2010-01-14 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/loader.h (grub_linux16_boot): Renamed to ...
+ (grub_linux16_real_boot): ... this.
+ * kern/i386/loader.S: Likewise.
+ * loader/i386/pc/linux.c: Include `<grub/video.h>' and `<grub/mm.h>'.
+ (grub_linux16_boot): New function. Switches to text mode and calls
+ grub_linux16_real_boot().
+
+ * loader/i386/bsd.c: Include `<grub/video.h>'.
+ (grub_freebsd_boot, grub_openbsd_boot, grub_netbsd_boot): Switch to
+ text mode before calling grub_unix_real_boot().
+
+ * loader/i386/multiboot.c: Include `<grub/video.h>'.
+ (grub_multiboot_boot): Switch to text mode before calling
+ grub_relocator32_boot().
+
+ * loader/i386/pc/chainloader.c: Include `<grub/video.h>'.
+ (grub_chainloader_boot): Switch to text mode before calling
+ grub_chainloader_real_boot().
+
+2010-01-05 Jordan Uggla <jordan.uggla@gmail.com>
+2010-01-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-reboot.in: Make sure prev_saved_entry always gets a
+ non-empty value.
+
+2010-01-05 Jordan Uggla <jordan.uggla@gmail.com>
+2010-01-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Define a "savedefault" function for use
+ in menu entries.
+ * util/grub-mkconfig_lib.in (save_default_entry): Use it.
+
+2010-01-05 Jordan Uggla <jordan.uggla@gmail.com>
+2010-01-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in (save_default_entry): Only set
+ saved_entry if boot_once is unset.
+ * util/grub.d/00_header.in: Set boot_once to "true" if there was a
+ previous saved entry (i.e. grub-reboot).
+
+2009-12-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/30_os-prober.in: Call save_default_entry for hurd.
+
+2009-12-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Use `set var=val' rather than plain
+ `var=val'.
+ * util/grub-mkconfig_lib.in (save_default_entry): Likewise.
+
+2009-12-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-reboot.in: Fix --version output.
+ * util/grub-set-default.in: Likewise.
+
+2009-12-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Silently ignore zero-sized environment
+ blocks.
+
+2009-12-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/00_header.in: Quote the value assigned to `default',
+ in case it contains spaces.
+
+2009-12-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/30_os-prober.in: Fix merge error that moved a
+ `save_default_entry' call from the macosx case to the linux case.
+
+2009-10-25 Vladimir Serbinenko <phcoder@gmail.com>
+2009-10-25 Colin Watson <cjwatson@ubuntu.com>
+
+ * normal/menu.c (grub_menu_execute_entry): Save selected entry title
+ in `chosen' environment variable.
+ * normal/menu_text.c (get_entry_number): Check if the variable
+ matches the title of a menu entry.
+ (run_menu): Pass menu to get_entry_number.
+
+ * util/grub-reboot.in: New file.
+ * util/grub-set-default.in: New file.
+ * conf/common.rmk (grub-reboot): New utility.
+ (grub-set-default): New utility.
+
+ * util/grub-mkconfig_lib.in (save_default_entry): New function.
+ * util/grub.d/00_header.in: If GRUB_DEFAULT is `saved', set
+ default to `${saved_entry}'. If `${prev_saved_entry}' is non-empty,
+ move it to `saved_entry' for the next boot. Load environment on
+ initialisation.
+ * util/grub.d/10_kfreebsd.in: Call save_default_entry.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_linux.in (linux_entry): Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+ * util/grub-install.in: Create environment block.
+ * util/i386/efi/grub-install.in: Likewise.
+ * util/ieee1275/grub-install.in: Likewise.
+ * util/sparc64/ieee1275/grub-install.in: Likewise.
+
+2010-01-14 BVK Chaitanya <bvk.groups@gmail.com>
+
+ Unit testing framework for GRUB.
+
+ * Makefile.in: Test framework build rules for 'make check'.
+ * conf/tests.rmk: Build rules for individual tests and framework.
+
+ * include/grub/test.h: Header file for whitebox tests.
+ * tests/lib/functional_test.c: Framework support for whitebox
+ functional tests.
+ * tests/lib/test.c: Common whitebox testing code for unit and
+ functional tests.
+ * tests/lib/unit_test.c: Framework support for whitebox unit
+ tests.
+
+ * tests/util/grub-shell-tester.in: Support utility for grub-script
+ tests.
+ * tests/util/grub-shell.in: Utility to execute grub-script
+ commands in a Qemu instance.
+
+ * tests/example_functional_test.c: Example whitebox functional
+ test.
+ * tests/example_grub_script_test.in: Example grub-script test.
+ * tests/example_scripted_test.in: Example scripted test.
+ * tests/example_unit_test.c: Example whitebox unit test.
+
+2010-01-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/i386-coreboot.rmk (multiboot_mod_SOURCES):
+ Add loader/i386/multiboot_mbi.c.
+ (multiboot2_mod_SOURCES): Likewise.
+ * conf/i386-pc.rmk (multiboot_mod_SOURCES): Likewise.
+ (multiboot2_mod_SOURCES): Likewise.
+ * include/grub/multiboot.h (grub_multiboot_get_mbi_size): New proto.
+ (grub_multiboot_make_mbi): Likewise.
+ (grub_multiboot_free_mbi): Likewise.
+ (grub_multiboot_init_mbi): Likewise.
+ (grub_multiboot_add_module): Likewise.
+ (grub_multiboot_set_bootdev): Likewise.
+ * loader/i386/multiboot.c (mbi): Removed.
+ (mbi_dest): Likewise.
+ (alloc_mbi): New variable.
+ (grub_multiboot_payload_size): Removed. All users updated.
+ (grub_multiboot_pure_size): New variable.
+ (grub_multiboot_boot): Use grub_multiboot_make_mbi.
+ (grub_multiboot_unload): Use grub_multiboot_free_mbi.
+ (grub_get_multiboot_mmap_len): Moved to loader/i386/multiboot_mbi.c.
+ (grub_fill_multiboot_mmap): Likewise.
+ (grub_multiboot_get_bootdev): Likewise.
+ (grub_multiboot): Use multiboot_mbi functions.
+ * loader/i386/multiboot_mbi.c: New file.
+
+2010-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/efi/init.c (grub_efi_fini): Don't call grub_efi_mm_fini as
+ it would result in module crash.
+
+2010-01-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_putchar): Handle '\r'.
+ (grub_ofconsole_getwh): Split to ...
+ (grub_ofconsole_getwh): ... this.
+ (grub_ofconsole_dimensions): ...and this.
+ (grub_ofconsole_init_output): Call grub_ofconsole_dimensions.
+
+2010-01-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/rock.c (generate_rock_ridge_attributes): Fix a typo.
+
+2010-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/pc/multiboot2.c: Removed stalled file.
+
+2010-01-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/grub-mkpasswd-pbkdf2.c (main): Use grub_util_init_nls.
+ Reported by: Grégoire Sutre
+
+2010-01-11 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/misc.c (canonicalize_file_name): New function.
+ (make_system_path_relative_to_its_root): Use canonicalize_file_name()
+ instead of realpath().
+
+2010-01-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-install.in (usage): Clarify meaning of --root-directory,
+ and make it clearer that it's optional. Based on confusion
+ witnessed on IRC.
+
+2010-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/i386/pc/vga_text.c (inc_y): Fix off-by-one error which resulted
+ in premature implicit newline.
+
+2010-01-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/cmdline.c (grub_cmdline_get): Fix off-by-one error
+ which resulted in garbled command line at the end of screen.
+
+2010-01-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/ieee1275/linux.c (grub_linux_boot): Rework video position
+ initialization with similar approach as with other Linux loaders.
+
+2010-01-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix i386-ieee1275 build.
+
+ * loader/i386/ieee1275/linux.c (grub_linux_boot): Use grub_term_width()
+ and grub_term_height() for video_{width,height} initialization.
+
+2010-01-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix grub-emu build.
+
+ * conf/any-emu.rmk (grub_emu_SOURCES): Remove `kern/reader.c'.
+
+2010-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+2010-01-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ Support for multiple terminals.
+
+ * Makefile.in (pkglib_DATA): terminal.lst.
+ (terminal.lst): New target.
+ * commands/handler.c (grub_cmd_handler): Don't handle terminals.
+ (GRUB_MOD_INIT(handler)): Likewise.
+ (GRUB_MOD_FINI(handler)): Likewise.
+ * commands/help.c (grub_cmd_help): Handle multiple terminals.
+ * commands/keystatus.c (grub_cmd_keystatus): Likewise.
+ * commands/sleep.c (do_print): Use grub_term_restore_pos.
+ (grub_cmd_sleep): Use grub_term_save_pos.
+ * commands/terminal.c: New file.
+ * conf/any-emu.rmk (grub_emu_SOURCES): Add normal/term.c
+ commands/terminal.c and lib/charset.c.
+ * conf/common.rmk (normal_mod_SOURCES): Add normal/term.c.
+ (pkglib_MODULES): Add terminal.mod.
+ (terminal_mod_SOURCES): New variable.
+ (terminal_mod_CFLAGS): Likewise.
+ (terminal_mod_LDFLAGS): Likewise.
+ * genhandlerlist.sh: Don't handle terminals.
+ * genmk.rb: Generate terminal-*.lst.
+ * genterminallist.sh: New file.
+ * include/grub/charset.h (grub_ucs4_to_utf8_alloc): New proto.
+ (grub_is_valid_utf8): Likewise.
+ (grub_utf8_to_ucs4_alloc): Likewise.
+ * include/grub/menu_viewer.h (grub_menu_viewer): Rewritten.
+ (grub_menu_register_viewer): Changed argument.
+ (grub_menu_try_text): New proto.
+ (grub_gfxmenu_try_hook): New declaration.
+ * include/grub/normal.h (grub_normal_exit_level): New declaration.
+ (grub_menu_init_page): Additional argument term.
+ (grub_normal_init_page): Likewise.
+ (grub_cmdline_get): Arguments simplified.
+ (grub_utf8_to_ucs4_alloc): Removed.
+ (grub_print_ucs4): Additional argument term.
+ (grub_getstringwidth): Likewise.
+ (grub_print_message_indented): Likewise.
+ (grub_menu_text_register_instances): New proto.
+ (grub_show_menu): Likewise.
+ (read_terminal_list): Likewise.
+ (grub_set_more): Likewise.
+ * include/grub/parser.h: Include handler.h.
+ * include/grub/reader.h: Rewritten.
+ * include/grub/term.h (GRUB_TERM_NEED_INIT): Removed.
+ (GRUB_TERM_WIDTH): Changed to function.
+ (GRUB_TERM_HEIGHT): Likewise.
+ (GRUB_TERM_BORDER_WIDTH): Likewise.
+ (GRUB_TERM_BORDER_HEIGHT): Likewise.
+ (GRUB_TERM_NUM_ENTRIES): Likewise.
+ (GRUB_TERM_ENTRY_WIDTH): Likewise.
+ (GRUB_TERM_CURSOR_X): Likewise.
+ (grub_term_input_class): Likewise.
+ (grub_term_output_class): Likewise.
+ (grub_term_outputs_disabled): New declaration.
+ (grub_term_inputs_disabled): Likewise.
+ (grub_term_outputs): Likewise.
+ (grub_term_inputs): Likewise.
+ (grub_term_register_input): Rewritten.
+ (grub_term_register_output): Likewise.
+ (grub_term_unregister_input): Likewise.
+ (grub_term_unregister_output): Likewise.
+ (FOR_ACTIVE_TERM_INPUTS): New macro.
+ (FOR_DISABLED_TERM_INPUTS): Likewise.
+ (FOR_ACTIVE_TERM_OUTPUTS): Likewise.
+ (FOR_DISABLED_TERM_OUTPUTS): Likewise.
+ * include/grub/terminfo.h: Add oterm argument to all protypes.
+ * kern/main.c (grub_main): Don't call grub_register_rescue_reader.
+ Use grub_rescue_run.
+ * kern/misc.c (grub_utf8_to_ucs4): Put '?' for invalid characters.
+ All users updated.
+ * kern/reader.c: Removed. All users updated.
+ * kern/rescue_reader.c (grub_rescue_init): Removed.
+ (grub_rescue_reader): Likewise.
+ (grub_register_rescue_reader): Likewise.
+ (grub_rescue_run): New function based on kern/reader.c.
+ * kern/term.c: Adapted for multiterm.
+ * lib/charset.c (grub_ucs4_to_utf8_alloc): New function.
+ (grub_is_valid_utf8): Likewise.
+ (grub_utf8_to_ucs4_alloc): Moved from normal/menu_text.c.
+ * loader/i386/efi/linux.c (grub_cmd_linux): Retrieve parameters of
+ right terminal.
+ * loader/i386/linux.c (grub_linux_boot): Likewise.
+ * normal/auth.c (grub_username_get): New function.
+ (grub_auth_check_authentication): Use grub_username_get.
+ * normal/cmdline.c: Changed to UCS4. Adapted for multiterm.
+ * normal/color.c: Adapt for multiterm.
+ * normal/main.c (read_config_file): Don't use grub_reader_loop.
+ (grub_normal_init_page): Additional argument term.
+ (read_lists): Call read_terminal_lists.
+ (grub_enter_normal_mode): Call grub_cmdline_run.
+ Handle grub_normal_exit_level.
+ (grub_cmd_normal): Make reentrant.
+ (grub_cmd_normal_exit): New function.
+ (grub_normal_reader_init): Additional argument nested. Handle multiterm.
+ * normal/menu.c: Adapt for multiterm.
+ * normal/menu_entry.c: Likewise.
+ * normal/menu_text.c: Likewise.
+ * normal/menu_viewer.c: Removed. All users updated.
+ * normal/term.c: New file.
+ * util/console.c: Change order of includes to workaround a bug in
+ ncurses headers.
+ * term/terminfo.c: New argument oterm on all exported functions.
+ All users updated.
+ * util/grub-editenv.c (grub_term_input_class): Removed.
+ (grub_term_output_class): Likewise.
+
+2010-01-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ Make loader output a bit more user-friendly.
+
+ * util/grub.d/10_hurd.in: Print message indicating that GNU Mach
+ is being loaded. Likewise for the Hurd.
+
+ * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Print message indicating
+ that kernel of FreeBSD ${version} is being loaded.
+
+ * loader/i386/linux.c (grub_cmd_linux): Move debug info to
+ grub_dprintf().
+ (grub_cmd_initrd): Likewise.
+ * util/grub.d/10_linux.in (linux_entry): Print message indicating
+ that Linux ${version} is being loaded. Likewise for initrd.
+
+2010-01-09 Carles Pina i Estany <carles@pina.cat>
+
+ * gettext/gettext.c (GRUB_MOD_INIT): Gettextizze.
+
+2010-01-08 Carles Pina i Estany <carles@pina.cat>
+
+ * loader/efi/appleloader.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/efi/chainloader.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/i386/efi/linux.c: Include `<grub/i18n.h>'.
+ (grub_cmd_linux): Capitalise Linux.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/i386/ieee1275/linux.c: Include `<grub/i18n.h>'.
+ (grub_cmd_linux): Capitalise Linux.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/i386/linux.c: Include `<grub/i18n.h>'.
+ (grub_cmd_linux): Capitalise Linux.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/i386/pc/chainloader.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/i386/pc/linux.c: Include `<grub/i18n.h>'.
+ (grub_cmd_linux): Capitalise Linux.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/i386/xnu.c: Include `<grub/i18n.h>'.
+ (grub_cpu_xnu_init): Gettextizze.
+ * loader/multiboot_loader.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/powerpc/ieee1275/linux.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/sparc64/ieee1275/linux.c: Include `<grub/i18n.h>'.
+ (grub_linux_load64): Capitalise Linux.
+ (GRUB_MOD_INIT): Gettextizze.
+ * loader/xnu.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * po/POTFILES: Add `loader/efi/appleloader.c',
+ `loader/efi/chainloader.c', `loader/i386/efi/linux.c',
+ `loader/i386/ieee1275/linux.c', `loader/i386/linux.c',
+ `loader/i386/pc/chainloader.c', `loader/i386/pc/linux.c',
+ `loader/i386/xnu.c', `loader/multiboot_loader.c',
+ `loader/powerpc/ieee1275/linux.c', `loader/sparc64/ieee1275/linux.c'
+ and `loader/xnu.c'.
+
+2010-01-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * src/mkisofs.c: Remove `ifdef linux' portability kludge.
+
+2010-01-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/defaults.h (APPID_DEFAULT): Redefine using PACKAGE_NAME.
+ (SYSTEM_ID_DEFAULT): Set to "GNU" unconditionally.
+ * util/mkisofs/mkisofs.c (main): Readjust --version output.
+
+2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ Reset Multiboot 2 support. New loader implements the draft in
+ /branches/multiboot2 and shares as much code as possible with the
+ production Multiboot 1 implementation.
+
+ * loader/ieee1275/multiboot2.c: Remove file. Update all users.
+ * loader/multiboot2.c: Likewise.
+ * loader/i386/multiboot_helper.S: Likewise.
+ * include/multiboot2.h: Replace with latest version from the draft
+ in /branches/multiboot2.
+
+ * conf/i386-coreboot.rmk (multiboot_mod_SOURCES): Remove
+ `loader/i386/multiboot_helper.S', `loader/i386/pc/multiboot2.c'
+ and `loader/multiboot2.c'.
+ (pkglib_MODULES): Add `multiboot2.mod'.
+ (multiboot2_mod_SOURCES): New variable.
+ (multiboot2_mod_LDFLAGS): Likewise.
+ (multiboot2_mod_CFLAGS): Likewise. Define `GRUB_USE_MULTIBOOT2'.
+
+ * conf/i386-pc.rmk: Likewise.
+
+ * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'.
+ (multiboot_mod_SOURCES): Remove variable.
+ (multiboot_mod_LDFLAGS): Likewise.
+ (multiboot_mod_CFLAGS): Likewise.
+
+ * include/grub/multiboot.h [GRUB_USE_MULTIBOOT2]: Include
+ `<multiboot2.h>' instead of `<multiboot.h>'.
+ [GRUB_USE_MULTIBOOT2] (MULTIBOOT_BOOTLOADER_MAGIC)
+ (MULTIBOOT_HEADER_MAGIC): New macros.
+
+ * loader/multiboot_loader.c (module_version_status): Remove variable.
+ (find_multi_boot2_header): Remove function.
+ (grub_cmd_multiboot_loader): Remove Multiboot 2 / Multiboot 1 selection
+ logic. Always check for the Multiboot version we're compiling for.
+ (grub_cmd_module_loader): Likewise.
+ [GRUB_USE_MULTIBOOT2] (GRUB_MOD_INIT(multiboot)): Register `multiboot2'
+ command instead of `multiboot'.
+
+2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/multiboot.h (MULTIBOOT_UNSUPPORTED): Moved from here ...
+ * loader/i386/multiboot.c (UNSUPPORTED_FLAGS): ... to here. Update
+ all users.
+
+2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
+2010-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix breakage introduced with previous commit.
+
+ * normal/dyncmd.c (read_command_list): Avoid unregistering kernel
+ commands.
+ * normal/handler.c (read_handler_list): Revert part of previous commit
+ affecting this file.
+ * normal/main.c (read_lists): Move read_handler_list() call back to ...
+ (grub_normal_execute): ... here.
+
+2010-01-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ Merge prefix-redefinition-fix branch.
+
+ * normal/autofs.c (read_fs_list): Make function capable of being
+ run multiple times, gracefuly replacing the previous data
+ structures.
+ * normal/dyncmd.c (read_command_list): Likewise.
+ * normal/handler.c (read_handler_list): Likewise.
+ * normal/main.c (read_lists): New function. Calls all the
+ list reading functions.
+ (grub_normal_execute): Use read_lists() instead of calling all
+ list reading functions explicitly. Register read_lists() as a
+ variable hook attached to ${prefix}.
+
+2010-01-07 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Merge crypto branch.
+
+ * Makefile.in (pkglib_DATA): Add crypto.lst.
+ (crypto.lst): New target.
+ * commands/hashsum.c: New file.
+ * commands/password.c (check_password): Use grub_crypto_memcmp.
+ * commands/password_pbkdf2.c: New file.
+ * commands/xnu_uuid.c: Remove MD5. Use GRUB_MD_MD5.
+ * conf/any-emu.rmk (grub_emu_SOURCES): Add lib/crypto.c,
+ normal/crypto.c and lib/libgcrypt-grub/cipher/md5.c.
+ (grub_emu_CFLAGS): Add -Wno-missing-field-initializers -Wno-error
+ -I$(srcdir)/lib/libgcrypt_wrap.
+ * conf/common.rmk (normal_mod_SOURCES): Add normal/crypto.c.
+ (pkglib_MODULES): Add crypto.mod, hashsum.mod, pbkdf2.mod and
+ password_pbkdf2.mod.
+ (crypto_mod_SOURCES): New variable.
+ (crypto_mod_CFLAGS): Likewise.
+ (crypto_mod_LDFLAGS): Likewise.
+ (hashsum_mod_SOURCES): New variable.
+ (hashsum_mod_CFLAGS): Likewise.
+ (hashsum_mod_LDFLAGS): Likewise.
+ (pbkdf2_mod_SOURCES): New variable.
+ (pbkdf2_mod_CFLAGS): Likewise.
+ (pbkdf2_mod_LDFLAGS): Likewise.
+ (password_pbkdf2_mod_SOURCES): New variable.
+ (password_pbkdf2_mod_CFLAGS): Likewise.
+ (password_pbkdf2_mod_LDFLAGS): Likewise.
+ (bin_UTILITIES): Add grub-mkpasswd-pbkdf2.
+ (grub_mkpasswd_pbkdf2_SOURCES): New variable.
+ (grub_mkpasswd_pbkdf2_CFLAGS): Likewise.
+ Include conf/gcry.rmk.
+ * include/grub/auth.h: Rewritten.
+ * include/grub/crypto.h: New file.
+ * include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_LUKS_ID.
+ * include/grub/normal.h (read_crypto_list): New prototype.
+ * lib/crypto.c: New file.
+ * lib/libgcrypt_wrap/cipher_wrap.h: Likewise.
+ * lib/pbkdf2.c: Likewise.
+ * normal/auth.c (grub_auth_strcmp): Removed.
+ (grub_iswordseparator): Likewise.
+ (grub_auth_strword): Likewise.
+ (is_authenticated): Use grub_strword.
+ (grub_auth_check_authentication): Use grub_strcmp, grub_password_get
+ and grub_strword. Pass entered password to authentication callback.
+ * normal/crypto.c: New file.
+ * normal/main.c: Call read_crypto_list.
+ * util/grub-mkpasswd-pbkdf2.c: New file.
+ * util/import_gcry.py: Generate crypto.lst. Add hash blocklen.
+
+2010-01-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix descent and ascent calculation.
+
+ * util/grub-mkfont.c (grub_font_info): New fields 'asce' and 'max_y'.
+ (options): New option "asce".
+ (usage): Likewise.
+ (add_char): Ignore invalid glyphs for descent calculation.
+ Calculate ascent from actual content.
+ (print_glyphs): Use 'asce'.
+ (write_font): Likewise. Allow ascent override.
+ (main): Handle "asce" option.
+
+2010-01-06 Carles Pina i Estany <carles@pina.cat>
+
+ * kern/err.c: Include `<grub/i18n.h>'.
+ (grub_print_error): Add full stop. Gettextizze.
+ * loader/i386/bsd.c (grub_netbsd_boot): Change grub_error description.
+ (grub_bsd_load_elf): Capitalise ELF.
+ (grub_cmd_freebsd_loadenv): Add `s' in error string.
+ (grub_cmd_freebsd_module): Likewise.
+ (grub_cmd_freebsd_module_elf): Likewise.
+ * loader/i386/bsdXX.c (SUFFIX): Capitalise ELF.
+
+2010-01-06 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/search.c (GRUB_MOD_INIT): Use HELP_MESSAGE.
+ * commands/search_file.c (HELP_MESSAGE): New macro.
+ * commands/search_label.c (HELP_MESSAGE): Likewise.
+ * commands/search_uuid.c (HELP_MESSAGE): Likewise.
+ * po/POTFILES: Add `commands/search_file.c',
+ `commands/search_label.c', `commands_uuid.c'. Remove duplicate
+ `commands/search.c'.
+
+2010-01-05 Robert Millan <rmh.grub@aybabtu.com>
+
+ * config.rpath: Update from Gnulib.
+
+2010-01-05 Yves Blusseau <blusseau@zetam.org>
+
+ * commands/acpi.c (grub_acpi_create_ebda): fix incorrect message.
+
+2010-01-05 Yves Blusseau <yves.blusseau@zetam.org>
+
+ * util/sparc64/ieee1275/grub-mkimage.c (main): Typo fix.
+
+2010-01-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/mkisofs/write.c (padblock_write): Switch size and nmemb
+ arguments to fread so that we get a return value in bytes, rather
+ than something that will normally be rounded down to 0.
+ Adjust error handling to avoid producing garbage when size_t is not
+ the same size as long long.
+
+2010-01-05 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/mkisofs/write.c (padblock_write): Check return value of
+ fread.
+
+2010-01-05 Robert Millan <rmh.grub@aybabtu.com>
+
+ Remove grub-mkfloppy. Images produced by grub-mkrescue are valid
+ floppy images now.
+
+ * util/i386/pc/grub-mkfloppy.in: Remove. Update all users.
+
+2010-01-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Use ALIGN_UP macro
+ instead of manual alignment.
+ * kern/disk.c (grub_disk_read): Remove grub_dprintf call (excessively
+ verbose). Avoid attempts to read past end of the device
+ (grub_disk_adjust_range() guarantees that we can read `size' bytes,
+ but GRUB_DISK_CACHE_SIZE may exceed that).
+
+2010-01-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * commands/crc.c (grub_cmd_crc): Abort on read errors.
+ * fs/iso9660.c (grub_iso9660_read): Check for read error and pass
+ it to upper layer.
+
+2010-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/efi/api.h (GRUB_EFI_PIWG_DEVICE_PATH_SUBTYPE):
+ New constant.
+ (grub_efi_piwg_device_path): New structure
+ (grub_efi_piwg_device_path_t): New type.
+ * loader/efi/appleloader.c (piwg_full_device_path): New structure.
+ (devpath_1): Transform to a structure. All users updated.
+ (devpath_2): Likewise.
+ (devpath_3): Likewise.
+ (devpath_4): Likewise.
+ (devpath_5): Likewise.
+
+2010-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/efi/appleloader.c: Restored. Update all users.
+
+2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
+
+ * boot/i386/pc/diskboot.S: Fix inaccurate comment.
+
+ * util/i386/pc/grub-setup.c: Include `<assert.h>'.
+ (struct boot_blocklist): Move from here ...
+ * include/grub/i386/pc/boot.h [ASM_FILE]
+ (struct grub_boot_blocklist): ... to here. Update all users.
+ (setup): Only initialize `start' member of `first_block'
+ structure. Add assert() calls to verify the other members.
+
+ * util/i386/pc/grub-mkimage.c: Include `<assert.h>'.
+ (generate_image): Fix broken blocklist length initialization.
+ Add assert() call to verify blocklist `segment' field.
+
+2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/efi/appleloader.c: Remove. Update all users.
+
+2010-01-03 Robert Millan <rmh.grub@aybabtu.com>
+
+ * boot/i386/pc/boot.S: Update copyright year.
+ * boot/i386/pc/cdboot.S: Likewise.
+ * boot/i386/pc/diskboot.S: Likewise.
+ * boot/i386/pc/lnxboot.S: Likewise.
+ * boot/i386/pc/pxeboot.S: Likewise.
+ * bus/pci.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/help.c: Likewise.
+ * commands/hexdump.c: Likewise.
+ * commands/i386/pc/halt.c: Likewise.
+ * commands/i386/pc/play.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/test.c: Likewise.
+ * disk/dmraid_nvidia.c: Likewise.
+ * disk/i386/pc/biosdisk.c: Likewise.
+ * disk/ieee1275/nand.c: Likewise.
+ * disk/ieee1275/ofdisk.c: Likewise.
+ * disk/lvm.c: Likewise.
+ * disk/raid.c: Likewise.
+ * disk/raid6_recover.c: Likewise.
+ * disk/scsi.c: Likewise.
+ * fs/affs.c: Likewise.
+ * fs/cpio.c: Likewise.
+ * fs/ext2.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/ntfs.c: Likewise.
+ * fs/sfs.c: Likewise.
+ * fs/udf.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * fs/xfs.c: Likewise.
+ * gencmdlist.sh: Likewise.
+ * genmk.rb: Likewise.
+ * include/grub/disk.h: Likewise.
+ * include/grub/efi/api.h: Likewise.
+ * include/grub/efi/efi.h: Likewise.
+ * include/grub/efi/pe32.h: Likewise.
+ * include/grub/elf.h: Likewise.
+ * include/grub/fs.h: Likewise.
+ * include/grub/i386/at_keyboard.h: Likewise.
+ * include/grub/i386/pc/memory.h: Likewise.
+ * include/grub/i386/pc/vbe.h: Likewise.
+ * include/grub/i386/pci.h: Likewise.
+ * include/grub/i386/tsc.h: Likewise.
+ * include/grub/ieee1275/ieee1275.h: Likewise.
+ * include/grub/ntfs.h: Likewise.
+ * include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
+ * include/grub/sparc64/libgcc.h: Likewise.
+ * include/grub/symbol.h: Likewise.
+ * include/grub/types.h: Likewise.
+ * include/multiboot2.h: Likewise.
+ * io/gzio.c: Likewise.
+ * kern/device.c: Likewise.
+ * kern/disk.c: Likewise.
+ * kern/efi/efi.c: Likewise.
+ * kern/efi/mm.c: Likewise.
+ * kern/elf.c: Likewise.
+ * kern/file.c: Likewise.
+ * kern/i386/dl.c: Likewise.
+ * kern/i386/pc/init.c: Likewise.
+ * kern/i386/pc/startup.S: Likewise.
+ * kern/ieee1275/ieee1275.c: Likewise.
+ * kern/ieee1275/init.c: Likewise.
+ * kern/main.c: Likewise.
+ * kern/mm.c: Likewise.
+ * kern/powerpc/dl.c: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * kern/x86_64/dl.c: Likewise.
+ * lib/hexdump.c: Likewise.
+ * loader/efi/appleloader.c: Likewise.
+ * loader/i386/ieee1275/linux.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/i386/pc/multiboot2.c: Likewise.
+ * loader/ieee1275/multiboot2.c: Likewise.
+ * loader/multiboot2.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * normal/completion.c: Likewise.
+ * normal/menu_entry.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/hostfs.c: Likewise.
+ * video/readers/png.c: Likewise.
+
+2010-01-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/misc.h (GNUC_PREREQ): New macro.
+ (ATTRIBUTE_ERROR): New macro.
+ * include/grub/list.h (grub_bad_type_cast_real): Use
+ ATTRIBUTE_ERROR.
+
+2010-01-03 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/menu_text.c (print_message): Change messages.
+
+2010-01-03 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/menu_entry.c (store_completion): Gettextizze.
+
+2010-01-03 Carles Pina i Estany <carles@pina.cat>
+
+ * kern/env.c (grub_env_unset): Set the variable to "" if has hooks.
+
+2010-01-03 Carles Pina i Estany <carles@pina.cat>
+
+ * po/POTFILES: Sort correctly.
+
+2010-01-03 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/acpi.c (GRUB_MOD_INIT): Capitalise some words from help.
+ * commands/efi/loadbios.c (GRUB_MOD_INIT): Capitalise BIOS.
+ * commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Remove space. Add
+ full stop.
+ * commands/loadenv.c (GRUB_MOD_INIT): Remove command name from
+ summary. Gettextizze the strings.
+ * commands/probe.c (grub_cmd_probe): Capitalise UUID and FS.
+ * commands/xnu_uuid.c (GRUB_MOD_INIT): Capitalise XNU.
+ * disk/loopback.c (grub_arg_options): Capitalise first letter. Add
+ full stop.
+ (GRUB_MOD_INIT): Remove command name from summary.
+ * hello/hello.c (GRUD_MOT_INIT): Add missing full stop. Improve the
+ summary.
+ * loader/i386/bsd.c (grub_arg_option): Capitalise CDROM.
+ * term/i386/pc/serial.c (options): Add full stops.
+ (GRUB_MOD_INIT): Remove command name from the summary.
+
+2010-01-03 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/acpi.c: Gettextizze help strings and/or options. Include
+ `grub/i18n.h' if needed.
+ * commands/blocklist.c: Likewise.
+ * commands/boot.c: Likewise.
+ * commands/cat.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/configfile.c: Likewise.
+ * commands/crc.c: Likewise.
+ * commands/date.c: Likewise.
+ * commands/echo.c: Likewise.
+ * commands/efi/fixvideo.c: Likewise.
+ * commands/efi/loadbios.c: Likewise.
+ * commands/gptsync.c: Likewise.
+ * commands/halt.c: Likewise.
+ * commands/handler.c: Likewise.
+ * commands/hdparm.c: Likewise.
+ * commands/hexdump.c: Likewise.
+ * commands/i386/cpuid.c: Likewise.
+ * commands/i386/pc/drivemap.c: Likewise.
+ * commands/i386/pc/halt.c: Likewise.
+ * commands/i386/pc/pxecmd.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/i386/pc/vbetest.c: Likewise.
+ * commands/ieee1275/suspend.c: Likewise.
+ * commands/keystatus.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/lsmmap.c: Likewise.
+ * commands/lspci.c: Likewise.
+ * commands/memrw.c: Likewise.
+ * commands/minicmd.c: Likewise.
+ * commands/parttool.c: Likewise.
+ * commands/password.c: Likewise.
+ * commands/probe.c: Likewise.
+ * commands/read.c: Likewise.
+ * commands/reboot.c: Likewise.
+ * commands/search.c: Likewise.
+ * commands/sleep.c: Likewise.
+ * commands/test.c: Likewise.
+ * commands/true.c: Likewise.
+ * commands/usbtest.c: Likewise.
+ * commands/videotest.c: Likewise.
+ * commands/xnu_uuid.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * hello/hello.c: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * po/POTFILES: Add new files.
+
+2010-01-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * term/i386/pc/at_keyboard.c
+ (keyboard_controller_wait_untill_ready): Rename to ...
+ (keyboard_controller_wait_until_ready): ... this. Update all users.
+
+2010-01-01 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/help.c: Include `grub/mm.h' and `grub/normal.h'.
+ (grub_cmd_help): Print the cmd->name before the cmd->summary. Cut the
+ string using string width.
+ * normal/menu_text.c (grub_print_message_indented): Use
+ grub_print_spaces and not print_spaces.
+ (print_timeout): Likewise.
+ (print_spaces): Move to...
+ * include/grub/term.h: ... here. Change the name to grub_print_spaces.
+
+2010-01-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ Import from Gnulib.
+
+ * gnulib/getdelim.c: New file.
+ * gnulib/getline.c: Likewise.
+
+2009-12-31 BVK Chaitanya <bvk.groups@gmail.com>
+
+ * include/grub/list.h (grub_assert_fail): Removed.
+ (grub_bad_type_cast_real): New function.
+ (grub_bad_type_cast): New macro.
+ (GRUB_AS_LIST): Use grub_bad_type_cast.
+ (GRUB_AS_LIST_P): Likewise.
+ (GRUB_AS_NAMED_LIST): Likewise.
+ (GRUB_AS_NAMED_LIST_P): Likewise.
+ (GRUB_AS_PRIO_LIST): Likewise.
+ (GRUB_AS_PRIO_LIST_P): Likewise.
+ * include/grub/handler.h (GRUB_AS_HANDLER): Likewise.
+
+2009-12-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT (linux)):
+ Fix syntax error.
+
+2009-12-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Check for TARGET_CFLAGS initialization before we
+ initialize it ourselves (sigh).
+ Move a few modifications to TARGET_CFLAGS to be unconditional
+ (extra warning flags, loop alignment, i386 CPU extensions, GCC 4.4
+ eh_frame)
+
+ * gettext/gettext.c (grub_gettext_delete_list): Add `void' argument.
+ * term/i386/pc/at_keyboard.c
+ (keyboard_controller_wait_untill_ready): Likewise.
+ (keyboard_controller_led): Rename `led_status' paramter to avoid
+ name conflict.
+
+2009-12-28 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/misc.c (grub_normal_print_device_info): Add spaces and double
+ quotes.
+
+2009-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/parser.c (grub_parser_split_cmdline): Don't dereference NULL.
+
+2009-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/menu_text.c (grub_print_message_indented): Prevent
+ past-the-end-of-array dereference.
+
+2009-12-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/readers/jpeg.c (GRUB_MOD_FINI (grub_cmd_jpegtest)): Rename to ..
+ (GRUB_MOD_FINI (video_reader_jpeg)): ...this
+
+2009-12-27 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/cmdline.c (grub_cmdline_get): Print a space after prompt.
+ * normal/main.c (grub_normal_read_line): Remove a space from the
+ default prompt.
+
+2009-12-27 Carles Pina i Estany <carles@pina.cat>
+
+ * loader/i386/efi/linux.c (GRUB_MOD_INIT): Improve command summary.
+ * loader/i386/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/pc/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/powerpc/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/xnu.c (GRUB_MOD_INIT): Likewise.
+
+2009-12-26 Carles Pina i Estany <carles@pina.cat>
+
+ * video/readers/jpeg.c (cmd): Declare.
+ (grub_cmd_jpegtest): Use `grub_command_t' type.
+ (GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'.
+ Assign to `cmd'.
+ (GRUB_MOD_FINI): Use `cmd' to unregister.
+ * video/readers/png.c (cmd): Declare.
+ (grub_cmd_pngtest): Use `grub_command_t' type.
+ (GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'.
+ Assign to `cmd'.
+ (GRUB_MOD_FINI): Use `cmd' to unregister.
+ * video/readers/tga.c (cmd): Declare.
+ (grub_cmd_tgatest): Use `grub_command_t' type.
+ (GRUB_MOD_INIT): Fix arguments passed to `grub_register_command'.
+ Assign to `cmd'.
+ (GRUB_MOD_FINI): Use `cmd' to unregister.
+
+2009-12-26 Carles Pina i Estany <carles@pina.cat>
+
+ * efiemu/main.c (GRUB_MOD_INIT): Fix capitalizations and/or full
+ stops.
+ * kern/corecmd.c (grub_register_core_commands): Likewise.
+ * loader/efi/chainloader.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/bsd.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/efi/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/pc/chainloader.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/pc/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/multiboot_loader.c (GRUB_MOD_INIT): Likewise.
+ * loader/powerpc/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/sparc64/ieee1275/linux.c (GRUB_MOD_INIT): Likewise.
+ * loader/xnu.c (GRUB_MOD_INIT): Likewise.
+ * mmap/mmap.c (GRUB_MOD_INIT): Likewise.
+ * normal/handler.c (insert_handler): Likewise.
+ * normal/main.c (GRUB_MOD_INIT): Likewise.
+ * term/gfxterm.c (GRUB_MOD_INIT): Likewise.
+
+2009-12-26 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/help.c (grub_cmd_help): Print the command name before the
+ summary.
+ (GRUB_MOD_INIT): Remove command name from the summary.
+ * kern/command.c (GRUB_MOD_INIT): If summary is null assign an empty
+ string as summary.
+ * lib/arg.c (find_long): Print the command name before the summary.
+ * commands/acpi.c (GRUB_MOD_INIT): Remove command name from the
+ summary.
+ * commands/blocklist.c (GRUB_MOD_INIT): Likewise.
+ * commands/cat.c (GRUB_MOD_INIT): Likewise.
+ * commands/cmp.c (GRUB_MOD_INIT): Likewise.
+ * commands/configfile.c (GRUB_MOD_INIT): Likewise.
+ * commands/crc.c (GRUB_MOD_INIT): Likewise.
+ * commands/date.c (GRUB_MOD_INIT): Likewise.
+ * commands/echo.c (GRUB_MOD_INIT): Likewise.
+ * commands/efi/loadbios.c (GRUB_MOD_INIT): Likewise.
+ * commands/gptsync.c (GRUB_MOD_INIT): Likewise.
+ * commands/handler.c (GRUB_MOD_INIT): Likewise.
+ * commands/hdparm.c (GRUB_MOD_INIT): Likewise.
+ * commands/hexdump.c (GRUB_MOD_INIT): Likewise.
+ * commands/i386/cpuid.c (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/halt.c (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/play.c (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/pxecmd.c (GRUB_MOD_INIT): Likewise.
+ * commands/keystatus.c (GRUB_MOD_INIT): Likewise.
+ * commands/loadenv.c (GRUB_MOD_INIT): Likewise.
+ * commands/ls.c (GRUB_MOD_INIT): Likewise.
+ * commands/lspci.c (GRUB_MOD_INIT): Likewise.
+ * commands/memrw.c (GRUB_MOD_INIT): Likewise.
+ * commands/minicmd.c (GRUB_MOD_INIT): Likewise.
+ * commands/parttool.c (GRUB_MOD_INIT): Likewise.
+ * commands/password.c (GRUB_MOD_INIT): Likewise.
+ * commands/probe.c (GRUB_MOD_INIT): Likewise.
+ * commands/read.c (GRUB_MOD_INIT): Likewise.
+ * commands/search.c (GRUB_MOD_INIT): Likewise.
+ * commands/sleep.c (GRUB_MOD_INIT): Likewise.
+ * commands/test.c (GRUB_MOD_INIT): Likewise.
+ * commands/xnu_uuid.c (GRUB_MOD_INIT): Likewise.
+ * efiemu/main.c (GRUB_MOD_INIT): Likewise.
+ * font/font_cmd.c (GRUB_MOD_INIT): Likewise.
+ * gettext/gettext.c (GRUB_MOD_INIT): Likewise.
+ * kern/corecmd.c (GRUB_MOD_INIT): Likewise.
+ * lib/arg.c (GRUB_MOD_INIT): Likewise.
+ * loader/efi/appleloader.c (GRUB_MOD_INIT): Likewise.
+ * loader/i386/bsd.c (GRUB_MOD_INIT): Likewise.
+ * loader/xnu.c (GRUB_MOD_INIT): Likewise.
+ * mmap/mmap.c (GRUB_MOD_INIT): Likewise.
+ * term/terminfo.c (GRUB_MOD_INIT): Likewise.
+ * video/readers/jpeg.c (GRUB_MOD_INIT): Likewise.
+ * video/readers/png.c (GRUB_MOD_INIT): Likewise.
+ * video/readers/tga.c (GRUB_MOD_INIT): Likewise.
+
+2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use search command for preliminar UUID search.
+
+ * commands/search.c: Split into ...
+ * commands/search_wrap.c: ...this
+ * commands/search.c: ...and this.
+ * commands/search_file.c: New file.
+ * commands/search_label.c: New file.
+ * commands/search_uuid.c: New file.
+ * conf/any-emu.rmk (grub_emu_SOURCES): Remove commands/search.c.
+ Add commands/search_wrap.c, commands/search_file.c,
+ commands/search_label.c and commands/search_uuid.c.
+ * conf/common.rmk (pkglib_MODULES): Remove fs_uuid.mod and fs_file.mod.
+ (search_mod_SOURCES): Set to commands/search_wrap.c.
+ (pkglib_MODULES): Add search_fs_file.mod, search_fs_uuid.mod and
+ search_label.mod.
+ (search_fs_file_mod_SOURCES): New variable.
+ (search_fs_file_mod_CFLAGS): Likewise.
+ (search_fs_file_mod_LDFLAGS): Likewise.
+ (search_label_mod_SOURCES): Likewise.
+ (search_label_mod_CFLAGS): Likewise.
+ (search_label_mod_LDFLAGS): Likewise.
+ (search_fs_uuid_mod_SOURCES): New variable.
+ (search_fs_uuid_mod_CFLAGS): Likewise.
+ (search_fs_uuid_mod_LDFLAGS): Likewise.
+ (fs_file_mod_SOURCES): Removed.
+ (fs_file_mod_CFLAGS): Likewise.
+ (fs_file_mod_LDFLAGS): Likewise.
+ (fs_uuid_mod_SOURCES): Removed.
+ (fs_uuid_mod_CFLAGS): Likewise.
+ (fs_uuid_mod_LDFLAGS): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_install_SOURCES):
+ Set to util/grub-install.in.
+ * disk/fs_file.c: Removed.
+ * disk/fs_uuid.c: Likewise.
+ * include/grub/search.h: New file.
+ * util/grub-install.in: Handle sparc64.
+ Create and use load.cfg.
+ * util/sparc64/ieee1275/grub-install.in: Removed.
+
+2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/pc/startup.S (grub_biosdisk_get_diskinfo_int13_extensions):
+ Ignore return status if CF is cleared.
+ (grub_biosdisk_get_diskinfo_standard): Likewise.
+
+2009-12-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * term/i386/pc/at_keyboard.c
+ (keyboard_controller_wait_untill_ready): New function.
+ (grub_keyboard_controller_write, grub_keyboard_controller_read)
+ (keyboard_controller_led): Use keyboard_controller_wait_untill_ready()
+ for keyboard polling, rather than duplicate the same loop. This
+ saves a few bytes in code size.
+
+2009-12-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support for (pxe[:server[:gateway]]) syntax and
+ use environment variable for PXE.
+
+ * commands/i386/pc/pxecmd.c (options): Removed.
+ (print_ip): Removed.
+ (grub_cmd_pxe): Removed
+ (grub_cmd_pxe_unload): New function.
+ * fs/i386/pc/pxe.c (grub_pxe_disk_data): New structure.
+ (grub_pxe_your_ip): Made static.
+ (grub_pxe_default_server_ip): Likewise.
+ (grub_pxe_default_gateway_ip): Likewise.
+ (grub_pxe_blksize): Likewise.
+ (parse_ip): New function.
+ (grub_pxe_open): Support server and gateway specification.
+ (grub_pxe_close): Free disk->data.
+ (grub_pxefs_open): Use disk->data.
+ (grub_pxefs_read): Likewise.
+ (grub_env_write_readonly): New function.
+ (set_mac_env): Likewise.
+ (set_env_limn_ro): Likewise.
+ (parse_dhcp_vendor): Likewise.
+ (grub_pxe_detect): Set the environment variables.
+ (set_ip_env): New function.
+ (write_ip_env): Likewise.
+ (grub_env_write_pxe_default_server): Likewise.
+ (grub_env_write_pxe_default_gateway): Likewise.
+ (grub_env_write_pxe_blocksize): Likewise.
+ (GRUB_MOD_INIT(pxe)): Set environment variables.
+ * include/grub/i386/pc/pxe.h (grub_pxe_mac_addr): Rename to ...
+ (grub_pxe_mac_addr_t): ... this. All users updated.
+ (grub_pxe_your_ip): Removed.
+ (grub_pxe_server_ip): Likewise.
+ (grub_pxe_gateway_ip): Likewise.
+ (grub_pxe_blksize): Likewise.
+
+2009-12-25 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/help.c: Include `<grub/i18n.h>'.
+ (grub_cmd_help): Gettextizze.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/play.c: Include `<grub/i18n.h>'.
+ (GRUB_MOD_INIT): Gettextizze.
+ * commands/search.c: Include `<grub/i18n.h>'.
+ (options): Gettextizze.
+ (GRUB_MOD_INIT): Gettextizze.
+ * lib/arg.c: Include `<grub/i18n.h>'.
+ (help_options): Gettextizze.
+ (find_long): Likewise.
+ (grub_arg_show_help): Likewise.
+ * normal/dyncmd.c: Include `<grub/i18n.h>'.
+ (read_command_list): Gettextizze.
+ * po/POTFILES: Add `commands/i386/pc/play.c', `commands/search.c',
+ `commands/help.c', `lib/arg.c' and `normal/dyncmd.c'.
+
+2009-12-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/at_keyboard.h (NUM_LOCK, SCROLL_LOCK): New macros.
+ * term/i386/pc/at_keyboard.c (KEYBOARD_STATUS_NUM_LOCK)
+ (KEYBOARD_LED_SCROLL, KEYBOARD_LED_NUM, KEYBOARD_LED_CAPS): New macros.
+ (led_status): New variable.
+ (keyboard_controller_led): New function.
+ (grub_at_keyboard_getkey_noblock): Handle num lock and scroll lock,
+ update led status for caps lock, num lock and scroll lock.
+
+2009-12-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/hostdisk.c (open_device): Fix a comment.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-install.in (host_os): New variable.
+ * util/i386/efi/grub-install.in (host_os): Likewise.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/write.c (padblock_write): Abort when given an
+ excedingly large embed image, instead of silently truncating it.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/multiboot.h: Indentation fixes.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/multiboot.h (struct multiboot_aout_symbol_table)
+ (struct multiboot_elf_section_header_table): New structure
+ declarations (stolen from GRUB Legacy).
+ (struct multiboot_info): Replace opaque `syms' with a.out and ELF
+ table information.
+
+ (multiboot_aout_symbol_table_t, multiboot_elf_section_header_table_t)
+ (multiboot_info_t, multiboot_memory_map_t, multiboot_module_t): New
+ type aliases.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/multiboot.h: Make comments src2texi-friendly.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ For consistency with [multiboot]/docs/boot.S.
+
+ * include/multiboot.h (MULTIBOOT_MAGIC): Rename from this ...
+ (MULTIBOOT_HEADER_MAGIC): ... to this. Update all users.
+ (MULTIBOOT_MAGIC2): Rename from this ...
+ (MULTIBOOT_BOOTLOADER_MAGIC): ... to this. Update all users.
+
+2009-12-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/multiboot.h: Remove `<grub/types.h>'.
+ (multiboot_uint16_t, multiboot_uint32_t, multiboot_uint64_t): New
+ types. Update all users.
+
+2009-12-25 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/efi/loadbios.c: Capitalize acronyms, replace `could not' by
+ `couldn't' and `can not' by `cannot'.
+ * commands/i386/pc/drivemap.c: Likewise.
+ * disk/ata.c: Likewise.
+ * disk/ieee1275/nand.c: Likewise.
+ * fs/affs.c: Likewise.
+ * fs/fat.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/hfsplus.c: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/jfs.c: Likewise.
+ * fs/minix.c: Likewise.
+ * fs/reiserfs.c: Likewise.
+ * fs/sfs.c: Likewise.
+ * fs/udf.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * fs/xfs.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * loader/sparc64/ieee1275/linux.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/misc.c: Likewise.
+
+2009-12-24 Carles Pina i Estany <carles@pina.cat>
+
+ * bus/usb/usbhub.c: Fix capitalization, fullstop and newlines in
+ grub_errno calls.
+ * commands/acpi.c: Likewise.
+ * commands/blocklist.c: Likewise.
+ * commands/efi/loadbios.c: Likewise.
+ * commands/i386/pc/drivemap.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/memrw.c: Likewise.
+ * commands/password.c: Likewise.
+ * commands/videotest.c: Likewise.
+ * disk/ata.c: Likewise.
+ * disk/ata_pthru.c: Likewise.
+ * disk/dmraid_nvidia.c: Likewise.
+ * disk/ieee1275/nand.c: Likewise.
+ * disk/ieee1275/ofdisk.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * disk/lvm.c: Likewise.
+ * disk/mdraid_linux.c: Likewise.
+ * disk/raid.c: Likewise.
+ * disk/raid6_recover.c: Likewise.
+ * disk/scsi.c: Likewise.
+ * efiemu/main.c: Likewise.
+ * efiemu/mm.c: Likewise.
+ * efiemu/pnvram.c: Likewise.
+ * efiemu/symbols.c: Likewise.
+ * font/font.c: Likewise.
+ * fs/cpio.c: Likewise.
+ * fs/hfsplus.c: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/jfs.c: Likewise.
+ * fs/minix.c: Likewise.
+ * fs/ntfs.c: Likewise.
+ * fs/ntfscomp.c: Likewise.
+ * fs/reiserfs.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * fs/xfs.c: Likewise.
+ * gettext/gettext.c: Likewise.
+ * include/grub/auth.h: Likewise.
+ * kern/elf.c: Likewise.
+ * kern/file.c: Likewise.
+ * kern/ieee1275/init.c: Likewise.
+ * kern/ieee1275/mmap.c: Likewise.
+ * kern/ieee1275/openfw.c: Likewise.
+ * kern/powerpc/dl.c: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * lib/arg.c: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/i386/bsdXX.c: Likewise.
+ * loader/i386/efi/linux.c: Likewise.
+ * loader/i386/efi/xnu.c: Likewise.
+ * loader/i386/ieee1275/linux.c: Likewise.
+ * loader/i386/linux.c: Likewise.
+ * loader/i386/multiboot.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/i386/pc/multiboot2.c: Likewise.
+ * loader/i386/xnu.c: Likewise.
+ * loader/ieee1275/multiboot2.c: Likewise.
+ * loader/macho.c: Likewise.
+ * loader/machoXX.c: Likewise.
+ * loader/multiboot2.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * loader/sparc64/ieee1275/linux.c: Likewise.
+ * loader/xnu.c: Likewise.
+ * loader/xnu_resume.c: Likewise.
+ * mmap/i386/pc/mmap.c: Likewise.
+ * normal/menu_viewer.c: Likewise.
+ * partmap/acorn.c: Likewise.
+ * partmap/amiga.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * script/lexer.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+ * term/ieee1275/ofconsole.c: Likewise.
+ * term/terminfo.c: Likewise.
+ * video/bitmap.c: Likewise.
+ * video/efi_gop.c: Likewise.
+ * video/efi_uga.c: Likewise.
+ * video/fb/video_fb.c: Likewise.
+ * video/i386/pc/vbe.c: Likewise.
+ * video/readers/tga.c: Likewise.
+ * video/video.c: Likewise.
+
+2009-12-23 Felix Zielcke <fzielcke@z-51.de>
+
+ * commands/i386/pc/drivemap.c: Remove all trailing whitespace.
+ * commands/lspci.c: Likewise.
+ * commands/probe.c: Likewise.
+ * commands/xnu_uuid.c: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * fs/i386/pc/pxe.c: Likewise.
+ * gettext/gettext.c: Likewise.
+ * include/grub/efi/graphics_output.h: Likewise.
+ * include/grub/i386/pc/memory.h: Likewise.
+ * kern/env.c: Likewise.
+ * kern/i386/qemu/startup.S: Likewise.
+ * lib/i386/pc/biosnum.c: Likewise.
+ * lib/i386/relocator.c: Likewise.
+ * lib/i386/relocator_asm.S: Likewise.
+ * lib/relocator.c: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/i386/multiboot.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/xnu.c: Likewise.
+ * loader/xnu.c: Likewise.
+ * normal/main.c: Likewise.
+ * normal/menu_text.c: Likewise.
+ * util/getroot.c: Likewise.
+ * util/grub-mkconfig_lib.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/i386/pc/grub-mkimage.c: Likewise.
+ * util/mkisofs/eltorito.c: Likewise.
+ * util/mkisofs/exclude.h: Likewise.
+ * util/mkisofs/hash.c: Likewise.
+ * util/mkisofs/iso9660.h: Likewise.
+ * util/mkisofs/joliet.c: Likewise.
+ * util/mkisofs/mkisofs.c: Likewise.
+ * util/mkisofs/mkisofs.h: Likewise.
+ * util/mkisofs/multi.c: Likewise.
+ * util/mkisofs/name.c: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/tree.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+ * video/efi_gop.c: Likewise.
+
+2009-12-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/efi_gop.c (grub_video_gop_get_bitmask): Fix off-by-one in mask
+ size counting.
+
+2009-12-22 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkrescue.in (pkglib_DATA): Set to @pkglib_DATA@.
+ * genmk.rb (class SCRIPT): Modify the target file instead of source.
+
+2009-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/memrw.c (grub_cmd_write): Support for mask parameter.
+ (GRUB_MOD_INIT(memrw)): Update help line.
+
+2009-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/memrw.c (cmd_read_byte, cmd_read_word, cmd_read_dword):
+ Use grub_extcmd_t. All users updated.
+ (options): New variable.
+ (grub_cmd_read): Restructure for readability. Support "-v" option.
+ (grub_cmd_write): Restructure for readability.
+
+2009-12-22 Felix Zielcke <fzielcke@z-51.de>
+
+ * genmk.rb (class SCRIPT): Prepend #{src} path with $(srcdir).
+
+2009-12-22 Felix Zielcke <fzielcke@z-51.de>
+
+ * genmk.rb (class SCRIPT): Use sed to substitute @pkglib_DATA@
+ with the actual contents of the correspondending make variable.
+ * util/grub-mkrescue.in (pkglib_DATA): New variable.
+ (process_input_dir): Copy all $pkglib_DATA files instead of explicitly
+ specifying `*.lst' and `efiemu??.o'
+
+2009-12-22 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/30_os-prober.in (osx_entry): Add round brackets
+ after function name.
+ Noticed by Rene Engelhard <rene@debian.org>.
+
+2009-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/lspci.c (grub_pci_classes): Add "USB Controller".
+ (options): New variable.
+ (iospace): Likewise.
+ (grub_lspci_iter): List IO spaces if "-i" was given.
+ (grub_cmd_lspci): Parse options.
+ (GRUB_MOD_INIT(lspci)): Use extcmd.
+ (GRUB_MOD_FINI(lspci)): Likewise.
+
+2009-12-22 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/30_os-prober.in (osx_entry): Remove non POSIX compliant
+ `function' keyword.
+ Patch by Tony Mancill <tmancill@debian.org>.
+
+2009-12-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * bus/usb/uhci.c (grub_uhci_transfer): Set a limit transaction time.
+ (grub_uhci_portstatus): Likewise.
+ (grub_uhci_portstatus): Add necessary delay.
+ * bus/usb/usbhub.c (grub_usb_hub_add_dev): Fix loop-break condition.
+
+2009-12-21 Carles Pina i Estany <carles@pina.cat>
+
+ * commands/acpi.c (options): Fix capitalizations and/or full stops.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/boot.c (GRUB_MOD_INIT): Likewise.
+ * commands/cmp.c (grub_cmd_cmp): Improve the help message.
+ * commands/echo.c (options): Fix capitalizations and/or full stops.
+ * commands/efi/loadbios.c (enable_rom_area): Likewise.
+ (enable_rom_area): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/gptsync.c (GRUB_MOD_INIT): Likewise.
+ * commands/halt.c (GRUB_MOD_INIT): Improve the help message.
+ * commands/handler.c (GRUB_MOD_INIT): Likewise.
+ * commands/hdparm.c (options): Fix capitalizations and/or full stops.
+ * commands/hexdump.c (options): Likewise.
+ * commands/i386/cpuid.c (options): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/drivemap.c (options): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/halt (options): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/play.c (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/pxecmd.c (options): Likewise.
+ * commands/i386/pc/vbetest.c (GRUB_MOD_INIT): Likewise.
+ * commands/ieee1275/suspend.c (GRUB_MOD_INIT): Likewise.
+ * commands/keystatus.c (options): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/loadenv.c (options): Likewise.
+ * commands/ls.c (options): Likewise.
+ * commands/lspci.c (GRUB_MOD_INIT): Likewise.
+ * commands/memrw.c (GRUB_MOD_INIT): Likewise.
+ * commands/minicmd.c (GRUB_MOD_INIT): Likewise.
+ * commands/parttool.c (helpmsg): Likewise.
+ * commands/probe.c (options): Likewise.
+ * commands/read.c (GRUB_MOD_INIT): Likewise.
+ * commands/reboot.c (GRUB_MOD_INIT): Likewise.
+ * commands/search.c (options): Likewise.
+ * commands/sleep.c (options): Likewise.
+ * commands/test.c (GRUB_MOD_INIT): Likewise.
+ * commands/true.c (GRUB_MOD_INIT): Likewise.
+ * commands/usbtest.c (GRUB_MOD_INIT): Likewise.
+ * commands/videotest.c (GRUB_MOD_INIT): Likewise.
+ * lib/arg.c (help_options): Likewise.
+ * Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass -ctranslate to
+ `$(XGETTEXT)'.
+ * po/POTFILES: Add `commands/loadenv.c'.
+
+2009-12-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkrescue.in (process_input_dir): Copy `*.lst' files
+ instead of specifying them explicit.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * NEWS: Add grub-probe support for GNU/Hurd.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * NEWS: gettext was added after 1.97.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/msdos_partition.h: New file (based on
+ include/grub/msdos_partition.h).
+ * util/mkisofs/mkisofs.c (use_protective_msdos_label): New variable.
+ (OPTION_PROTECTIVE_MSDOS_LABEL): New macro.
+ (ld_options, main): Recognize --protective-msdos-label.
+ * util/mkisofs/mkisofs.h (use_protective_msdos_label): New declaration.
+ * util/mkisofs/write.c: Include `"msdos_partition.h"'.
+ (padblock_write): If `use_protective_msdos_label' is set, patch a
+ protective DOS-style label in the output image.
+
+ * util/grub-mkrescue.in: Use --protective-msdos-label.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-mkrescue.in: Do not zero-pad image for BIOS-based disk
+ boot.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/mkisofs.c (use_embedded_boot, boot_image_embed): New
+ variables.
+ (ld_options, main): Recognize `--embedded-boot'.
+ * util/mkisofs/mkisofs.h (use_embedded_boot, boot_image_embed): New
+ declarations.
+ * util/mkisofs/write.c (PADBLOCK_SIZE): New variable.
+ (padblock_size): Use `PADBLOCK_SIZE' instead of hardcoding 16.
+ (padblock_write): Likewise. Rewrite to support embedded boot image.
+
+ * util/grub-mkrescue.in: When building i386-pc images, embed core.img
+ for BIOS-based disk boot instead of only ElTorito.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-mkrescue.in: Remove `configfile' and `sh' from i386-pc
+ build (not needed for bootstrap).
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-mkrescue.in: Remove `memdisk', `tar' and `search' modules
+ from i386-pc build (not needed for bootstrap).
+ Rewrite a pair of strings.
+
+2009-12-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/main.c (grub_normal_reader_init): Set left margin back to 3.
+
+2009-12-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * video/i386/pc/vbe.c (grub_video_vbe_fini): Set 'last_set_mode'.
+
+2009-12-21 Andreas Born <futur.andy@googlemail.com>
+
+ * kern/env.c (grub_env_context_open): Mark exported variable for
+ reexport.
+
+2009-12-21 Andreas Born <futur.andy@googlemail.com>
+
+ * kern/env.c (grub_env_export): Create nonexistent variables before
+ exporting.
+
+2009-12-20 Carles Pina i Estany <carles@pina.cat>
+
+ * include/grub/auth.h: Include `<grub/i18n.h>'.
+ (GRUB_GET_PASSWORD): Gettextizze string.
+ * include/grub/normal.h (STANDARD_MARGIN): New macro, moved from
+ menu_text.c.
+ (grub_utf8_to_ucs4_alloc): Fix indentation.
+ (grub_print_ucs4): Likewise.
+ (grub_getstringwidth): Likewise.
+ (print_message_indented): New declaration.
+ * normal/auth.c: Include `<grub/i18n.h>'.
+ (grub_auth_check_authentication): Gettexttize string.
+ * normal/cmdline.c: Include `<grub/i18n.h>'.
+ (grub_cmdline_get): Gettextizze.
+ * normal/color.c: Include `<grub/i18n.h>'.
+ (grub_parse_color_name_pair): Gettexttize strings.
+ * normal/main.c (grub_normal_reader_init): Cleanup gettexttized
+ string (use `print_message_indented').
+ * normal/menu_text.c (STANDARD_MARGIN): Moved from here to
+ `include/grub/normal.h'.
+ (print_message_indented): Renamed to ...
+ (grub_print_message_indented): ... this. Remove `static' qualifer (now
+ used in normal/main.c).
+ (print_message): Use `grub_print_message_indented' instead of
+ `print_message_indented'.
+ (print_timeout): Likewise.
+ * normal/misc.c: Include `<grub/term.h>' and `<grub/i18n.h>'.
+ (grub_normal_print_device_info): Gettexttize strings.
+ * po/POTFILES: Add `auth.c', `color.c' and `misc.c'.
+
+2009-12-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/parser.c (grub_parser_split_cmdline): Fix incorrect counting
+ of arguments. Return number of tokens and not arguments. All users
+ updated.
+
+2009-12-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/pc/grub-setup.c (setup): Don't install on non-GPT,
+ non-MSDOS paritions.
+
+2009-12-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/types.h (UNUSED): Removed since it conflicts with
+ NetBSD headers. All users changed to direct __attribute__ ((unused)).
+ Reported by Grégoire Sutre.
+
+2009-12-19 Carles Pina i Estany <carles@pina.cat>
+
+ * include/grub/normal.h (grub_utf8_to_ucs4): New declaration.
+ (grub_print_ucs4_alloc): Likewise.
+ (grub_getstringwidth): Likewise.
+ * normal/main.c (grub_normal_init_page): Gettextize version string.
+ * normal/menu_text.c (grub_utf8_to_ucs4_alloc): New definition.
+ (getstringwidth): Renamed to ...
+ (grub_getstringwidth): ... this. Remove `static' qualifier (now used
+ in normal/main.c). Use `grub_utf8_to_ucs4_alloc'.
+ (grub_print_ucs4): Remove `static' qualifer (now used in
+ normal/main.c).
+ * po/POTFILES: Add normal/main.c.
+
+2009-12-19 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/menu_text.c (STANDARD_MARGIN): New macro.
+ (print_message_indented): Add `margin_left' and `margin_right'
+ parameters.
+ (print_message): Update `print_message_indented' calls. Adds '\n' to the
+ strings.
+ (print_timeout): Use `print_message_indented' to print the message.
+ Deletes `second_stage' parameter.
+ (run_menu): Update `print_timeout' calls.
+
+2009-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix console palette on OpenFirmware.
+
+ * term/ieee1275/ofconsole.c (MAX): Removed.
+ (colors): Redone based on VGA palette.
+ (grub_ofconsole_setcolor): Discard brightness bit since only 8
+ colors are supported.
+ (grub_ofconsole_init_output): Use ARRAY_SIZE instead of hardcoded size.
+
+2009-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix potential EfiEmu double prepare.
+
+ * efiemu/main.c (prepared): New variable
+ (grub_efiemu_unload): Set prepare to '0'.
+ (grub_efiemu_prepare): Return if already prepared. Set prepared.
+
+ set_virtual_address_map support.
+
+ * include/grub/efi/efi.h (grub_efi_set_virtual_address_map): New
+ prototype.
+ * include/grub/efiemu/efiemu.h (grub_efiemu_write_sym_markers): New
+ prototype.
+ (grub_efiemu_crc32): Likewise.
+ (grub_efiemu_crc64): Likewise.
+ (grub_efiemu_set_virtual_address_map): Likewise.
+ * include/grub/autoefi.h (grub_autoefi_exit_boot_services):
+ New definition.
+ (grub_autoefi_set_virtual_address_map): Likewise.
+ * kern/efi/efi.c (grub_efi_set_virtual_address_map): New function.
+ * loader/i386/xnu.c (grub_xnu_boot): Call set_virtual_address_map.
+ Restructure flow to accomodate it.
+ * efiemu/prepare.c (grub_efiemu_prepare): Support set_virtual_address_map.
+ (grub_efiemu_crc): Recompute CRC32.
+ * efiemu/runtime/efiemu.c (ptv_relocated): Renamed to ...
+ (efiemu_ptv_relocated): ... this. Made global. All users updated.
+ * efiemu/symbols.c (relocated_handle): New variable.
+ (grub_efiemu_free_syms): Free relocated_handle.
+ (grub_efiemu_alloc_syms): Allocate relocated_handle.
+ (grub_efiemu_write_sym_markers): New function.
+ (grub_efiemu_set_virtual_address_map): Likewise.
+
+ Newer XNU parameters.
+
+ * include/grub/i386/xnu.h (GRUB_XNU_BOOTARGS_VERMINOR): Change to 5.
+ * include/grub/xnu.h (grub_xnu_extheader): Add nameaddr and namesize.
+ (grub_xnu_fill_devicetree): New prototype.
+ (grub_xnu_heap_real_start): New variable.
+ * loader/xnu.c (get_name_ptr): New function.
+ (grub_xnu_load_driver): Fill namelen and name.
+
+ 64-bit xnu support.
+
+ * conf/i386-efi.rmk (xnu_mod_SOURCES): Add 'loader/macho32.c'
+ and 'loader/macho64.c'.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * include/grub/i386/macho.h (grub_macho_thread64): New structure.
+ * include/grub/xnu.h (grub_xnu_is_64bit): New variable.
+ * include/grub/macho.h (grub_macho_segment64): New structure.
+ * include/grub/machoload.h (grub_macho32_size): Renamed from ...
+ (grub_macho_size32): ... to this.
+ (grub_macho32_get_entry_point): Renamed from ...
+ (grub_macho_get_entry_point32): ... to this.
+ (grub_macho_contains_macho64): New prototype.
+ (grub_macho_size64): Likewise.
+ (grub_macho_get_entry_point64): Likewise.
+ (grub_macho32_load): Renamed from ...
+ (grub_macho_load32): ... to this.
+ (grub_macho32_filesize): Renamed from ...
+ (grub_macho_filesize32): ... to this.
+ (grub_macho32_readfile): Renamed from ...
+ (grub_macho_readfile32): ... to this.
+ (grub_macho_filesize64): New prototype.
+ (grub_macho_readfile64): Likewise.
+ (grub_macho_parse32): Likewise.
+ (grub_macho_parse64): Likewise.
+ * loader/macho.c: Split into ...
+ * loader/machoXX.c: ... and this. Replace 32 with XX.
+ * loader/macho32.c: New file.
+ * loader/macho64.c: Likewise.
+ * loader/xnu.c (grub_xnu_is_64bit): New variable.
+ (grub_cmd_xnu_kernel): Make 32-bit only.
+ (grub_cmd_xnu_kernel64): New function.
+ (grub_xnu_load_driver): Support Mach-O 64.
+ (grub_cmd_xnu_mkext): Likewise.
+ * util/grub.d/30_os-prober.in (osx_entry): New function.
+ Generate entries for 64-bit boot too.
+
+ Eliminate ad-hoc tree format in XNU and EfiEmu.
+
+ * efiemu/main.c (grub_efiemu_prepare): Update comment.
+ * efiemu/pnvram.c: Rewritten to use environment variables.
+ All users updated.
+
+ Inline utf16_to_utf8.
+
+ * kern/misc.c (grub_utf16_to_utf8): Move from here ...
+ * include/grub/charset.h (grub_utf16_to_utf8): ... to here. Inlined.
+ All users updated.
+ * include/grub/misc.h (grub_utf16_to_utf8): Removed.
+
+ * bus/usb/usb.c (grub_usb_get_string): Move from here ...
+ * commands/usbtest.c (grub_usb_get_string): ... move here.
+ (usb_print_str): Fix error handling.
+ * include/grub/usb.h (grub_usb_get_string): Remove.
+
+ UTF-8 to UTF-16 transformation.
+
+ * conf/common.rmk (pkglib_MODULES): Add charset.mod
+ (charset_mod_SOURCES): New variable.
+ (charset_mod_CFLAGS): Likewise.
+ (charset_mod_LDFLAGS): Likewise.
+ * include/grub/utf.h: New file.
+ * lib/utf.c: New file. (Based on grub_utf8_to_ucs4 from kern/misc.c)
+
+ Support for device properties.
+
+ * include/grub/i386/xnu.h (grub_xnu_devprop_header): New structure.
+ (grub_xnu_devprop_device_header): Likewise.
+ (grub_xnu_devprop_device_descriptor): Likewise.
+ (grub_xnu_devprop_add_device): New prototype.
+ (grub_xnu_devprop_remove_device): Likewise.
+ (grub_xnu_devprop_remove_property): Likewise.
+ (grub_xnu_devprop_add_property_utf8): Likewise.
+ (grub_xnu_devprop_add_property_utf16): Likewise.
+ (grub_cpu_xnu_init): Likewise.
+ (grub_cpu_xnu_fini): Likewise.
+ (grub_cpu_xnu_unload): Likewise.
+ * loader/i386/xnu.c (grub_xnu_devprop_device_descriptor): New structure.
+ (property_descriptor): Likewise.
+ (devices): New variable.
+ (grub_xnu_devprop_remove_property): New function.
+ (grub_xnu_devprop_add_device): Likewise.
+ (grub_xnu_devprop_remove_device): Likewise.
+ (grub_xnu_devprop_add_property): Likewise.
+ (grub_xnu_devprop_add_property_utf8): Likewise.
+ (grub_xnu_devprop_add_property_utf16): Likewise.
+ (hextoval): Likewise.
+ (grub_cpu_xnu_fill_devprop): Likewise.
+ (grub_cmd_devprop_load): Likewise.
+ (grub_xnu_boot): Call grub_cpu_xnu_fill_devprop,
+ grub_xnu_fill_devicetree, grub_xnu_fill_devicetree
+ (cmd_devprop_load): New variable.
+ (grub_cpu_xnu_init): New function.
+ (grub_cpu_xnu_fini): Likewise.
+ * loader/i386/xnu.c (grub_xnu_unload): Call grub_cpu_xnu_unload.
+ * loader/xnu.c (grub_xnu_parse_devtree): Remove.
+ (grub_cmd_xnu_devtree): Likewise.
+ (hextoval): New function.
+ (unescape): Likewise.
+ (grub_xnu_fill_devicetree): Likewise.
+
+ * util/grub.d/30_os-prober.in: Load devprop.bin. Don't load devtree.txt.
+ * util/i386/efi/grub-dumpdevtree: Generate devprop.bin.
+
+2009-12-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Workaround for broken ATI VBE.
+
+ * video/i386/pc/vbe.c (last_set_mode): New variable.
+ (grub_vbe_set_video_mode): Set 'last_set_mode'.
+ (grub_vbe_get_video_mode): Use 'last_set_mode' if get_mode fails.
+ (grub_video_vbe_setup): Don't check for reserved flag.
+
+2009-12-17 Felix Zielcke <fzielcke@z-51.de>
+
+ * gendistlist.sh: Use POSIX compliant `!' instead of `-not' in
+ the `find' command.
+
+2009-12-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ UUID support for HFS.
+
+ * fs/hfs.c (grub_hfs_uuid): New function.
+ (grub_hfs_fs): New value .uuid.
+ * include/grub/hfs.h (grub_hfs_sblock): New field 'num_serial'.
+
+2009-12-14 Felix Zielcke <fzielcke@z-51.de>
+
+ Fix a segfault with parsing unknown long options.
+
+ * util/grub-mkrelpath.c (options): Zero terminate it.
+
+2009-12-13 Carles Pina i Estany <carles@pina.cat>
+
+ * include/grub/misc.h (grub_puts): New declaration.
+ (grub_puts_): Likewise.
+ * kern/misc.c (grub_puts): New definition.
+ (grub_puts_): Likewise.
+
+2009-12-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-probe.c (probe): Improve error message.
+
+2009-12-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/multiboot_elfxx.c
+ (CONCAT(grub_multiboot_load_elf, XX)): Fix `grub_multiboot_payload_eip'
+ initialization.
+
+2009-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Relocator framework
+
+ * loader/i386/xnu_helper.S: Removed. All users updated.
+ * conf/i386.rmk (pkglib_MODULES): Add relocator.mod.
+ (relocator_mod_SOURCES): New variable.
+ (relocator_mod_CFLAGS): Likewise.
+ (relocator_mod_LDFLAGS): Likewise.
+ (relocator_mod_ASFLAGS): Likewise.
+ * conf/x86_64.rmk: Likewise.
+ * include/grub/i386/multiboot.h (grub_multiboot_payload_orig): Removed.
+ (grub_multiboot_payload_entry_offset): Likewise.
+ (grub_multiboot_forward_relocator): Likewise.
+ (grub_multiboot_forward_relocator_end): Likewise.
+ (grub_multiboot_backward_relocator): Likewise.
+ (grub_multiboot_backward_relocator_end): Likewise.
+ (grub_multiboot_payload_eip): New variable.
+ (grub_multiboot_payload_orig): Likewise.
+ * include/grub/i386/pc/memory.h: Include grub/i386/memory.h.
+ (GRUB_MEMORY_MACHINE_CR0_PE_ON): Move from here ...
+ * include/grub/i386/memory.h
+ (GRUB_MEMORY_CPU_CR0_PE_ON): ... to here
+ (GRUB_MEMORY_CPU_CR4_PAE_ON): New definition.
+ (GRUB_MEMORY_CPU_CR0_PAGING_ON): Likewise.
+ (GRUB_MEMORY_CPU_AMD64_MSR): Likewise.
+ (GRUB_MEMORY_CPU_AMD64_MSR_ON): Likewise.
+ * include/grub/i386/relocator.h: New file.
+ * include/grub/x86_64/relocator.h: Likewise.
+ * include/grub/i386/xnu.h: Include grub/cpu/relocator.h.
+ (XNU_RELOCATOR): New macro.
+ (grub_xnu_launcher_start): Remove.
+ (grub_xnu_launcher_end): Likewise.
+ * include/grub/xnu.h (grub_xnu_boot_resume): New prototype.
+ (grub_xnu_heap_real_start): Remove.
+ (grub_xnu_heap_start): Change to void *. All users updated.
+ * kern/i386/realmode.S (real_to_prot): Use GRUB_MEMORY_CPU_CR0_PE_ON.
+ * lib/i386/relocator.c: New file.
+ * lib/i386/relocator_asm.S: Likewise.
+ * lib/i386/relocator_backward.S: Likewise.
+ * lib/mips/relocator.c: Likewise.
+ * lib/mips/relocator_asm.S: Likewise.
+ * lib/relocator.c: Likewise.
+ * loader/i386/multiboot.c: Include grub/i386/relocator.h.
+ (entry): Removed.
+ (playground): Likewise.
+ (grub_multiboot_payload_orig): New variable.
+ (grub_multiboot_payload_dest): Likewise.
+ (grub_multiboot_payload_size): Likewise.
+ (grub_multiboot_payload_eip): Likewise.
+ (grub_multiboot_payload_esp): Likewise.
+ (grub_multiboot_boot): Use grub_relocator32_boot.
+ (grub_multiboot_unload): Free relocators.
+ (grub_multiboot): Setup stack. Use relocators.
+ * loader/i386/multiboot_elfxx.c: Include grub/i386/relocator.h.
+ (grub_multiboot_load_elfXX): Use relocators.
+ * loader/i386/multiboot_helper.S (grub_multiboot_payload_orig): Removed.
+ (grub_multiboot_payload_size): Likewise.
+ (grub_multiboot_payload_dest): Likewise.
+ (grub_multiboot_payload_entry_offset): Likewise.
+ (grub_multiboot_forward_relocator): Likewise.
+ (grub_multiboot_backward_relocator): Likewise.
+ (grub_multiboot_real_boot): Likewise.
+ * loader/i386/xnu.c (grub_xnu_heap_will_be_at): New variable.
+ (grub_xnu_entry_point): Likewise.
+ (grub_xnu_arg1): Likewise.
+ (grub_xnu_stack): Likewise.
+ (grub_xnu_launch): Removed.
+ (grub_xnu_boot_resume): New function.
+ (grub_xnu_boot): Use relocators.
+ * loader/i386/xnu_helper.S: Removed.
+ * loader/xnu.c (grub_xnu_heap_start): New variable.
+ (grub_xnu_heap_size): Likewise.
+ (grub_xnu_heap_malloc): Use relocators.
+ * loader/xnu_resume.c (grub_xnu_resume): Use relocators.
+
+2009-12-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/pc/startup.S (multiboot_entry): Setup stack before calling
+ anything.
+
+2009-12-13 Carles Pina i Estany <carles@pina.cat>
+
+ * script/execute.c (grub_script_execute_cmdline): Set grub_errno to
+ GRUB_ERR_NONE before calling grub_env_set.
+
+2009-12-12 Robert Millan <rmh@aybabtu.com>
+
+ * gendistlist.sh (EXTRA_DISTFILES): Add `genvideolist.sh'.
+ * genmk.rb (video): New variable.
+ (CLEANFILES, VIDEOFILES): Add #{video}.
+ (#{video}): New target rule.
+ * genvideolist.sh: New file.
+ * Makefile.in (pkglib_DATA): Add video.lst.
+ (video.lst): New target rule.
+ * util/grub-mkconfig.in: Initialize ${GRUB_VIDEO_BACKEND} using
+ `video.lst'.
+ * util/grub.d/30_os-prober.in: Replace `vbe' with
+ ${GRUB_VIDEO_BACKEND}.
+
+2009-12-11 Robert Millan <rmh.grub@aybabtu.com>
+
+ * THANKS: Add David Miller.
+
+2009-12-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ libpciaccess support.
+
+ * Makefile.in (LIBPCIACCESS): New variable.
+ (enable_grub_emu_pci): Likewise.
+ * conf/any-emu.rmk (grub_emu_SOURCES) [enable_grub_emu_pci]: Add
+ util/pci.c and commands/lspci.c.
+ (grub_emu_LDFLAGS) [enable_grub_emu_pci]: Add $(LIBPCIACCESS).
+ * configure.ac (grub-emu-pci): New option.
+ * include/grub/i386/pci.h (grub_pci_device_map_range): New function.
+ (grub_pci_device_unmap_range): Likewise.
+ * include/grub/pci.h [GRUB_UTIL]: Include grub/pciutils.h.
+ (grub_pci_device) [!GRUB_UTIL]: New structure. All users updated.
+ (grub_pci_address_t) [!GRUB_UTIL]: New type.
+ (grub_pci_device_t) [!GRUB_UTIL]: Likewise.
+ (grub_pci_get_bus) [!GRUB_UTIL]: New function.
+ (grub_pci_get_device) [!GRUB_UTIL]: Likewise.
+ (grub_pci_get_function) [!GRUB_UTIL]: Likewise.
+ * include/grub/pciutils.h: New file.
+ * util/pci.c: Likewise.
+
+2009-12-11 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/misc.c: Don't include <errno.h> twice.
+
+2009-12-10 Felix Zielcke <fzielcke@z-51.de>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Show the disk
+ name in an error message.
+ (grub_biosdisk_rw): Likewise.
+
+2009-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate NTFS 4Gib barrier.
+
+ * fs/ntfs.c (read_attr): Use grub_disk_addr_t and grub_size_t.
+ (read_run_data): Likewise.
+ (grub_ntfs_read_run_list): Likewise.
+ (grub_ntfs_read_block): Likewise.
+ (grub_ntfs_iterate_dir): Likewise.
+ (read_mft): Likewise.
+ (read_data): Likewise.
+ Use COM_LOG_LEN.
+ * fs/ntfscomp.c (read_block): Cast ctx->target_vcn & 0xF to unsigned
+ to avoid 64-bit division
+ * include/grub/ntfs.h (COM_LOG_LEN): New definition.
+ (grub_ntfs_rlst): Use grub_disk_addr_t.
+
+2009-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate grub-fstest 4Gib barrier.
+
+ * util/grub-fstest.c (skip, leng): Use grub_disk_addr_t.
+ (read_file): Fix error reporting.
+
+2009-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Eliminate hexdump 4Gib barrier.
+
+ * commands/hexdump.c (grub_cmd_hexdump): Use grub_disk_addr_t.
+ * lib/arg.c (grub_arg_parse): Use grub_strtoull.
+
+2009-12-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/device.c (grub_device_iterate): Ignore errors during first scan.
+ Fixes amarsh bug.
+
+2009-12-09 Bruce Dubbs <bruce.dubbs@gmail.com>
+
+ Remove miscellaneous files in distclean target.
+
+ * Makefile.in: Remove docs/{grub.info,version.texi,stamp-vti}
+
+2009-12-09 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig_lib.in: Don't set grub_probe or grub_mkrelpath
+ if they're already set. This resolves the conflict between my
+ grub-install change on 2009-10-06 and Felix' change on 2009-11-11,
+ fixing the --grub-probe option again.
+ * util/sparc64/ieee1275/grub-install.in: Revert the last piece of my
+ change on 2009-10-06, so that we now once again source
+ `${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
+
+2009-12-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk [sparc64-ieee1275] (grub_mkdevicemap_SOURCES): Use
+ `util/ieee1275/ofpath.c' and `util/ieee1275/devicemap.c' instead of
+ `util/devicemap.c'.
+
+2009-12-08 Carles Pina i Estany <carles@pina.cat>
+
+ * include/grub/misc.h (grub_printf_): New declaration.
+ * kern/misc.c (grub_printf_): New definition.
+ * normal/main.c (grub_normal_reader_init): Use `grub_printf_' and `N_'
+ instead of `grub_printf' and `_'.
+ * normal/menu_entry.c (store_completion): Likewise.
+ (run): Likewise.
+ (grub_menu_entry_run): Likewise.
+ * normal/menu_text.c (grub_wait_after_message): Likewise.
+ (notify_booting): Likewise.
+ (notify_fallback): Likewise.
+ (notify_execution_failure): Likewise.
+
+2009-12-07 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Check for vasprintf.
+ * util/misc.c (asprintf): Move allocation from here ...
+ (vasprintf): ... to here. New function.
+ (xasprintf): New function.
+ * include/grub/util/misc.h (vasprintf, xasprintf): Add
+ prototypes.
+ * util/getroot.c (grub_util_get_grub_dev): Use xasprintf.
+ * util/grub-mkfont.c (write_font): Likewise.
+ * util/grub-probe.c (probe): Likewise.
+ * util/hostdisk.c (make_device_name): Likewise.
+
+2009-12-06 David S. Miller <davem@sunset.davemloft.net>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Recognize
+ anything even prefixed with 'cdrom' as a cdrom.
+
+2009-12-06 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/misc.c (make_system_path_relative_to_its_root): Correctly cope with
+ mount points.
+
+2009-12-05 Carles Pina i Estany <carles@pina.cat>
+
+ * gettext/gettext.c: Include `<grub/list.h>'. Define grub_gettext_msg,
+ grub_gettext_msg_list.
+ (grub_gettext_gettranslation_from_position): Return const char *
+ and not char *.
+ (grub_gettext_translate): Add the translated strings into a list,
+ returns from the list if existing there.
+ (grub_gettext_init_ext): Add \n at the end of grub_dprintf string.
+ (grub_gettext_delete_list): Delete the list.
+ (grub_gettext_env_write_lang): Call grub_gettext_delete_list when
+ lang environment variable is changed.
+ (GRUB_MOD_FINI): Call grub_gettext_delete_list.
+
+2009-12-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rename kernel.mod to kernel.img.
+
+ * conf/i386-efi.rmk (pkglib_MODULES): Change kernel.mod to kernel.img.
+ (kernel_mod_EXPORTS): Rename to ...
+ (kernel_img_EXPORTS): ... this.
+ (kernel_mod_SOURCES): Rename to ...
+ (kernel_img_SOURCES): ... this.
+ (kernel_mod_HEADERS): Rename to ...
+ (kernel_img_HEADERS): ... this. All users updated.
+ (kernel_mod_CFLAGS): Rename to ...
+ (kernel_img_CFLAGS): ... this.
+ (kernel_mod_ASFLAGS): Rename to ...
+ (kernel_img_ASFLAGS): ... this.
+ (kernel_mod_LDFLAGS): Rename to ...
+ (kernel_img_LDFLAGS): ... this.
+ * conf/x86_64-efi.rmk: Likewise.
+ * util/i386/efi/grub-mkimage.c (read_kernel_module): Rename to ...
+ (read_kernel_image): ... this. All users updated.
+ (read_kernel_image): Read "kernel.img" instead of "kernel.mod".
+
+2009-12-05 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/menu_text.c (grub_color_menu_high): Gettexttize string.
+ (print_spaces): New function.
+ (grub_print_ucs4): New function.
+ (getstringwidth): New function.
+ (print_message_indented): New function.
+ (print_message): Gettexttize strings using print_message_indented.
+ (run_menu): Replaces grub_printf by print_spaces and dynamic terminal
+ width.
+ (get_entry_number): Gettextize and uses dynamic terminal width.
+ (notify_booting, notify_fallback, notify_execution_failure):
+ Gettextize.
+ * normal/menu_entry.c (store_completion): Cleanup the gettextized
+ string.
+ (run): Likewise.
+ (grub_menu_entry_run): Likewise.
+ * PO/POTFILES: Add normal/menu_entry.c.
+
+2009-12-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac (TARGET_ASFLAGS): Add "-D<MACHINE>".
+
+2009-12-05 Carles Pina i Estany <carles@pina.cat>
+
+ * util/grub-install.in: Install gettext .mo files.
+ * util/grub-mkrescue.in (process_input_dir): Copy gettext .mo files.
+
+2009-12-05 Carles Pina i Estany <carles@pina.cat>
+
+ * gettext/gettext.c (grub_gettext_init_ext): Replace grub_printf with
+ grub_dprintf.
+
+2009-12-05 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/ieee1275/openfw.c (grub_reboot): Disable for i386. The
+ non-firmware-dependant one in realmode.S takes precedence.
+
+2009-12-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * commands/halt.c: Replace misc arch-specific headers with
+ `<grub/misc.h>'.
+ * commands/reboot.c: Likewise.
+ * commands/i386/pc/halt.c: Replace `<grub/machine/init.h>' with
+ `<grub/misc.h>'.
+ * conf/i386-coreboot.rmk (kernel_img_HEADERS): Remove `cpu/reboot.h'.
+ (halt_mod_SOURCES): Move `kern/i386/halt.c' from here ...
+ (kernel_img_SOURCES): ... to here.
+
+ * include/grub/efi/efi.h (grub_reboot, grub_halt): Remove prototypes.
+ * include/grub/i386/pc/init.h: Likewise.
+ * include/grub/powerpc/ieee1275/kernel.h: Likewise.
+ * include/grub/sparc64/ieee1275/kernel.h: Likewise.
+
+ * include/grub/misc.h (grub_reboot, grub_halt): New prototypes.
+
+ * include/grub/i386/halt.h: Remove.
+ * include/grub/i386/reboot.h: Likewise.
+
+ * kern/i386/halt.c: Remove `<grub/cpu/halt.h>'.
+
+2009-12-03 David S. Miller <davem@sunset.davemloft.net>
+
+ * conf/sparc64-ieee1275.rmk (grub_mkimage_SOURCES,
+ grub_setup_SOURCES, grub_ofpathname_SOURCES): Add gnulib/progname.c
+ * util/sparc64/ieee1275/grub-mkimage.c: Include <grub/i18n.h> and
+ "progname.h"
+ * util/sparc64/ieee1275/grub-ofpathname.c: Likewise.
+ * util/sparc64/ieee1275/grub-setup.c: Likewise.
+ (usage): Add missing comma in printf.
+
+2009-12-02 Robert Millan <rmh.grub@aybabtu.com>
+
+ Use the same reboot approach on i386 coreboot and qemu as we do on
+ BIOS.
+
+ * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add `cpu/reboot.h'.
+ (reboot_mod_SOURCES): Remove `kern/i386/reboot.c'.
+ * kern/i386/reboot.c: Remove.
+ * include/grub/i386/reboot.h (grub_reboot): Export function.
+ * kern/i386/pc/startup.S (grub_reboot): Move from here ...
+ * kern/i386/realmode.S (grub_reboot): ... to here. Jump to
+ 0xf000:0xfff0 instead of 0xffff:0x0000.
+ [!GRUB_MACHINE_PCBIOS] (prot_to_real): Do not restore interrupts.
+ * kern/i386/qemu/startup.S: Include `"../realmode.S"'.
+
+2009-11-30 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix $srcdir != $objdir build.
+
+ * Makefile.in (po/%.po): Rewrite as ...
+ ($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po)): ... this.
+
+2009-11-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ Fix GNU/Hurd grub-install crash.
+ * util/grub-probe.c (probe): Try to access `path' only when it is not
+ NULL.
+
+2009-11-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Correct module naming.
+
+ * video/efi_uga.c (GRUB_MOD_INIT(efi_fb)): Renamed from this ...
+ (GRUB_MOD_INIT(efi_uga)): ... to this
+ (GRUB_MOD_FINI(efi_fb)): Renamed from this ...
+ (GRUB_MOD_FINI(efi_uga)): ... to this
+ * video/efi_gop.c (GRUB_MOD_INIT(efi_fb)): Renamed from this ...
+ (GRUB_MOD_INIT(efi_gop)): ... to this
+ (GRUB_MOD_FINI(efi_fb)): Renamed from this ...
+ (GRUB_MOD_FINI(efi_gop)): ... to this
+
+2009-11-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/mkisofs.c (ld_options): Mark all `arg' strings as
+ translatable.
+ (usage): Translate `arg' strings using gettext().
+ Thanks to Jordi Mallach for the suggestion.
+
+2009-11-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ GOP support. Based on patch from Bean
+ (http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00384.html)
+
+ * video/efi_gop.c: New file.
+ * include/grub/efi/graphics_output.h: Likewise.
+ * conf/i386-efi.rmk (pkglib_MODULES): Add `efi_gop.mod'.
+ (efi_fb_mod_SOURCES, efi_fb_mod_CFLAGS, efi_fb_mod_LDFLAGS): New
+ variables.
+ * conf/x86_64-efi.rmk: Likewise.
+
+2009-11-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rename efi_fb to efi_uga.
+
+ * conf/i386-efi.rmk (pkglib_MODULES): Rename 'efi_fb.mod' to
+ 'efi_uga.mod'.
+ (efi_fb_mod_SOURCES): Rename this ...
+ (efi_uga_mod_SOURCES): ... to this.
+ (efi_fb_mod_CFLAGS): Rename this ...
+ (efi_uga_mod_CFLAGS): ... to this.
+ (efi_fb_mod_LDFLAGS): Rename this ...
+ (efi_uga_mod_LDFLAGS): ... to this.
+ * conf/x86_64-efi.rmk (pkglib_MODULES): Rename 'efi_fb.mod' to
+ 'efi_uga.mod'.
+ (efi_fb_mod_SOURCES): Rename this ...
+ (efi_uga_mod_SOURCES): ... to this.
+ (efi_fb_mod_CFLAGS): Rename this ...
+ (efi_uga_mod_CFLAGS): ... to this.
+ (efi_fb_mod_LDFLAGS): Rename this ...
+ (efi_uga_mod_LDFLAGS): ... to this.
+ * video/efi_fb.c: Move this ...
+ * video/efi_uga.c: ... to this. Change prefix to 'grub_video_uga_'.
+
+2009-11-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * po/README: New file. Explain our PO file workflow.
+
+2009-11-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * po/ChangeLog: Remove. Move relevant entries back to ...
+ * ChangeLog: ... here.
+ * po/ca.po: Remove (now handled by TLP).
+ * po/id.po: Likewise.
+ * po/zh_CN.po: Likewise.
+ * Makefile.in (LINGUAS): Initialize in a way that supports
+ empty set.
+
+2009-11-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (LINGUAS): Rewrite by scanning po/ directory instead of
+ reliing on po/LINGUAS.
+ ($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po)): Rewrite as ...
+ (po/%.po): ... this.
+
+2009-11-26 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/efi/grub-mkimage.c: Include "progname.h".
+ (main): Use `program_name' instead of nonexistent `progname'.
+
+2009-11-26 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-efi.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
+ * conf/x86_64-efi.rmk (grub_mkimage_SOURCES): Likewise.
+
+2009-11-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-coreboot.rmk: Cleanup stale filenames from my previous
+ commit.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+2009-11-26 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/any-emu.rmk (grub_emu_SOURCES): Add `gnulib/progname.c'.
+
+2009-11-26 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/any-emu.rmk (grub_mkfont_SOURCES): Add `gnulib/progname.c'.
+
+2009-11-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (sbin_UTILITIES): Add `grub-mkdevicemap'.
+ (grub_mkdevicemap_SOURCES): New variable.
+ (grub_probe_SOURCES, grub_fstest_SOURCES, grub_mkfont_SOURCES)
+ (grub_mkrelpath_SOURCES, grub_editenv_SOURCES)
+ (grub_pe2elf_SOURCES): Add `gnulib/progname.c'.
+ * conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-mkdevicemap'.
+ (grub_mkdevicemap_SOURCES): Remove.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * util/elf/grub-mkimage.c: Include `<grub/i18n.h>' and `"progname.h"'.
+ (usage): Fix strings to use `program_name'.
+ (main): Initialize gettext.
+ * util/grub-editenv.c: Likewise.
+ * util/grub-emu.c: Likewise.
+ * util/grub-fstest.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/grub-mkfont.c: Likewise.
+ * util/grub-mkrelpath.c: Likewise.
+ * util/grub-pe2elf.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/sparc64/ieee1275/grub-mkimage.c: Likewise.
+ * util/sparc64/ieee1275/grub-ofpathname.c: Likewise.
+ * util/sparc64/ieee1275/grub-setup.c: Likewise.
+
+ * util/misc.c: Include `"progname.h"'.
+ (progname): Remove variable.
+ (grub_util_warn, grub_util_info, grub_util_error): Use `program_name'.
+
+2009-11-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/10_linux.in (linux_entry): Quote the arguments to
+ printf and print a newline after the menuentry header line.
+ * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
+
+2009-11-25 Felix Zielcke <fzielcke@z-51.de>
+
+ autoconf >= 2.60 support $(localedir).
+
+ * INSTALL: Note that autoconf 2.60 is required.
+ * configure.ac (AC_PREREQ): Bump to 2.60.
+ * util/grub.d/10_kfreebsd.in (TEXTDOMAINDIR): Set to lowercased @localedir@.
+ * util/grub.d/10_linux.in (TEXTDOMAINDIR): Likewise.
+
+2009-11-25 Yves Blusseau <yves.blusseau@zetam.org>
+
+ * configure.ac: move the call to AM_GNU_GETTEXT to avoid warnings when
+ aclocal is run.
+
+2009-11-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/main.c (grub_normal_read_line): Fix off-by-one
+ buffer overflow.
+
+2009-11-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/main.c (grub_normal_execute): Replace "parser.sh" with
+ "parser.grub" in grub_command_execute() call.
+
+2009-11-24 Carles Pina i Estany <carles@pina.cat>
+
+ * conf/i386-coreboot.rmk (kernel_img_HEADERS): Add i18n.h.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * gettext/gettex.c: Include <grub/i18n.h>.
+ * include/grub/misc.h (grub_gettext_dummy, grub_gettext): Move from
+ here ...
+ * include/grub/i18n.h: ... to here
+ * include/grub/i18n.h: ... to here.
+ * kern/misc.c: Include <grub/i18n.h>
+ (grub_gettext_dummy): Move above user.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/Makefile.in (install-local): Convert a `for' into a normal
+ shell expansion.
+
+2009-11-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * autogen.sh: Add automake call.
+ * config.guess: Remove.
+ * config.sub: Likewise.
+ * install-sh: Likewise.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/Makefile.in (install-local): Fix the use of $lang shell variable.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/Makefile.in (install-local): Convert a make `$(foreach)'
+ function to a normal shell `for'.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-coreboot.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkrelpath.c: New file.
+ * conf/common.rmk (bin_UTILITIES): Add grub-mkrelpath.
+ (grub_mkrelpath_SOURCES): New variable.
+ * include/grub/util/misc.h: New function prototype.
+ * util/misc.c (make_system_path_relative_to_its_root): New function.
+
+ * util/grub-mkconfig_lib.in (bindir): New variable.
+ (grub_mkrelpath): Likewise.
+ (make_system_path_relative_to_its_root): Use grub-mkrelpath.
+
+ * util/probe.c (probe): Make the file path relative to its root.
+ Change a info message to use the GRUB path. Enable again the
+ check if we can read the file with GRUB facilities.
+
+ * util/i386/pc/grub-setup.c (setup): Make core.img path relative
+ to its root.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in: Don't include GRUB_CONTRIB makefiles with emu
+ platform.
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/getroot.c (grub_util_get_dev_abstraction): Properly use
+ strncmp().
+
+2009-11-24 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/getroot.c (grub_util_is_dmraid): New function.
+ (grub_util_get_dev_abstraction): Treat dmraid and multipath
+ devices as normal ones, not as LVM.
+
+2009-11-23 Carles Pina i Estany <carles@pina.cat>
+
+ * conf/common.rmk: Add grub-gettext_lib target and updates
+ lib_DATA and CLEANFILES. Adds gettext.mod SOURCES, CFLAGS,
+ LDFLAGS.
+ * gettext/gettext.c: New file. (Reads mo files).
+ * include/grub/file.h (grub_file_pread): New prototype.
+ * include/grub/i18n.h (_): New prototype.
+ * include/grub/misc.h (grub_gettext_dummy, grub_gettext): New
+ prototypes.
+ * kern/misc.c (grub_gettext_dummy): New function.
+ * normal/menu_text.c: Include <grub/i18n.h>.
+ * normal/menu_text.c (print_timeout): Gettexttize string.
+ * normal/menu_text.c (print_message): Gettexttize string.
+ * po/POTFILES: Add `normal/menu_text.c'.
+ * po/ca.po: Add new translations.
+ * util/grub.d/00_header.in: Define locale_dir and lang. insmod
+ gettext module and defines locale_dir and lang in grub.cfg.
+ * NEWS: Add gettext support.
+
+2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/hostdisk.c: Include `<grub/i18n.h>'.
+ (find_grub_drive): Use ARRAY_SIZE for map size calculation.
+ (make_device_name): Rewrite using asprintf.
+ (convert_system_partition_to_system_disk): Replace 0 with NULL.
+ (find_system_device): If a device is not found, generate one just
+ by reusing the OS path name.
+ (read_device_map): Make it permissible for device.map not to exist.
+
+2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * script/sh/execute.c: Move from here ...
+ * script/execute.c: ... to here. Update all users.
+ * script/sh/function.c: Move from here ...
+ * script/function.c: ... to here. Update all users.
+ * script/sh/lexer.c: Move from here ...
+ * script/lexer.c: ... to here. Update all users.
+ * script/sh/main.c: Move from here ...
+ * script/main.c: ... to here. Update all users.
+ * script/sh/parser.y: Move from here ...
+ * script/parser.y: ... to here. Update all users.
+ * script/sh/script.c: Move from here ...
+ * script/script.c: ... to here. Update all users.
+
+2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Detect all `emu' platforms. Define
+ GRUB_MACHINE_* macros in TARGET_CFLAGS. Remove
+ --enable-grub-emu logic. Disable include/grub/machine
+ symlink on `emu' platforms.
+
+ * genkernsyms.sh.in: Use @TARGET_CFLAGS@ during symbol generation.
+ * gensymlist.sh.in: Likewise.
+
+ * include/grub/i386/coreboot/machine.h: Remove file.
+ * include/grub/i386/efi/machine.h: Likewise.
+ * include/grub/i386/ieee1275/machine.h: Likewise.
+ * include/grub/i386/pc/machine.h: Likewise.
+ * include/grub/i386/qemu/machine.h: Likewise.
+ * include/grub/powerpc/ieee1275/machine.h: Likewise.
+ * include/grub/sparc64/ieee1275/machine.h: Likewise.
+ * include/grub/x86_64/efi/machine.h: Likewise.
+
+ * commands/acpi.c: Remove `<grub/machine/machine.h>'.
+ * commands/halt.c: Likewise.
+ * commands/reboot.c: Likewise.
+ * include/grub/autoefi.h: Likewise.
+ * include/grub/i386/at_keyboard.h: Likewise.
+ * include/grub/i386/kernel.h: Likewise.
+ * include/grub/i386/loader.h: Likewise.
+ * include/grub/i386/pc/memory.h: Likewise.
+ * kern/dl.c: Likewise.
+ * kern/i386/coreboot/init.c: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/i386/linux.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/usb_keyboard.c: Likewise.
+
+ * include/grub/time.h [!GRUB_MACHINE_EMU]: Remove
+ `<grub/machine/machine.h>'
+ [!GRUB_MACHINE_EMU] (GRUB_TICKS_PER_SECOND): New macro.
+ * util/misc.c: Remove `<grub/machine/machine.h>' and
+ `<grub/machine/time.h>'.
+
+ * Makefile.in (enable_grub_emu): Remove variable.
+ Include $(srcdir)/conf/any-emu.mk for the `emu' platform.
+
+ * conf/any-emu.rmk: New file.
+ * conf/common.rmk (grub_emu_init.lst, grub_emu_init.h)
+ (grub_emu_init.c): Move from here ...
+ * conf/any-emu.rmk: ... to here.
+
+ * conf/i386-coreboot.rmk (sbin_UTILITIES): Remove `grub-emu'.
+ (grub_emu_SOURCES, grub_emu_LDFLAGS): Move from here ...
+ * conf/any-emu.rmk: ... to here.
+
+2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/parser.h (grub_parser_register): Document need
+ of `name' parameter.
+ * normal/main.c (grub_normal_read_line): Simplify prompt string.
+ * script/sh/main.c (grub_sh_parser, GRUB_MOD_INIT(sh)): Rename
+ "sh" to "grub".
+
+2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in ($(srcdir)/po/$(PACKAGE).pot): Pass --keyword=N_ to
+ `$(XGETTEXT)'.
+ * include/grub/i18n.h (N_): New macro.
+ * util/mkisofs/mkisofs.h: Likewise.
+ * util/mkisofs/mkisofs.c (ld_options): Wrap all translatable strings
+ around N_().
+ (usage): Use gettext() to translate help strings when printing them.
+
+2009-11-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ Based on patch from Bean
+ (http://lists.gnu.org/archive/html/grub-devel/2009-08/msg00384.html)
+
+ * video/efi_fb.c: New file.
+ * conf/i386-efi.rmk (pkglib_MODULES): Add `efi_fb.mod'.
+ (efi_fb_mod_SOURCES, efi_fb_mod_CFLAGS, efi_fb_mod_LDFLAGS): New
+ variables.
+ * conf/x86_64-efi.rmk: Likewise.
+
+2009-11-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-mkimage.c: Ungettextize grub_util_info() strings.
+ * util/i386/pc/grub-setup.c: Likewise.
+
+2009-11-21 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/getroot.c [__GNU__]: Include <hurd.h>, <hurd/lookup.h>, and
+ <hurd/fs.h>
+ [__GNU__] (grub_guess_root_device): Call file_name_lookup and
+ file_get_storage_info to implement grub_guess_root_device.
+
+2009-11-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (target): Use make's builtin $(shell) function
+ instead of calling directly $(SHELL) to create the locale directories,
+ inside the $(foreach) function.
+
+2009-11-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkrescue.in: Print an error and usage if output option
+ has not been given.
+
+2009-11-21 Felix Zielcke <fzielcke@z-51.de>
+
+ Patch from Loïc Minier <loic.minier@ubuntu.com>.
+ * util/grub.d/30_os-prober.in: Cope with Linux entries where
+ root and /boot are on different devices.
+
+2009-11-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix build for srcdir != objdir.
+
+ * Makefile.in (po/$(PACKAGE).pot): Rename to ...
+ ($(srcdir)/po/$(PACKAGE).pot): ... this. Run $(XGETTEXT) from
+ $(srcdir).
+ ($(foreach lang, $(LINGUAS), po/$(lang).po)): Rename to ...
+ ($(foreach lang, $(LINGUAS), $(srcdir)/po/$(lang).po): ... this. Use $^
+ reference for input.
+
+2009-11-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-mkrescue.in: Use source directory direcly (without copiing
+ or hardlinking it). Remove -J option, Joliet is not compatible with
+ multiple source directories.
+
+2009-11-21 Carles Pina i Estany <carles@pina.cat>
+2009-11-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-mkrescue.in: Recognize `--override-directory' option.
+ (process_input_dir): New function. Process an arbitrary input
+ directory.
+ Misc adjustments to support both "override mode" and system-wide mode.
+
+2009-11-20 Felix Zielcke <fzielcke@z-51.de>
+
+ * configure.ac (UNIFONT_BDF): Rename to ...
+ (FONT_SOURCE): ... this. Update all users.
+
+2009-11-20 Felix Zielcke <fzielcke@z-51.de>
+
+ * configure.ac: Add `/usr/share/fonts/X11/misc/unifont.pcf.gz'
+ to the list of unifont files to look for.
+
+2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
+
+ Patch from Joe Auricchio <jauricchio@gmail.com>
+ * commands/minicmd.c (grub_mini_cmd_clear): New function.
+ (GRUB_MOD_INIT(minicmd)): Register grub_mini_cmd_clear().
+ (GRUB_MOD_FINI(minicmd)): Unregister grub_mini_cmd_clear().
+
+2009-11-19 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (install-local): Add a missing backslash.
+
+2009-11-19 Felix Zielcke <fzielcke@z-51.de>
+
+ * include/grub/x86_64/io.h: New file.
+
+2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add `gnulib/progname.c'.
+ * util/i386/pc/grub-setup.c: Include `<grub/i18n.h>'.
+ Include `"progname.h"'.
+ (main): Initialize gettext.
+ * util/i386/pc/grub-setup.c: Gettexttize.
+ * util/i386/pc/grub-mkimage.c: Likewise.
+
+ * Makefile.in (po/*.po): Redefine as ...
+ ($(foreach lang, $(LINGUAS), po/$(lang).po)): ... this.
+
+ * po/POTFILES: Add `util/i386/pc/grub-setup.c'.
+
+2009-11-19 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/progname.c'.
+ * util/mkisofs/mkisofs.c: Include `"progname.h"'.
+ (program_name): Remove.
+ (main): Initialize gettext support.
+ * util/mkisofs/mkisofs.h: Include `<locale.h>'.
+ Include `<libintl.h>'.
+ (_): New macro.
+
+ * util/mkisofs/eltorito.c: Gettexttize.
+ * util/mkisofs/joliet.c: Likewise.
+ * util/mkisofs/mkisofs.c: Likewise.
+ * util/mkisofs/multi.c: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/tree.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+
+ * po/POTFILES: Update with new files.
+
+2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/eltorito.c: Fix minor mistake in license text.
+ * util/mkisofs/iso9660.h: Likewise.
+ * util/mkisofs/joliet.c: Likewise.
+ * util/mkisofs/mkisofs.c: Likewise.
+ * util/mkisofs/mkisofs.h: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/tree.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+
+ * util/mkisofs/eltorito.c (rcsid): Remove.
+ * util/mkisofs/hash.c: Likewise.
+ * util/mkisofs/joliet.c: Likewise.
+ * util/mkisofs/name.c: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/tree.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+
+2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/match.c: Rewrite from scratch, using a linked list
+ instead of static allocation.
+ * util/mkisofs/match.h: Likewise.
+
+2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * po/POTFILES-shell: New file. List `util/grub.d/10_kfreebsd.in'
+ and `util/grub.d/10_linux.in'.
+ * Makefile.in (po/$(PACKAGE).pot): Process `po/POTFILES-shell' for
+ translatable Shell files.
+
+2009-11-18 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in ($(srcdir)/aclocal.m4): New target.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * INSTALL: Document Automake is needed for bootstrap.
+ * po/ca.po: Fix PO-Revision-Date and Language-Team fields.
+ * util/grub.d/10_kfreebsd.in (bindir): New variable.
+ Add gettext initialization.
+ (kfreebsd_entry): Make menuentry output translatable.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (XGETTEXT, MSGMERGE, MSGFMT): New variables.
+ (po/$(PACKAGE).pot): Replace `xgettext' with `$(XGETTEXT)'.
+ (po/*.po): Replace `msgmerge' with `$(MSGMERGE)'.
+ (po/%.mo): Replace `msgfmt' with `$(MSGFMT)'.
+ (LINGUAS): Auto-generate using `po/LINGUAS'.
+ * po/LINGUAS: New file.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Call AM_GNU_GETTEXT() (defines localedir, among
+ other things).
+ * Makefile.in (CPPFLAGS): Add `-DLOCALEDIR=\"$(localedir)\"'.
+ * util/i386/pc/grub-mkimage.c (main): Issue setlocale() and
+ bindtextdomain() calls for gettext initialization.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * gnulib/progname.c: New file (imported from Gnulib).
+ * gnulib/progname.h: Likewise.
+ * conf/i386-pc.rmk (grub_mkimage_SOURCES): Add `gnulib/progname.c'.
+ * util/i386/pc/grub-mkimage.c: Include `"progname.h"'.
+ (usage): Replace `progname' with `program_name'.
+ (main): Use set_program_name() for program name initialization.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (grub_mkisofs_CFLAGS): Move `-I$(srcdir)/gnulib'
+ from here ...
+ * Makefile.in (CPPFLAGS): ... to here.
+
+2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ * aclocal.m4: Move from here ...
+ * acinclude.m4: ... to here.
+ * autogen.sh: Add call to `aclocal'.
+ * configure.ac: Add AM_INIT_AUTOMAKE() after AC_INIT() call.
+
+2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (CLEANFILES): Add `po/*.mo'.
+ (LINGUAS): New variable.
+ (all-local): Add `$(foreach lang, $(LINGUAS), po/$(lang).mo)'.
+ (install-local): Install MO files.
+ (po/$(PACKAGE).pot, po/*.po, po/%.mo): New rules.
+ * include/grub/i18n.h: New file.
+ * po/POTFILES: New file.
+ * po/ca.po: New file.
+ * util/grub.d/10_linux.in (bindir): New variable.
+ Add gettext initialization.
+ (linux_entry): Make menuentry output translatable.
+ * util/i386/pc/grub-mkimage.c: Include `<grub/i18n.h>'.
+ (usage): Make --help output translatable.
+ (main): Initialize gettext.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * import_gcry.py: New file (written by Vladimir with minor
+ adjustments).
+ * autogen.sh: Use import_gcry.py to auto-generate GRUB-ified
+ ciphers.
+ * INSTALL: Document that Python is required for bootstrap.
+
+2009-11-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ Import ciphers from libgcrypt 1.4.4.
+
+ * lib/libgcrypt/cipher/ChangeLog
+ * lib/libgcrypt/cipher/ac.c
+ * lib/libgcrypt/cipher/arcfour.c
+ * lib/libgcrypt/cipher/bithelp.h
+ * lib/libgcrypt/cipher/blowfish.c
+ * lib/libgcrypt/cipher/camellia-glue.c
+ * lib/libgcrypt/cipher/camellia.c
+ * lib/libgcrypt/cipher/camellia.h
+ * lib/libgcrypt/cipher/cast5.c
+ * lib/libgcrypt/cipher/cipher.c
+ * lib/libgcrypt/cipher/crc.c
+ * lib/libgcrypt/cipher/des.c
+ * lib/libgcrypt/cipher/dsa.c
+ * lib/libgcrypt/cipher/ecc.c
+ * lib/libgcrypt/cipher/elgamal.c
+ * lib/libgcrypt/cipher/hash-common.c
+ * lib/libgcrypt/cipher/hash-common.h
+ * lib/libgcrypt/cipher/hmac-tests.c
+ * lib/libgcrypt/cipher/md.c
+ * lib/libgcrypt/cipher/md4.c
+ * lib/libgcrypt/cipher/md5.c
+ * lib/libgcrypt/cipher/primegen.c
+ * lib/libgcrypt/cipher/pubkey.c
+ * lib/libgcrypt/cipher/rfc2268.c
+ * lib/libgcrypt/cipher/rijndael-tables.h
+ * lib/libgcrypt/cipher/rijndael.c
+ * lib/libgcrypt/cipher/rmd.h
+ * lib/libgcrypt/cipher/rmd160.c
+ * lib/libgcrypt/cipher/rsa.c
+ * lib/libgcrypt/cipher/seed.c
+ * lib/libgcrypt/cipher/serpent.c
+ * lib/libgcrypt/cipher/sha1.c
+ * lib/libgcrypt/cipher/sha256.c
+ * lib/libgcrypt/cipher/sha512.c
+ * lib/libgcrypt/cipher/tiger.c
+ * lib/libgcrypt/cipher/twofish.c
+ * lib/libgcrypt/cipher/whirlpool.c
+
+2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix build for systems without error().
+
+ * gnulib/error.c: New file (imported from Gnulib).
+ * gnulib/error.h: Likewise.
+ * conf/common.rmk (grub_mkisofs_SOURCES): Add `gnulib/error.c'.
+ * util/mkisofs/mkisofs.c (program_name): Remove `static' qualifier
+ (this variable is now used by error()).
+
+2009-11-16 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/mkisofs/name.c (iso9660_file_length): Use isascii macro
+ instead of relying that char is signed.
+
+2009-11-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/i386/pc/pxe.c (grub_pxefs_open): Correctly handle PXE choosing
+ blocksize different from specified.
+ (grub_pxefs_read): Likewise.
+
+2009-11-16 Felix Zielcke <fzielcke@z-51.de>
+
+ Enable ata.mod on x86_64-efi, i386-efi and i386-ieee1275.
+
+ * disk/ata.c (grub_ata_dumpinfo): Add a cast.
+ (grub_ata_readwrite): Likewise. Update 2 format strings.
+ (grub_atapi_read): Likewise.
+
+ * conf/i386-coreboot.rmk (pkglib_MODULES): Move `ata.mod' from here ...
+ * conf/i386.rmk (pkglib_MODULES): ... to here ...
+ * conf/x86_64-efi.rmk (pkglib_MODULES): ... and here.
+ * conf/i386-coreboot.rmk (ata_mod_SOURCES, ata_mod_CFLAGS)
+ (ata_mod_LDFLAGS): Move from here ...
+ * conf/i386.rmk: ... to here ...
+ * conf/x86_64-efi.rmk: ... and here.
+ * conf/i386-pc.rmk (pkglib_MODULES): Remove `ata.mod'
+ (ata_mod_SOURCES, ata_mod_CFLAGS, ata_mod_LDFLAGS): Remove.
+
+2009-11-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ Relicense multiboot.h, with RMS' blessing.
+
+ * include/multiboot.h: Change to X11 license.
+
+2009-11-15 Robert Millan <rmh.grub@aybabtu.com>
+
+ Support --version in grub-mkisofs.
+
+ * util/mkisofs/mkisofs.c (rcsid): Remove variable.
+ (OPTION_VERSION): New macro.
+ (ld_options): Recognize --version.
+ (usage): Move `program_name' from here ...
+ (program_name): ... to here. Add `static' qualifier.
+ (main): Recognize `OPTION_VERSION'.
+
+2009-11-15 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (TARGET_CPPFLAGS): Replace `-isystem=$(srcdir)/include'
+ with `-nostdinc -isystem $(shell $(TARGET_CC) -print-file-name=include)'.
+
+2009-11-14 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix help2man generation for mkisofs.
+
+ * util/mkisofs/mkisofs.c (ld_options): Recognize --help.
+ (usage): Send output to stdout (rather than stderr).
+
+2009-11-14 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-coreboot.rmk (grub_mkrescue_SOURCES): Replace
+ `util/i386/coreboot/grub-mkrescue.in' with `util/grub-mkrescue.in'.
+ * conf/i386-pc.rmk (grub_mkrescue_SOURCES): Replace
+ `util/i386/pc/grub-mkrescue.in' with `util/grub-mkrescue.in'.
+ (bin_SCRIPTS): Add `grub-mkfloppy'.
+ (grub_mkfloppy_SOURCES): New variable.
+
+ * util/grub-mkrescue.in: New file.
+ * util/i386/pc/grub-mkfloppy.in: New file.
+
+ * util/i386/coreboot/grub-mkrescue.in: Remove.
+ * util/i386/pc/grub-mkrescue.in: Remove.
+
+2009-11-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/multiboot.h (struct grub_multiboot_header): Move
+ from here ...
+ * include/multiboot.h (struct multiboot_header): ... to here. Update
+ all users.
+ * include/grub/multiboot.h (struct grub_multiboot_info): Move
+ from here ...
+ * include/multiboot.h (struct multiboot_info): ... to here. Update
+ all users.
+ * include/grub/multiboot.h (struct grub_multiboot_mmap_entry): Move
+ from here ...
+ * include/multiboot.h (struct multiboot_mmap_entry): ... to here.
+ Update all users.
+ * include/grub/multiboot.h (struct grub_mod_list): Move
+ from here ...
+ * include/multiboot.h (struct multiboot_mod_list): ... to here.
+ Update all users.
+
+2009-11-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/multiboot2.h (multiboot_word): Rename from this ...
+ (multiboot2_word): ... to this. Update all users.
+ (multiboot_header): Rename from this ...
+ (multiboot2_header): ... to this. Update all users.
+ (multiboot_tag_header): Rename from this ...
+ (multiboot2_tag_header): ... to this. Update all users.
+ (multiboot_tag_start): Rename from this ...
+ (multiboot2_tag_start): ... to this. Update all users.
+ (multiboot_tag_name): Rename from this ...
+ (multiboot2_tag_name): ... to this. Update all users.
+ (multiboot_tag_module): Rename from this ...
+ (multiboot2_tag_module): ... to this. Update all users.
+ (multiboot_tag_memory): Rename from this ...
+ (multiboot2_tag_memory): ... to this. Update all users.
+ (multiboot_tag_unused): Rename from this ...
+ (multiboot2_tag_unused): ... to this. Update all users.
+ (multiboot_tag_end): Rename from this ...
+ (multiboot2_tag_end): ... to this. Update all users.
+
+2009-11-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ Disable Multiboot2 in i386-ieee1275. It didn't actually work, and on
+ this platform we should support Multiboot1 first.
+
+ * conf/i386-ieee1275.rmk (pkglib_MODULES): Remove `multiboot.mod'.
+ (multiboot_mod_SOURCES, multiboot_mod_CFLAGS)
+ (multiboot_mod_LDFLAGS, multiboot_mod_ASFLAGS): Remove.
+
+2009-11-12 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/eltorito.c (init_boot_catalog): Handle return code
+ of write calls (converting them to fwrite() if they aren't already).
+ (get_torito_desc): Likewise.
+ * util/mkisofs/rock.c (generate_rock_ridge_attributes): Likewise.
+
+2009-11-12 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: Move from here ...
+ * util/grub-install.in: ... to here. Update all users.
+
+2009-11-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/powerpc/ieee1275/grub-mkrescue.in: Fix --version output.
+
+2009-11-11 Robert Millan <rmh.grub@aybabtu.com>
+
+ Support for El Torito without floppy emulation.
+
+ * util/mkisofs/eltorito.c: Include `<errno.h>'.
+ (init_boot_catalog): Improve error handling.
+ (get_torito_desc): Don't use floppy emulation unless requested by
+ user. Patch boot information table when requested via
+ `-boot-info-table'.
+ * util/mkisofs/iso9660.h (struct eltorito_boot_info): New struct.
+ * util/mkisofs/mkisofs.c (use_eltorito_emul_floppy)
+ (use_boot_info_table): New variables.
+ (OPTION_BOOT_INFO_TABLE, OPTION_NO_EMUL_BOOT)
+ (OPTION_ELTORITO_EMUL_FLOPPY): New macros.
+ (ld_options): Handle `-boot-info-table', `-no-emul-boot' and
+ `--eltorito-emul-floppy'.
+ (main): Handle `OPTION_BOOT_INFO_TABLE', `OPTION_NO_EMUL_BOOT'
+ and `OPTION_ELTORITO_EMUL_FLOPPY'.
+ * util/mkisofs/mkisofs.h (use_eltorito_emul_floppy)
+ (use_boot_info_table, get_731): New prototypes.
+ * util/mkisofs/write.c (get_731): New function.
+
+2009-11-11 Felix Zielcke <fzielcke@z-51.de>
+
+ Fix the generation of the man page.
+
+ * util/pc/i386/grub-install.in: Source
+ `${libdir}/grub/grub-mkconfig_lib' after options have been parsed.
+
+2009-11-11 Robert Millan <rmh.grub@aybabtu.com>
+
+ Large file support for grub-mkisofs.
+
+ * conf/common.rmk (grub_mkisofs_CFLAGS): Add `-D_FILE_OFFSET_BITS=64'.
+ * util/mkisofs/mkisofs.c (next_extent, last_extent)
+ (session_start): Upgrade type to `uint64_t'. Update all users.
+ * util/mkisofs/mkisofs.h: Include `<stdint.h>'.
+ (struct directory_entry): Upgrade type of `starting_block' and
+ `size' to `uint64_t'. Update all users.
+ (struct deferred): Remove unused structure.
+ (xfwrite): Upgrade type of `count' and `size' to `uint64_t'.
+ Update all users.
+ * util/mkisofs/tree.c (stat_filter, lstat_filter): Return -1 when
+ file is larger than `UINT32_MAX'.
+ * util/mkisofs/write.c (xfwrite): Upgrade type of `count' and
+ `size' to `uint64_t'. Update all users. Fix handling of fwrite()
+ return value.
+ (struct deferred_write): Upgrade type of `extent' and `size' to
+ `uint64_t'. Update all users.
+ (last_extent_written): Upgrade type to `uint64_t'. Update all
+ users.
+ (write_one_file): Upgrade type of `count' and `size' to `uint64_t'.
+ Update all users. Upgrade type of `remain' to `int64_t' and
+ `use' to `size_t'. Use error() to handle fread() errors.
+ (write_files): Rely on write_one_file() rather than calling
+ xfwrite() directly.
+
+2009-11-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/mkisofs/mkisofs.c (ld_options): Fix a spelling mistake.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/mkisofs/fnmatch.c: Remove.
+ * util/mkisofs/getopt1.c: Likewise.
+ * util/mkisofs/getopt.c: Likewise.
+ * conf/common.rmk (grub_mkisofs_SOURCES): Replace
+ `util/mkisofs/fnmatch.c', `util/mkisofs/getopt1.c' and
+ `util/mkisofs/getopt.c' with `gnulib/fnmatch.c',
+ `gnulib/getopt1.c' and `gnulib/getopt.c'.
+ (grub_mkisofs_CFLAGS): Add `-I$(srcdir)/gnulib'.
+
+ * configure.ac: Detect `mingw32msvc' host_os.
+ Check for lstat(), getuid() and getgid().
+
+ * util/mkisofs/joliet.c: Include `<stdint.h>'. Replace all
+ instances of `u_char' with `uint8_t'.
+
+ * util/mkisofs/mkisofs.h: Include `<sys/stat.h>'.
+ [!HAVE_GETUID] (getuid): New function (stub).
+ [!HAVE_GETGID] (getgid): Likewise.
+ [!HAVE_LSTAT] (lstat): Likewise.
+ [!S_IROTH] (S_IROTH): New macro (dummy).
+ [!S_IRGRP] (S_IRGRP): Likewise.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * gnulib/fnmatch_loop.c (EXT): Fix warning (signed and unsigned type in
+ conditional expression).
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ Import from Gnulib.
+
+ * gnulib/fnmatch.c: New file.
+ * gnulib/fnmatch.h: Likewise.
+ * gnulib/fnmatch_loop.c: Likewise.
+ * gnulib/getopt.c: Likewise.
+ * gnulib/getopt.h: Likewise.
+ * gnulib/getopt1.c: Likewise.
+ * gnulib/getopt_int.h: Likewise.
+ * gnulib/gettext.h: Likewise.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/dyncmd.c (read_command_list): Replace `0' with `NULL'.
+ * normal/handler.c (read_handler_list): Likewise.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ Misc cleanup.
+
+ * kern/command.c (grub_register_command_prio): Use
+ grub_zalloc() instead of explicitly zeroing data.
+ * kern/list.c: Include `<grub/mm.h>'.
+ (grub_named_list_find): Replace `0' with `NULL'.
+ * normal/autofs.c (struct grub_fs_module_list): Remove ad-hoc type.
+ (fs_module_list): Change type to `grub_named_list_t'. Update all
+ users.
+ * normal/dyncmd.c (read_command_list): Add space between function
+ call and parenthesis.
+ * normal/handler.c (read_handler_list): Likewise.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/auth.c (punishment_delay): Moved from here ...
+ (grub_auth_strcmp): ... to here (inside function).
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/list.h (struct grub_named_list): Remove `const'
+ qualifier from `name'.
+ (struct grub_prio_list): Likewise.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/auth.c: Include `<grub/time.h>'.
+ (grub_auth_strcmp): Replace `strcmp' with `grub_strcmp'.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/auth.c (punishment_delay): New variable.
+ (grub_auth_strcmp): Rewrite using grub_get_time_ms ().
+ (grub_auth_check_authentication): Punish failed login attempts with
+ an incremental (2^N) delay.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (grub_mkisofs_CFLAGS): Prefix include
+ path with $(srcdir).
+
+2009-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/auth.c (grub_auth_strcmp): Fixed incorrect variable usage.
+
+2009-11-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/coreboot/grub-mkrescue.in: New file.
+ * conf/i386-coreboot.rmk (bin_SCRIPTS, grub_mkrescue_SOURCES): New
+ variables.
+
+ * conf/common.rmk (bin_UTILITIES): Add `grub-mkisofs'.
+ (grub_mkisofs_SOURCES, grub_mkisofs_CFLAGS): New variables.
+ * configure.ac: Add header and function checks to satisfy grub-mkisofs
+ requirements.
+ * util/mkisofs/defaults.h: New file.
+ * util/mkisofs/eltorito.c: Likewise.
+ * util/mkisofs/exclude.h: Likewise.
+ * util/mkisofs/fnmatch.c: Likewise.
+ * util/mkisofs/getopt.c: Likewise.
+ * util/mkisofs/getopt1.c: Likewise.
+ * util/mkisofs/hash.c: Likewise.
+ * util/mkisofs/include/fctldefs.h: Likewise.
+ * util/mkisofs/include/mconfig.h: Likewise.
+ * util/mkisofs/include/prototyp.h: Likewise.
+ * util/mkisofs/include/statdefs.h: Likewise.
+ * util/mkisofs/iso9660.h: Likewise.
+ * util/mkisofs/joliet.c: Likewise.
+ * util/mkisofs/match.c: Likewise.
+ * util/mkisofs/match.h: Likewise.
+ * util/mkisofs/mkisofs.c: Likewise.
+ * util/mkisofs/mkisofs.h: Likewise.
+ * util/mkisofs/multi.c: Likewise.
+ * util/mkisofs/name.c: Likewise.
+ * util/mkisofs/rock.c: Likewise.
+ * util/mkisofs/tree.c: Likewise.
+ * util/mkisofs/write.c: Likewise.
+
+2009-11-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * normal/auth.c (grub_auth_strcmp): Fix bug which resulted in function
+ being insecure.
+
+2009-11-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-mkrescue.in: Fix miss-identification as
+ `grub-mkimage' (and use $0 when possible).
+
+2009-11-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Improve
+ error message for excessively large memory map.
+
+2009-11-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * autogen.sh: Use `sh gendistlist.sh' to avoid reliing on
+ executable bit.
+
+2009-11-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/i386/multiboot_mmap.c (grub_machine_mmap_init): Improve error
+ message for coreboot users.
+
+2009-11-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix build with GNU gold.
+
+ * conf/i386-pc.rmk (boot_img_LDFLAGS, pxeboot_img_LDFLAGS)
+ (diskboot_img_LDFLAGS, lnxboot_img_LDFLAGS)
+ (cdboot_img_LDFLAGS): Prepend `0x' qualifier to hexadecimal
+ link addresses.
+ * aclocal.m4: Likewise.
+
+2009-11-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * configure.ac (AC_PREREQ): Bump to 2.59d.
+ * INSTALL: Make it more clear when Autoconf and Ruby are
+ needed and when to run `./autogen.sh'.
+
+2009-11-03 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/30_os-prober.in: Restore default behavior for unsupported
+ OSes.
+
+2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/30_os-prober.in: Add GNU/Hurd support
+
+2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/10_hurd.in: Drop /dev/ prefix from root device path before
+ giving it to GNU Mach.
+
+2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Subtract 1 from
+ GNU partition number to get internal GRUB partition number.
+
+2009-11-02 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * util/grub.d/10_hurd.in: Call prepare_grub_to_access_device
+ ${GRUB_DEVICE_BOOT} before loading /boot kernel.
+
+2009-11-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ Based on patch from BVK Chaitanya <bvk.groups@gmail.com>
+ * kern/misc.c (grub_strchr, grub_strrchr): Fix to handle c == '\0'
+ case.
+
+2009-11-01 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (TARGET_CPPFLAGS): Add `-I$(srcdir)/include'.
+
+2009-10-30 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix build problem.
+
+ * Makefile.in (TARGET_CPPFLAGS): Replace `-nostdinc' with
+ `-isystem=$(srcdir)/include'.
+
+2009-10-30 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: Remove hint that device.map should be
+ checked (grub-install doesn't currently rely on it).
+
+2009-10-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ Revert SVN r2660.
+
+ * conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): Moved from here ...
+ * conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here.
+ * conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): ... and here.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+2009-10-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (TARGET_CPPFLAGS): Add `-nostdinc'.
+
+2009-10-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/misc.h: Stop checking for APPLE_CC.
+
+2009-10-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/i386/coreboot/init.c (grub_exit): Reimplement in a way that
+ doesn't cause an infinite call loop.
+
+2009-10-28 Felix Zielcke <fzielcke@z-51.de>
+
+ * commands/acpi.c (grub_cmd_acpi): Fix the out of memory error
+ strings.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * autogen.sh: Support addition of external modules via `GRUB_CONTRIB'
+ variable.
+ * Makefile.in: Likewise.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * gendistlist.sh: Simplify .svn check. Skip .bzr as well.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (RMKFILES): Rewrite using $(wildcard).
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * disk/scsi.c: Remove `<grub/machine/kernel.h>' (not needed).
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * gensymlist.sh.in (COMPILE_TIME_ASSERT): Copy macro declaration
+ from here ...
+ * include/grub/misc.h (COMPILE_TIME_ASSERT): ... to here.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * Makefile.in (docs/grub.info): Use make syntax to ignore errors
+ in $(MAKEINFO) invocation. This makes it clear in output that
+ errors are being ignored.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-coreboot.rmk (script/sh/lexer.c_DEPENDENCIES): Moved
+ from here ...
+ * conf/common.rmk (script/sh/lexer.c_DEPENDENCIES): ... to here.
+ * conf/i386-efi.rmk (script/sh/lexer.c_DEPENDENCIES): Remove.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+2009-10-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-editenv.c (main): If only a command is given, use
+ DEFAULT_DIRECTORY "/" GRUB_ENVBLK_DEFCFG as a default file name.
+ (usage): FILENAME is now optional and has a default.
+
+2009-10-26 Colin Watson <cjwatson@ubuntu.com>
+
+ Improve grub-mkconfig performance when there are several menu
+ entries on a single filesystem.
+
+ * util/grub.d/10_linux.in (linux_entry): Cache the output of
+ prepare_grub_to_access_device.
+ * util/grub.d/10_kfreebsd.in (kfreebsd_entry): Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/10_freebsd.in: Remove.
+ * util/grub.d/10_kfreebsd.in: New file (based on 10_linux.in).
+ * configure.ac: Set host_kernel=kfreebsd for FreeBSD and GNU/kFreeBSD.
+
+2009-10-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * docs/grub.cfg: Fix example usage of *BSD loaders.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (setup): Add missing parameter to
+ grub_util_error() call.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/fs.h [GRUB_UTIL] (struct grub_fs): Add
+ `reserved_first_sector' member.
+ * fs/ext2.c [GRUB_UTIL] (grub_ext2_fs): Initialize
+ `reserved_first_sector' to 1.
+ * fs/fat.c [GRUB_UTIL] (grub_fat_fs): Likewise.
+ * fs/ntfs.c [GRUB_UTIL] (grub_ntfs_fs): Likewise.
+ * fs/hfsplus.c [GRUB_UTIL] (grub_hfsplus_fs): Likewise.
+ * util/i386/pc/grub-setup.c (setup): Add safety check that probes for
+ filesystems which begin at first sector.
+ (options): New option --skip-fs-probe.
+ (main): Handle --skip-fs-probe and pass it to setup().
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/misc.h: Fix wrong evaluation of APPLE_CC.
+ (memset): Fix function prototype.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+2009-10-25 Vasily Averin <vvs@parallels.com>
+
+ * fs/ext2.c (grub_ext2_iterate_dir): Avoid infinite loop when
+ `dirent.direntlen == 0'.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * fs/cpio.c [MODE_USTAR]: Initialize `tar' module instead of
+ `cpio'.
+ [! MODE_USTAR]: Initialize `cpio' module instead of `tar'.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Check for `__ashldi3', `__ashrdi3', `__lshrdi3',
+ `__trampoline_setup' and `__ucmpdi2'.
+ * include/grub/powerpc/libgcc.h: Only export symbols for functions
+ that libgcc provides.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/powerpc/libgcc.h (memset): Remove function prototype.
+ * include/grub/sparc64/libgcc.h (memset): Likewise.
+ * include/grub/misc.h (memset, memcmp): New function prototypes.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ * fs/cpio.c [MODE_USTAR]: Finish `tar' module instead of
+ `cpio'.
+ [! MODE_USTAR]: Finish `cpio' module instead of `tar'.
+
+2009-10-25 Robert Millan <rmh.grub@aybabtu.com>
+
+ Patch from Samuel Thibault <samuel.thibault@ens-lyon.org>
+ * docs/grub.cfg: Compensate for recent change in multiboot
+ loader (since 2009-08-14 it won't pass filename to payload).
+ * util/grub.d/10_hurd.in: Likewise.
+
+2009-10-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * config.guess: Update to latest version from config git
+ repository.
+ * config.sub: Likewise.
+
+2009-10-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix build on sparc64.
+
+ * configure.ac: Perform checks for libgcc symbols before
+ adding `-nostdlib' to LDFLAGS.
+
+2009-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Let user specify OpenBSD root device.
+
+ * loader/i386/bsd.c (openbsd_root): New variable.
+ (openbsd_opts): New option 'root'.
+ (OPENBSD_ROOT_ARG): New macro.
+ (grub_openbsd_boot): Use 'openbsd_root'.
+ (grub_cmd_openbsd): Fill 'openbsd_root'.
+
+2009-10-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ * NEWS: Misc adjustments.
+
+2009-10-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * NEWS: Mentioned XNU, ACPI, gptsync, password and parttool.
+
+2009-10-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Bump version to 1.97.
+
+2009-10-16 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac (TARGET_CFLAGS): Add -mno-mmx -mno-sse -mno-sse2
+ -mno-3dnow on x86 architectures. Some toolchains enable these
+ features by default, but they rely on registers that aren't enabled
+ in GRUB. Thanks to Vladimir Serbinenko for the suggestion.
+
+2009-10-15 Robert Millan <rmh.grub@aybabtu.com>
+
+ Make entry text a bit more readable.
+
+ * util/grub.d/10_linux.in: Add `with' before `Linux'.
+
+2009-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/pc/xnu.c (grub_xnu_set_video): Fix loading splash image.
+
+2009-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/xnu_uuid.c (grub_cmd_xnu_uuid): Remove duplicated bitwise
+ operations.
+
+2009-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * configure.ac: Add missing dollar.
+
+2009-10-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Revert 2009-06-10 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Put checks for __bswapsi2 and __bswapdi2.
+ * include/grub/powerpc/libgcc.h: Don't use weak attribute for all
+ exports.
+ * include/grub/sparc64/libgcc.h: Likewise. Use
+ preprocessor conditionals.
+
+2009-10-14 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (grub-dumpbios): Remove rule.
+ (sbin_SCRIPTS, CLEANFILES): Remove `grub-dumpbios'.
+ * util/grub-dumpbios.in: Remove file.
+
+2009-10-14 Robert Millan <rmh.grub@aybabtu.com>
+
+ Refer to kernel of FreeBSD "kFreeBSD" to avoid confusion between
+ the Operating System (FreeBSD) and its kernel (kernel of FreeBSD).
+
+ * loader/i386/bsd.c (grub_freebsd_boot): Read kernel environment
+ from "kFreeBSD" namespace (rather than "FreeBSD"). Update all
+ users.
+
+ (GRUB_MOD_INIT (bsd)): Rename "freebsd" command to "kfreebsd",
+ "openbsd" to "kopenbsd", "netbsd" to "knetbsd", "freebsd_loadenv"
+ to "kfreebsd_loadenv", "freebsd_module" to "kfreebsd_module",
+ and "freebsd_module_elf" to "kfreebsd_module_elf". Update all
+ users.
+
+2009-10-12 Robert Millan <rmh.grub@aybabtu.com>
+
+ * term/tparm.c: Switch to GPLv3.
+
+2009-10-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/cpuid.h: Add header protection.
+
+2009-10-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fail gracefuly when attempting to load 64-bit kFreeBSD on IA32 CPU.
+
+ * include/grub/i386/cpuid.h: New file.
+ * commands/i386/cpuid.c: Include `<grub/i386/cpuid.h>'.
+ (has_longmode): Rename to ...
+ (grub_cpuid_has_longmode): ... this. Update all users. Remove
+ `static' attribute.
+ * loader/i386/bsd.c: Include `<grub/i386/cpuid.h>'.
+ (grub_bsd_load_elf): Fail if load of 64-bit kernel was requested
+ on a CPU that doesn't implement AMD64 instruction set.
+
+2009-10-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in (docs/stamp-vti): Depend on configure.ac as well, so
+ that version.texi is rebuilt on version number changes.
+
+2009-10-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * Makefile.in: Don't set info_INFOS unless makeinfo was found.
+ Fixes bug #27602.
+
+2009-10-06 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/i386/pc/grub-install.in: Source
+ ${libdir}/grub/grub-mkconfig_lib before option processing, in order
+ that the --grub-probe option will work.
+ * util/sparc64/ieee1275/grub-install.in: Likewise.
+
+2009-10-05 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Bump version to 1.97~beta4.
+
+2009-10-03 Robert Millan <rmh.grub@aybabtu.com>
+
+ Resync grub-mkdevicemap in x86_64-efi.
+
+ * conf/x86_64-efi.rmk (sbin_UTILITIES): Enable `grub-mkdevicemap'.
+ (grub_mkdevicemap_SOURCES): Add missing `util/deviceiter.c' and
+ `util/devicemap.c'.
+
+2009-10-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-editenv.c (create_envblk_file): Write new block with a
+ .new suffix and then rename it into place, to ensure atomic
+ creation.
+
+2009-09-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ Do not automatically install headers.
+
+ * Makefile.in (include_DATA): Remove. Update all users.
+
+2009-09-26 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/common.rmk (pkglib_MODULES): Remove `lua.mod'.
+ (lua_mod_SOURCES, lua_mod_CFLAGS, lua_mod_LDFLAGS): Remove.
+
+ * util/osdetect.lua: Remove.
+ * script/lua/lauxlib.c: Likewise.
+ * script/lua/ldebug.c: Likewise.
+ * script/lua/grub_main.c: Likewise.
+ * script/lua/lauxlib.h: Likewise.
+ * script/lua/ldebug.h: Likewise.
+ * script/lua/ltablib.c: Likewise.
+ * script/lua/liolib.c: Likewise.
+ * script/lua/lstrlib.c: Likewise.
+ * script/lua/lualib.h: Likewise.
+ * script/lua/ldo.c: Likewise.
+ * script/lua/ldump.c: Likewise.
+ * script/lua/ldo.h: Likewise.
+ * script/lua/loslib.c: Likewise.
+ * script/lua/lundump.c: Likewise.
+ * script/lua/grub_lib.c: Likewise.
+ * script/lua/ldblib.c: Likewise.
+ * script/lua/lundump.h: Likewise.
+ * script/lua/lmem.c: Likewise.
+ * script/lua/grub_lib.h: Likewise.
+ * script/lua/lmathlib.c: Likewise.
+ * script/lua/lstate.c: Likewise.
+ * script/lua/ltm.c: Likewise.
+ * script/lua/lvm.c: Likewise.
+ * script/lua/lmem.h: Likewise.
+ * script/lua/lstate.h: Likewise.
+ * script/lua/ltm.h: Likewise.
+ * script/lua/ltable.c: Likewise.
+ * script/lua/lvm.h: Likewise.
+ * script/lua/llex.c: Likewise.
+ * script/lua/lgc.c: Likewise.
+ * script/lua/grub_lua.h: Likewise.
+ * script/lua/loadlib.c: Likewise.
+ * script/lua/lfunc.c: Likewise.
+ * script/lua/lopcodes.c: Likewise.
+ * script/lua/lparser.c: Likewise.
+ * script/lua/ltable.h: Likewise.
+ * script/lua/llex.h: Likewise.
+ * script/lua/lgc.h: Likewise.
+ * script/lua/lfunc.h: Likewise.
+ * script/lua/lbaselib.c: Likewise.
+ * script/lua/lopcodes.h: Likewise.
+ * script/lua/lparser.h: Likewise.
+ * script/lua/lzio.c: Likewise.
+ * script/lua/linit.c: Likewise.
+ * script/lua/lobject.c: Likewise.
+ * script/lua/llimits.h: Likewise.
+ * script/lua/lstring.c: Likewise.
+ * script/lua/lzio.h: Likewise.
+ * script/lua/lapi.c: Likewise.
+ * script/lua/lcode.c: Likewise.
+ * script/lua/lua.h: Likewise.
+ * script/lua/lobject.h: Likewise.
+ * script/lua/lstring.h: Likewise.
+ * script/lua/lapi.h: Likewise.
+ * script/lua/lcode.h: Likewise.
+ * script/lua/luaconf.h: Likewise.
+
+2009-09-26 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Command-line and menu entry commands): Document
+ date and echo commands.
+
+2009-09-24 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/kernel.h (struct grub_module_header): Remove
+ `grub_module_header_types'. Make `type' unsigned. Make `size'
+ 32-bit on all platforms.
+ * util/elf/grub-mkimage.c (load_modules): Treat `type' as an
+ 8-bit field. Use grub_host_to_target32() for `size'.
+ * util/i386/efi/grub-mkimage.c (make_mods_section): Likewise.
+ * util/i386/pc/grub-mkimage.c (generate_image): Likewise.
+ * util/sparc64/ieee1275/grub-mkimage.c (generate_image): Likewise.
+
+2009-09-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix "lost keypress" bug in at_keyboard.
+
+ * term/i386/pc/at_keyboard.c (grub_at_keyboard_checkkey): New function.
+ Checks for readyness of input buffer (without flushing it).
+ (grub_at_keyboard_term): Use grub_at_keyboard_checkkey() rather
+ than grub_at_keyboard_getkey_noblock() for `checkkey' struct member.
+
+2009-09-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-mkimage.c (generate_image): Enclose BIOS-specific
+ size check within GRUB_MACHINE_PCBIOS section.
+
+2009-09-24 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/at_keyboard.h (KEYBOARD_ISREADY): Negate
+ return value.
+ * term/i386/pc/at_keyboard.c (grub_keyboard_getkey): Negate
+ KEYBOARD_ISREADY check.
+ (grub_at_keyboard_checkkey): Rename to ...
+ (grub_at_keyboard_getkey_noblock): ... this. Update all users.
+ Remove gratuitous cast.
+
+2009-09-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Call AC_PROG_MKDIR_P.
+ * Makefile.in (docs/stamp-vti): Create docs directory. Create
+ version.texi in $(builddir) rather than $(srcdir).
+ (docs/grub.info): Create docs directory. Prepend $(builddir)/docs
+ to makeinfo's @include search path.
+
+2009-09-23 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Cope with `*.dpkg-*'
+
+2009-09-23 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig_lib.in (grub_file_is_not_garbage): Add support
+ for `*.dpkg-new'.
+
+2009-09-21 Colin Watson <cjwatson@ubuntu.com>
+
+ Build info documentation. Some code borrowed from Automake.
+
+ * configure.ac: Check for makeinfo.
+ * Makefile.in (MAKEINFO, INFOS, info_INFOS): New variables.
+ (MAINTAINER_CLEANFILES): Add $(INFOS), docs/stamp-vti, and
+ docs/version.texi.
+ (MOSTLYCLEANFILES): Add vti.tmp.
+ (docs/version.texi, docs/stamp-vti): Update automatically.
+ (docs/grub.info): Build info documentation. Use --force and ignore
+ errors for now.
+ (all-local): Add $(INFOS).
+ (install-local): Install info files.
+ (uninstall): Uninstall info files.
+ * docs/version.texi: Remove from revision control. This file is
+ automatically generated on build now.
+ * gendistlist.sh: Add `*.info'.
+
+2009-09-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * kern/term.c: Fix indentation.
+
+2009-09-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/hostdisk.c: Fix a comment.
+
+2009-09-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix regression introduced in r2539.
+
+ * term/usb_keyboard.c (USB_HID_DEVICE_TO_HOST): Change from 0x61
+ to 0xA1.
+
+2009-09-19 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/30_os-prober.in: Don't throw away stderr from
+ os-prober. Under normal operation, it does not print anything to
+ stderr; if it does, we need to debug it, and throwing away stderr
+ makes that excessively difficult.
+
+2009-09-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * mmap/mmap.c (grub_cmd_badram): Fix off-by-one error.
+
+2009-09-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ * aclocal.m4 (AC_LANG_PROGRAM): New macro. Overrides stock
+ AC_LANG_PROGRAM from autoconf.
+ (grub_ASM_USCORE, grub_PROG_OBJCOPY_ABSOLUTE): Add missing
+ prototypes (fixes warning).
+
+ * configure.ac: Add `-Werror' to TARGET_CFLAGS unless
+ `--disable-werror' was used.
+
+2009-09-16 Robert Millan <rmh.grub@aybabtu.com>
+
+ * partmap/msdos.c (pc_partition_map_iterate): Fix possible use of
+ uninitialized `lastaddr'.
+
+2009-09-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * partmap/msdos.c (pc_partition_map_iterate): Detect and break loops.
+
+2009-09-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/test.c (get_fileinfo): Return immediately if
+ grub_fs_probe fails.
+
+2009-09-14 José Martínez <xosemp@gmail.com>
+
+ * commands/acpi.c (grub_cmd_acpi): Fix loading ACPI tables from file.
+
+2009-09-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/30_os-prober.in: Cope with Windows 7 in os-prober
+ output.
+
+2009-09-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Remove --enable-grub-pe2elf. Only build
+ grub-pe2elf when needed by the build system itself.
+ * conf/common.rmk: Remove $(enable_grub_pe2elf) check.
+
+2009-09-12 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Bump version to 1.97~beta3.
+ * docs/version.texi: Likewise.
+
+2009-09-12 Robert Millan <rmh.grub@aybabtu.com>
+
+ * video/i386/pc/vbe.c (grub_vbe_get_video_mode_info): Move packed
+ mode special handling (grub_vbe_bios_set_dac_palette_width() call)
+ from here ...
+ * loader/i386/linux.c [GRUB_MACHINE_PCBIOS]
+ (grub_linux_setup_video): ... to here (with some adjustments).
+
+2009-09-12 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix memory corruption issue (spotted by Colin Watson).
+
+ * kern/i386/pc/startup.S (grub_vbe_bios_getset_dac_palette): Fix bug
+ causing returned size to be stored in an incorrect memory location.
+ Fix use of uninitialized value when storing the returned size.
+
+2009-09-12 Yves Blusseau <blusseau@zetam.org>
+
+ Change clean rules to properly remove files
+
+ * genmk.rb: add new clean rules
+ * Makefile.in (clean): add the new targets
+ (mostlyclean): likewise
+
+2009-09-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * include/grub/ntfs.h (struct grub_fshelp_node): Change `size'
+ to grub_uint64_t.
+ * fs/ntfs.c (init_file): Understand 64-bit sizes for
+ non-resident files.
+
+2009-09-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: Don't look for help2man when cross-compiling. Fixes
+ part of bug #27349.
+
+2009-09-10 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in: Make the created config mode 400 and
+ print a warning if it fails.
+
+2009-09-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/40_custom.in: Ask user to type custom entries below
+ comment, rather than below 'exec tail' line.
+
+2009-09-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/40_custom.in: Make sure that the explanatory text is
+ visible in grub.cfg.
+
+2009-09-10 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/40_custom.in: Make it a little clearer how to use this
+ file.
+
+2009-09-10 Felix Zielcke <fzielcke@z-51.de>
+
+ * docs/grub.cfg: Add an example menu entry for memtest86+.
+
+2009-09-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * config.guess: Update to latest version from config git.
+ * config.sub: Likewise.
+
+2009-09-08 Colin Watson <cjwatson@ubuntu.com>
+
+ * script/sh/execute.c (grub_script_execute_cmdline): Set "?" in
+ unknown-command case. Fixes bug #27320.
+
+2009-09-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * kern/rescue_parser.c (grub_rescue_parse_line): Only suggest to try
+ `help' if the command exists.
+
+2009-09-06 Robert Millan <rmh.grub@aybabtu.com>
+
+ * INSTALL: Require GCC 4.1.3 or later.
+
+2009-09-06 Yves Blusseau <blusseau@zetam.org>
+
+ * Makefile.in (RMKFILES): add i386-qemu.rmk
+ (MAINTAINER_CLEANFILES): add $(srcdir)/DISTLIST $(srcdir)/config.h.in
+ $(srcdir)/stamp-h.in
+
+2009-09-05 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-probe.c (probe): Comment out buggy codepath, which
+ was unexpectedly enabled by Colin Watson's 2009-09-02 fix. This
+ should be re-enabled after 1.97.
+
+2009-09-05 Felix Zielcke <fzielcke@z-51.de>
+
+ * gendistlist.sh: Add `grub-dumpdevtree' and `*.lua' to the list
+ find searches for.
+
+2009-09-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/xnu.c (grub_cpu_xnu_fill_devicetree): Remove
+ unnecessary calls to grub_error.
+
+2009-09-04 Colin Watson <cjwatson@ubuntu.com>
+
+ * NEWS: Mention `keystatus' and Unicode fonts.
+
+2009-09-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Bump version to 1.97~beta2.
+ * docs/version.texi: Likewise.
+
+2009-09-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * configure.ac: By default, GCC 4.4 generates .eh_frame sections
+ containing unwind information in some cases where it previously did
+ not. Use -fno-dwarf2-cfi-asm if available to restore the old
+ behaviour. See http://patchwork.kernel.org/patch/8555/ for related
+ discussion.
+
+2009-09-02 Yves BLUSSEAU <blusseau@zetam.org>
+
+ Embedding loadenv module into grub-emu
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): add lib/envblk.c and
+ commands/loadenv.c
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise
+
+2009-09-03 Magnus Granberg <zorry@ume.nu>
+
+ * aclocal.m4: Add grub_CHECK_PIE. It check if the compiler
+ include -fPIE in the default specs.
+ * configure.ac: Check if pie_possible is yes and add -fno-PIE
+ to TARGET_CFLAGS.
+
+2009-09-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * INSTALL: Note that GNU Bison 2.3 or later is required.
+
+2009-09-03 Colin Watson <cjwatson@ubuntu.com>
+
+ * kern/i386/pc/startup.S: Fix typo.
+
+2009-09-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * efiemu/loadcore.c (SUFFIX (grub_efiemu_loadcore_load)): Fix style
+ according to GCS.
+
+2009-09-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * docs/grub.texi (Naming convention): Describe one-based partition
+ numbering.
+ (Device syntax): Likewise.
+ (File name syntax): Likewise.
+ (Block list syntax): Likewise.
+ (Making a GRUB bootable CD-ROM): Talk about grub.cfg rather than
+ menu.lst.
+ (File name syntax): Likewise.
+ (Command-line and menu entry commands): Document acpi, blocklist,
+ crc, export, insmod, keystatus, ls, set, and unset commands.
+
+2009-09-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * commands/keystatus.c (GRUB_MOD_INIT (keystatus)): Adjust summary
+ to avoid implying that only one of --shift, --ctrl, or --alt may be
+ used.
+
+2009-09-02 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-probe.c (probe): Test st.st_mode using S_ISREG macro
+ rather than comparing against S_IFREG, which will almost never work.
+
+2009-09-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/loadenv.c (check_blocklists): Fix off-by-one error.
+ (write_blocklists): Likewise.
+
+2009-09-01 Colin Watson <cjwatson@ubuntu.com>
+
+ * script/lua/grub_lua.h (fputs): Supply a format string as the first
+ argument to grub_printf.
+
+2009-09-01 Felix Zielcke <fzielcke@z-51.de>
+
+ * genmk.rb: Add quotes around $(TARGET_OBJ2ELF) to cope with
+ non GNU test.
+
+2009-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/file.c (grub_file_read): Spelling fix
+
+2009-08-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/bsdXX.c (SUFFIX (grub_freebsd_load_elfmodule)): Fix
+ loading of headers in some cases.
+
+2009-08-30 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Bump version to 1.97~beta1.
+ * docs/version.texi: Likewise.
+
+2009-08-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/i386/xnu.h: Add license header.
+ include grub/err.h explicitly.
+
+2009-08-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/10_freebsd.in: Detect `ufs1' and `ufs2' and map them
+ to `ufs' in the vfs.root.mountfrom kernel parameter.
+
+2009-08-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ * term/i386/pc/serial.c: Include `<grub/machine/memory.h>'.
+
+ [GRUB_MACHINE_PCBIOS] (serial_hw_io_addr): Macroify initialization
+ value (0x0400 -> GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR).
+
+ [! GRUB_MACHINE_PCBIOS] (GRUB_SERIAL_PORT_NUM): Calculate using
+ `ARRAY_SIZE' macro.
+
+2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/file.c (grub_file_read): Check offset.
+ * fs/hfs.c (grub_hfs_read_file): Remove unnecessary offset check.
+ * fs/jfs.c (grub_jfs_read_file): Likewise.
+ * fs/ntfs.c (grub_ntfs_read): Likewise.
+ * fs/reiserfs.c (grub_reiserfs_read): Likewise.
+ * fs/minix.c (grub_minix_read_file): Correct offset check.
+ * fs/ufs.c (grub_ufs_read_file): Likewise.
+
+2009-08-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * term/i386/pc/console.c (bios_data_area): Cast
+ GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR explicitly.
+
+2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ 1-bit optimised blitters.
+
+ * include/grub/fbblit.h (grub_video_fbblit_replace_32bit_1bit): New
+ prototype.
+ (grub_video_fbblit_replace_24bit_1bit): Likewise.
+ (grub_video_fbblit_replace_16bit_1bit): Likewise.
+ (grub_video_fbblit_replace_8bit_1bit): Likewise.
+ (grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
+ (grub_video_fbblit_blend_XXX888_1bit): Likewise.
+ (grub_video_fbblit_blend_XXX565_1bit): Likewise.
+ * video/fb/fbblit.c (grub_video_fbblit_replace_32bit_1bit): New
+ function.
+ (grub_video_fbblit_replace_24bit_1bit): Likewise.
+ (grub_video_fbblit_replace_16bit_1bit): Likewise.
+ (grub_video_fbblit_replace_8bit_1bit): Likewise.
+ (grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
+ (grub_video_fbblit_blend_XXX888_1bit): Likewise.
+ (grub_video_fbblit_blend_XXX565_1bit): Likewise.
+ * video/fb/video_fb.c (common_blitter): Use 1-bit optimised blitters
+ when possible.
+ * video/video.c (grub_video_get_blit_format): Return
+ GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED if bpp = 1.
+
+2009-08-28 Colin Watson <cjwatson@ubuntu.com>
+
+ * normal/cmdline.c (grub_cmdline_get): Supply a format string as
+ the first argument to grub_printf.
+
+2009-08-28 Colin Watson <cjwatson@ubuntu.com>
+2009-08-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ Add `getkeystatus' terminal method. Add a new `keystatus' command
+ to query it.
+
+ * include/grub/term.h (GRUB_TERM_STATUS_SHIFT,
+ GRUB_TERM_STATUS_CTRL, GRUB_TERM_STATUS_ALT): Definitions for
+ modifier key bitmasks.
+ (struct grub_term_input): Add `getkeystatus' member.
+ (grub_getkeystatus): Add prototype.
+ * kern/term.c (grub_getkeystatus): New function.
+
+ * include/grub/i386/pc/memory.h
+ (GRUB_MEMORY_MACHINE_BIOS_DATA_AREA_ADDR): New macro.
+ (struct grub_machine_bios_data_area): Define necessary parts of BIOS
+ Data Area layout.
+ * term/i386/pc/console.c (grub_console_getkeystatus): New function.
+ (grub_console_term_input): Set `getkeystatus' member.
+ * term/usb_keyboard.c (grub_usb_hid): Macroify HID protocol
+ constants.
+ (grub_usb_keyboard_getreport): Likewise.
+ (grub_usb_keyboard_checkkey): Likewise.
+ (grub_usb_keyboard_getkeystatus): New function.
+ (grub_usb_keyboard_term): Set `getkeystatus' member.
+
+ * commands/keystatus.c: New file.
+ * conf/common.rmk (pkglib_MODULES): Add keystatus.mod.
+ (keystatus_mod_SOURCES): New variable.
+ (keystatus_mod_CFLAGS): Likewise.
+ (keystatus_mod_LDFLAGS): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add
+ commands/keystatus.c.
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+
+2009-08-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split befs.mod and afs.mod into *_be.mod and *.mod
+
+ * conf/common.rmk (grub_probe_SOURCES): Add afs_be.c and befs_be.c.
+ (grub_fstest_SOURCES): Likewise.
+ (pkglib_MODULES): Add afs_be.mod and befs_be.mod.
+ (afs_be_mod_SOURCES): New variable.
+ (afs_be_mod_CFLAGS): Likewise.
+ (afs_be_mod_LDFLAGS): Likewise.
+ (befs_be_mod_SOURCES): Likewise.
+ (befs_be_mod_CFLAGS): Likewise.
+ (befs_be_mod_LDFLAGS): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add afs_be.c and befs_be.c.
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ * fs/afs_be.c: New file.
+ * fs/befs_be.c: New file.
+ * fs/afs.c (GRUB_AFS_FSNAME_SUFFIX): New definition.
+ (GRUB_AFS_FSNAME): Use GRUB_AFS_FSNAME_SUFFIX.
+ (U16): Replaced with ...
+ (grub_afs_to_cpu16): ...this. All users updated.
+ (U32): Replaced with ...
+ (grub_afs_to_cpu32): ...this. All users updated.
+ (U64): Replaced with ...
+ (grub_afs_to_cpu64): ...this. All users updated.
+ (GRUB_AFS_BO_LITTLE_ENDIAN): Remove.
+ (GRUB_AFS_BO_BIG_ENDIAN): Likewise.
+ (grub_afs_validate_sblock): Check only one endianness.
+ (GRUB_MOD_INIT (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to ..
+ (GRUB_MOD_INIT (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this.
+ (GRUB_MOD_INIT (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to ..
+ (GRUB_MOD_INIT (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this.
+ (GRUB_MOD_FINI (befs)) [MODE_BIGENDIAN && MODE_BFS]: Rename to ..
+ (GRUB_MOD_FINI (befs_be)) [MODE_BIGENDIAN && MODE_BFS]: ... this.
+ (GRUB_MOD_FINI (afs)) [MODE_BIGENDIAN && !MODE_BFS]: Rename to ..
+ (GRUB_MOD_FINI (afs_be)) [MODE_BIGENDIAN && !MODE_BFS]: ... this.
+
+2009-08-26 Bean <bean123ch@gmail.com>
+
+ * fs/xfs.c (GRUB_XFS_INO_INOINAG): Replace 1L with 1LL to support
+ 64-bit number.
+ (GRUB_XFS_FSB_TO_BLOCK): Likewise.
+ (grub_xfs_inode_block): Change return type to grub_uint64_t.
+ (grub_xfs_read_inode): Change type of block to grub_uint64_t.
+
+2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ NetBSD memory map support.
+
+ * include/grub/i386/bsd.h (NETBSD_BTINFO_MEMMAP): New definition.
+ (grub_netbsd_btinfo_mmap_header): New structure.
+ (grub_netbsd_btinfo_mmap_entry): Likewise.
+ * loader/i386/bsd.c (grub_netbsd_boot): Pass memory map.
+
+2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable bsd.mod on coreboot.
+
+ * conf/i386-coreboot.rmk (pkglib_MODULES): Add bsd.mod.
+ (bsd_mod_SOURCES): New variable.
+ (bsd_mod_CFLAGS): Likewise.
+ (bsd_mod_LDFLAGS): Likewise.
+ (bsd_mod_ASFLAGS): Likewise.
+ * loader/i386/bsd.c [!GRUB_MACHINE_PCBIOS]: Fix includes.
+ (grub_bsd_get_device) [!GRUB_MACHINE_PCBIOS]: Set *biosdev to 0xff.
+
+2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Cleanup NetBSD root support.
+
+ * loader/i386/bsd.c (grub_netbsd_boot): Remove call to
+ grub_bsd_get_device.
+ Fix typo.
+
+2009-08-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/00_header.in: Move check for the video backend of
+ gfxterm from here ...
+ * util/grub-mkconfig.in: ... to here. Enable gfxterm if there's
+ a suitable video backend.
+
+2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix breakage in grub-setup.
+
+ * util/i386/pc/grub-setup.c (setup): Use "part_msdos" instead of
+ "msdos_partition_map".
+
+2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix breakage in normal/auth.c.
+
+ * normal/auth.c (grub_iswordseparator): New function.
+
+2009-08-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Authentication support.
+
+ * commands/password.c: New file.
+ * conf/common.rmk (pkglib_MODULES): Add password.mod.
+ (password_mod_SOURCES): New variable.
+ (password_mod_CFLAGS): Likewise.
+ (password_mod_LDFLAGS): Likewise.
+ (normal_mod_SOURCES): Add normal/auth.c.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add commands/password.c and
+ normal/auth.c.
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ * include/grub/auth.h: New file.
+ * include/grub/err.h (grub_err_t): New enum value
+ GRUB_ERR_ACCESS_DENIED.
+ * include/grub/menu.h (grub_menu_entry): New fields 'restricted' and
+ 'users'.
+ * include/grub/normal.h (grub_cmdline_get): New argument 'history'.
+ * normal/cmdline.c (grub_cmdline_get): New argument 'history'. All
+ users updated.
+ * normal/auth.c: New file.
+ * normal/main.c (grub_normal_add_menu_entry): Handle --users option.
+ (grub_cmdline_run): Don't allow to go to command line without
+ authentication.
+ * normal/menu.c (grub_menu_execute_entry): Handle restricted entries.
+ * normal/menu_entry.c (grub_menu_entry_run): Don't allow editing
+ menuentry without superuser rights.
+ * normal/menu_viewer.c (grub_menu_viewer_show_menu): Don't exit if
+ user isn't a superuser.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Save space by inlining misc.c functions.
+
+ * kern/misc.c (grub_iswordseparator): Made static.
+ * kern/misc.c (grub_strcat): Moved from here ...
+ * include/grub/misc.h (grub_strcat): ... here. Inlined.
+ * kern/misc.c (grub_strncat): Moved from here ...
+ * include/grub/misc.h (grub_strncat): ... here. Inlined.
+ * kern/misc.c (grub_strcasecmp): Moved from here ...
+ * include/grub/misc.h (grub_strcasecmp): ... here. Inlined.
+ * kern/misc.c (grub_strncasecmp): Moved from here ...
+ * include/grub/misc.h (grub_strncasecmp): ... here. Inlined.
+ * kern/misc.c (grub_isalpha): Moved from here ...
+ * include/grub/misc.h (grub_isalpha): ... here. Inlined.
+ * kern/misc.c (grub_isdigit): Moved from here ...
+ * include/grub/misc.h (grub_isdigit): ... here. Inlined.
+ * kern/misc.c (grub_isgraph): Moved from here ...
+ * include/grub/misc.h (grub_isgraph): ... here. Inlined.
+ * kern/misc.c (grub_tolower): Moved from here ...
+ * include/grub/misc.h (grub_tolower): ... here. Inlined.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * script/sh/function.c (grub_script_function_find): Cut error message
+ not to flood terminal.
+ * script/sh/lexer.c (grub_script_yylex): Remove command line length
+ limit.
+ * script/sh/script.c (grub_script_arg_add): Duplicate string.
+
+2009-08-24 Colin Watson <cjwatson@ubuntu.com>
+
+ * term/usb_keyboard.c (grub_usb_keyboard_getreport): Make
+ `report' grub_uint8_t *.
+ (grub_usb_keyboard_checkkey): Make `data' elements grub_uint8_t.
+ Use a 50-millisecond timeout rather than just repeating
+ grub_usb_keyboard_getreport 50 times.
+ (grub_usb_keyboard_getkey): Make `data' elements grub_uint8_t.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Rename *_partition_map to part_*
+
+ * partmap/acorn.c (grub_acorn_partition_map): Set name to 'part_acorn'.
+ * partmap/amiga.c (grub_amiga_partition_map): Set name to 'part_amiga'.
+ * partmap/apple.c (grub_apple_partition_map): Set name to 'part_apple'.
+ * partmap/gpt.c (grub_gpt_partition_map): Set name to 'part_gpt'.
+ All users updated.
+ * partmap/msdos.c (grub_msdos_partition_map): Set name to 'part_msdos'.
+ All users updated.
+ * partmap/sun.c (grub_sun_partition_map): Set name to 'part_sun'.
+ * util/grub-probe.c (probe_partmap): Don't transform partition name
+ to get module name.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix OpenBSD and NetBSD support.
+
+ * include/grub/i386/bsd.h (GRUB_BSD_TEMP_BUFFER): Change to resolve
+ memory address conflict.
+ (OPENBSD_MMAP_ACPI): New definition.
+ (OPENBSD_MMAP_NVS): Likewise.
+ * loader/i386/bsd.c (grub_openbsd_boot): Support OPENBSD_MMAP_ACPI
+ and OPENBSD_MMAP_NVS.
+ Add memory map terminator
+ Explicit cast when calling grub_unix_real_boot.
+ (grub_netbsd_boot): Explicit cast when calling grub_unix_real_boot.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Let user specify NetBSD root device.
+
+ * loader/i386/bsd.c (netbsd_root): New variable.
+ (netbsd_opts): New option 'root'.
+ (NETBSD_ROOT_ARG): New macro.
+ (grub_netbsd_boot): Use 'netbsd_root'.
+ (grub_bsd_unload): Free 'netbsd_root'.
+ (grub_cmd_netbsd): Fill 'netbsd_root'.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support for 64-bit NetBSD.
+
+ * loader/i386/bsd.c (grub_bsd_load_elf): Apply correct mask to entry
+ point when booting non-FreeBSD.
+
+2009-08-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support --no-smp and --no-acpi for NetBSD.
+
+ * include/grub/i386/bsd.h (NETBSD_AB_NOSMP): New definition.
+ (NETBSD_AB_NOACPI): Likewise.
+ * loader/i386/bsd.c (netbsd_opts): New entries no-smp and no-acpi.
+ (netbsd_flags): Add NETBSD_AB_NOSMP, NETBSD_AB_NOACPI.
+
+2009-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/hfsplus.c (grub_hfsplus_mount): Don't ignore grub_hfsplus_read_file
+ errors.
+ (grub_hfsplus_btree_iterate_node): Don't ignore grub_hfsplus_read_file
+ errors. Call grub_error when needed.
+
+2009-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/search.c (search_fs): Try searching without autoload first.
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Load
+ filesystem module explicitly for faster booting.
+
+2009-08-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Export GRUB_DISABLE_OS_PROBER.
+
+2009-08-23 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/30_os-prober.in: Disable os-prober if
+ `GRUB_DISABLE_OS_PROBER' was set to true.
+
+2009-08-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * partmap/pc.c: Rename to ...
+ * partmap/msdos.c: ... this. Update all users.
+ (grub_pc_partition_map): Rename to ...
+ (grub_msdos_partition_map): ... this. Update all users.
+
+ * parttool/pcpart.c: Rename to ...
+ * parttool/msdospart.c: ... this. Update all users.
+
+ * include/grub/pc_partition.h: Rename to ...
+ * include/grub/msdos_partition.h: ... this. Update all users.
+ (grub_pc_partition_bsd_entry): Rename to ...
+ (grub_msdos_partition_bsd_entry): ... this. Update all users.
+ (grub_pc_partition_disk_label): Rename to ...
+ (grub_msdos_partition_disk_label): ... this. Update all users.
+ (grub_pc_partition_entry): Rename to ...
+ (grub_msdos_partition_entry): ... this. Update all users.
+ (grub_pc_partition_mbr): Rename to ...
+ (grub_msdos_partition_mbr): ... this. Update all users.
+ (grub_pc_partition): Rename to ...
+ (grub_msdos_partition): ... this. Update all users.
+ (grub_pc_partition_is_empty): Rename to ...
+ (grub_msdos_partition_is_empty): ... this. Update all users.
+ (grub_pc_partition_is_extended): Rename to ...
+ (grub_msdos_partition_is_extended): ... this. Update all users.
+ (grub_pc_partition_is_bsd): Rename to ...
+ (grub_msdos_partition_is_bsd): ... this. Update all users.
+
+ * conf/common.rmk (amiga_mod_SOURCES, amiga_mod_CFLAGS)
+ (amiga_mod_LDFLAGS, apple_mod_SOURCES, apple_mod_CFLAGS)
+ (apple_mod_LDFLAGS, msdos_mod_SOURCES, msdos_mod_CFLAGS)
+ (msdos_mod_LDFLAGS, sun_mod_SOURCES, sun_mod_CFLAGS)
+ (sun_mod_LDFLAGS, acorn_mod_SOURCES, acorn_mod_CFLAGS)
+ (acorn_mod_LDFLAGS, gpt_mod_SOURCES, gpt_mod_CFLAGS)
+ (gpt_mod_LDFLAGS): Rename to ...
+ (part_amiga_mod_SOURCES, part_amiga_mod_CFLAGS, part_amiga_mod_LDFLAGS)
+ (part_apple_mod_SOURCES, part_apple_mod_CFLAGS, part_apple_mod_LDFLAGS)
+ (part_msdos_mod_SOURCES, part_msdos_mod_CFLAGS, part_msdos_mod_LDFLAGS)
+ (part_sun_mod_SOURCES, part_sun_mod_CFLAGS, part_sun_mod_LDFLAGS)
+ (part_acorn_mod_SOURCES, part_acorn_mod_CFLAGS, part_acorn_mod_LDFLAGS)
+ (part_gpt_mod_SOURCES, part_gpt_mod_CFLAGS)
+ (part_gpt_mod_LDFLAGS): ... this.
+ (pkglib_MODULES): Prefix partition modules with `part_'. Rename
+ `pcpart.mod' to `msdospart.mod'.
+ (pcpart_mod_SOURCES, pcpart_mod_CFLAGS, pcpart_mod_LDFLAGS): Rename
+ to ...
+ (msdospart_mod_SOURCES, msdospart_mod_CFLAGS)
+ (msdospart_mod_LDFLAGS): ... this.
+
+2009-08-23 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/bsd.c (freebsd_opts): Rewritten to use extcmd.
+ (openbsd_opts): Likewise.
+ (netbsd_opts): Likewise.
+ (freebsd_flags): Added 0 terminator.
+ (openbsd_flags): Likewise.
+ (netbsd_flags): Likewise.
+ (grub_bsd_parse_flags): Rewritten to use extcmd. All users updated.
+ (grub_cmd_freebsd): Transformed into extended command.
+ (grub_cmd_openbsd): Likewise.
+ (grub_cmd_netbsd): Likewise.
+ (cmd_freebsd): Changed type to grub_extcmd_t.
+ (cmd_openbsd): Likewise.
+ (cmd_netbsd): Likewise.
+ (GRUB_MOD_INIT (bsd)): Register grub_cmd_freebsd, grub_cmd_netbsd and
+ grub_cmd_openbsd as extended commands.
+ (GRUB_MOD_FINI (bsd)): Use grub_unregister_extcmd for cmd_freebsd,
+ cmd_netbsd and cmd_openbsd
+
+2009-08-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/xnu_uuid.c (transform): Use grub_memcpy instead of memcpy.
+
+2009-08-21 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in (install-local): When checking if a file is in the
+ build directory, use "test -e" to detect symlinks.
+
+ * Makefile.in (install-local): Remove all files in
+ $(DESTDIR)$(pkglibdir) before installing new files there.
+
+2009-08-18 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Use
+ grub-mkelfimage.
+
+2009-08-18 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in: Don't use gfxterm by default if not
+ explicitly specified by the user.
+
+2009-08-18 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/fbfill.h (struct grub_video_fbrender_target): Use
+ grub_uint8_t pointer for data.
+ * include/grub/fbutil.h (struct grub_video_fbblit_info):
+ Likewise.
+ * video/fb/fbutil.c: Remove unnecessary casts.
+
+2009-08-17 Michal Suchanek <hramrach@centrum.cz>
+
+ VBE cleanup.
+
+ * video/i386/pc/vbe.c (vbe_mode_in_use): Removed (duplicate).
+ (grub_vbe_set_video_mode): Save active mode info
+ only after setting the mode.
+ (grub_video_vbe_setup): Call 'grub_vbe_set_video_mode' with NULL as
+ second argument.
+
+2009-08-17 Michal Suchanek <hramrach@centrum.cz>
+
+ Rename variables for clarity.
+
+ * video/i386/pc/vbe.c (active_mode_info): Renamed to ...
+ (active_vbe_mode_info): ... this. All users updated.
+ (framebuffer): Rename 'active_mode' to 'active_vbe_mode'.
+ All users updated.
+ (initial_mode): Rename to ...
+ (initial_vbe_mode): ... this. All users updated.
+ (mode_in_use): Rename to ..
+ (vbe_mode_in_use): ... this. All users updated.
+ (mode_list): Rename to ..
+ (vbe_mode_list): ... this. All users updated.
+ (grub_vbe_set_video_mode): Rename 'mode' to 'vbe_mode', 'mode_info' to
+ 'vbe_mode_info' and 'old_mode' to 'old_vbe_mode'.
+ (grub_video_vbe_init): Rename 'rm_mode_list' to 'rm_vbe_mode_list' and
+ 'mode_list_size' to 'vbe_mode_list_size'.
+ (grub_video_vbe_setup): Rename 'mode_info' to 'vbe_mode_info',
+ 'best_mode_info' to 'best_vbe_mode_info' and
+ 'best_mode' to 'best_vbe_mode'
+
+2009-08-17 Michal Suchanek <hramrach@centrum.cz>
+
+ Remove duplicate grub_video_fb_get_video_ptr.
+
+ * include/grub/fbutil.h (get_data_ptr): Rename to ...
+ (grub_video_fb_get_video_ptr): ... this.
+ * include/grub/video_fb.h (grub_video_fb_get_video_ptr): Removed.
+ * video/fb/fbutil.c: Add comment about addressing.
+ (get_data_ptr): Rename to ...
+ (grub_video_fb_get_video_ptr): ... this. All users updated.
+ * video/fb/video_fb.c (grub_video_fb_get_video_ptr): Remove.
+
+2009-08-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * fs/fat.c (grub_fat_read_data): Remove `#if 0' braces around the
+ grub_dprintf() that was just added.
+
+2009-08-17 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (GRUB_ASSUME_LINUX_HAS_FB_SUPPORT)
+ (DEFAULT_VIDEO_MODE): Remove macros.
+ (grub_linux_boot): Remove assumption that Linux has FB support,
+ and use "text" as default video mode.
+
+2009-08-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/affs.c (grub_affs_read_symlink): Change leftover grub_printf into
+ grub_dprintf.
+ * fs/fat.c (grub_fat_read_data): Likewise.
+
+2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot.c (grub_multiboot): Don't pass filename to
+ payload.
+ (grub_module): Likewise.
+
+2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot.c (grub_multiboot_unload): Don't free mbi and
+ mbi->cmdline but free playground.
+
+2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Handle group offset on UFS1.
+
+ * fs/ufs.c (grub_ufs_sblock): New field 'cylg_mask'.
+ (grub_ufs_read_inode) [!MODE_UFS2]: handle cylg_offset and cylg_mask.
+
+2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Split ufs.mod into ufs1.mod and ufs2.mod.
+
+ * conf/common.rmk (grub_probe_SOURCES): Add fs/ufs2.c.
+ (grub_fstest_SOURCES): Likewise.
+ (pkglib_MODULES): Remove ufs.mod. Add ufs1.mod and ufs2.mod.
+ (ufs_mod_SOURCES): Remove.
+ (ufs_mod_CFLAGS): Likewise.
+ (ufs_mod_LDFLAGS): Likewise.
+ (ufs1_mod_SOURCES): New variable.
+ (ufs1_mod_CFLAGS): Likewise.
+ (ufs1_mod_LDFLAGS): Likewise.
+ (ufs2_mod_SOURCES): New variable.
+ (ufs2_mod_CFLAGS): Likewise.
+ (ufs2_mod_LDFLAGS): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add fs/ufs2.c.
+ * conf/i386-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES):
+ Likewise.
+ (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ (grub_setup_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64.rmk (grub_emu_SOURCES): Likewise.
+ (grub_setup_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (util/i386/efi/grub-mkimage.c_DEPENDENCIES):
+ Likewise.
+ * fs/ufs2.c: New file.
+ * fs/ufs.c: Separate UFS1 from UFS2 by using preprocessor.
+
+2009-08-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Framebuffer split.
+
+ * commands/i386/pc/vbetest.c (grub_cmd_vbetest): Restore video
+ subsystem at the end.
+ * conf/common.rmk (pkglib_MODULES): Add video_fb.mod.
+ (video_fb_mod_SOURCES): New variable.
+ (video_fb_mod_CFLAGS): Likewise.
+ (video_fb_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk (vbe_mod_SOURCES): Remove video/i386/pc/vbeblit.c,
+ video/i386/pc/vbefill.c and video/i386/pc/vbeutil.c.
+ * video/i386/pc/vbeblit.c: Moved from here ...
+ * video/fb/fbblit.c: ..here. Replaced 'vbe' with 'fb'.
+ * video/i386/pc/vbefill.c: Moved from here ...
+ * video/fb/fbfill.c: ..here. Replaced 'vbe' with 'fb'.
+ * video/i386/pc/vbeutil.c: Moved from here ...
+ * video/fb/fbutil.c: ..here. Replaced 'vbe' with 'fb'.
+ * include/grub/i386/pc/vbeblit.h: Moved from here ...
+ * include/grub/fbblit.h: ... here. Replaced 'vbe' with 'fb'.
+ * include/grub/i386/pc/vbefill.h: Moved from here ...
+ * include/grub/fbfill.h: ... here. Replaced 'vbe' with 'fb'.
+ * include/grub/i386/pc/vbeutil.h: Moved from here ...
+ * include/grub/fbutil.h: ... here. Replaced 'vbe' with 'fb'.
+ * include/grub/i386/pc/vbe.h: Moved framebuffer part ...
+ * include/grub/video_fb.h: ... here. Replaced 'vbe' with 'fb'.
+ * include/grub/video.h (GRUB_VIDEO_RENDER_TARGET_FRONT_BUFFER): Removed.
+ (GRUB_VIDEO_RENDER_TARGET_BACK_BUFFER): Likewise.
+ (grub_video_adapter): Added 'get_info_and_fini'.
+ (grub_video_get_info_and_fini): New prototype.
+ (grub_video_set_mode): make modestring const char *.
+ * loader/i386/linux.c (grub_linux_setup_video): Use
+ grub_video_get_info_and_fini.
+ (grub_linux_boot): Move modesetting just before booting.
+ * loader/i386/pc/xnu.c (grub_xnu_set_video): Use
+ grub_video_get_info_and_fini.
+ * video/i386/pc/vbe.c: Moved framebuffer part ...
+ * video/fb/video_fb.c: ... here. Replaced 'vbe' with 'fb'.
+ * video/i386/pc/vbe.c (grub_vbe_set_video_mode): Use
+ grub_video_fbstd_colors and grub_video_fb_set_palette.
+ (grub_video_vbe_init): Clear 'framebuffer' variable and use
+ grub_video_fb_init.
+ (grub_video_vbe_fini): Use grub_video_fb_fini.
+ (grub_video_vbe_setup): Use framebuffer.render_target instead of
+ render_target and use grub_video_fb_set_active_render_target and
+ grub_video_fb_set_palette.
+ (grub_video_vbe_set_palette): Use grub_video_fb_set_palette.
+ (grub_video_vbe_set_viewport): Use grub_video_fb_set_viewport.
+ (grub_video_vbe_adapter): Use framebuffer.
+ * video/video.c (grub_video_get_info_and_fini): New function.
+ (grub_video_set_mode): Make modestring const char *.
+ (GRUB_MOD_INIT(video_video)): Don't set variables to 0 since these
+ values are already initialised.
+
+2009-08-14 Pavel Roskin <proski@gnu.org>
+
+ * boot/i386/pc/cdboot.S: Use LOCAL for local labels. Eliminate
+ ABS and APPLE_CC.
+ * boot/i386/pc/diskboot.S: Likewise.
+ * boot/i386/pc/lnxboot.S: Likewise. Hardcode the number of code
+ sectors allow compilation on MacOSX.
+ * conf/i386-pc.rmk: Enable unconditional compilation of
+ lnxboot.img.
+
+2009-08-13 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in: Export GRUB_HIDDEN_TIMEOUT.
+ * util/grub.d/00_header.in: Enter interruptible sleep if
+ GRUB_HIDDEN_TIMEOUT is set.
+
+2009-08-13 Yves Blusseau <blusseau@zetam.org>
+
+ * include/grub/symbol.h: Add the LOCAL macro.
+ * boot/i386/pc/boot.S: Use the LOCAL macro for all labels
+ starting with "L_".
+
+2009-08-13 Pavel Roskin <proski@gnu.org>
+
+ * boot/i386/pc/boot.S: Remove ABS macro, it's not required by
+ any modern compilers we support.
+
+ * boot/i386/pc/boot.S: Remove all code dependent on APPLE_CC.
+ Use local labels starting with "L_" so that Apple assembler
+ knows they are local.
+
+2009-08-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/bsd.h (KERNEL_TYPE_NONE, KERNEL_TYPE_FREEBSD)
+ (KERNEL_TYPE_OPENBSD, KERNEL_TYPE_NETBSD): Convert to ...
+ (bsd_kernel_types): ... this enum.
+
+ * loader/i386/bsd.c (grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module)
+ (grub_cmd_freebsd_module_elf): Abort with "You need to load the
+ kernel first." when `kernel_type' is set to KERNEL_TYPE_NONE.
+
+ (grub_bsd_load_aout, grub_bsd_load, grub_cmd_freebsd_loadenv)
+ (grub_cmd_freebsd_module, grub_cmd_freebsd_module_elf)
+ (GRUB_MOD_INIT (bsd)): Fix capitalization in a few error
+ messages.
+
+2009-08-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub-dumpdevtree: Moved from here ...
+ * util/i386/efi/grub-dumpdevtree: ... to here.
+ (hexify): New function. Converts a string to its hex version.
+ Generate hex versions of "efi" and "device-properties" by calling
+ hexify() on the ASCII strings rather than by hardcoding numbers.
+
+2009-08-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * fs/jfs.c: Update copyright year.
+
+2009-08-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/00_header.in: Fix a comment.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub.d/10_windows.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+
+2009-08-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in: Allow the user to specify the used font
+ with GRUB_FONT.
+
+2009-08-08 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/powerpc/libgcc.h: Export __ashrdi3() if
+ available, xfs.mod needs it now.
+
+ * util/grub-mkconfig_lib.in (version_test_numeric): Don't use
+ the "g" modifier in sed when the intention is to strip something
+ once. This fixes comparison of kernels with multiple dashes.
+
+ * util/grub-mkconfig.in: Define datarootdir, datadir may depend
+ on it. Add missing space before closing bracket. Fix
+ misleading formatting.
+
+2009-08-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ * docs/grub.texi: Major overhaul. Remove all sections that are
+ specific to GRUB Legacy, or mostly composed of Legacy-specific
+ information.
+
+2009-08-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ * docs/version.texi: New file. Provides version information for
+ grub.texi.
+
+2009-08-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ * docs/grub.texi: Update CVS information to SVN.
+ Replace outdated "GRUB 2 will include" phrase with "GRUB 2 includes".
+
+2009-08-07 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in: Remove a wrong `fi'.
+
+2009-08-07 Felix Zielcke <fzielcke@z-51.de>
+
+ * fs/uuid.c (grub_jfs_superblock): New fields unused2 and uuid.
+ (grub_jfs_uuid): New function.
+ (grub_jfs_fs): Set uuid field to grub_jfs_uuid.
+
+2009-08-07 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig_lib.in (font_path): Move the functionality
+ of it to ...
+ * util/grub-mkconfig.in: ... here. Prefer unicode.pf2 and
+ unifont.pf2 over ascii.pf2. Export LANG=C in case ascii.pf2 gets used.
+
+2009-08-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/10_linux.in (test_numeric): Moved from here ...
+ * util/grub-mkconfig_lib.in (version_test_numeric): ... to here.
+ Update all users.
+
+ * util/grub.d/10_linux.in (test_gt): Strip any basename prefix,
+ not just "vmlinu[zx]".
+ Moved from here ...
+ * util/grub-mkconfig_lib.in (version_test_gt): ... to here. Update
+ all users.
+
+ * util/grub.d/10_linux.in (find_latest): Moved from here ...
+ * util/grub-mkconfig_lib.in (version_find_latest): ... to here. Update
+ all users.
+
+2009-08-07 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/grub.d/10_freebsd.in: Use an absolute device path for
+ `vfs.root.mountfrom'. Set `vfs.root.mountfrom.options=rw'.
+
+2009-08-06 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Fix
+ handling of multiple abstraction modules.
+
+2009-08-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix a bug resulting in black screen when loading Linux using a
+ packed video mode.
+
+ * kern/i386/pc/startup.S (grub_vbe_bios_getset_dac_palette_width): New
+ function.
+
+ * include/grub/i386/pc/vbe.h (GRUB_VBE_CAPABILITY_DACWIDTH): New macro.
+ (grub_vbe_bios_getset_dac_palette_width): New function.
+ (grub_vbe_bios_get_dac_palette_width)
+ (grub_vbe_bios_set_dac_palette_width): New macros (act as wrappers for
+ grub_vbe_bios_getset_dac_palette_width()).
+
+ * video/i386/pc/vbe.c (grub_vbe_probe): Use `GRUB_VBE_STATUS_OK' to
+ check for return status.
+ (grub_vbe_get_video_mode_info): When getting information for a packed
+ mode (<= 8 bpp), obtain DAC palette width using
+ grub_vbe_bios_getset_dac_palette_width(), and use that for initializing
+ {red,green,blue}_mark_size.
+
+2009-08-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * commands/search.c (options): Fix help output to match actual code.
+
+2009-08-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/hexdump.c (grub_cmd_hexdump): Use grub_disk_read instead
+ of homegrown code.
+
+2009-08-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/hostfs.c (grub_hostfs_dir): Don't use DT_DIR: It doesn't work
+ on XFS or ReiserFS.
+
+2009-08-01 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support Apple partition map with sector size different from 512 bytes.
+
+ * partmap/apple.c (grub_apple_header): New field 'blocksize'.
+ (apple_partition_map_iterate): Respect 'aheader.blocksize'
+ and 'apart.partmap_size'.
+
+2009-08-01 Vladimir Serbinenko <phcoder@gmail.com>
+2009-08-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix cpuid command.
+
+ * commands/i386/cpuid.c (options): New variable.
+ (grub_cmd_cpuid): Return real error.
+ (GRUB_MOD_INIT(cpuid)): Declare options.
+
+2009-07-31 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * partmap/pc.c (pc_partition_map_iterate): Check that boot flags are
+ valid.
+
+2009-07-31 Bean <bean123ch@gmail.com>
+
+ * fs/xfs.c (grub_xfs_sblock): Change unused5 field to log2_sect and
+ log2_inode.
+ (grub_fshelp_node): Move inode field to the end.
+ (grub_xfs_data): Remove inode field.
+ (grub_xfs_inode_block): Calculate inode size using sblock.
+ (grub_xfs_inode_offset): Likewise.
+ (grub_xfs_read_inode): Calculate inode size using sblock.
+ (grub_xfs_read_block): Replace XFS_INODE_EXTENTS with nrec.
+ (grub_xfs_iterate_dir): Calculate inode size using sblock.
+ (grub_xfs_mount): Use grub_zalloc instead of grub_malloc. Realloc data
+ to match inode size.
+ (grub_xfs_dir): goto mount_fail when mount fails, as data->diropen is
+ not accessible when data is null.
+ (grub_xfs_open): Likewise.
+
+2009-07-31 Bean <bean123ch@gmail.com>
+
+ * disk/lvm.c (grub_lvm_scan_device): Ignore extra copy of metadata.
+ Don't change pv->disk if it's already set.
+
+ * disk/raid.c (grub_raid_scan_device): Merge this function into ...
+ (grub_raid_register): ... here.
+ (grub_raid_rescan): Removed.
+
+ * include/grub/raid.h (grub_raid_rescan): Removed.
+
+ * util/grub-fstest.c: Remove include file <grub/raid.h>.
+ (fstest): Replace grub_raid_rescan with module fini function followed
+ by init function.
+
+ * util/grub-probe.c: Add include file <grub/raid.h>.
+ (probe_raid_level): New function.
+ (probe): Detect abstraction by walking the disk device, support two
+ level of abstraction (LVM on RAID) when detecting partition map.
+
+2009-07-31 Pavel Roskin <proski@gnu.org>
+
+ * disk/raid5_recover.c (grub_raid5_recover): Revert conversion
+ to grub_zalloc(), it was erroneous.
+ Reported by Bean <bean123ch@gmail.com>
+
+2009-07-30 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/pc/grub-setup.c (setup): Check that no partition is in
+ embedding zone, not only the first one.
+
+2009-07-29 Joe Auricchio <jauricchio@gmail.com>
+
+ * term/gfxterm.c (clear_char): New function.
+ (grub_virtual_screen_setup): Use clear_char.
+ (scroll_up): Likewise.
+ (grub_virtual_screen_cls): Likewise.
+
+2009-07-29 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/deviceiter.c (get_acceleraid_disk_name): New static
+ function.
+ (grub_util_iterate_devices): Handle Accelraid devices.
+ * util/hostdisk.c (convert_system_partition_to_system_disk): Likewise.
+
+2009-07-28 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): Use ',' rather than ';' as
+ separator for the suggested gfxpayload string (';' collides with the
+ parser and needs escaping).
+
+2009-07-28 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot_helper.S (grub_multiboot_backward_relocator):
+ Clear direction flag before jumping to OS.
+ (grub_multiboot2_real_boot): Likewise.
+
+2009-07-28 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/pc/grub-install: Fix parsing of --disk-module
+ option.
+
+2009-07-28 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/pc/grub-setup.c (setup): Fix 2 incorrect checks
+ when embedding.
+
+2009-07-26 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in (package_version): New variable.
+ Use it do display the version.
+
+2009-07-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * kern/file.c (grub_file_open): Revert to previous check with
+ grub_errno.
+
+2009-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/probe.c (GRUB_MOD_INIT (probe)): Remove "[--target=target]"
+ from help line. It's out of sync with code.
+
+2009-07-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/parser.c (grub_parser_execute): Fix a bug causing truncated
+ entries on failed boot.
+
+2009-07-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * kern/file.c (grub_file_open): Fix an error check.
+
+2009-07-24 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * util/i386/pc/grub-setup.c (setup): Fix segmentation fault when
+ partition map couldn't be identified.
+
+2009-07-23 Pavel Roskin <proski@gnu.org>
+
+ * commands/xnu_uuid.c (transform): Use GRUB_CPU_WORDS_BIGENDIAN
+ instead of WORDS_BIGENDIAN. Use grub_le_to_cpu32(), so that the
+ case of little endian words becomes just an optimization.
+ Respect const modifier.
+ (md5_final): Use code that doesn't depend on endianness.
+
+ * include/grub/misc.h (ALIGN_UP): Cast align to the type of addr
+ to avoid loss of upper bits if align is unsigned and shorter
+ than addr.
+
+2009-07-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ UUID support for UFS
+
+ * fs/ufs.c (grub_ufs_sblock): Add uuidhi and uuidlow.
+ (grub_ufs_uuid): New function.
+ (grub_ufs_fs): add .uuid
+
+2009-07-21 Pavel Roskin <proski@gnu.org>
+
+ * kern/dl.c (grub_dl_check_header): Make static.
+
+2009-07-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/30_os-prober.in: Remove unused CHAINROOT. Don't
+ add drivemap for Vista. It breaks Windows 7.
+
+2009-07-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * fs/ufs.c (grub_ufs_sblock): Fix offset of mtime2 which was off by
+ 128 bytes
+
+2009-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add BFS support
+
+ * conf/common.rmk (grub_probe_SOURCES): Add fs/befs.c.
+ (grub_fstest_SOURCES): Likewise.
+ (pkglib_MODULES): Add befs.mod.
+ (befs_mod_SOURCES): New variable.
+ (befs_mod_CFLAGS): Likewise.
+ (befs_mod_LDFLAGS): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ (grub_setup_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (grub_setup_SOURCES): Likewise.
+ * fs/befs.c: New file.
+ * fs/afs.c (GRUB_AFS_FSNAME): New declaration.
+ (GRUB_AFS_SBLOCK_SECTOR): Likewise.
+ (GRUB_AFS_SBLOCK_MAGIC1) [MODE_BFS]: New conditional declaration.
+ (GRUB_AFS_BTREE_MAGIC) [MODE_BFS]: Likewise
+ (B_KEY_INDEX_ALIGN): New declaration.
+ (B_KEY_INDEX_OFFSET): Use B_KEY_INDEX_ALIGN.
+ (grub_afs_bnode) [MODE_BFS]: Make key_count and key_size 16-bit
+ (grub_afs_btree) [MODE_BFS]: New conditional declaration.
+ (grub_afs_sblock) [MODE_BFS]: Remove link_count.
+ (grub_afs_validate_sblock) [MODE_BFS]: Support BFS
+ (grub_afs_mount) [MODE_BFS]: Likewise.
+ (grub_afs_dir) [MODE_BFS]: Divide mtime by 65536 and not 1000000.
+ (grub_afs_fs): Use GRUB_AFS_FSNAME
+ (GRUB_MOD_INIT (afs)) [MODE_BFS]: Rename to ...
+ (GRUB_MOD_INIT (befs)) [MODE_BFS]: ... this
+ (GRUB_MOD_FINI (afs)) [MODE_BFS]: Rename to ...
+ (GRUB_MOD_FINI (befs)) [MODE_BFS]: ... this
+
+2009-07-19 Yves BLUSSEAU <yves.grub-devel@zetam.org>
+
+ * util/getroot.c (find_root_device): Add support for MacOSX.
+ * util/hostdisk.c: Likewise.
+
+2009-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * font/font.c (find_glyph): Check whether a font is present to avoid
+ segmentation fault.
+
+2009-07-20 Joe Auricchio <jauricchio@gmail.com>
+
+ * term/gfxterm.c (grub_virtual_screen_setup): Clear virtual_screen.
+
+2009-07-20 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Trim excessively wordy excuses.
+
+2009-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add symlink, mtime and label support to AtheFS.
+
+ * fs/afs.c (grub_afs_sblock): Declare `name' as char.
+ (grub_afs_iterate_dir): Handle symlinks.
+ (grub_afs_open): Use grub_afs_read_symlink.
+ (grub_afs_dir): Likewise.
+ Pass mtime.
+ (grub_afs_label): New function.
+ (grub_afs_fs): Add grub_afs_label.
+ (grub_afs_read_symlink): New function.
+
+2009-07-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix AtheFS support.
+
+ * fs/afs.c: Fix comments style.
+ (grub_afs_blockrun): Declare as packed.
+ (grub_afs_datastream): Likewise.
+ (grub_afs_bnode): Likewise.
+ (grub_afs_btree): Likewise.
+ (grub_afs_sblock): Likewise.
+ Declare `name' as char.
+ (grub_afs_inode): Declare as packed.
+ Change void *vnode to grub_uint32_t unused.
+ (grub_afs_iterate_dir): Check that key_size is positive.
+ (grub_afs_mount): Don't read superblock twice.
+ (grub_afs_dir): Don't free node in case of error,
+ grub_fshelp_find_file already handles this.
+ (grub_afs_open): Likewise.
+
+2009-07-19 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in: Remove LIBLZO and enable_lzo.
+ * conf/i386-pc.rmk: Remove lzo support.
+ * configure.ac: Remove checks for lzo, don't define ENABLE_LZMA.
+ * include/grub/i386/pc/kernel.h: Define ENABLE_LZMA. Remove lzo
+ support.
+ * kern/i386/pc/lzo1x.S: Remove.
+ * kern/i386/pc/startup.S: Remove lzo support.
+ * util/i386/pc/grub-mkimage.c: Likewise.
+
+2009-07-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/usbms.c (grub_usbms_transfer): Fix double semicolon.
+ * fs/xfs.c (grub_xfs_dir): Likewise.
+ * fs/afs.c (grub_afs_dir): Likewise.
+ * fs/iso9660.c (grub_iso9660_iterate_dir): Likewise.
+ (grub_iso9660_open): Likewise.
+ * fs/jfs.c (grub_jfs_open): Likewise.
+ * fs/ext2.c (grub_ext2_dir): Likewise.
+ * include/grub/macho.h (grub_macho_fat_arch): Likewise.
+ * script/sh/lexer.c (grub_script_yylex): Likewise.
+
+2009-07-16 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Never add "-c" to CFLAGS.
+
+ * configure.ac: Fix incorrect comparison for grub_cv_cc_efiemu.
+
+ * configure.ac: Fix wrong use of grub_cv_cc_no_red_zone where
+ grub_cv_cc_efiemu should be used.
+
+ * configure.ac: Typo fixes.
+
+ * kern/mm.c (grub_zalloc): New function.
+ (grub_debug_zalloc): Likewise.
+ * include/grub/mm.h: Declare grub_zalloc() and
+ grub_debug_zalloc().
+ * util/misc.c (grub_zalloc): New function.
+ * bus/usb/uhci.c (grub_uhci_pci_iter): Use grub_zalloc()
+ instead of grub_malloc(), remove unneeded initializations.
+ * bus/usb/usbhub.c (grub_usb_hub_add_dev): Likewise.
+ * commands/extcmd.c (grub_extcmd_dispatcher): Likewise.
+ * commands/parttool.c (grub_cmd_parttool): Likewise.
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Likewise.
+ * disk/raid5_recover.c (grub_raid5_recover): Likewise.
+ * disk/raid6_recover.c (grub_raid6_recover): Likewise.
+ * disk/usbms.c (grub_usbms_finddevs): Likewise.
+ * efiemu/mm.c (grub_efiemu_request_memalign): Likewise.
+ * efiemu/pnvram.c (grub_efiemu_pnvram): Likewise.
+ (grub_cmd_efiemu_pnvram): Likewise.
+ * fs/i386/pc/pxe.c (grub_pxefs_open): Likewise.
+ * fs/iso9660.c (grub_iso9660_mount): Likewise.
+ (grub_iso9660_iterate_dir): Likewise.
+ * fs/jfs.c (grub_jfs_opendir): Likewise.
+ * fs/ntfs.c (list_file): Likewise.
+ (grub_ntfs_mount): Likewise.
+ * kern/disk.c (grub_disk_open): Likewise.
+ * kern/dl.c (grub_dl_load_core): Likewise.
+ * kern/elf.c (grub_elf_file): Likewise.
+ * kern/env.c (grub_env_context_open): Likewise.
+ (grub_env_set): Likewise.
+ (grub_env_set_data_slot): Likewise.
+ * kern/file.c (grub_file_open): Likewise.
+ * kern/fs.c (grub_fs_blocklist_open): Likewise.
+ * loader/i386/multiboot.c (grub_module): Likewise.
+ * loader/xnu.c (grub_xnu_create_key): Likewise.
+ (grub_xnu_create_value): Likewise.
+ * normal/main.c (grub_normal_add_menu_entry): Likewise.
+ (read_config_file): Likewise.
+ * normal/menu_entry.c (make_screen): Likewise.
+ * partmap/sun.c (sun_partition_map_iterate): Likewise.
+ * script/sh/lexer.c (grub_script_lexer_init): Likewise.
+ * script/sh/script.c (grub_script_parse): Likewise.
+ * video/bitmap.c (grub_video_bitmap_create): Likewise.
+ * video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
+ * video/readers/png.c (grub_png_output_byte): Likewise.
+ (grub_video_reader_png): Likewise.
+
+2009-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Enable all targets that can be built by default
+
+ * configure.ac: enable efiemu runtime, grub-emu, grub-emu-usb,
+ grub-mkfont and grub-fstest if they can be built
+
+2009-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix hang and segmentation fault in grub-emu-usb
+
+ * disk/scsi.c (grub_scsi_open): return err and not grub_errno
+ * util/usb.c (grub_libusb_devices): likewise
+ (grub_libusb_init): rename to ...
+ (GRUB_MOD_INIT (libusb)):...this
+ (grub_libusb_fini): rename to ..
+ (GRUB_MOD_FINI (libusb)):...this
+ * disk/usbms.c (grub_usbms_transfer): fix retry logic
+ * include/grub/disk.h (grub_raid_init): removed, it's useless
+ (grub_raid_fini): likewise
+ (grub_lvm_init): likewise
+ (grub_lvm_fini): likewise
+ * util/grub-emu.c (main): don't call grub_libusb_init, it's done
+ by grub_init_all
+
+2009-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix libusb
+
+ * Makefile.in (LIBUSB): new macro
+ * genmk.rb (Utility/print_tail): new method
+ (Utility/rule): use intermediary variable #{prefix}_OBJECTS
+ (top level): call util.print_tail at the end.
+
+2009-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Make FreeBSD accept zpool.cache
+
+ * loader/i386/bsd.c (grub_freebsd_add_meta_module): spoof filename if
+ type is /boot/zfs/zpool.cache
+
+2009-07-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix 64-bit efiemu
+
+ * include/grub/efiemu/efiemu.h (grub_efiemu_configuration_table64_t):
+ correct wrong typedef
+ * efiemu/prepare.c (SUFFIX (grub_efiemu_prepare)): minor style fixes
+
+2009-07-15 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/disk.h (struct grub_disk_dev): Use enum for id.
+ * kern/disk.c (struct grub_disk_cache): Likewise.
+
+ * commands/probe.c (options): Typo fix.
+
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_BPB_END):
+ Increase to 0x5a to accommodate FAT32. Adjust other offsets
+ accordingly.
+ Original patch by Yves Blusseau <yves.grub-devel@zetam.org>
+
+ * boot/i386/pc/boot.S (general_error_string): Add DOS newline at
+ the end of "Error" to make the message more readable.
+
+ * boot/i386/pc/boot.S (kernel_segment): Remove.
+ (copy_buffer): Use GRUB_BOOT_MACHINE_KERNEL_ADDR in segment 0
+ for destination.
+
+ * boot/i386/pc/boot.S (boot_version): Remove.
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_VER_MAJ):
+ Remove.
+
+ * include/grub/i386/pc/boot.h: Sort all offsets.
+ (GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Remove, it's unused.
+ (GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Likewise.
+ * boot/i386/pc/boot.S: Assert location of every offset listed in
+ include/grub/i386/pc/boot.h.
+
+2009-07-13 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/i386/coreboot/machine.h: Rename
+ GRUB_MACHINE_LINUXBIOS to GRUB_MACHINE_COREBOOT.
+ * loader/multiboot_loader.c (grub_cmd_multiboot_loader): Allow
+ multiboot 1 for GRUB_MACHINE_COREBOOT and GRUB_MACHINE_QEMU.
+
+ * kern/dl.c: Force native word size to suppress warnings when
+ compiling grub-emu.
+
+ * kern/device.c (grub_device_iterate): Change struct part_ent to
+ hold the name, not a pointer to it. Use one grub_malloc() per
+ partition, not two. Free partition_name if grub_malloc() fails.
+ Set ents to NULL only before grub_partition_iterate() is called.
+
+2009-07-11 Bean <bean123ch@gmail.com>
+
+ * kern/ieee1275/openfw.c (grub_children_iterate): Fix size of
+ childname.
+
+2009-07-10 Bean <bean123ch@gmail.com>
+2009-07-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/ieee1275/openfw.c (grub_children_iterate)
+ (grub_devalias_iterate): Fix size evaluation for property or path
+ strings, which was broken since r2132.
+
+2009-07-07 Pavel Roskin <proski@gnu.org>
+
+ * commands/search.c (search_file): Merge into ...
+ (search_fs): ... this. Accept search type as argument.
+ (grub_cmd_search): Pass search type to search_fs().
+
+ * include/grub/util/console.h: New file.
+ * util/console.c: Use it instead of grub/machine/console.h.
+ * util/grub-emu.c: Likewise.
+
+ * lib/arg.c (find_long_option): Remove.
+ (find_long): Add `len' argument, make `s' const char *.
+ (grub_arg_parse): Parse long options in place, not in a
+ temporary buffer.
+
+2009-07-06 Pavel Roskin <proski@gnu.org>
+
+ * commands/search.c (search_fs): Fix potential NULL pointer
+ dereference.
+
+ * commands/search.c (search_fs): Replace QUID macro with quid_fn
+ function pointer.
+
+2009-07-06 Daniel Mierswa <impulze@impulze.org>
+
+ * commands/search.c (search_fs): Use grub_strcasecmp() for UUID
+ comparison.
+
+2009-07-05 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/i386/linux.h (struct linux_kernel_params):
+ Restore padding3, it's still needed.
+
+ * util/grub.d/10_freebsd.in: Fix spelling of `device.hints' on
+ FreeBSD.
+ * util/osdetect.lua: Likewise.
+
+2009-07-05 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (lua_mode_SOURCES): Add script/lua/lstrlib.c.
+
+ * script/lua/grub_lib.c (grub_lua_run): Check input parameter.
+ (grub_lua_getenv): Likewise.
+ (grub_lua_setenv): Likewise.
+ (save_errno): New function.
+ (push_result): Likewise.
+ (grub_lua_enum_device): Likewise.
+ (grub_lua_enum_file): Likewise.
+ (grub_lua_file_open): Likewise.
+ (grub_lua_file_close): Likewise.
+ (grub_lua_file_seek): Likewise.
+ (grub_lua_file_read): Likewise.
+ (grub_lua_file_getline): Likewise.
+ (grub_lua_file_getsize): Likewise.
+ (grub_lua_file_getpos): Likewise.
+ (grub_lua_file_eof): Likewise.
+ (grub_lua_file_exist): Likewise.
+ (grub_lua_add_menu): Likewise.
+
+ * script/lua/grub_lua.h (isupper): New inline function.
+ (islower): Likewise.
+ (ispunct): Likewise.
+ (isxdigit): Likewise.
+ (strcspn): Change to normal function.
+ (strpbkr): New function declaration.
+ (memchr): Likewise.
+
+ * script/lua/grub_main.c (scan_str): New function.
+ (strcspn): Likewise.
+ (strpbrk): Likewise.
+ (memchr): Likewise.
+
+ * script/lua/linit.c (lualibs): Enable the string library.
+
+ * util/osdetect.lua: New file.
+
+2009-07-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/linux.h (struct linux_kernel_params): Add
+ `capabilities' member.
+
+2009-07-02 Pavel Roskin <proski@gnu.org>
+
+ * genparttoollist.sh: Add missing newline at the end.
+
+2009-07-01 Pavel Roskin <proski@gnu.org>
+
+ * kern/x86_64/efi/callwrap.S: Add missing newline at the end.
+
+ * util/hostdisk.c (open_device): Remove `const' from
+ `sysctl_size', as sysctlbyname() can change it (in this case it
+ doesn't actually happen).
+
+ * include/grub/types.h: Define GRUB_LONG_MAX and GRUB_LONG_MIN
+ using signed long int constants.
+
+ * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): Make `p'
+ constant to avoid a warning on FreeBSD.
+
+ * util/hostdisk.c (device_is_wholedisk): Compile only on systems
+ where it's needed.
+
+ * Makefile.in: Install include/grub/machine symlink.
+
+ * Makefile.in: When installing symlinks, use "cp -fR", which
+ works on FreeBSD and MacOSX.
+ From Yves Blusseau <cl7m42e02@sneakemail.com>
+
+ * kern/dl.c (grub_dl_resolve_symbol): Make static.
+ * include/grub/dl.h: Remove grub_dl_resolve_symbol().
+
+ * util/misc.c: Move grub_reboot() and grub_halt() ...
+ * util/grub-emu.c: ... here. Make main_env static.
+ * include/grub/util/misc.h: Remove main_env.
+
+ * kern/mm.c: Use correct format to print size_t.
+
+ * include/grub/elf.h: Define Elf_Sword and Elf_Xword.
+ * kern/i386/dl.c: Use ELF symbols without "32" or "64".
+ * kern/powerpc/dl.c: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * kern/x86_64/dl.c: Likewise.
+
+2009-07-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix grub-emu build on sparc64-ieee1275.
+
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Synchronize with ...
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): ... this.
+
+2009-07-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/misc.c: Include `<setjmp.h>' and `<grub/machine/machine.h>'.
+ (grub_reboot, grub_halt): New functions.
+
+ * util/i386/pc/misc.c: Delete. Update all users.
+ * util/sparc64/ieee1275/misc.c: Likewise.
+ * util/powerpc/ieee1275/misc.c: Likewise.
+
+2009-07-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386.rmk (setjmp_mod_SOURCES)
+ (setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Move to ...
+ * conf/common.rmk (setjmp_mod_SOURCES)
+ (setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): ... here, and modify
+ to use $(target_cpu).
+ * conf/x86_64-efi.rmk (setjmp_mod_SOURCES)
+ (setjmp_mod_ASFLAGS, setjmp_mod_LDFLAGS): Remove.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Use
+ $(target_cpu) for kern/$(target_cpu)/dl.c.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Use
+ $(target_cpu) for kern/$(target_cpu)/dl.c and for
+ kern/$(target_cpu)/cache.S.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+
+2009-07-01 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/linux.h (linux_kernel_params): Change `mmap_size'
+ type to `grub_uint8_t', and adjust `padding9' accordingly.
+
+2009-06-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/linux.h (GRUB_VIDEO_TYPE_TEXT): New macro.
+
+ * loader/i386/linux.c [__i386__] (grub_linux_boot): Simplify inline
+ assembly in final jump, using register constraints.
+
+ (grub_linux_boot): For text mode, initialize `have_vga' using
+ GRUB_VIDEO_TYPE_TEXT rather than 0 (this changes its value to 1).
+
+ Initialize `video_cursor_x' and `video_cursor_y' as late as possible,
+ right before the final jump.
+
+ Set `video_mode' to 0x3.
+
+ Document initialization of `video_page', `video_mode' and
+ `video_ega_bx'.
+
+2009-06-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/linux.h (GRUB_LINUX_FLAG_QUIET): New macro.
+ * loader/i386/linux.c (grub_cmd_linux): Recognize "quiet" option,
+ and set GRUB_LINUX_FLAG_QUIET appropriately.
+
+2009-06-29 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix build on Debian / sparc.
+
+ * configure.ac: Recognize `sparc' target_cpu (as sparc64).
+
+2009-06-28 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/qemu/mmap.c (grub_machine_mmap_iterate): Use cast to
+ fix a warning.
+
+ * util/grub.d/10_linux.in: Match SUSE style initrd names.
+
+2009-06-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (grub_linux_boot): Fix uninitialized use of
+ `err'.
+
+2009-06-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ Revert r2338.
+
+ * loader/i386/linux.c (grub_cmd_linux): Don't call grub_error when
+ file can't be opened. grub_file_open() is already supposed to set
+ grub_errno / grub_errmsg appropriately.
+ * loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
+
+2009-06-27 Pavel Roskin <proski@gnu.org>
+2009-06-27 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/dl.h: Include grub/elf.h.
+ (struct grub_dl): Add symtab field.
+ * kern/dl.c [GRUB_MACHINE_QEMU]: Define
+ GRUB_MODULES_MACHINE_READONLY.
+ (grub_dl_resolve_symbols): Populate mod->symtab, making a copy
+ of the header for read-only modules.
+ (grub_dl_unload): Free mod->symtab for read-only modules.
+ * kern/i386/dl.c: Use mod->symtab.
+ * kern/powerpc/dl.c: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * kern/x86_64/dl.c: Likewise.
+
+ * conf/i386-qemu.rmk: New file.
+ * kern/i386/qemu/startup.S: Likewise.
+ * kern/i386/qemu/mmap.c: Likewise.
+ * boot/i386/qemu/boot.S: Likewise.
+ * include/grub/i386/qemu/time.h: Likewise.
+ * include/grub/i386/qemu/serial.h: Likewise.
+ * include/grub/i386/qemu/kernel.h: Likewise.
+ * include/grub/i386/qemu/console.h: Likewise.
+ * include/grub/i386/qemu/boot.h: Likewise.
+ * include/grub/i386/qemu/init.h: Likewise.
+ * include/grub/i386/qemu/machine.h: Likewise.
+ * include/grub/i386/qemu/loader.h: Likewise.
+ * include/grub/i386/qemu/memory.h: Likewise.
+
+ * conf/i386-coreboot.rmk (GRUB_BOOT_MACHINE_LINK_ADDR)
+ (GRUB_KERNEL_MACHINE_LINK_ADDR): New variables.
+ [qemu] (pkglib_IMAGES): Add `boot.img'.
+ [qemu] (boot_img_SOURCES, boot_img_ASFLAGS, boot_img_LDFLAGS)
+ [qemu] (boot_img_FORMAT): New variables.
+ [qemu] (bin_UTILITIES): Add `grub-mkimage'.
+ [qemu] (grub_mkimage_SOURCES, grub_mkimage_CFLAGS): New variables.
+ [qemu] (kernel_img_SOURCES, kernel_img_HEADERS, kernel_img_CFLAGS)
+ [qemu] (kernel_img_ASFLAGS, kernel_img_LDFLAGS)
+ [qemu] (kernel_img_FORMAT): New variables.
+
+ * configure.ac: Recognise `i386-qemu'.
+
+ * util/i386/pc/grub-mkimage.c (compress_kernel): Add dummy variant
+ (for no compression).
+ [GRUB_MACHINE_QEMU] (generate_image): Misc adjustments to produce
+ a valid i386 ROM image. Make `GRUB_KERNEL_MACHINE_COMPRESSED_SIZE',
+ `GRUB_KERNEL_MACHINE_INSTALL_DOS_PART' and
+ `GRUB_KERNEL_MACHINE_INSTALL_BSD_PART' optional features (with
+ ifdefs).
+
+2009-06-27 Pavel Roskin <proski@gnu.org>
+
+ * efiemu/prepare.c: Eliminate TYPE macro, it makes code hard to
+ read.
+ * efiemu/prepare32.c: Likewise.
+ * efiemu/prepare64.c: Likewise.
+
+2009-06-26 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/types.h: Define GRUB_TARGET_WORDSIZE.
+ * include/grub/elf.h: Define symbols without "32" or "64" based
+ on GRUB_TARGET_WORDSIZE.
+ * include/grub/multiboot2.h: Use GRUB_TARGET_WORDSIZE.
+ * efiemu/loadcore32.c: Redefine GRUB_TARGET_WORDSIZE, remove own
+ ELF definitions.
+ * efiemu/loadcore64.c: Likewise.
+ * loader/i386/bsd32.c: Likewise.
+ * loader/i386/bsd64.c: Likewise.
+ * kern/dl.c: Remove own ELF definitions.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+
+2009-06-23 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/i386/pc/startup.S (real_to_prot): Access `gdtdesc' using
+ segment 0x0 unconditionally, because the reference generated by
+ GAS is an absolute address.
+
+2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/kernel.h: Include `<grub/machine/machine.h>'.
+ [! GRUB_MACHINE_IEEE1275]: Set `GRUB_MOD_ALIGN' to 0x1.
+
+2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * commands/search.c (grub_cmd_search): Macroify hardcoded args[]
+ indexes. Check for -f explicitly.
+ (search_file): Improve error message.
+ (GRUB_MOD_INIT(search)): Add missing `-n' to help output.
+
+2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): Rename to ...
+ (GRUB_KERNEL_MACHINE_LINK_ADDR): ... this. Update all users.
+
+2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/misc.S'.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+
+ * kern/i386/pc/startup.S (grub_stop): Remove function.
+ * kern/i386/ieee1275/startup.S: Likewise.
+ * kern/i386/coreboot/startup.S: Likewise.
+ * kern/i386/misc.S (grub_stop): New function.
+
+2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * kern/i386/pc/startup.S (real_to_prot): Move from here ...
+ * kern/i386/realmode.S (real_to_prot): ... to here.
+
+2009-06-22 Robert Millan <rmh.grub@aybabtu.com>
+
+ * conf/i386-ieee1275.rmk (pkglib_PROGRAMS): Replace `kernel.elf'
+ with `kernel.img'.
+ (kernel_elf_SOURCES): Rename to ...
+ (kernel_img_SOURCES): ... this.
+ (kernel_elf_HEADERS): Rename to ...
+ (kernel_img_HEADERS): ... this. Update all users.
+ (kernel_elf_ASFLAGS): Rename to ...
+ (kernel_img_ASFLAGS): ... this.
+ (kernel_elf_CFLAGS): Rename to ...
+ (kernel_img_CFLAGS): ... this.
+ (kernel_elf_LDFLAGS): Rename to ...
+ (kernel_img_LDFLAGS): ... this.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+
+ * util/elf/grub-mkimage.c (add_segments): Replace "kernel.elf"
+ with "kernel.img".
+
+2009-06-21 Pavel Roskin <proski@gnu.org>
+
+ * loader/powerpc/ieee1275/linux.c (offset_phdr): Fix prototypes
+ to match nested functions.
+ * loader/sparc64/ieee1275/linux.c: Likewise.
+
+ * conf/i386-ieee1275.rmk: Define kernel_elf_ASFLAGS.
+
+2009-06-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ * configure.ac: Enable `END_SYMBOL' / `BSS_START_SYMBOL' test on
+ all i386 platforms.
+
+2009-06-21 Robert Millan <rmh.grub@aybabtu.com>
+
+ Fix asm file handling on ELF, and remove workarounds.
+
+ * genmk.rb (class Programs): Detect assembly files, and set ASFLAGS
+ and -DASM_FILE=1 appropriately (copied from `class Images' stanza).
+ * kern/i386/ieee1275/startup.S (ASM_FILE): Remove macro.
+ * kern/i386/coreboot/startup.S (ASM_FILE): Likewise.
+
+2009-06-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Load BSD ELF modules
+
+ * conf/i386-pc.rmk (bsd_mod_SOURCES): Add loader/i386/bsd32.c
+ and loader/i386/bsd64.c
+ * include/grub/i386/bsd.h (FREEBSD_MODTYPE_MODULE): Remove
+ (FREEBSD_MODTYPE_ELF_MODULE): New definition
+ (FREEBSD_MODTYPE_ELF_MODULE_OBJ): Likewise
+ (grub_freebsd_load_elfmodule32): New declaration
+ (grub_freebsd_load_elfmoduleobj64): Likewise
+ (grub_freebsd_load_elf_meta32): Likewise
+ (grub_freebsd_load_elf_meta64): Likewise
+ (grub_freebsd_add_meta): Likewise
+ (grub_freebsd_add_meta_module): Likewise
+ * loader/i386/bsd.c (grub_freebsd_add_meta): Make global
+ (grub_freebsd_add_meta_module): Likewise and move module-specific
+ parts to grub_cmd_freebsd and grub_cmd_freebsd_module
+ (grub_cmd_freebsd): Add elf-kernel specific parts
+ based on grub_freebsd_add_meta_module
+ (grub_cmd_freebsd_module): Add type parsing moved from
+ grub_freebsd_add_meta_module
+ (grub_cmd_freebsd_module_elf): New function
+ (cmd_freebsd_module_elf): New variable
+ (GRUB_MOD_INIT): Register freebsd_module_elf
+ * loader/i386/bsd32.c: New file
+ * loader/i386/bsd64.c: Likewise
+ * loader/i386/bsdXX.c: Likewise
+ * kern/elf.c (grub_elf32_load): Let hook decide which pheaders to load
+ (grub_elf64_load): Likewise
+ * include/grub/elfload.h (grub_elf32_load_hook_t): New parameter do_load
+ All users updated
+ (grub_elf64_load_hook_t): Likewise
+
+2009-06-21 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub-mkconfig.in (GRUB_DISABLE_LINUX_RECOVERY): Export
+ variable.
+ * util/grub.d/10_linux.in: If GRUB_DISABLE_LINUX_RECOVERY is true,
+ don't write a menu entry for recovery mode.
+
+2009-06-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-mkimage.c (main): Oops, free `output' only
+ after it's no longer needed.
+
+2009-06-20 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/loader.h (grub_linux_prot_size)
+ (grub_linux_tmp_addr, grub_linux_real_addr)
+ (grub_linux_is_bzimage, grub_linux16_boot): Declare only on
+ GRUB_MACHINE_PCBIOS.
+ * util/i386/pc/grub-mkimage.c (compress_kernel): Move
+ common grub_util_info() call to ...
+ (generate_image): ... here.
+ Fix use of uninitialized memory, comparison of signed with
+ unsigned integers and memory leak.
+ Remove bogus module address message.
+
+2009-06-20 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/mdraid_linux.c (GRUB_MOD_FINI): use grub_raid_unregister and not
+ grub_raid_register
+ * disk/dmraid_nvidia.c (GRUB_MOD_FINI): likewise
+
+2009-06-19 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Remove stray AC_MSG_CHECKING.
+
+2009-06-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * disk/scsi.c (grub_scsi_open): use continue instead of big if
+
+2009-06-18 Pavel Roskin <proski@gnu.org>
+
+ * conf/common.rmk: Add fs_file.mod.
+ * disk/fs_file.c: New file.
+ * include/grub/disk.h (enum grub_disk_dev_id): Add
+ GRUB_DISK_DEVICE_FILE_ID.
+
+2009-06-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix build with Apple's toolchain. Part 2
+
+ * aclocal.m4 (grub_PROG_TARGET_CC): add missing prototype for main and
+ a fake start
+
+2009-06-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix build with Apple's toolchain. Part 1
+
+ * commands/i386/pc/drivemap_int13h.S: use assembly-time constants
+ for long calls
+ * configure.ac: remove a leftover AC_MSG_RESULT
+ (CFLAGS): don't add -Wl,--defsym,___main=0x8100 when building with
+ Apple's toolchain
+
+2009-06-18 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix warnings
+
+ * fs/ntfscomp.c (decomp_get16): initialize c1 and c2
+ (decomp_block): initialize ch
+ use grub_memcpy instead of memcpy
+
+2009-06-17 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/i386/coreboot/console.h: Don't use the i386-pc
+ version, use declarations needed to use vga_text as the startup
+ console.
+
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Remove
+ term/i386/pc/at_keyboard.c, it doesn't need to be compiled into
+ the kernel.
+ * kern/i386/coreboot/init.c: Don't call grub_at_keyboard_init()
+ and grub_at_keyboard_fini(), it's done on module load and
+ unload.
+
+2009-06-17 Felix Zielcke <fzielcke@z-51.de>
+
+ * loader/i386/linux.c (grub_cmd_linux): Set grub_error if the
+ file can't be found.
+ * loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
+
+2009-06-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix newline handling
+
+ * include/grub/script_sh.h (grub_lexer_param): new field was_newline
+ * script/sh/lexer.c (grub_script_lexer_init): initialize was_newline
+ (grub_script_yylex): don't segfault on unterminated script
+ newline terminates command and variable
+
+2009-06-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ avoid double grub_adjust_range call. Bug reported by David Simner
+
+ * kern/disk.c (grub_disk_write): change to raw disk access before
+ calling disk_read
+
+2009-06-17 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/elf/grub-mkimage.c (usage): Prefix each option line with two
+ spaces, for the benefit of help2man.
+ * util/i386/efi/grub-mkimage.c (usage): Likewise.
+
+2009-06-16 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/halt.c: Include grub/machine/init.h.
+ * kern/i386/reboot.c: Include grub/cpu/reboot.h.
+
+2009-06-16 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/30_os-prober.in: Use ${root} in the generated
+ drivemap menuentry.
+
+2009-06-16 James Jarvis <James.Jarvis@ed.ac.uk>
+
+ * commands/help.c GRUB_MOD_INIT(echo): Fix the help output of
+ `echo' command.
+
+2009-06-16 Pavel Roskin <proski@gnu.org>
+
+ * boot/i386/pc/boot.S: Remove root_drive. Assert offset of
+ boot_drive_check by using GRUB_BOOT_MACHINE_DRIVE_CHECK. Don't
+ save %dx, we only need %dl and we never change it.
+ * boot/i386/pc/cdboot.S: Don't set the root drive.
+ * boot/i386/pc/pxeboot.S: Likewise.
+ * include/grub/i386/pc/boot.h: Remove
+ GRUB_BOOT_MACHINE_ROOT_DRIVE, adjust
+ GRUB_BOOT_MACHINE_DRIVE_CHECK.
+ * include/grub/i386/pc/kernel.h: Remove grub_root_drive.
+ * kern/i386/pc/init.c (make_install_device): Remove references
+ to grub_root_drive.
+ * kern/i386/pc/startup.S: Likewise.
+ * util/i386/pc/grub-setup.c (setup): Don't set root_drive.
+
+2009-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ xnu_uuid command
+
+ * commands/xnu_uuid.c: new file
+ * conf/common.rmk (pkglib_MODULES): add xnu_uuid.mod
+ (xnu_uuid_mod_SOURCES): new variable
+ (xnu_uuid_mod_CFLAGS): likewise
+ (xnu_uuid_mod_LDFLAGS): likewise
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+ * conf/sparc64-ieee1275.rmk: likewise
+ * util/grub.d/30_os-prober.in: use UUID for Mac OS X/Darwin
+
+2009-06-16 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Avoid '==' in test command, it's not portable.
+
+2009-06-16 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Probe command
+
+ * commands/probe.c: new file
+ * conf/common.rmk (pkglib_MODULES): add probe.mod
+ (probe_mod_SOURCES): new variable
+ (probe_mod_CFLAGS): likewise
+ (probe_mod_LDFLAGS): likewise
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/probe.c
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+ * conf/sparc64-ieee1275.rmk: likewise
+
+2009-06-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix handling of string like \"hello\" and "a
+ b"
+
+ * script/sh/lexer.c (check_textstate): accept GRUB_PARSER_STATE_ESC
+ (grub_script_yylex): fix parsing of quoting, escaping and newline
+
+2009-06-13 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * loader/i386/multiboot.c (grub_multiboot_get_bootdev): fix partition
+ handling
+
+2009-06-13 Jun Inoue <jun.lambda@gmail.com>
+
+ * util/grub-mkconfig.in: Fix parsing of --output option.
+
+2009-06-12 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in (pkgdata_SRCDIR): Remove. genmodsrc.sh and
+ genmk.rb don't need to be generated or installed.
+
+2009-06-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * commands/i386/pc/drivemap_int13h.S: add more comments
+
+2009-06-11 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in (uninstall): Uninstall manuals.
+
+ * Makefile.in: Rename lib_DATA to lib_SCRIPTS, move it from
+ PKGLIB to SCRIPTS. This fixes installation of grub-mkconfig_lib
+ and update-grub_lib in two places.
+ * conf/common.rmk: Rename lib_DATA to lib_SCRIPTS.
+
+ * disk/usbms.c (grub_usbms_transfer): Initialize `err' to fix
+ a compiler warning.
+
+ * loader/i386/bsd.c (grub_freebsd_boot): Rename `entry' to
+ `entry_lo' to fix variable shadowing.
+
+2009-06-11 Christian Franke <franke@computer.org>
+
+ * kern/misc.c (__enable_execute_stack): Add missing return type
+ to prevent gcc warning.
+
+2009-06-11 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-ieee1275.rmk (COMMON_LDFLAGS): Remove `-static -lgcc'.
+
+2009-06-11 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in: Don't rely on any scripts being executable.
+ Always use $(SHELL) to run shell scripts.
+
+ * configure.ac: Always define ___main if using -nostdlib. This
+ fixes tests on Cygwin.
+
+2009-06-11 Giuseppe Caizzone <acaizzo@gmail.com>
+
+ UDF fix
+
+ * fs/udf.c (grub_udf_read_block): handle the fact that ad->length
+ is in bytes and not in blocks
+
+2009-06-11 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/halt.c (grub_halt): Make `i' unsigned to fix a
+ warning.
+
+2009-06-11 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/30_os-prober.in: Fix a comment. Source
+ ${libdir}/grub/grub-mkconfig_lib. Use prepare_grub_to_access_device
+ to set the root device. Place drivemap command in the generated
+ chain entry.
+
+2009-06-11 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Remove host_m32. Issues with 64-bit utilities
+ have long been resolved.
+
+2009-06-11 Colin Watson <cjwatson@ubuntu.com>
+
+ * util/grub.d/10_linux.in: Capitalise "Linux".
+
+ * util/grub-pe2elf.c (usage): Fix references to grub-editenv.
+
+2009-06-11 Pavel Roskin <proski@gnu.org>
+
+ * kern/efi/efi.c (grub_exit): Add infinite loop at the end to
+ fix a gcc warning and ensure that the function won't ever exit.
+
+ * kern/i386/ieee1275/init.c: Add missing prototype for
+ grub_stop_floppy().
+
+ * loader/ieee1275/multiboot2.c [__i386__]: Include
+ grub/cpu/multiboot.h.
+
+ * term/i386/pc/serial.c (serial_translate_key_sequence): Avoid
+ casts to short - they are not portable and cause warnings. Fix
+ use of uninitialized values in input_buf. Use ARRAY_SIZE.
+
+2009-06-11 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Drivemap fixes
+
+ * commands/i386/pc/drivemap.c (grub_get_root_biosnumber_drivemap):
+ new function
+ (grub_get_root_biosnumber_saved): new variable
+ (GRUB_MOD_INIT): register grub_get_root_biosnumber_drivemap
+ (GRUB_MOD_FINI): unregister grub_get_root_biosnumber_drivemap
+ * commands/i386/pc/drivemap_int13h.S (grub_drivemap_handler): restore
+ %dx after the call if necessary
+ * conf/common.rmk (pkglib_MODULES): remove boot.mod
+ (boot_mod_SOURCES): remove
+ (boot_mod_CFLAGS): remove
+ (boot_mod_LDFLAGS): remove
+ * conf/i386-coreboot.rmk (pkglib_MODULES): add boot.mod
+ (boot_mod_SOURCES): new variable
+ (boot_mod_CFLAGS): likewise
+ (boot_mod_LDFLAGS): likewise
+ * conf/i386-efi.rmk: likewise
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+ * conf/sparc64-ieee1275.rmk: likewise
+ * conf/x86_64-efi.rmk: likewise
+ * include/grub/i386/pc/biosnum.h: new file
+ * lib/i386/pc/biosnum.c: likewise
+ * loader/i386/bsd.c (grub_bsd_get_device): use grub_get_root_biosnumber
+ * loader/i386/multiboot.c (grub_multiboot_get_bootdev): likewise
+ * loader/i386/pc/chainloader.c (grub_chainloader_cmd): likewise
+
+2009-06-10 Pavel Roskin <proski@gnu.org>
+
+ * io/gzio.c (test_header): Don't reuse one buffer for all data.
+ Use separate variables. Read only the file size at the end, but
+ not the checksum that we don't use.
+
+ * kern/file.c (grub_file_read): Use void pointer for the buffer.
+ Adjust all callers.
+
+ * kern/ieee1275/openfw.c: Remove libc includes.
+ * kern/ieee1275/cmain.c: Likewise.
+ * include/grub/ieee1275/ieee1275.h: Likewise.
+
+ * kern/i386/coreboot/init.c: Include grub/cpu/tsc.h to fix
+ compiler warnings.
+
+2009-06-10 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in: Remove all trailing whitespace.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * docs/grub.texi: Likewise.
+ * docs/texinfo.tex: Likewise.
+ * disk/fs_uuid.c: Likewise.
+ * disk/lvm.c: Likewise.
+ * disk/scsi.c: Likewise.
+ * disk/ata.c: Likewise.
+ * disk/ieee1275/ofdisk.c: Likewise.
+ * disk/i386/pc/biosdisk.c: Likewise.
+ * disk/host.c: Likewise.
+ * disk/raid.c: Likewise.
+ * disk/efi/efidisk.c: Likewise.
+ * disk/usbms.c: Likewise.
+ * disk/memdisk.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * kern/powerpc/dl.c: Likewise.
+ * kern/device.c: Likewise.
+ * kern/dl.c: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * kern/ieee1275/ieee1275.c: Likewise.
+ * kern/term.c: Likewise.
+ * kern/fs.c: Likewise.
+ * kern/i386/dl.c: Likewise.
+ * kern/i386/pc/startup.S: Likewise.
+ * kern/i386/pc/init.c: Likewise.
+ * kern/i386/pc/mmap.c: Likewise.
+ * kern/i386/pc/lzo1x.S: Likewise.
+ * kern/i386/ieee1275/init.c: Likewise.
+ * kern/i386/realmode.S: Likewise.
+ * kern/i386/tsc.c: Likewise.
+ * kern/partition.c: Likewise.
+ * kern/corecmd.c: Likewise.
+ * kern/file.c: Likewise.
+ * kern/efi/efi.c: Likewise.
+ * kern/efi/init.c: Likewise.
+ * kern/efi/mm.c: Likewise.
+ * kern/main.c: Likewise.
+ * kern/err.c: Likewise.
+ * kern/env.c: Likewise.
+ * kern/disk.c: Likewise.
+ * kern/generic/millisleep.c: Likewise.
+ * kern/generic/rtc_get_time_ms.c: Likewise.
+ * kern/misc.c: Likewise.
+ * kern/parser.c: Likewise.
+ * genmk.rb: Likewise.
+ * configure.ac: Likewise.
+ * boot/i386/pc/diskboot.S: Likewise.
+ * boot/i386/pc/pxeboot.S: Likewise.
+ * boot/i386/pc/boot.S: Likewise.
+ * boot/i386/pc/lnxboot.S: Likewise.
+ * boot/i386/pc/cdboot.S: Likewise.
+ * parttool/pcpart.c: Likewise.
+ * video/readers/tga.c: Likewise.
+ * video/video.c: Likewise.
+ * video/bitmap.c: Likewise.
+ * lib/envblk.c: Likewise.
+ * lib/i386/setjmp.S: Likewise.
+ * fs/xfs.c: Likewise.
+ * fs/afs.c: Likewise.
+ * fs/fat.c: Likewise.
+ * fs/ntfs.c: Likewise.
+ * fs/udf.c: Likewise.
+ * fs/affs.c: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/fshelp.c: Likewise.
+ * fs/ext2.c: Likewise.
+ * fs/jfs.c: Likewise.
+ * fs/reiserfs.c: Likewise.
+ * fs/hfsplus.c: Likewise.
+ * fs/minix.c: Likewise.
+ * fs/cpio.c: Likewise.
+ * fs/sfs.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * efiemu/prepare.c: Likewise.
+ * efiemu/loadcore_common.c: Likewise.
+ * efiemu/runtime/efiemu.sh: Likewise.
+ * efiemu/runtime/efiemu.S: Likewise.
+ * efiemu/runtime/efiemu.c: Likewise.
+ * efiemu/pnvram.c: Likewise.
+ * efiemu/main.c: Likewise.
+ * efiemu/i386/pc/cfgtables.c: Likewise.
+ * efiemu/i386/loadcore64.c: Likewise.
+ * efiemu/i386/loadcore32.c: Likewise.
+ * efiemu/loadcore.c: Likewise.
+ * efiemu/symbols.c: Likewise.
+ * efiemu/mm.c: Likewise.
+ * include/grub/autoefi.h: Likewise.
+ * include/grub/datetime.h: Likewise.
+ * include/grub/term.h: Likewise.
+ * include/grub/hfs.h: Likewise.
+ * include/grub/lvm.h: Likewise.
+ * include/grub/i386/tsc.h: Likewise.
+ * include/grub/i386/linux.h: Likewise.
+ * include/grub/i386/xnu.h: Likewise.
+ * include/grub/i386/efiemu.h: Likewise.
+ * include/grub/i386/pc/biosdisk.h: Likewise.
+ * include/grub/i386/pc/memory.h: Likewise.
+ * include/grub/i386/pc/vbe.h: Likewise.
+ * include/grub/parttool.h: Likewise.
+ * include/grub/video.h: Likewise.
+ * include/grub/memory.h: Likewise.
+ * include/grub/fs.h: Likewise.
+ * include/grub/partition.h: Likewise.
+ * include/grub/xnu.h: Likewise.
+ * include/grub/efi/api.h: Likewise.
+ * include/grub/efi/pe32.h: Likewise.
+ * include/grub/efi/memory.h: Likewise.
+ * include/grub/multiboot.h: Likewise.
+ * include/grub/usbdesc.h: Likewise.
+ * include/grub/multiboot2.h: Likewise.
+ * include/grub/acpi.h: Likewise.
+ * include/grub/efiemu/efiemu.h: Likewise.
+ * include/grub/disk.h: Likewise.
+ * include/grub/ieee1275/ieee1275.h: Likewise.
+ * include/grub/net.h: Likewise.
+ * include/grub/machoload.h: Likewise.
+ * include/grub/macho.h: Likewise.
+ * include/multiboot.h: Likewise.
+ * genmoddep.awk: Likewise.
+ * normal/main.c: Likewise.
+ * normal/menu_entry.c: Likewise.
+ * normal/menu_viewer.c: Likewise.
+ * normal/completion.c: Likewise.
+ * normal/cmdline.c: Likewise.
+ * normal/misc.c: Likewise.
+ * normal/datetime.c: Likewise.
+ * bus/usb/usbtrans.c: Likewise.
+ * bus/usb/ohci.c: Likewise.
+ * bus/usb/uhci.c: Likewise.
+ * bus/usb/usb.c: Likewise.
+ * mmap/efi/mmap.c: Likewise.
+ * mmap/i386/pc/mmap_helper.S: Likewise.
+ * mmap/i386/pc/mmap.c: Likewise.
+ * mmap/i386/mmap.c: Likewise.
+ * mmap/i386/uppermem.c: Likewise.
+ * mmap/mmap.c: Likewise.
+ * commands/acpi.c: Likewise.
+ * commands/echo.c: Likewise.
+ * commands/blocklist.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/usbtest.c: Likewise.
+ * commands/boot.c: Likewise.
+ * commands/parttool.c: Likewise.
+ * commands/search.c: Likewise.
+ * commands/cat.c: Likewise.
+ * commands/i386/pc/play.c: Likewise.
+ * commands/i386/pc/drivemap.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/i386/pc/acpi.c: Likewise.
+ * commands/i386/pc/vbetest.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/test.c: Likewise.
+ * commands/efi/acpi.c: Likewise.
+ * commands/gptsync.c: Likewise.
+ * commands/help.c: Likewise.
+ * partmap/amiga.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * partmap/acorn.c: Likewise.
+ * partmap/pc.c: Likewise.
+ * partmap/sun.c: Likewise.
+ * partmap/gpt.c: Likewise.
+ * script/sh/lexer.c: Likewise.
+ * script/sh/function.c: Likewise.
+ * font/font.c: Likewise.
+ * font/font_cmd.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * loader/efi/chainloader.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * loader/macho.c: Likewise.
+ * loader/i386/multiboot.c: Likewise.
+ * loader/i386/linux.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/i386/pc/multiboot2.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/pc/xnu.c: Likewise.
+ * loader/i386/bsd_trampoline.S: Likewise.
+ * loader/i386/efi/linux.c: Likewise.
+ * loader/i386/multiboot_elfxx.c: Likewise.
+ * loader/i386/bsd_helper.S: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/i386/linux_trampoline.S: Likewise.
+ * loader/i386/xnu_helper.S: Likewise.
+ * loader/i386/xnu.c: Likewise.
+ * loader/i386/bsd_pagetable.c: Likewise.
+ * loader/i386/multiboot_helper.S: Likewise.
+ * loader/xnu.c: Likewise.
+ * loader/xnu_resume.c: Likewise.
+ * io/gzio.c: Likewise.
+ * term/efi/console.c: Likewise.
+ * term/terminfo.c: Likewise.
+ * term/ieee1275/ofconsole.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+ * term/usb_keyboard.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * aclocal.m4: Likewise.
+ * util/lvm.c: Likewise.
+ * util/grub.d/30_os-prober.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/console.c: Likewise.
+ * util/grub-macho2img.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/hostfs.c: Likewise.
+ * util/i386/pc/grub-mkimage.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+ * util/grub-mkconfig.in: Likewise.
+ * util/raid.c: Likewise.
+ * util/resolve.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/grub-emu.c: Likewise.
+ * util/getroot.c: Likewise.
+ * util/hostdisk.c: Likewise.
+ * util/usb.c: Likewise.
+ * util/grub-editenv.c: Likewise.
+ * util/misc.c: Likewise.
+
+2009-06-10 Felix Zielcke <fzielcke@z-51.de>
+
+ * gendistlist.sh (EXTRA_DISTFILES): Add `genhandlerlist.sh' and
+ `genparttoollist.sh'.
+ (DISTDIRS): Add `efiemu', `mmap', `parttool' and `script'.
+ Add `*.sh' to the list find searches for and change `mdate.sh'
+ to `mdate-sh'.
+
+2009-06-10 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/multiboot2.h: Provide compatibility defines for
+ multiboot2.h.
+ * include/multiboot2.h: Include stdint.h only if needed, using
+ angle brackets.
+ * loader/i386/pc/multiboot2.c: Include multiboot2.h after
+ grub/multiboot2.h.
+ * loader/ieee1275/multiboot2.c: Likewise.
+ * loader/multiboot2.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+
+ * configure.ac: Use -nostdlib when probing for the target. It
+ should not be required to have libc for the target.
+
+ * configure.ac: Remove checks for __bswapsi2 and __bswapdi2,
+ they fail without libc headers for the target.
+ * include/grub/powerpc/libgcc.h: Use weak attribute for all
+ exports.
+ * include/grub/sparc64/libgcc.h: Likewise. Don't use
+ preprocessor conditionals.
+
+ * conf/common.rmk: Compile tar.mod from tar.c, not cpio.c. The
+ build system doesn't need to be aware of the tar.c internals.
+
+2009-06-09 Michel Hermier <michel.hermier@gmail.com>
+
+ * fs/i386/pc/pxe.c (grub_pxefs_read): Fix returned values.
+
+2009-06-09 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/deviceiter.c (grub_util_iterate_devices): Increase number of
+ disk limit to 26 for IDE, Virtio, Xen and SCSI.
+
+2009-06-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/pc/grub-install.in: Change the error message if UUIDs
+ aren't available if ata.mod gets used.
+
+2009-06-09 Oliver Henshaw <oliver.henshaw@gmail.com>
+
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Link struct only after
+ initialising controller.
+ * bus/usb/uhci.c (grub_uhci_pci_iter): Likewise.
+
+2009-06-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/pc/grub-install.in: Add a parameter --disk-module
+ to choose between ata and biosdisk module on i386-pc.
+
+2009-06-08 Oliver Henshaw <oliver.henshaw@gmail.com>
+
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Define the Class,
+ Subclass and Programming Interface fields in terms of the 3 byte
+ Class Code register.
+ * bus/usb/uhci.c (grub_uhci_pci_iter): Likewise.
+
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Check that programming
+ interface is OHCI. Add grub_dprintf for symmetry with
+ bus/usb/uhci.c.
+ * bus/usb/uhci.c (grub_uhci_pci_iter): Check that programming
+ interface is UHCI. Add interf variable for programming
+ interface. Print interface with class/subclass.
+
+ * bus/usb/ohci.c: Set interf with correct field.
+
+ * bus/usb/uhci.c: Remove unneeded doubled lines.
+ * bus/usb/ohci.c: Likewise. Change interf to grub_uint32_t.
+ Remove whitespace inside comment.
+
+2009-06-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): When processing `vga=', use
+ as fallback an equivalent option without depth.
+
+2009-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Not fail if unable to retrieve C/H/S on LBA disks
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_open): behave gracefully
+ if unable to retrieve C/H/S on LBA disks
+
+2009-06-08 Pavel Roskin <proski@gnu.org>
+
+ * fs/hfs.c (grub_hfs_find_dir): Use union to avoid a warning
+ about aliasing.
+
+2009-06-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (uninstall): Remove all $lib_DATA files.
+
+2009-06-08 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Bugfix: install on partitionless device
+
+ * util/hostdisk.c (grub_util_biosdisk_get_grub_dev): check if os_dev
+ is a whole disk
+
+2009-06-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (uninstall): Remove all $include_DATA files.
+
+2009-06-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * commands/true.c: New file. Implement the true and false commands.
+ * conf/common.rmk.c (pkglib_MODULES): Add `true.mod'.
+ (true_mod_SOURCES): New variable.
+ (true_mod_CFLAGS): Likewise.
+ (true_mod_LDFLAGS): Likewise.
+
+2009-06-05 Colin D Bennett <colin@gibibit.com>
+
+ Optimized font character lookup using binary search instead of linear
+ search. Fonts now are required to have the character index ordered by
+ code point.
+
+ * font/font.c (load_font_index): Verify that fonts have ordered
+ character indices.
+ (find_glyph): Use binary search instead of linear search to find a
+ character in a font.
+
+2009-06-05 Michael Scherer <misc@mandriva.org>
+
+ * fs/hfsplus.c (grub_hfsplus_mount): Determine if the filesystem
+ uses case sensitive btree.
+ (grub_hfsplus_iterate_dir): Use GRUB_FSHELP_CASE_INSENSITIVE
+ only for case insensitive filesystems.
+
+2009-06-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/i386-pc.rmk (efiemu_mod_CFLAGS): remove -Werror -Wall
+ * conf/common.rmk (search_mod_CFLAGS): likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * kern/i386/pc/startup.S [APPLE_CC]: block of nops to
+ compensate a compiler bug
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * include/grub/term.h (GRUB_TERM_BACKSPACE): explicitly define as 8
+ instead of '\b'
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Definitions for creating asm symbols with Apple's CC
+
+ * include/grub/symbol.h [APPLE_CC] (FUNCTION): new macro
+ [APPLE_CC] (VARIABLE): likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Disable lnxboot.img when compiled
+ with Apple's CC
+
+ * conf/i386-pc.rmk (pkglib_IMAGES): remove lnxboot.img
+ pkglib_IMAGES [! TARGET_APPLE_CC] (pkglib_IMAGES): add lnxboot.img
+ * boot/i386/pc/lnxboot.S [APPLE_CC]: define an #error
+ [! APPLE_CC] (CODE_LENG): skip
+ [! APPLE_CC] (setup_sects): likewise
+ [! APPLE_CC]: skip filling
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Address in trampolines based on 32-bit registers when compiled
+ with Apple's CC
+
+ * loader/i386/xnu_helper.S [APPLE_CC]: use 32-bit registers
+ for addresses
+ * loader/i386/linux_trampoline.S [APPLE_CC]: likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid aliases when compiling with Apple's CC for PCBIOS machine
+
+ * kern/misc.c [APPLE_CC] (memcpy): new function
+ [APPLE_CC] (memmove): likewise
+ [APPLE_CC && !GRUB_UTIL] (grub_err_printf): likewise
+ (memcpy): define alias conditionally on !APPLE_CC
+ (memset): likewise
+ (abort): likewise
+ * include/grub/misc.h (memove): don't define when both GRUB_UTIL and
+ APPLE_CC are defined
+ * include/grub/list.h [APPLE_CC] (grub_assert_fail): new function
+ (grub_assert_fail): make prototype conditional
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use grub-macho2img when compiling with Apple's CC for PCBIOS machine
+
+ * conf/common.rmk (bin_UTILITIES): add (on false on condition)
+ grub-macho2img
+ (CLEANFILES): add grub-macho2img
+ (grub_macho2img_SOURCES): new variable
+ * kern/i386/pc/startup.S (bss_start): new variable
+ (bss_end): likewise
+ * genmk.rb: use grub-macho2img for *.img when compiled with Apple's CC
+ * util/grub-macho2img.c: new file
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use objconv when compiling with Apple's CC
+
+ * conf/i386-pc.rmk (efiemu32.o): use OBJCONV if defined
+ (efiemu64.o): likewise
+ (efiemu64_c.o): omit -mcmodel=large and add -DAPPLE_CC=1
+ when compiling with Apple's CC
+ (efiemu64_s.o): likewise
+ * configure.ac: check for objconv when compiling with Apple's CC
+ * genmk.rb: use objconv for modules when compiled with Apple's CC
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Define segment as well as section when compiling with
+ Apple's CC
+
+ * efiemu/runtime/efiemu.c (PHYSICAL_ATTRIBUTE): new definition
+ (efiemu_set_virtual_address_map): declare with PHYSICAL_ATTRIBUTE
+ (efiemu_convert_pointer): likewise
+ (efiemu_set_virtual_address_map): likewise
+ (efiemu_convert_pointer): likewise
+ (efiemu_getcrc32): likewise
+ (init_crc32_table): likewise
+ (reflect): likewise
+ * include/grub/dl.h (GRUB_MOD_NAME): define segment with Apple's CC
+ (GRUB_MOD_DEP): likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Allow a compilation without -mcmodel=large
+
+ * kern/efi/mm.c (grub_efi_allocate_pages): don't allocate >4GiB
+ when compiled without -mcmodel=large
+ (filter_memory_map): remove memory post 4 GiB when compiled
+ without -mcmodel=large
+ * configure.ac: fail gracefully and add -DMCMODEL_SMALL=1 to
+ TARGET_CFLAGS when -mcmodel=large isn't supported
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove nested functions in efiemu core
+
+ * efiemu/runtime/efiemu.c (reflect): make static instead of nested
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid clobbering %ebx/%rbx in inline assembly with Apple's CC
+
+ * efiemu/runtime/efiemu.c (write_cmos): use %cl instead of %bl as
+ temporary storage
+ * include/grub/i386/tsc.h (grub_get_tsc): restore %rbx/%ebx when
+ using Apple's CC
+ (grub_cpu_is_tsc_supported): likewise
+ * loader/i386/xnu.c (guessfsb): restore %rbx/%ebx in inline assembly
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Absolute addressing through constant with Apple's cc
+
+ * kern/i386/pc/startup.S: Define necessary constants
+ and address through it when using ABS with Apple's CC
+ * boot/i386/pc/diskboot.S: likewise
+ * boot/i386/pc/boot.S: likewise
+ * boot/i386/pc/lnxboot.S: likewise
+ * boot/i386/pc/cdboot.S: likewise
+ * mmap/i386/pc/mmap_helper.S: likewise
+ * commands/i386/pc/drivemap_int13h.S: likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Check if compiler is apple cc
+
+ * Makefile.in (ASFLAGS): new variable
+ (TARGET_ASFLAGS): likewise
+ (TARGET_MODULE_FORMAT): likewise
+ (TARGET_APPLE_CC): likewise
+ (OBJCONV): likewise
+ (TARGET_IMG_CFLAGS): likewise
+ (TARGET_CPPFLAGS): add includedir
+ * configure.ac: call grub_apple_cc and grub_apple_target_cc
+ (TARGET_IMG_LDFLAGS): Add -Wl,-Ttext,. All users updated
+ Check for linker script only if compiler isn't Apple's CC
+ (TARGET_MODULE_FORMAT): set
+ (TARGET_APPLE_CC): likewise
+ (TARGET_ASFLAGS): likewise
+ (ASFLAGS): likewise
+ Check for objcopy only if compiler isn't Apple's CC
+ Check for BSS symbol only if compiler isn't Apple's CC
+ * genmk.rb: adapt nm options if we use Apple's utils
+ * aclocal.m4 (grub_apple_cc): new test
+ (grub_apple_target_cc): likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Simplify sed expressions and improve awk
+
+ * Makefile.in (install-local): simplify sed expression
+ * gencmdlist.sh: likewise
+ * genmoddep.awk: avoid adding module as a dependency of itself
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Add missing start symbols
+
+ * boot/i386/pc/boot.S: add start
+ * boot/i386/pc/pxeboot.S: likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fix wrong assumptions with grub-mkimage on EFI
+
+ * i386/efi/grub-mkimage.c (read_kernel_module): don't write prefix here
+ (relocate_addresses): consider both r_addend and value at offset
+ (make_mods_section): zerofill modinfo and header
+ (convert_elf): write prefix here
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Use .asciz instead of .string
+
+ * i386/pc/diskboot.S: use .asciz instead of .string
+ * i386/pc/boot.S: likewise
+ * include/grub/dl.h (GRUB_MOD_DEP): likewise
+ (GRUB_MOD_NAME): likewise
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ gfxpayload support
+
+ * commands/videotest.c (grub_cmd_videotest): use grub_video_set_mode
+ * include/grub/video.h (GRUB_VIDEO_MODE_TYPE_PURE_TEXT): new definition
+ (grub_video_setup): remove
+ (grub_video_set_mode): new prototype
+ * loader/i386/linux.c (DEFAULT_VIDEO_MODE): new definition
+ (vid_mode): remove
+ (linux_vesafb_res): compile only on PCBIOS
+ (grub_linux_boot): support gfxpayload
+ * loader/i386/pc/xnu.c (video_hook): new function
+ (grub_xnu_set_video): support gfxpayload
+ * term/gfxterm.c (DEFAULT_VIDEO_WIDTH): removed
+ (DEFAULT_VIDEO_HEIGHT): likewise
+ (DEFAULT_VIDEO_FLAGS): likewise
+ (DEFAULT_VIDEO_MODE): new definition
+ (video_hook): new function
+ (grub_gfxterm_init): use grub_video_set_mode
+ * util/grub.d/30_os-prober.in: remove explicit modesetting before
+ loading xnu
+ * video/video.c (grub_video_setup): removed
+ (grub_video_set_mode): new function based on grub_gfxterm_init and
+ grub_video_setup
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Avoid calling biosdisk in drivemap
+
+ * commands/i386/pc/drivemap.c (parse_biosdisk): remove
+ (revparse_biosdisk): likewise
+ (list_mappings): derive name from id directly
+ (grub_cmd_drivemap): use tryparse_diskstring
+
+2009-06-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Script fixes
+
+ * include/grub/script_sh.h (grub_script_cmdline): remove cmdline
+ (grub_lexer_param): add tokenonhold
+ (grub_script_create_cmdline): remove cmdline. All callers updated
+ (grub_script_function_create): make functionname
+ grub_script_arg. All callers updated
+ (grub_script_execute_argument_to_string): new prototype
+ * kern/parser.c (state_transitions): reorder
+ (grub_parser_cmdline_state): fix a bug and make more compact
+ * script/sh/execute.c (grub_script_execute_argument_to_string):
+ make global
+ (grub_script_execute_cmdline): use new format
+ * script/sh/function.c (grub_script_function_create): make functionname
+ grub_script_arg. All callers updated
+ * script/sh/lexer.c (grub_script_lexer_init): initialize tokenonhold
+ (grub_script_yylex): remove
+ (grub_script_yylex2): renamed to ...
+ (grub_script_yylex): ...renamed
+ parse the expressions like a${b}c
+ * script/sh/parser.y (GRUB_PARSER_TOKEN_ARG): new typed terminal
+ (GRUB_PARSER_TOKEN_VAR): remove
+ (GRUB_PARSER_TOKEN_NAME): likewise
+ ("if"): declare as typeless
+ ("while"): likewise
+ ("function"): likewise
+ ("else"): likewise
+ ("then"): likewise
+ ("fi"): likewise
+ (text): remove
+ (argument): likewise
+ (script): accept empty scripts and make exit on error
+ (arguments): use GRUB_PARSER_TOKEN_ARG
+ (function): likewise
+ (command): move error handling to script
+ (menuentry): move grub_script_lexer_ref before
+ * script/sh/script.c (grub_script_create_cmdline): remove cmdline
+ argument. All callers updated
+
+2009-06-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ Prevent GRUB from probing floppies during boot.
+
+ * conf/common.rmk (search_mod_CFLAGS): Use `-Werror -Wall'.
+ * commands/search.c (options): Add --no-floppy.
+ (search_fs, search_file, grub_cmd_search): Support --no-floppy.
+ * util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Use
+ --no-floppy when searching for UUIDs.
+
+2009-06-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ Simplify the code duplication in commands/search.c.
+
+ * commands/search.c (search_label, search_fs_uuid): Merge into ...
+ (search_fs): ... this. Update all users.
+
+2009-06-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in (update_grub_dir): Rename to grub_mkconfig_dir.
+
+2009-05-28 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in: Don't use "cp -d", it doesn't work on FreeBSD.
+ Remove the original symlink explicitly.
+
+ * fs/hfs.c (grub_hfs_find_dir): Skip sequences of slashes, not
+ just one slash. That's how grub_fshelp_find_file() does it.
+
+2009-05-26 Pavel Roskin <proski@gnu.org>
+
+ * genmk.rb: Avoid shadowing variable `s', rename the outer `s'
+ to `str'.
+
+ * util/getroot.c (grub_util_get_dev_abstraction): Mark os_dev as
+ possibly unused.
+
+2009-05-25 Christian Franke <franke@computer.org>
+
+ * disk/ata.c (grub_ata_wait_not_busy): Add debug output of status
+ register.
+ (grub_atapi_identify): Add wait after drive select.
+ (grub_ata_identify): Do more strict status register check before
+ calling grub_atapi_identify (). Suppress error message if status
+ register is 0x00 after command failure. Add status register
+ check after PIO read to avoid bogus identify due to stuck DRQ.
+ Thanks to Pavel Roskin for testing.
+ (grub_device_initialize): Remove unsafe status register check.
+ Thanks to 'phcoder' for problem report and patch.
+ Prevent sign extension in debug message.
+
+2009-05-23 Colin D Bennett <colin@gibibit.com>
+
+ Cleaned up `include/grub/normal.h'. Grouped prototypes by
+ definition file, and functions defined in `normal/menu.c' have had
+ their prototypes moved to `include/grub/menu.h' for consistency.
+
+ * include/grub/menu.h (grub_menu_execute_callback): Added; moved
+ from normal.h.
+ (grub_menu_get_entry): Likewise.
+ (grub_menu_get_timeout): Likewise.
+ (grub_menu_set_timeout): Likewise.
+ (grub_menu_execute_entry): Likewise.
+ (grub_menu_execute_with_fallback): Likewise.
+ (grub_menu_entry_run): Likewise.
+
+ * include/grub/normal.h: Re-ordered and grouped function
+ prototypes by file that the function is defined in.
+ (grub_menu_execute_callback): Removed; moved to menu.h.
+ (grub_menu_get_entry): Likewise.
+ (grub_menu_get_timeout): Likewise.
+ (grub_menu_set_timeout): Likewise.
+ (grub_menu_execute_entry): Likewise.
+ (grub_menu_execute_with_fallback): Likewise.
+ (grub_menu_entry_run): Likewise.
+ (grub_menu_addentry): Renamed from this ...
+ (grub_normal_add_menu_entry): ... to this.
+
+ * normal/main.c (grub_menu_addentry): Renamed from this ...
+ (grub_normal_add_menu_entry): ... to this.
+
+ * script/sh/execute.c (grub_script_execute_menuentry): Update
+ reference to renamed grub_menu_addentry function.
+
+2009-05-23 Felix Zielcke <fzielcke@z-51.de>
+
+ * commands/i386/pc/drivemap.c (MODNAME): Remove. Update all users.
+
+2009-05-22 Pavel Roskin <proski@gnu.org>
+
+ * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Remove.
+ * configure.ac: Don't call grub_I386_CHECK_REGPARM_BUG. Define
+ NESTED_FUNC_ATTR using AH_BOTTOM. Use regparm(1) only when
+ compiling for the i386 targets, but not for the utilities.
+
+ * include/grub/i386/pc/kernel.h (grub_boot_drive): Change type
+ to grub_uint8_t.
+ (grub_root_drive): Likewise.
+ * kern/i386/pc/startup.S (grub_boot_drive): Change size to byte,
+ remove alignment.
+ (grub_root_drive): Change size to byte.
+ (grub_start_addr): Remove.
+ (grub_end_addr): Likewise.
+ (grub_apm_bios_info): Likewise.
+
+2009-05-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * normal/i386: Remove.
+ * normal/powerpc: Likewise.
+ * normal/sparc64: Likewise.
+ * normal/x86_64: Likewise.
+
+2009-05-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/x86_64-efi.rmk (linux_mod_ASFLAGS): Add missing variable
+ * loader/i386/linux_trampoline.S: Fix indentation
+ * loader/i386/xnu_helper.S: Likewise
+
+2009-05-18 Colin D Bennett <colin@gibibit.com>
+
+ Display error messages when parsing a Lua statement fails.
+ Previously, executing a syntactically invalid statement like
+ ")foo" or "bar;" would silently fail.
+
+ * script/lua/grub_main.c (handle_lua_error): New function.
+ (grub_lua_parse_line): Improved reporting of Lua parser and
+ execution errors.
+
+2009-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Remove -Werror which causes build to fail on some systems
+
+ * conf/i386-pc.rmk (xnu_mod_CFLAGS): Remove -Werror -Wall
+ * conf/i386-efi.rmk (xnu_mod_CFLAGS): Likewise
+ * conf/x86_64-efi.rmk (xnu_mod_CFLAGS): Likewise
+
+2009-05-17 Vladimir Serbinenko <phcoder@gmail.com>
+
+ trampoline for linux on 64-bit platform
+
+ * conf/x86_64-efi.rmk (linux_mod_SOURCES): added
+ loader/i386/efi/linux_trampoline.S
+ * include/grub/x86_64/efi/loader.h (grub_linux_real_boot): removed
+ declaration
+ * kern/x86_64/efi/startup.S (grub_linux_real_boot): moved from
+ here
+ * loader/i386/linux_trampoline.S: moved here
+ * loader/i386/efi/linux.c (allocate_pages): reserve space for
+ trampoline
+ (jumpvector): removed
+ (grub_linux_trampoline_start): new declaration
+ (grub_linux_trampoline_end): likewise
+ (grub_linux_boot): use trampoline when on 64-bit platform
+ * loader/i386/linux.c: likewise
+
+2009-05-16 Pavel Roskin <proski@gnu.org>
+
+ * script/lua/grub_lib.c (grub_lua_getenv): Make name and value
+ const to avoid a warning.
+ (grub_lua_setenv): Likewise.
+ * script/lua/grub_main.c (grub_lua_parse_line): Use size_t for
+ lmsg to fix a warning.
+
+2009-05-16 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386.rmk (setjmp_mod_CFLAGS): Rename to ...
+ (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
+ * conf/x86_64-efi.rmk (setjmp_mod_CFLAGS): Rename to ...
+ (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
+ * conf/powerpc-ieee1275.rmk (setjmp_mod_CFLAGS): Rename to ...
+ (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
+ * conf/sparc64-ieee1275.rmk (setjmp_mod_CFLAGS): Rename to ...
+ (setjmp_mod_ASFLAGS): ... this. Set to $(COMMON_ASFLAGS).
+
+2009-05-16 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-mkconfig.in: Export GRUB_TERMINAL_INPUT.
+
+2009-05-16 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkglib_MODULES): Add lua.mod.
+ (lua_mod_SOURCES): New variable.
+ (lua_mod_CFLAGS): Likewise.
+ (lua_mod_LDFLAGS): Likewise.
+
+ * conf/i386.rmk (pkglib_MODULES): Add setjmp.mod.
+ (setjmp_mod_SOURCES): New variable.
+ (setjmp_mod_CFLAGS): Likewise.
+ (setjmp_LDFLAGS): Likewise.
+
+ * conf/x86_64-efi.rmk (pkglib_MODULES): Add setjmp.mod.
+ (setjmp_mod_SOURCES): New variable.
+ (setjmp_mod_CFLAGS): Likewise.
+ (setjmp_LDFLAGS): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add setjmp.mod.
+ (setjmp_mod_SOURCES): New variable.
+ (setjmp_mod_CFLAGS): Likewise.
+ (setjmp_LDFLAGS): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (pkglib_MODULES): Add setjmp.mod.
+ (setjmp_mod_SOURCES): New variable.
+ (setjmp_mod_CFLAGS): Likewise.
+ (setjmp_LDFLAGS): Likewise.
+
+ * normal/i386/setjmp.S: Moved from here ...
+ * lib/i386/setjmp.S: ... Moved here
+ * normal/x86_64/setjmp.S: Moved from here ...
+ * lib/x86_64/setjmp.S: ... Moved here
+ * normal/powerpc/setjmp.S: Moved from here ...
+ * lib/powerpc/setjmp.S: ... Moved here
+ * normal/sparc64/setjmp.S: Moved from here ...
+ * lib/sparc64/setjmp.S: ... Moved here
+
+ * include/grub/i386/setjmp.h (grub_setjmp): Don't use attribute
+ returns_twice in mingw.
+
+ * script/lua/grub_lib.c: New file.
+ * script/lua/grub_lib.h: Likewise.
+ * script/lua/grub_lua.h: Likewise.
+ * script/lua/grub_main.c: Likewise.
+ * script/lua/lapi.c: Likewise.
+ * script/lua/lapi.h: Likewise.
+ * script/lua/lauxlib.c: Likewise.
+ * script/lua/lauxlib.h: Likewise.
+ * script/lua/lbaselib.c: Likewise.
+ * script/lua/lcode.c: Likewise.
+ * script/lua/lcode.h: Likewise.
+ * script/lua/ldblib.c: Likewise.
+ * script/lua/ldebug.c: Likewise.
+ * script/lua/ldebug.h: Likewise.
+ * script/lua/ldo.c: Likewise.
+ * script/lua/ldo.h: Likewise.
+ * script/lua/ldump.c: Likewise.
+ * script/lua/lfunc.c: Likewise.
+ * script/lua/lfunc.h: Likewise.
+ * script/lua/lgc.c: Likewise.
+ * script/lua/lgc.h: Likewise.
+ * script/lua/linit.c: Likewise.
+ * script/lua/liolib.c: Likewise.
+ * script/lua/llex.c: Likewise.
+ * script/lua/llex.h: Likewise.
+ * script/lua/llimits.h: Likewise.
+ * script/lua/lmathlib.c: Likewise.
+ * script/lua/lmem.c: Likewise.
+ * script/lua/lmem.h: Likewise.
+ * script/lua/loadlib.c: Likewise.
+ * script/lua/lobject.c: Likewise.
+ * script/lua/lobject.h: Likewise.
+ * script/lua/lopcodes.c: Likewise.
+ * script/lua/lopcodes.h: Likewise.
+ * script/lua/loslib.c: Likewise.
+ * script/lua/lparser.c: Likewise.
+ * script/lua/lparser.h: Likewise.
+ * script/lua/lstate.c: Likewise.
+ * script/lua/lstate.h: Likewise.
+ * script/lua/lstring.c: Likewise.
+ * script/lua/lstring.h: Likewise.
+ * script/lua/lstrlib.c: Likewise.
+ * script/lua/ltable.c: Likewise.
+ * script/lua/ltable.h: Likewise.
+ * script/lua/ltablib.c: Likewise.
+ * script/lua/ltm.c: Likewise.
+ * script/lua/ltm.h: Likewise.
+ * script/lua/lua.h: Likewise.
+ * script/lua/luaconf.h: Likewise.
+ * script/lua/lualib.h: Likewise.
+ * script/lua/lundump.c: Likewise.
+ * script/lua/lundump.h: Likewise.
+ * script/lua/lvm.c: Likewise.
+ * script/lua/lvm.h: Likewise.
+ * script/lua/lzio.c: Likewise.
+ * script/lua/lzio.h: Likewise.
+
+2009-05-16 Bean <bean123ch@gmail.com>
+
+ * include/grub/kernel.h (grub_module_header_types): Add type
+ OBJ_TYPE_CONFIG.
+
+ * kern/main.c (grub_load_config): New function.
+ (grub_main): Call grub_load_config to read boot config.
+
+ * grub-mkimage (generate_image): New parameter config_path.
+ (options): New option --config.
+ (main): Parse --config option, and pass it to generate_image.
+
+2009-05-14 Christian Franke <franke@computer.org>
+
+ * commands/i386/pc/drivemap_int13h.S: Add missing EXT_C for symbols.
+ This fixes build on Cygwin.
+
+2009-05-14 Pavel Roskin <proski@gnu.org>
+
+ * commands/i386/pc/drivemap_int13h.S: Eliminate unconditional
+ jump. This saves two bytes, so the typical case of 2 swapped
+ drives would fit 32 bytes.
+
+2009-05-13 Pavel Roskin <proski@gnu.org>
+
+ * loader/i386/multiboot.c (grub_multiboot): Cast mmap_addr to
+ grub_uint32_t to avoid a warning.
+
+ * loader/i386/linux.c (allocate_pages): When assigning
+ real_mode_mem, cast through grub_size_t to fix a warning. The
+ code already makes sure that the value would fit a pointer.
+ (grub_linux_setup_video): Cast render_target->data to
+ grub_size_t to fix a warning.
+
+2009-05-13 Javier Martín <lordhabbit@gmail.com>
+
+ * commands/i386/pc/drivemap.c: New file - implement drivemap
+ command.
+ * commands/i386/pc/drivemap_int13h.S: New file - int13 handler.
+ * conf/i386-pc.rmk: Add drivemap.c and drivemap_int13h.S.
+
+2009-05-13 Pavel Roskin <proski@gnu.org>
+
+ * util/i386/pc/grub-setup.c (setup): Remove unused variable
+ embedding_area_exists.
+
+2009-05-13 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (setup): Restructure code flow to make
+ it easier to understand / work with.
+ Improve warning messages for cases where there's no embedding area,
+ or when it is too small (or core.img too large).
+
+2009-05-13 Pavel Roskin <proski@gnu.org>
+
+ * loader/i386/pc/multiboot2.c: Add necessary includes for
+ grub_multiboot2_real_boot().
+
+ * fs/iso9660.c (grub_iso9660_iterate_dir): The file mode in the
+ PX record is always little-endian. We only need the lower 2
+ bytes of the mode.
+
+ * fs/cpio.c: Use the same name "struct head" for tar and cpio to
+ facilitate code reuse.
+ (grub_cpio_mount): Use "struct head", not a char buffer. This
+ fixes a warning reported by gcc 4.4.
+
+ * kernel/disk.c (grub_disk_read): Use void pointer for the
+ buffer.
+ (grub_disk_write): Use const void pointer for the buffer.
+ Adjust all callers. Remove unnecessary casts.
+
+2009-05-10 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: Update copyright year.
+
+2009-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ gptsync
+
+ * commands/gptsync.c: new file
+ * conf/common.rmk (pkglib_MODULES): add gptsync.mod
+ (gptsync_mod_SOURCES): new variable
+ (gptsync_mod_CFLAGS): likewise
+ (gptsync_mod_LDFLAGS): likewise
+ * include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_NTFS):
+ new definition
+ (GRUB_PC_PARTITION_TYPE_HFS): likewise
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): add commands/gptsync.c
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+
+2009-05-09 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Fixed grub-emu
+
+ * kern/dl.c (grub_dl_ref): omit when compiling grub-emu
+ (grub_dl_ref): likewise
+
+2009-05-08 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (setup): Factorize find_usable_region(),
+ split in two functions (one for msdos and one for gpt).
+
+2009-05-08 Pavel Roskin <proski@gnu.org>
+
+ * disk/raid.c (grub_raid_block_xor): Make buf2 constant, it's
+ not modified.
+
+ * disk/raid6_recover.c (grub_raid6_recover): Fix warnings about
+ uninitialized err[0] and err[1]. Rename them to bad1 and bad2.
+ Initialize them with -1. Add sanity check for bad1. Eliminate
+ nerr variable.
+
+2009-05-08 David S. Miller <davem@davemloft.net>
+
+ * util/sparc64/ieee1275/grub-ofpathname.c (main): Set progname.
+
+2009-05-06 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (setup): Fix check for embed region
+ existence.
+
+2009-05-05 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
+ `kern/rescue_reader.c', `kern/rescue_parser.c' and `normal/autofs.c'.
+
+2009-05-05 David S. Miller <davem@davemloft.net>
+
+ * util/sparc64/ieee1275/grub-install.in: Fix sed arg quoting.
+
+2009-05-05 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/dl.h [GRUB_UTIL]: Provide inline implementations
+ of grub_dl_ref() and grub_dl_unref().
+ * commands/parttool.c: Remove preprocessor conditionals around
+ grub_dl_ref() and grub_dl_unref().
+ * fs/affs.c: Likewise.
+ * fs/afs.c: Likewise.
+ * fs/cpio.c: Likewise.
+ * fs/ext2.c: Likewise.
+ * fs/fat.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/hfsplus.c: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/jfs.c: Likewise.
+ * fs/minix.c: Likewise.
+ * fs/ntfs.c: Likewise.
+ * fs/reiserfs.c: Likewise.
+ * fs/sfs.c: Likewise.
+ * fs/udf.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * fs/xfs.c: Likewise.
+ * include/grub/dl.h: Likewise.
+ * loader/xnu.c: Likewise.
+
+2009-05-04 Pavel Roskin <proski@gnu.org>
+
+ * commands/acpi.c: Remove unused variable my_mod.
+ * partmap/amiga.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * partmap/gpt.c: Likewise.
+ * partmap/pc.c: Likewise.
+ * partmap/sun.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+
+2009-05-04 David S. Miller <davem@davemloft.net>
+
+ * kern/ieee1275/openfw.c (grub_children_iterate): Fix string
+ pointer args to grub_ieee1275_get_property().
+
+ * conf/sparc64-ieee1275.rmk: Fix build due to missing '\'.
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Bypass cdrom
+ devices, and do not traverse down under controller nodes.
+
+ * disk/ieee1275/ofdisk.c (compute_dev_path): New.
+ (grub_ofdisk_open): Use it to un-escape "," characters.
+ * kern/disk.c (find_part_sep): New.
+ (grub_disk_open): Use it to find the first non-escaped ','
+ character in the disk name.
+ * util/ieee1275/devicemap.c (escape_of_path): New.
+ (grub_util_emit_devicemap_entry): Use it.
+ * util/sparc64/ieee1275/grub-install.in: Update script to
+ strip partition specifiers properly by not triggering on
+ '\' escaped ',' characters.
+
+2009-05-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START): Set
+ to 0x300.
+ * loader/i386/linux.c (vga_modes, linux_vesafb_res): Add a few
+ resolutions.
+ (linux_vesafb_modes): Add a lot of additional modes to the list (based
+ on documentation from Wikipedia).
+
+2009-05-04 Pavel Roskin <proski@gnu.org>
+
+ * disk/ata.c: Spelling fixes.
+ * disk/raid.c: Likewise.
+ * disk/usbms.c: Likewise.
+ * disk/dmraid_nvidia.c: Likewise.
+ * kern/ieee1275/openfw.c: Likewise.
+ * kern/ieee1275/init.c: Likewise.
+ * kern/ieee1275/cmain.c: Likewise.
+ * boot/i386/pc/cdboot.S: Likewise.
+ * video/readers/png.c: Likewise.
+ * video/i386/pc/vbe.c: Likewise.
+ * fs/udf.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/reiserfs.c: Likewise.
+ * efiemu/runtime/efiemu.c: Likewise.
+ * efiemu/main.c: Likewise.
+ * efiemu/mm.c: Likewise.
+ * include/grub/elf.h: Likewise.
+ * include/grub/xnu.h: Likewise.
+ * include/grub/usbdesc.h: Likewise.
+ * include/grub/usb.h: Likewise.
+ * include/grub/script_sh.h: Likewise.
+ * include/grub/lib/LzmaEnc.h: Likewise.
+ * include/grub/efiemu/efiemu.h: Likewise.
+ * include/grub/command.h: Likewise.
+ * normal/menu.c: Likewise.
+ * normal/main.c: Likewise.
+ * normal/datetime.c: Likewise.
+ * bus/usb/uhci.c: Likewise.
+ * mmap/i386/uppermem.c: Likewise.
+ * mmap/mmap.c: Likewise.
+ * commands/acpi.c: Likewise.
+ * commands/test.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * font/font.c: Likewise.
+ * loader/sparc64/ieee1275/linux.c: Likewise.
+ * loader/macho.c: Likewise.
+ * loader/i386/bsd_trampoline.S: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/xnu.c: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * term/usb_keyboard.c: Likewise.
+ * util/resolve.c: Likewise.
+ * util/getroot.c: Likewise.
+
+2009-05-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-pc.rmk (libpkg_DATA): Rename to pkglib_DATA.
+
+2009-05-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c [GRUB_MACHINE_PCBIOS] (grub_cmd_linux): Fix
+ build error.
+
+2009-05-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): Make "vga=" compatibility
+ parameter only available on BIOS.
+
+2009-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Removed wrong semicolon in declaration
+
+ * grub/misc.h (grub_dprintf): remove semicolon
+
+2009-05-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * loader/i386/linux.c (GRUB_ASSUME_LINUX_HAS_FB_SUPPORT): New macro.
+ (grub_linux_boot): Don't check for `linux_vesafb_modes' bounds (this
+ is done by grub_cmd_linux() now).
+ [! GRUB_ASSUME_LINUX_HAS_FB_SUPPORT]: If "vga=" parameter wasn't set,
+ restore video to text mode.
+ (grub_cmd_linux): Default `vid_mode' initialization to 0, which
+ indicates lack of "vga=" parameter. "vga=0" is mapped to
+ `GRUB_LINUX_VID_MODE_NORMAL'.
+
+2009-05-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Remove `normal/execute.c',
+ `normal/lexer.c', `kern/rescue.c', `normal/function.c', `normal/misc.c'
+ and `normal/script.c'. Add `kern/rescue_reader.c',
+ `kern/rescue_parser.c', `script/sh/main.c', `script/sh/execute.c',
+ `script/sh/function.c', `script/sh/lexer.c', `script/sh/script.c' and
+ `grub_script.tab.c'.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * Makefile.in: Remove duplicated 2008 in Copyright line.
+
+2009-05-04 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/misc.c (grub_util_warn): New function. Emits a warning
+ unconditionally.
+ * include/grub/util/misc.h (grub_util_warn): New declaration.
+
+ * util/i386/pc/grub-install.in: Understand --force and pass it down
+ to grub-setup.
+
+ * util/i386/pc/grub-setup.c (main): Understand --force and pass it
+ down to setup().
+ (setup): Improve error messages and add warnings when requested to
+ install in odd layouts. Refuse to install using blocklists unless
+ --force was set.
+
+2009-05-04 martin f. krafft <madduck@madduck.net>
+
+ * disk/raid.c (grub_raid_scan_device): Improve debug message.
+
+2009-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Updated copyright year
+
+ * fs/hfsplus.c: updated copyright year
+
+2009-05-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ HFS+ UUID
+
+ * fs/hfsplus.c (grub_hfsplus_volheader): added num_serial field
+ in the space previously used by unused3
+ (grub_hfsplus_uuid): new function
+ (grub_hfsplus_fs): added uuid field
+
+2009-05-03 Pavel Roskin <proski@gnu.org>
+
+ * disk/ata.c: Don't cast mod to void in GRUB_MOD_INIT to
+ suppress warnings. It's no longer needed.
+ * disk/host.c: Likewise.
+ * disk/ata_pthru.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * hook/datehook.c: Likewise.
+ * parttool/pcpart.c: Likewise.
+ * fs/i386/pc/pxe.c: Likewise.
+ * fs/ntfscomp.c: Likewise.
+ * efiemu/main.c: Likewise.
+ * mmap/mmap.c: Likewise.
+ * commands/crc.c: Likewise.
+ * commands/hexdump.c: Likewise.
+ * commands/hdparm.c: Likewise.
+ * commands/acpi.c: Likewise.
+ * commands/echo.c: Likewise.
+ * commands/minicmd.c: Likewise.
+ * commands/blocklist.c: Likewise.
+ * commands/memrw.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/usbtest.c: Likewise.
+ * commands/lsmmap.c: Likewise.
+ * commands/boot.c: Likewise.
+ * commands/parttool.c: Likewise.
+ * commands/configfile.c: Likewise.
+ * commands/search.c: Likewise.
+ * commands/ieee1275/suspend.c: Likewise.
+ * commands/cat.c: Likewise.
+ * commands/i386/pc/pxecmd.c: Likewise.
+ * commands/i386/pc/play.c: Likewise.
+ * commands/i386/pc/halt.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/i386/pc/vbetest.c: Likewise.
+ * commands/lspci.c: Likewise.
+ * commands/date.c: Likewise.
+ * commands/handler.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/test.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/efi/loadbios.c: Likewise.
+ * commands/efi/fixvideo.c: Likewise.
+ * commands/halt.c: Likewise.
+ * commands/help.c: Likewise.
+ * commands/reboot.c: Likewise.
+ * hello/hello.c: Likewise.
+ * script/sh/main.c: Likewise.
+ * loader/xnu.c: Likewise.
+ * term/terminfo.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/usb_keyboard.c: Likewise.
+
+2009-05-03 David S. Miller <davem@davemloft.net>
+
+ * normal/menu.c: Include grub/parser.h
+
+2009-05-03 Pavel Roskin <proski@gnu.org>
+
+ * mmap/efi/mmap.c (grub_mmap_malign_and_register): Return void*,
+ not char*.
+ * mmap/i386/mmap.c (grub_mmap_malign_and_register): Likewise.
+ Suggested by Javier Martín <lordhabbit@gmail.com>
+
+ * util/i386/pc/grub-mkrescue.in: Allow for the case when
+ efiemu??.o doesn't exist.
+ * util/i386/pc/grub-install.in: Likewise. Use "cp -f" for
+ copying.
+
+2009-05-03 Bean <bean123ch@gmail.com> Vladimir Serbinenko <phcoder@gmail.com>
+
+ FreeBSD 64-bit support
+
+ * conf/i386-pc.rmk (bsd_mod_SOURCES): add loader/i386/bsd_helper.S
+ and loader/i386/bsd_trampoline.S
+ (bsd_mod_ASFLAGS): new variable
+ * include/grub/i386/bsd.h (FREEBSD_MODINFOMD_SMAP): new definition
+ (FREEBSD_MODTYPE_KERNEL64): likewise
+ (grub_bsd64_trampoline_start): likewise
+ (grub_bsd64_trampoline_end): likewise
+ (grub_bsd64_trampoline_selfjump): likewise
+ (grub_bsd64_trampoline_gdt): likewise
+ * include/grub/i386/loader.h (grub_unix_real_boot): moved from here ...
+ * include/grub/i386/bsd.h (grub_unix_real_boot): ... moved here
+ * kern/i386/loader.S (grub_unix_real_boot): moved from here ...
+ * loader/i386/bsd_helper.S (grub_unix_real_boot): moved here
+ * include/grub/gpt_partition.h (grub_gpt_partentry): Corrected the type
+ of "attrib" member
+ * loader/i386/bsd_pagetable.c: new file
+ * loader/i386/bsd_trampoline.S: likewise
+ * loader/i386/bsd.c (ALIGN_QWORD): new macro
+ (ALIGN_VAR): likewise
+ (entry_hi): new variable
+ (kern_end_mdofs): likewise
+ (is_64bit): likewise
+ (grub_freebsd_add_meta): use ALIGN_VAR
+ (grub_e820_mmap): new declaration
+ (grub_freebsd_add_mmap): new function
+ (grub_freebsd_add_meta_module): support 64 bit kernels
+ (grub_freebsd_list_modules): use ALIGN_VAR
+ (gdt_descriptor): new declaration
+ (grub_freebsd_boot): support 64 bit kernels
+ (grub_bsd_elf64_hook): new function
+ (grub_bsd_load_elf): support elf64
+
+2009-05-03 Bean <bean123ch@gmail.com>
+
+ * script/sh/execute.c (grub_script_execute_cmdif): Reset grub_errno
+ after we get the result of if statement.
+
+2009-05-03 Bean <bean123ch@gmail.com>
+
+ * Makefile.in (enable_efiemu): New variable.
+
+ * conf/i386-pc.rmk: Only compile efiemu runtimes when enable_efiemu is
+ set.
+ (efiemu32.o): Use macro $< for source file, add $(srcdir) to include
+ path.
+ (efi64_c.o): Use macro $< for source file, add $(srcdir) to include
+ path, add -mno-red-zone option.
+ (efiemu64_s.o): Likewise.
+ (efiemu64.o): Use macro $^ for source file.
+
+ * configure.ac (--enable-efiemu): New option.
+
+2009-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
+ xnu support
+
+ * conf/i386-efi.rmk (kernel_mod_HEADERS): added i386/pit.h
+ (pkglib_MODULES): add xnu.mod
+ (xnu_mod_SOURCES): new variable
+ (xnu_mod_CFLAGS): likewise
+ (xnu_mod_LDFLAGS): likewise
+ (xnu_mod_ASFLAGS): likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/x86_64-efi.rmk: likewise
+ * include/grub/efi/efi.h (grub_efi_finish_boot_services):
+ new declaration
+ * include/grub/i386/macho.h: new file
+ * include/grub/i386/xnu.h: likewise
+ * include/grub/macho.h: likewise
+ * include/grub/machoload.h: likewise
+ * include/grub/x86_64/macho.h: likewise
+ * include/grub/x86_64/xnu.h: likewise
+ * include/grub/xnu.h: likewise
+ * kern/efi/efi.c (grub_efi_finish_boot_services): new function
+ * kern/efi/mm.c (MAX_HEAP_SIZE): increase
+ * loader/i386/efi/xnu.c: new file
+ * loader/i386/pc/xnu.c: likewise
+ * loader/i386/xnu.c: likewise
+ * loader/i386/xnu_helper.S: likewise
+ * loader/macho.c: likewise
+ * loader/xnu.c: likewise
+ * loader/xnu_resume.c: likewise
+ * util/grub-dumpdevtree: likewise
+ * include/grub/i386/pit.h: include grub/err.h
+ (grub_pit_wait): export
+ * util/grub.d/30_os-prober.in: support Darwin/Mac OS X
+
+2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Efiemu
+
+ * conf/i386-pc.rmk: new modules efiemu, efiemu_acpi, efiemu_pnvram,
+ _linux_efi, linux_efi.
+ new files in grub-emu
+ new targets efiemu32.o and efiemu64.o
+ * loader/linux_normal_efiemu.c: likewise
+ * loader/i386/efi/linux.c: added preliminary efiemu support
+ * util/i386/pc/grub-install.in: add efiemu??.o to the list of
+ files to copy
+ * include/grub/autoefi.h: new file
+ * include/grub/i386/efiemu.h: likewise
+ * include/grub/i386/pc/efiemu.h: likewise
+ * include/grub/efi/api.h: add LL suffix when necessary
+ new definitions relating to tables
+ * include/grub/efiemu/efiemu.h: new file
+ * include/grub/efiemu/runtime.h: likewise
+ * efiemu/prepare.c: likewise
+ * efiemu/loadcore_common.c: likewise
+ * efiemu/loadcore64.c: likewise
+ * efiemu/runtime/efiemu.sh: likewise
+ * efiemu/runtime/efiemu.S: likewise
+ * efiemu/runtime/efiemu.c: likewise
+ * efiemu/runtime/config.h: likewise
+ * efiemu/prepare32.c: likewise
+ * efiemu/main.c: likewise
+ * efiemu/modules/pnvram.c: likewise
+ * efiemu/modules/i386: likewise
+ * efiemu/modules/i386/pc: likewise
+ * efiemu/modules/acpi.c: likewise
+ * efiemu/i386/pc/cfgtables.c: likewise
+ * efiemu/i386/loadcore64.c: likewise
+ * efiemu/i386/loadcore32.c: likewise
+ * efiemu/prepare64.c: likewise
+ * efiemu/loadcore.c: likewise
+ * efiemu/symbols.c: likewise
+ * efiemu/mm.c: likewise
+ * efiemu/loadcore32.c: likewise
+
+2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ ACPI spoofing
+
+ * commands/acpi.c: new file
+ * commands/i386/pc/acpi.c: likewise
+ * commands/efi/acpi.c: likewise
+ * include/grub/acpi.h: likewise
+ * conf/i386-pc.rmk (pkglib_MODULES): added acpi.mod
+ (acpi_mod_SOURCES): new variable
+ (acpi_mod_CFLAGS): likewise
+ (acpi_mod_LDFLAGS): likewise
+ * conf/i386-efi.rmk: likewise
+ * conf/x86_64-efi.rmk: likewise
+
+2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Missing part from mmap patch
+
+ * mmap/efi/mmap.c (grub_machine_mmap_unregister): renamed to
+ (grub_mmap_unregister)
+ (grub_mmap_free_and_unregister): use grub_mmap_register
+
+2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Mmap services
+
+ * loader/i386/efi/linux.c (grub_linux_boot): use grub_mmap_iterate
+ * loader/i386/linux.c (find_mmap_size): likewise
+ (allocate_pages): likewise
+ * loader/i386/multiboot.c (grub_get_multiboot_mmap_len): likewise
+ (grub_fill_multiboot_mmap): likewise
+ (grub_multiboot): use grub_mmap_get_lower and grub_mmap_get_upper
+ * loader/i386/pc/linux.c (grub_cmd_linux): use grub_mmap_get_lower
+ * include/grub/i386/bsd.h (OPENBSD_MMAP_AVAILABLE): new definition
+ (OPENBSD_MMAP_RESERVED): likewise
+ * include/grub/i386/pc/memory.h: include grub/memory.h
+ (grub_lower_mem): removed
+ (grub_upper_mem): likewise
+ (GRUB_MACHINE_MEMORY_ACPI): new definition
+ (GRUB_MACHINE_MEMORY_NVS): likewise
+ (GRUB_MACHINE_MEMORY_MAX_TYPE): likewise
+ (GRUB_MACHINE_MEMORY_HOLE): likewise
+ (grub_machine_mmap_register): likewise
+ (grub_machine_mmap_unregister): likewise
+ (grub_machine_get_upper): likewise
+ (grub_machine_get_lower): likewise
+ (grub_machine_get_post64): likewise
+ * include/grub/i386/efi/memory.h: new file
+ * include/grub/x86_64/efi/memory.h: likewise
+ * include/grub/efi/memory.h: likewise
+ * conf/i386-pc.rmk (pkglib_MODULES): added mmap.mod
+ (mmap_mod_SOURCES): new variable
+ (mmap_mod_LDFLAGS): likewise
+ (mmap_mod_ASFLAGS): likewise
+ * conf/i386-coreboot.rmk: likewise
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-efi.rmk: likewise
+ * conf/x86_64-efi.rmk: likewise
+ * include/grub/types.h (UINT_TO_PTR): new macro
+ (PTR_TO_UINT32): likewise
+ (PTR_TO_UINT64): likewise
+ * include/grub/memory.h: new file
+ * mmap/i386/pc/mmap.c: likewise
+ * mmap/i386/pc/mmap_helper.S: likewise
+ * mmap/i386/uppermem.c: likewise
+ * mmap/mmap.c: likewise
+ * mmap/efi/mmap.c: likewise
+ * kern/i386/coreboot/init.c (grub_machine_init): don't use
+ grub_upper_mem
+ * kern/i386/pc/init.c (grub_lower_mem): removed variable
+ (grub_upper_mem): likewise
+ (grub_machine_init): don't use grub_upper_mem,
+ make grub_lower_mem local
+ * loader/i386/bsd.c (grub_openbsd_boot): use grub_mmap_get_lower,
+ grub_mmap_iterate and grub_mmap_get_upper
+ (grub_netbsd_boot): use grub_mmap_get_lower and grub_mmap_get_upper
+
+2009-05-02 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (grub_script.tab.c): Change normal/parser.y to
+ script/sh/parser.y.
+ (pkglib_MODULES): Add normal.mod and sh.mod.
+ (normal_SOURCES): New variable.
+ (normal_mod_CFLAGS): Likewise.
+ (normal_mod_LDFLAGS): Likewise.
+ (sh_mod_SOURCES): Likewise.
+ (sh_mod_CFLAGS): Likewise.
+ (sh_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (normal/lexer.c_DEPENDENCIES): Changed to
+ script/sh/lexer.c_DEPENDENCIES.
+ (kernel_img_SOURCES): Remove kern/rescue.c, and kern/reader.c,
+ kern/rescue_reader.c and kern/rescue_parser.c.
+ (kernel_img_HEADERS): Remove rescue.h, add reader.h.
+ (grub_emu_SOURCES): Change source files.
+ (pkglib_MODULES): Remove normal.mod.
+ (normal_SOURCES): Removed.
+ (normal_mod_CFLAGS): Likewise.
+ (normal_mod_LDFLAGS): Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1276.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+ * include/grub/command.h (grub_command_execute): New inline function.
+
+ * include/grub/menu.h (grub_menu_entry): Removed commands field.
+
+ * include/grub/normal.h: Remove <grub/setjmp.h>.
+ (grub_fs_module_list): Moved to normal/autofs.c.
+ (grub_exit_env): Removed.
+ (grub_command_execute): Likewise.
+ (grub_normal_menu_addentry): Renamed to grub_menu_addentry, removed
+ parameter script.
+ (read_command_list): New function declaration.
+ (read_fs_list): Likewise.
+
+ * include/parser.h: Include <grub/reader.h>.
+ (grub_parser_split_cmdline): Change type of getline parameter.
+ (grub_parser): New structure.
+ (grub_parser_class): New variable.
+ (grub_parser_execute): New function declaration.
+ (grub_register_rescue_parser): Likewise.
+ (grub_parser_register): New inline function.
+ (grub_parser_unregister): Likewise.
+ (grub_parser_get_current): Likewise.
+ (grub_parser_set_current): Likewise.
+
+ * include/grub/reader.h: New file.
+ * kern/reader.c: Likewise.
+ * kern/rescue_parser.c: Likewise.
+ * kern/rescue_reader.c: Likewise.
+ * normal/autofs.c: Likewise.
+ * normal/dyncmd.c: Likewise.
+
+ * include/grub/rescue.h: Removed.
+ * normal/command.h: Likewise.
+
+ * include/grub/script.h: Moved to ...
+ * include/grub/script_sh.h: ... Moved here.
+ * normal/execute.c: Moved to ...
+ * script/sh/execute.c: ... Moved here.
+ * normal/function.c: Moved to ...
+ * script/sh/function.c: ... Moved here.
+ * normal/lexer.c: Moved to ...
+ * script/sh/lexer.c: ... Moved here.
+ * normal/parser.y: Moved to ...
+ * script/sh/parser.y: ... Moved here.
+ * normal/script.c: Moved to ...
+ * script/sh/script.c: ... Moved here.
+
+ * normal/main.c: Remove <grub/rescue.h> and <grub/script.h>, include
+ <grub/reader.h>.
+ (grub_exit_env): Removed.
+ (fs_module_list): Moved to normal/autofs.c.
+ (grub_file_getline): Don't handle comment here.
+ (free_menu): Skip removed field entry->commands.
+ (grub_normal_menu_addentry): Removed as grub_menu_entry, removed
+ script parameter.
+ (read_config_file): Removed nested parameter, change getline function.
+ (grub_enter_normal_mode): Removed.
+ (grub_dyncmd_dispatcher): Moved to normal/dyncmd.c.
+ (read_command_list): Likewise.
+ (autoload_fs_module): Moved to normal/autofs.c.
+ (read_fs_list): Likewise.
+ (reader_nested): New variable.
+ (grub_normal_execute): Run parser.sh to switch to sh parser.
+ (grub_cmd_rescue): Removed.
+ (cmd_normal): Removed.
+ (grub_cmd_normal): Unregister itself at the beginning. Don't register
+ rescue command.
+ (grub_cmdline_run): New function.
+ (grub_normal_reader_init): Likewise.
+ (grub_normal_read_line): Likewise.
+ (grub_env_write_pager): Likewise.
+ (cmdline): New variable.
+ (grub_normal_reader): Likewise.
+ (GRUB_MOD_INIT): Register normal reader and set as current, register
+ pager hook, register normal command with grub_register_command_prio,
+ so that it won't show up in command.lst.
+ (GRUB_MOD_FINI): Unregister normal reader, unhook pager, clear
+ grub_fs_autoload_hook.
+
+ * normal/menu.c: Remove <grub/script.h>, add <grub/command.h>.
+ (grub_menu_execute_entry): Replace grub_script_execute with
+ grub_parser_execute, change parameter to grub_command_execute.
+
+ * normal/menu_text.c: Remove <grub/script.h>.
+
+ * normal/menu_entry.c: Remove <grub/script.h>, add <grub/command.h>
+ and <grub/parser.h>.
+ (run): Change editor_getline to use new parser interface. Change
+ parameter to grub_command_execute.
+
+ * kern/main.c: Remove <grub/rescue.h>, include <grub/command.h>,
+ <grub/reader.h> and <grub/parser.h>.
+ (grub_load_normal_mode): Execute normal command.
+ (grub_main): Call grub_register_core_commands,
+ grub_register_rescue_parser and grub_register_rescue_reader, use
+ grub_reader_loop to enter input loop.
+
+ * kern/parser.c (grub_parser_split_cmdline): Change type of
+ getline parameter.
+ (grub_parser_class): New variable.
+ (grub_parser_execute): New function.
+
+ * loader/i386/multiboot.c: Remove <grub/rescue.h>.
+ * loader/multiboot2.c: Likewise.
+ * loader/sparc64/ieee1275/linux.c: Likewise.
+
+ * util/grub-emu.c (read_command_list): New dummy function.
+
+2009-05-02 Robert Millan <rmh.grub@aybabtu.com>
+
+ * util/deviceiter.c (grub_util_iterate_devices): Increase max drive
+ count to 16 for CCISS and IDA.
+
+2009-05-02 Robert Millan <rmh.grub@aybabtu.com>
+
+ * normal/menu_text.c (grub_wait_after_message): Print a newline
+ after waiting for user input.
+
+ * loader/i386/linux.c: Include `<grub/normal.h>'.
+ (grub_cmd_linux): Improve the error message about `ask' mode, by
+ waiting for user input so it's not missed (we can do this, since
+ user requested interaction).
+
+2009-05-02 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Added missing lst to grub-mkrescue
+
+ * util/i386/pc/grub-mkrescue.in: added ${input_dir}/handler.lst
+ and ${input_dir}/parttool.lst
+
+2009-04-30 David S. Miller <davem@davemloft.net>
+
+ * util/hostdisk.c (device_is_wholedisk): New function.
+ (grub_util_biosdisk_get_grub_dev): Shortcut when hdg.start is
+ zero only if device_is_wholedisk() returns true.
+
+ * util/hostdisk.c (convert_system_partition_to_system_disk):
+ Handle virtual disk devices named /dev/vdiskX as found on sparc
+ and powerpc.
+
+ * kern/sparc64/ieee1275/init.c (grub_machine_set_prefix): If
+ lettered partition specifier is found, convert to numbered.
+
+2009-04-29 David S. Miller <davem@davemloft.net>
+
+ * include/grub/powerpc/ieee1275/memory.h: Include ieee1275.h.
+ * include/grub/sparc64/ieee1275/memory.h: Likewise.
+
+ * normal/command.c: Add missing newline at end of file.
+
+ * commands/lsmmap.c (grub_cmd_lsmmap): Add casts to avoid printf
+ warnings.
+ * kern/ieee1275/openfw.c (grub_claimmap): Likewise.
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_open, grub_ofdisk_close,
+ grub_ofdisk_read): Likewise, and deal similarly with the fact that
+ ihandles have a 32-bit type but need to be stored in a "void *".
+
+2009-04-28 Pavel Roskin <proski@gnu.org>
+
+ * disk/fs_uuid.c (grub_fs_uuid_open): Use parent->data for dev,
+ not disk. Adjust all dependencies.
+ (grub_fs_uuid_close): Use grub_device_close(), not
+ grub_disk_close().
+
+ * disk/fs_uuid.c (grub_fs_uuid_open): Allocate memory to copy
+ parent's partition, don't copy it by reference, as it gets freed
+ on close.
+
+2009-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Preboot hooks support
+
+ * commands/boot.c (struct grub_preboot_t): new declaration
+ (preboots_head): new variable
+ (preboots_tail): likewise
+ (grub_loader_register_preboot_hook): new function
+ (grub_loader_unregister_preboot_hook): likewise
+ (grub_loader_set): launch preboot hooks
+ * include/grub/loader.h (grub_loader_preboot_hook_prio_t): new type
+ (grub_loader_register_preboot_hook): new declaration
+ (grub_loader_unregister_preboot_hook): likewise
+
+2009-04-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Warning fix
+
+ * disk/scsi.c (grub_scsi_open): added missing cast when
+ calling grub_dprintf
+
+2009-04-26 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Bug and warning fixes
+
+ * include/grub/i386/pc/init.h (grub_stop_floppy): added missing
+ declaration
+ * commands/test.c (test_parse): fixed bug with file tests and corrected
+ declaration of find_file
+
+2009-04-26 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in: Don't install empty manual pages if help2man is
+ missing. Use help2man option for output, not shell redirection.
+
+2009-04-26 David S. Miller <davem@davemloft.net>
+
+ * util/grub-mkdevicemap.c (make_device_map): Add missing
+ NESTED_FUNC_ATTR to process_device().
+
+2009-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Test command
+
+ * commands/test.c: rewritten to use bash-like test
+
+2009-04-25 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Parttool autoloading and improvements
+
+ * Makefile.in (pkglib_DATA): add parttool.lst
+ (parttool.lst): new target
+ * genmk.rb: generate parttool-*
+ (CLEANFILES): add #{parttool}
+ (PARTTOOLFILES): new variable
+ * genparttoollist.sh: new file
+ * parttool/pcpart.c (grub_pcpart_boot): more feedback
+ (grub_pcpart_type): likewise
+ * commands/parttool.c (helpmsg): new variable
+ (grub_cmd_parttool): output help if not enough arguments are supplied
+ autoload modules
+ (GRUB_MOD_INIT(parttool)): use helpmsg
+
+2009-04-24 David S. Miller <davem@davemloft.net>
+
+ Avoiding opening same device multiple times in device iterator.
+
+ * kern/device.c: (grub_device_iterate): Define struct part_ent,
+ and use it to build a list of partitions in iterate_disk() and
+ iterate_partition().
+
+ * disk/fs_uuid.c (grub_fs_uuid_close): Call grub_disk_close()
+ on disk->data.
+
+ * disk/ieee1275/nand.c (grub_nand_iterate): Return
+ grub_devalias_iterate() result instead of unconditional 0.
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Likewise.
+ Also, capture hook return value, either directly or via
+ grub_children_iterate(), and propagate to caller.
+ * include/grub/ieee1275/ieee1275.h (grub_devalias_iterate,
+ grub_children_iterate): Return value is now 'int' instead of
+ 'grub_err_t'.
+ * kern/ieee1275/openfw.c (grub_children_iterate): Fix to behave
+ like a proper iterator, stopping when hooks return non-zero.
+ (grub_devalias_iterate): Likewise.
+
+2009-04-23 David S. Miller <davem@davemloft.net>
+
+ * kern/sparc64/ieee1275/openfw.c: Unused, delete.
+
+2009-04-22 David S. Miller <davem@davemloft.net>
+
+ * kern/ieee1275/mmap.c (grub_machine_mmap_iterate): If size_cells
+ is larger than address_cells, use that value for address_cells too.
+
+ * include/grub/ieee1275/ieee1275.h (IEEE1275_MAX_PROP_LEN,
+ IEEE1275_MAX_PATH_LEN): Define.
+ * kern/ieee1275/openfw.c (grub_children_iterate): Dynamically
+ allocate 'childtype', 'childpath', 'childname', and 'fullname'.
+ (grub_devalias_iterate): Dynamically allocate 'aliasname' and
+ 'devtype'. Explicitly NULL terminate devalias expansion.
+
+ * util/sparc64/ieee1275/misc.c: New file.
+ * util/sparc64/ieee1275/grub-setup.c: New file.
+ * util/sparc64/ieee1275/grub-ofpathname.c: New file.
+ * util/sparc64/ieee1275/grub-mkimage.c: New file.
+ * util/sparc64/ieee1275/grub-install.in: New file.
+ * util/ieee1275/ofpath.c: New file.
+ * util/ieee1275/devicemap.c: New file.
+ * util/devicemap.c: New file.
+ * util/deviceiter.c: New file.
+ * kern/sparc64/ieee1275/init.c: New file.
+ * include/grub/util/ofpath.h: New file.
+ * include/grub/util/deviceiter.h: New file.
+ * util/grub-mkdevicemap.c: Include deviceiter.h.
+ Implement using grub_util_emit_devicemap_entry and
+ grub_util_iterate_devices.
+ * conf/i386-corebook.rmk: Build util/deviceiter.c and
+ util/devicemap.c into grub-mkdevicemap
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Add rules to build boot block
+ images and installation utilities. Build kernel as image
+ instead of as elf binary. Use common rules as much as possible.
+
+2009-04-19 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Correct GPT definition
+
+ * include/grub/gpt_partition.h (grub_gpt_partentry): Corrected the type
+ of "attrib" member
+
+2009-04-19 Felix Zielcke <fzielcke@z-51.de>
+
+ * INSTALL: Replace `autogen.sh' with `./autogen.sh'.
+
+2009-04-19 David S. Miller <davem@davemloft.net>
+
+ * loader/sparc64/ieee1275/linux.c: Include grub/command.h
+ (grub_rescue_cmd_linux): Rename to...
+ (grub_cmd_linux): and fix prototype.
+ (grub_rescue_cmd_initrd): Rename to...
+ (grub_cmd_initrd): and fix prototype.
+ (cmd_linux, cmd_initrd): New.
+ (GRUB_MOD_INIT(linux)): Use grub_register_command().
+ (GRUB_MOD_FINI(linux): Use grub_unregister_command().
+
+2009-04-17 Pavel Roskin <proski@gnu.org>
+
+ * bus/usb/ohci.c (grub_ohci_transaction): Fix incorrect printf
+ format.
+ (grub_ohci_transfer): Likewise.
+
+ * bus/usb/usbtrans.c (grub_usb_control_msg): Warning fix.
+
+ * loader/multiboot_loader.c (grub_cmd_multiboot_loader): Fix
+ return without a value. Fix inconsistent indentation.
+
+ * fs/i386/pc/pxe.c (grub_pxefs_dir): Fix function prototype to
+ match struct grub_fs.
+
+ * disk/ata.c (grub_ata_pciinit): Use NESTED_FUNC_ATTR.
+ * bus/usb/ohci.c (grub_ohci_pci_iter): Likewise.
+ * bus/usb/uhci.c (grub_uhci_pci_iter): Likewise.
+ * commands/lspci.c (grub_lspci_iter): Likewise.
+
+2009-04-16 Bean <bean123ch@gmail.com>
+
+ * commands/efi/loadbios.c (grub_cmd_fakebios): Add missing return
+ value.
+
+2009-04-15 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/types.h: Rename ULONG_MAX to GRUB_ULONG_MAX and
+ LONG_MAX to GRUB_LONG_MAX. Introduce GRUB_LONG_MIN. Update all
+ users of ULONG_MAX, LONG_MAX and LONG_MIN to use the new
+ definitions.
+
+2009-04-15 Felix Zielcke <fzielcke@z-51.de>
+
+ * disk/lvm.c (grub_lvm_scan_device): Add `LVM' to the error messages,
+ that no multiple data or metadata areas are supported and `Unknown
+ metadata header'.
+
+2009-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move loader out of the kernel
+
+ * kern/loader.c: moved to ...
+ * commands/boot.c: ... moved here
+ * commands/minicmd.c (grub_mini_cmd_boot): moved to ...
+ * commands/boot.c (grub_cmd_boot): moved here. All users updated
+ * include/grub/kernel.h (grub_machine_fini): export
+ * include/grub/loader.h (grub_loader_is_loaded): update declaration
+ (grub_loader_set): likewise
+ (grub_loader_unset): likewise
+ (grub_loader_boot): likewise
+ * conf/common.rmk: new module boot.mod
+ (pkglib_MODULES): add boot.mod
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): remove kern/loader.c
+ (grub_emu_SOURCES): likewise
+ * conf/i386-efi.rmk (kernel_elf_SOURCES): likewise
+ (grub_emu_SOURCES): likewise
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): likewise
+ (grub_emu_SOURCES): likewise
+ * conf/i386-pc.rmk (kernel_elf_SOURCES): likewise
+ (grub_emu_SOURCES): likewise
+ * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): likewise
+ (grub_emu_SOURCES): likewise
+ * conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): likewise
+ (grub_emu_SOURCES): likewise
+ * conf/x86_64-efi.rmk (kernel_elf_SOURCES): likewise
+ (grub_emu_SOURCES): likewise
+
+2009-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ use grub_lltoa instead of grub_itoa and grub_ltoa for all purposes
+
+ * kern/misc.c (grub_itoa): Removed function
+ (grub_ltoa): likewise
+ (grub_vsprintf): use grub_lltoa
+
+2009-04-15 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Restore grub-emu
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): add normal/handler.c
+ * conf/i386-coreboot.rmk: likewise
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+
+2009-04-15 Felix Zielcke <fzielcke@z-51.de>
+
+ * INSTALL: Add that `./autogen.sh' needs to be run before
+ `./configure.'.
+
+2009-04-14 Bean <bean123ch@gmail.com>
+
+ * Makefile.in (pkglib_DATA): Add handler.lst.
+ (handler.lst): New rule.
+
+ * conf/i386-pc.rmk (normal_mod_SOURCES): Add normal/handler.c.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+
+ * genhandlerlist.sh: New file.
+
+ * genmk.rb: Add rules to generate handler.lst.
+
+ * include/grub/normal.h (grub_file_getline): New function definition.
+ (read_handler_list): Likewise.
+ (free_handler_list): Likewise.
+
+ * include/grub/term.h (grub_term_register_input): Add name parameter
+ for auto generation of handler.lst.
+ (grub_term_register_output): Likewise.
+
+ * normal/handler.c: New file.
+
+ * normal/main.c (get_line): Renamed to grub_file_getline.
+ (read_config_file): Use the newly renamed grub_file_getline.
+ (read_command_list): Likewise.
+ (read_fs_list): Likewise.
+ (grub_normal_execute): Call read_handler_list to parse handler.lst.
+ (GRUB_MOD_FINI): Call free_handler_list to free handler list.
+
+ * term/efi/console.c (grub_console_init): Add name parameter for auto
+ generation of handler.lst.
+ * term/gfxterm.c: Likewise.
+ * term/i386/pc/at_keyboard.c: Likewise.
+ * term/i386/pc/console.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+ * term/i386/pc/vga_text.c: Likewise.
+ * term/ieee1275/ofconsole.c: Likewise.
+ * term/usb_keyboard.c: Likewise.
+
+2009-04-14 Bean <bean123ch@gmail.com>
+
+ * util/grub-pe2elf.c (write_symbol_table): Terminate short name symbol
+ properly with null character.
+
+2009-04-14 Felix Zielcke <fzielcke@z-51.de>
+
+ * configure: Remove.
+ * config.h.in: Likewise.
+ * stamp-h.in: Likewise.
+ * DISTLIST: Likewise.
+ * conf/common.mk: Likewise.
+ * conf/i386-coreboot.mk: Likewise.
+ * conf/i386-efi.mk: Likewise.
+ * conf/i386-ieee1275.mk: Likewise.
+ * conf/i386.mk: Likewise.
+ * conf/i386-pc.mk: Likewise.
+ * conf/powerpc-ieee1275.mk: Likewise.
+ * conf/sparc64-ieee1275.mk: Likewise.
+ * conf/x86_64-efi.mk: Likewise.
+
+ * INSTALL: Remove the sentence that Ruby and autoconf are only required if you
+ develop on GRUB.
+
+2009-04-14 John Stanley <jpsinthemix@verizon.net>
+ David S. Miller <davem@davemloft.net>
+
+ * util/hostdisk.c (make_device_name): Fix buffer length
+ calculations.
+
+2009-04-14 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/hostdisk.c [__FreeBSD__ || __FreeBSD_kernel__]: Include
+ <sys/param.h> and <sys/sysctl.h>.
+ (open_device) [__FreeBSD__ || __FreeBSD_kernel_]: Use sysctlgetbyname()
+ to add 0x10 to `kern.geom.debugflags' if it's not already set, before
+ opening the device and reset them afterwards.
+
+2009-04-13 Pavel Roskin <proski@gnu.org>
+
+ * conf/common.rmk (grub_fstest_SOURCES): Add normal/datetime.c.
+ Reported by John Stanley <jpsinthemix@verizon.net>
+
+2009-04-13 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_freebsd.in: Detect Debian GNU/kFreeBSD and use
+ that name for menuentries when appropriate.
+
+2009-04-13 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/10_freebsd.in: Add a missing `fi'.
+
+2009-04-13 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): Don't pass `vga=ask' parameter
+ to Linux, simply abort telling the user it's no longer supported.
+
+2009-04-13 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub.d/10_freebsd.in: Don't exit if /boot/devices.hints
+ doesn't exist. Check also for /boot/kernel/kernel.gz. Print
+ `freebsd_loadenv' only when devices.hints exist.
+
+2009-04-13 Pavel Roskin <proski@gnu.org>
+
+ * term/usb_keyboard.c (grub_usb_keyboard_getkey): Warning fixes.
+
+2009-04-13 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/pc/grub-install.in (install_drive): Remove the BSD
+ partition number.
+ (grub_drive): Likewise.
+
+2009-04-13 David S. Miller <davem@davemloft.net>
+
+ * kern/sparc64/ieee1275/ieee1275.c: New file.
+ * include/grub/sparc64/ieee1275/ieee1275.h (IEEE1275_MAP_WRITE,
+ IEEE1275_MAP_READ, IEEE1275_MAP_EXEC, IEEE1275_MAP_LOCKED,
+ IEEE1275_MAP_CACHED, IEEE1275_MAP_SE, IEEE1275_MAP_GLOBAL,
+ IEEE1275_MAP_IE, IEEE1275_MAP_DEFAULT): Define.
+ (grub_ieee1275_map_physical, grub_ieee1275_claim_vaddr,
+ grub_ieee1275_alloc_physmem): Declare new exported functions.
+
+ * include/grub/sparc64/ieee1275/loader.h: New file.
+ * include/grub/sparc64/ieee1275/memory.h: Likewise.
+ * include/grub/sparc64/kernel.h: Likewise.
+ * loader/sparc64/ieee1275/linux.c: Likewise.
+
+ * conf/common.rmk (grub_probe_SOURCES): Add Sun partition module.
+ (grub_fstest_SOURCES): Likewise.
+
+ * util/hostdisk.c (make_device_name): Do not make any assumptions
+ about the length of drive names.
+
+ * kern/dl.c (grub_dl_load_file): Close file immediately when
+ we are done using it.
+
+2009-04-12 David S. Miller <davem@davemloft.net>
+
+ * kern/misc.c (grub_ltoa): Fix cast when handling negative
+ values. Noticed by Pavel Roskin.
+
+ * configure.ac: Check for __bswapsi2 and__bswapdi2 using
+ target compiler.
+
+ * genmk.rb: Add more flexible image type specification, also
+ pass --strip-unneeded to objcopy.
+ * conf/i386-pc.rmk: Use *_FORMAT.
+ * conf/i386-pc.mk: Rebuilt.
+
+ * disk/ieee1275/ofdisk.c (struct ofdisk_hash_ent): New struct.
+ (OFDISK_HASH_SZ): Define.
+ (ofdisk_hash): New hash table.
+ (ofdisk_hash_fn, ofdisk_hash_find, ofdisk_hash_add): New functions.
+ (grub_ofdisk_open): Use ofdisk_hash_ent address as disk->id
+ instead of device phandle which is not unique.
+
+ * kern/sparc64/ieee1275/init.c: Delete, replace with...
+ * kern/sparc64/ieee1275/crt0.S: assembler implementation.
+ * include/grub/sparc64/ieee1275/kernel.h: Declare grub_prefix[].
+ (GRUB_MOD_ALIGN, GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_TOTAL_MODULE_SIZE,
+ GRUB_KERNEL_MACHINE_KERNEL_IMAGE_SIZE,
+ GRUB_KERNEL_MACHINE_COMPRESSED_SIZE, GRUB_KERNEL_MACHINE_PREFIX,
+ GRUB_KERNEL_MACHINE_DATA_END): Define.
+ (grub_kernel_image_size, grub_total_module_size): Declare.
+
+2009-04-12 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Change the logic when we check for target tools.
+ Do it when the target is specified and it's different from the
+ specified value of the host.
+
+2009-04-11 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/hostdisk.c [__FreeBSD_kernel__]: Include sys/disk.h.
+ (grub_util_biosdisk_open) [__FreeBSD_kernel__]: Add support for
+ GNU/kFreeBSD. Check if a device is a character device. Use
+ DIOCGMEDIASIZE to get the size.
+ (convert_system_partition_to_system_disk) [__FreeBSD_kernel__]: Add
+ support for GNU/kFreeBSD.
+ (grub_util_biosdisk_get_grub_dev) [__FreeBSD_kernel__]: Check if OS_DEV
+ is a character device instead of a block device. Add support for
+ FreeBSD device names.
+
+ * util/getroot.c (find_root_device) [__FreeBSD_kernel__]: Check if ENT
+ is a character device instead of a block device.
+
+ * util/grub-probe.c (probe) [__FreeBSD_kernel__]: Check if DEVICE_NAME
+ is a character device instead of a block device.
+
+2009-04-11 Andrey Shuvikov <mr_hyro@yahoo.com>
+
+ * util/hostdisk.c [__FreeBSD__]: Include sys/disk.h.
+ (grub_util_biosdisk_open) [__FreeBSD__]: Add support for
+ FreeBSD. Check if a device is a character device. Use
+ DIOCGMEDIASIZE to get the size.
+ (convert_system_partition_to_system_disk) [__FreeBSD__]: Add
+ support for FreeBSD.
+ (grub_util_biosdisk_get_grub_dev) [__FreeBSD__]: Check if OS_DEV
+ is a character device instead of a block device. Add support for
+ FreeBSD device names.
+
+ * util/getroot.c (find_root_device) [__FreeBSD__]: Check if ENT is
+ a character device instead of a block device.
+ (grub_util_check_char_device): New function.
+
+ * util/grub-probe.c (probe) [__FreeBSD__]: Check if DEVICE_NAME is
+ a character device instead of a block device.
+
+ * include/grub/util/getroot.h (grub_util_check_char_device): New
+ prototype.
+
+2009-04-11 David S. Miller <davem@davemloft.net>
+
+ * conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link with
+ static libgcc.
+ * configure.ac: Check for __bswapsi2 and __bswapdi2 presence.
+ * include/grub/sparc64/libgcc.h (__bswapsi2): Export libgcc
+ function, if present.
+ (__bswapdi2): Likewise.
+
+ * include/grub/sparc64/ieee1275/boot.h: New file.
+ * boot/sparc64/ieee1275/boot.S: Likewise.
+ * boot/sparc64/ieee1275/diskboot.S: Likewise.
+
+ * kern/misc.c (grub_ltoa): New function.
+ (grub_vsprintf): Use it to format 'long' integers.
+
+2009-04-10 David S. Miller <davem@davemloft.net>
+
+ * disk/ieee1275/nand.c (grub_nand_open): All ieee1275 call arg
+ slots are of type grub_ieee1275_cell_t.
+ (grub_nand_read): Likewise.
+ * kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_INVALID,
+ IEEE1275_IHANDLE_INVALID): Use grub_ieee1275_cell_t since these
+ macros are used to compare values in arg/ret block of the call.
+ (grub_ieee1275_finddevice, grub_ieee1275_get_property,
+ grub_ieee1275_next_property, grub_ieee1275_get_property_length,
+ grub_ieee1275_instance_to_package, grub_ieee1275_package_to_path,
+ grub_ieee1275_instance_to_path, grub_ieee1275_write,
+ grub_ieee1275_read, grub_ieee1275_seek, grub_ieee1275_peer,
+ grub_ieee1275_child, grub_ieee1275_parent, grub_ieee1275_open,
+ grub_ieee1275_close, grub_ieee1275_set_property,
+ grub_ieee1275_set_color): All ieee1275 call arg slots are of type
+ grub_ieee1275_cell_t.
+ * kern/ieee1275/openfw.c (grub_map): Likewise.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_ihandle_t,
+ grub_ieee1275_phandle_t): Define as grub_unit32_t type.
+
+ * kern/ieee1275/init.c (grub_machine_init): Make 'actual' grub_ssize_t.
+ * kern/ieee1275/openfw.c (grub_children_iterate): Likewise.
+ (grub_devalias_iterate): Likewise.
+
+2009-04-10 Vladimir Serbinenko <phcoder@gmail.com>
+
+ UFS improvements
+
+ * fs/ufs.c (INODE_NBLOCKS): new definition
+ (struct grub_ufs_dirent): added fields for non-BSD dirents
+ (grub_ufs_get_file_block): fixed double indirect handling
+ (grub_ufs_lookup_symlink): use more robust way to determine whether
+ symlink is inline
+ (grub_ufs_find_file): support for non-BSD dirents
+ (grub_ufs_dir): support for non-BSD dirents
+
+2009-04-10 Bean <bean123ch@gnail.com>
+
+ * include/grub/efi/api.h (grub_efi_configuration_table): Add packed
+ attribute, otherwise the size would be wrong for i386 platform.
+
+ * include/grub/pci.h (grub_pci_read_word): New inline function.
+ (grub_pci_read_byte): Likewise.
+ (grub_pci_write): Likewise.
+ (grub_pci_write_word): Likewise.
+ (grub_pci_write_byte): Likewise.
+
+ * include/grub/pci.h (grub_pci_iteratefunc_t): Add NESTED_FUNC_ATTR.
+
+ * loader/i386/efi/linux.c (fake_bios_data): Moved to loadbios module.
+ (find_framebuf): Scan pci to locate the frame buffer address.
+
+ * commands/efi/fixvideo.c: New file.
+
+ * commands/efi/loadbios.c: Likewise.
+
+ * commands/memrw.c: Likewise.
+
+ * util/grub-dumpbios.in: Likewise.
+
+ * conf/common.rmk (grub-dumpbios): New utility.
+ (pkglib_MODULES): New module memrw.mod.
+ (memrw_mod_SOURCE): New macro.
+ (memrw_mod_CFLAGS): Likewise.
+ (memrw_mod_LDFLAGS): Likewise.
+
+ * conf/i386-efi.rmk (pkglib_MODULES): New module loadbios.mod and
+ fixvideo.mod.
+ (loadbios_mod_SOURCE): New macro.
+ (loadbios_mod_CFLAGS): Likewise.
+ (loadbios_mod_LDFLAGS): Likewise.
+ (fixvideo_mod_SOURCE): Likewise.
+ (fixvideo_mod_CFLAGS): Likewise.
+ (fixvideo_mod_LDFLAGS): Likewise.
+
+ * conf/x86_64.rmk (pkglib_MODULES): New module loadbios.mod and
+ fixvideo.mod.
+ (loadbios_mod_SOURCE): New macro.
+ (loadbios_mod_CFLAGS): Likewise.
+ (loadbios_mod_LDFLAGS): Likewise.
+ (fixvideo_mod_SOURCE): Likewise.
+ (fixvideo_mod_CFLAGS): Likewise.
+ (fixvideo_mod_LDFLAGS): Likewise.
+
+2009-04-08 Felix Zielcke <fzielcke@z-51.de>
+
+ * disk/lvm.c (grub_lvm_scan_device): Add a missing NULL check.
+
+2009-04-07 David S. Miller <davem@davemloft.net>
+
+ * kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Add
+ support for R_SPARC_OLO10 relocations. Fix compile warning for
+ R_SPARC_WDISP30 case.
+ * kern/sparc64/cache.S: Fix grub_arch_sync_caches implementation.
+
+2009-04-06 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/misc.h (ARRAY_SIZE): New macro.
+ * include/grub/i386/linux.h (GRUB_LINUX_VID_MODE_VESA_START):
+ New macro.
+ * loader/i386/linux.c (allocate_pages): Use free_pages().
+ (grub_linux_unload): Don't use free_pages().
+ (grub_linux_boot): Prevent accessing linux_vesafb_modes with a
+ wrong index. Treat all other modes as text modes.
+ (grub_cmd_linux): Initialize vid_mode unconditionally to
+ GRUB_LINUX_VID_MODE_NORMAL. Recognize and support "vga=ask".
+
+ * commands/help.c (print_command_help): Use cmd->prio, not
+ cmd->flags to check for GRUB_PRIO_LIST_FLAG_ACTIVE.
+
+2009-04-06 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Parttool
+
+ * parttool/pcpart.c: new file
+ * commands/parttool.c: likewise
+ * conf/common.rmk (pkglib_MODULES): Added parttool.mod and pcpart.mod
+ (parttool_mod_SOURCES): new variable
+ (parttool_mod_CFLAGS): likewise
+ (parttool_mod_LDFLAGS): likewise
+ (pcpart_mod_SOURCES): likewise
+ (pcpart_mod_CFLAGS): likewise
+ (pcpart_mod_LDFLAGS): likewise
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): added commands/parttool.c
+ and parttool/pcpart.c
+ * conf/i386-efi.rmk: likewise
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+ * conf/sparc64-ieee1275.rmk: likewise
+ * conf/x86_64-ieee1275.rmk: likewise
+
+2009-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Support for mtime and further expandability of dir command
+
+ * include/grub/lib/datetime.h: moved to ...
+ * include/grub/datetime.h: ... moved here and added
+ declaration of grub_unixtime2datetime. All users updated
+ * include/grub/fs.h: new syntax for dir and mtime functions in
+ struct grub_fs
+ * include/grub/fshelp.h: new declarations of GRUB_FSHELP_TYPE_MASK
+ and GRUB_FSHELP_FLAGS_MASK
+ * commands/ls.c (grub_ls_list_files): Write mtime in long format
+ * fs/ext2.c (grub_ext2_dir): use new dir syntax and supply mtime
+ (grub_ext2_mtime): new function
+ * fs/hfsplus.c (grub_hfsplus_dir): use new dir syntax and supply mtime
+ (grub_hfsplus_mtime): new function
+ * fs/ufs.c (GRUB_UFS_ATTR_TYPE): new definition
+ (GRUB_UFS_ATTR_FILE): likewise
+ (GRUB_UFS_ATTR_LNK): likewise
+ (struct grub_ufs_sblock): new fields mtime
+ (grub_ufs_read_inode): new parameter to read inode to a separate buffer
+ all users updated
+ (grub_ufs_dir): mtime support
+ (grub_ufs_mtime): new function
+ * fs/affs.c (grub_affs_dir): use new dir syntax
+ * fs/afs.c (grub_afs_dir): likewise
+ * fs/cpio.c (grub_cpio_dir): likewise
+ * fs/fat.c (grub_fat_find_dir): likewise
+ * fs/hfs.c (grub_hfs_dir): likewise
+ * fs/iso9660.c (grub_iso9660_dir): likewise
+ * fs/jfs.c (grub_jfs_dir): likewise
+ * fs/minix.c (grub_minix_dir): likewise
+ * fs/ntfs.c (grub_ntfs_dir): likewise
+ * fs/reiserfs.c (grub_reiserfs_dir): likewise
+ * fs/sfs.c (grub_sfs_dir): likewise
+ * fs/xfs.c (grub_xfs_dir): likewise
+ * util/hostfs.c (grub_hostfs_dir): likewise
+ * lib/datetime.c: moved to ...
+ * normal/datetime.c: ... moved here
+ (grub_unixtime2datetime): new function
+ * kern/rescue.c (grub_rescue_print_files): use new dir syntax
+ * normal/completion.c (iterate_dir): use new dir syntax
+ * normal/misc.c (grub_normal_print_device_info): tell the
+ last modification time of a volume
+ * kern/fs.c (grub_fs_probe): updated dummy function to use new syntax
+ * conf/common.rmk: added lib/datetime.c to ls.mod
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): add normal/datetime.c
+ (normal_mod_SOURCES): likewise
+ (datetime_mod_SOURCES): Removed lib/datetime.c
+ * conf/i386-efi.rmk: likewise
+ * conf/i386-ieee1275.rmk: likewise
+ * conf/i386-pc.rmk: likewise
+ * conf/powerpc-ieee1275.rmk: likewise
+ * conf/sparc64-ieee1275.rmk: likewise
+ * conf/x86_64-efi.rmk: likewise
+
+2009-04-05 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Trim trailing spaces in FAT label and support mtools-like labels
+
+ * fs/fat.c (grub_fat_iterate_dir): New function based
+ on grub_fat_find_dir
+ (grub_fat_find_dir): use grub_fat_iterate_dir
+ (grub_fat_label): likewise
+
+2009-04-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): add list.h
+ and command.h
+ remove extraneous kernel_elf_HEADERS
+
+2009-04-04 Bean <bean123ch@gnail.com>
+
+ * include/grub/util/misc.h: Add dummy function fsync for mingw.
+
+ * util/misc.c: Likewise.
+
+2009-04-04 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * loader/i386/efi/linux.c (fake_bios_data): Use grub_dprintf
+ instead of grub_printf.
+
+2009-04-03 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/linux.c (grub_linux_setup_video): Fill
+ `params->{red,green,blue,reserved}_{mask_size,field_pos}' with
+ values from `mode info' structure instead of hardcoded
+ values.
+
+2009-04-01 Pavel Roskin <proski@gnu.org>
+
+ * Makefile.in: Remove all references to MODULE_LDFLAGS, it's
+ unused now.
+ * genmk.rb: Likewise.
+ * configure.ac: Likewise.
+
+2009-04-01 Manoel Abranches <mrabran@linux.vnet.ibm.com>
+
+ * aclocal.m4: Move --build-id=none from MODULE_LDFLAGS to
+ TARGET_LDFLAGS. This corrects a problem with grub-mkelfimage.
+
+2009-04-01 David S. Miller <davem@davemloft.net>
+
+ * normal/sparc64/setjmp.S: Fix setjmp implementation.
+ * include/grub/sparc64/setjmp.h (grub_jmp_buf): Update.
+ (grub_setjmp): Mark with 'returns_twice' attribute.
+ * include/grub/i386/setjmp.h (grub_setjmp): Likewise
+ * include/grub/powerpc/setjmp.h (grub_setjmp): Likewise.
+ * include/grub/x86_64/setjmp.h (grub_setjmp): Likewise.
+
+2009-04-01 Robert Millan <rmh@aybabtu.com>
+
+ Reapply fix from 2008-07-28 which was accidentally reverted; also
+ perform the same fix to a similar check in same function.
+
+ * disk/raid.c (grub_raid_scan_device): Do not abort when two disks
+ with the same number are found, just use issue a warning with
+ grub_dprintf(), as this error has been reported to be non-fatal.
+
+2009-03-31 Pavel Roskin <proski@gnu.org>
+
+ * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Provide safe default
+ for cross-compilation.
+
+2009-03-30 Robert Millan <rmh@aybabtu.com>
+
+ Fix i386-ieee1275 build.
+
+ * include/grub/i386/ieee1275/loader.h (grub_multiboot2_real_boot):
+ Remove declaration.
+
+2009-03-30 Pavel Roskin <proski@gnu.org>
+
+ * fs/hfs.c (grub_hfs_strncasecmp): Integrate into ...
+ (grub_hfs_cmp_catkeys): ... this. Don't assume strings to be
+ zero-terminated, rely only on the strlen value. Fix comparison
+ of strings differing in length.
+
+2009-03-30 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): Check for zImage before
+ checking for abi version. Improve error messages on BIOS to notify
+ user about `linux16' command.
+
+2009-03-29 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Leak fixes
+
+ * kern/disk.c (grub_disk_cache_store): Invalidate previous cache
+ in case of collision
+ * disk/scsi.c (grub_scsi_open): free scsi in case of error
+
+2009-03-29 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/linux.c (grub_cmd_linux): Parse "vga=" parameter and
+ set `vid_mode' accordingly.
+ (grub_linux_boot): Process `vid_mode' and set video mode.
+
+2009-03-29 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in (linux_entry): New function.
+ Factorize generation of Linux boot entries.
+
+2009-03-29 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Make the format of Environment Block plain text. The boot loader
+ part is not tested well yet.
+
+ * util/grub-editenv.c (DEFAULT_ENVBLK_SIZE): New macro.
+ (buffer): Removed.
+ (envblk): Likewise.
+ (usage): Remove "info" and "clear". Add "unset". Update the
+ description of "set", as this does not delete variables any
+ longer.
+ (create_envblk_file): Complete rewrite.
+ (open_envblk_file): Likewise.
+ (cmd_info): Removed.
+ (cmd_list): Likewise.
+ (cmd_set): Likewise.
+ (cmd_clear): Likewise.
+ (list_variables): New function.
+ (write_envblk): Likewise.
+ (set_variables): Likewise.
+ (unset_variables): Likewise.
+ (main): Complete rewrite.
+
+ * commands/loadenv.c (buffer): Removed.
+ (envblk): Likewise.
+ (open_envblk_file): New function.
+ (read_envblk_file): Complete rewrite.
+ (grub_cmd_load_env): Likewise.
+ (grub_cmd_list_env): Likewise.
+ (struct blocklist): New struct.
+ (free_blocklists): New function.
+ (check_blocklists): Likewise.
+ (write_blocklists): Likewise.
+ (grub_cmd_save_env): Complete rewrite.
+
+ * include/grub/lib/envblk.h (GRUB_ENVBLK_SIGNATURE): Replaced with
+ a plain text signature.
+ (GRUB_ENVBLK_MAXLEN): Removed.
+ (struct grub_envblk): Complete rewrite.
+ (grub_envblk_find): Removed.
+ (grub_envblk_insert): Likewise.
+ (grub_envblk_open): New prototype.
+ (grub_envblk_set): Likewise.
+ (grub_envblk_delete): Put const to VALUE.
+ (grub_envblk_iterate): Put const to NAME and VALUE.
+ (grub_envblk_close): New prototype.
+ (grub_envblk_buffer): New inline function.
+ (grub_envblk_size): Likewise.
+
+ * lib/envblk.c: Include grub/mm.h.
+ (grub_env_find): Removed.
+ (grub_envblk_open): New function.
+ (grub_envblk_close): Likewise.
+ (escaped_value_len): Likewise.
+ (find_next_line): Likewise.
+ (grub_envblk_insert): Removed.
+ (grub_envblk_set): New function.
+ (grub_envblk_delete): Complete rewrite.
+ (grub_envblk_iterate): Likewise.
+
+2009-03-28 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add `linux16.mod'.
+ (linux16_mod_SOURCES, linux16_mod_CFLAGS, linux16_mod_LDFLAGS): New
+ variables. Use 16-bit loader.
+ (linux_mod_SOURCES, linux_mod_CFLAGS, linux_mod_LDFLAGS): Use 32-bit
+ loader.
+ * kern/i386/loader.S (grub_linux_boot): Rename to ...
+ (grub_linux16_boot): ... this. Update all users.
+ * loader/i386/linux.c (grub_linux32_boot): Rename to ...
+ (grub_linux_boot): ... this. Update all users.
+
+ * loader/i386/pc/linux.c (GRUB_MOD_INIT(linux)): Rename to ...
+ (GRUB_MOD_INIT(linux16)): ... this. Rename `linux' and `initrd'
+ commands to `linux16' and `initrd16'.
+ (GRUB_MOD_FINI(linux)): Rename to ...
+ (GRUB_MOD_FINI(linux16)): ... this.
+
+2009-03-24 Pavel Roskin <proski@gnu.org>
+
+ * genmk.rb: Define ASM_FILE for *.S files for *.lst generation,
+ not just for compilation.
+
+2009-03-22 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Move multiboot helper out of kernel
+
+ * conf/i386-pc.rmk (multiboot_mod_SOURCES): Add
+ `loader/i386/multiboot_helper.S'.
+ * conf/i386-coreboot.rmk: Likewise
+ * conf/i386-ieee1275.rmk: Likewise
+
+ * kern/i386/loader.S: Move multiboot helpers from here...
+ * loader/i386/multiboot_helper.S: ...moved here
+ * include/grub/i386/loader.h: Move declarations of multiboot
+ helpers from here...
+ * include/grub/i386/multiboot.h: ...moved here
+ * loader/i386/multiboot.c: Added include of grub/cpu/multiboot.h
+
+2009-03-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/env.c (grub_env_context_open): Added an argument to specify
+ whether a new context inherits exported variables from current
+ one. This is useful when making a sandbox to interpret a config
+ file.
+ All callers updated.
+
+ * include/grub/env.h (grub_env_context_open): Updated the prototype.
+
+2009-03-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/env.c (grub_env_context_close): Fix memory leaks.
+
+2009-03-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/main.c (grub_normal_execute): Added an argument
+ BATCH to specify if an interactive interface should be provided
+ after reading a config file.
+ All callers updated.
+ (read_command_list): Prevent being executed twice.
+ (read_fs_list): Likewise.
+
+ * include/grub/normal.h (grub_normal_execute): Updated the
+ prototype.
+
+2009-03-22 Pavel Roskin <proski@gno.org>
+
+ * kern/powerpc/ieee1275/startup.S: Replace EXT_C(start) with
+ _start.
+ * kern/i386/pc/startup.S: Likewise.
+ * kern/i386/efi/startup.S: Likewise.
+ * kern/i386/ieee1275/startup.S: Likewise.
+ * kern/i386/coreboot/startup.S: Likewise.
+ * kern/x86_64/efi/startup.S: Likewise.
+
+ * aclocal.m4 (grub_CHECK_START_SYMBOL): Remove.
+ * configure.ac: Don't call grub_CHECK_START_SYMBOL.
+ * kern/i386/pc/startup.S: Use _start instead of START_SYMBOL.
+
+2009-03-21 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Bugfixes in multiboot for bugs uncovered by solaris kernel.
+
+ * loader/i386/multiboot_elfxx.c (grub_multiboot_load_elf): Corrected
+ limit detection.
+ Use vaddr of correct segment for entry_point.
+
+2009-03-21 Bean <bean123ch@gmail.com>
+
+ * commands/blocklist.c: Add include file <grub/command.h>, remove
+ <grub/normal.h> and <grub/arg.h>.
+ (grub_cmd_blocklist): Use the new command interface.
+ (GRUB_MOD_INIT): Likewise.
+ (GRUB_MOD_FINI): Likewise.
+ * commands/boot.c: Likewise.
+ * commands/cat.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/configfile.c: Likewise.
+ * commands/crc.c: Likewise.
+ * commands/echo.c: Likewise.
+ * commands/halt.c: Likewise.
+ * commands/handler.c: Likewise.
+ * commands/hdparm.c: Likewise.
+ * commands/help.c: Likewise.
+ * commands/hexdump.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/lsmmap.c: Likewise.
+ * commands/lspci.c: Likewise.
+ * commands/loadenv.c: Likewise.
+ * commands/read.c: Likewise.
+ * commands/reboot.c: Likewise.
+ * commands/search.c: Likewise.
+ * commands/sleep.c: Likewise.
+ * commands/test.c: Likewise.
+ * commands/usbtest.c: Likewise.
+ * commands/videotest.c: Likewise.
+ * commands/i386/cpuid.c: Likewise.
+ * commands/i386/pc/halt.c: Likewise.
+ * commands/i386/pc/play.c: Likewise.
+ * commands/i386/pc/pxecmd.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/i386/pc/vbetest.c: Likewise.
+ * commands/ieee1275/suspend.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * font/font_cmd.c: Likewise.
+ * hello/hello.c: Likewise.
+ * loader/efi/appleloader.c: Likewise.
+ * loader/efi/chainloader.c: Likewise.
+ * loader/i386/bsd.c: Likewise.
+ * loader/i386/efi/linux.c: Likewise.
+ * loader/i386/ieee1275/linux.c: Likewise.
+ * loader/i386/linux.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/terminfo.c: Likewise.
+
+ * term/i386/pc/vesafb.c: Removed <grub/arg.h>.
+ * term/i386/pc/vga.c: Likewise.
+ * video/readers/jpeg.c: Likewise.
+ * video/readers/png.c: Likewise.
+ * video/readers/tga.c: Likewise.
+
+ * util/grub-fstest (cmd_loopback): Removed.
+ (cmd_blocklist): Likewise.
+ (cmd_ls): Likewise.
+ (grub_register_command): Likewise.
+ (grub_unregister_command): Likewise.
+ (execute_command): Use grub_command_find to locate command and execute
+ it.
+
+ * include/grub/efi/chainloader.h: Removed.
+ * loader/efi/chainloader_normal.c: Likewise.
+ * loader/i386/bsd_normal.c: Likewise.
+ * loader/i386/pc/chainloader_normal.c: Likewise.
+ * loader/i386/pc/multiboot_normal.c: Likewise.
+ * loader/linux_normal.c: Likewise.
+ * loader/multiboot_loader_normal.c: Likewise.
+ * loader/powerpc/ieee1275/linux_normal.c: Likewise.
+
+ * gencmdlist.sh: Scan new registration command grub_register_extcmd
+ and grub_register_command_p1.
+
+ * conf/common.rmk (grub_fstest_SOURCES): Add kern/list.c,
+ kern/command.c, lib/arg.c and commands/extcmd.c.
+ (pkglib_MODULES): Remove boot.mod, and minicmd.mod and extcmd.mod.
+ (minicmd_mod_SOURCES): New variable.
+ (minicmd_mod_CFLAGS): Likewise.
+ (minicmd_mod_LDFLAGS): Likewise.
+ (extcmd_mod_SOURCES): Likewise.
+ (extcmd_mod_CFLAGS): Likewise.
+ (extcmd_mod_LDFLAGS): Likewise.
+ (boot_mod_SOURCES): Removed.
+ (boot_mod_CFLAGS): Likewise.
+ (boot_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/command.c and
+ kern/corecmd.c.
+ (kernel_img_HEADERS): Add command.h.
+ (grub_emu_SOURCES): Remove commands/boot.c and normal/arg.c, add
+ commands/minicmd.c, kern/command.c, kern/corecmd.c, commands/extcmd.c
+ and lib/arg.c.
+ (pkglib_MODULES): Change _linux.mod, _chain.mod, _bsd.mod and
+ _multiboot.mod as linux.mod, chain.mod, bsd.mod and multiboot.mod,
+ remove the corresponding normal mode command.
+ (normal_mod_SOURCES): Remove normal/arg.c.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+
+ * include/grub/arg.h: Move from here ...
+ * include/grub/lib/arg.h: ... to here.
+
+ * normal/arg.c: Move from here ...
+ * lib/arg.c: ... to here.
+
+ * commands/extcmd.c: New file.
+ * commands/minicmd.c: Likewise.
+ * include/grub/command.h: Likewise.
+ * include/grub/extcmd.h: Likewise.
+ * kern/command.c: Likewise.
+ * kern/corecmd.c: Likewise.
+
+ * kern/list.c (grub_list_iterate): Return int instead of void.
+ (grub_list_insert): New function.
+ (grub_prio_list_insert): Likewise.
+
+ * kern/rescue.c (grub_rescue_command): Removed.
+ (grub_rescue_command_list): Likewise.
+ (grub_rescue_register_command): Likewise.
+ (grub_rescue_unregister_command): Likewise.
+ (grub_rescue_cmd_boot): Move to minicmd.c
+ (grub_rescue_cmd_help): Likewise.
+ (grub_rescue_cmd_info): Likewise.
+ (grub_rescue_cmd_boot): Likewise.
+ (grub_rescue_cmd_testload): Likewise.
+ (grub_rescue_cmd_dump): Likewise.
+ (grub_rescue_cmd_rmmod): Likewise.
+ (grub_rescue_cmd_lsmod): Likewise.
+ (grub_rescue_cmd_exit): Likewise.
+ (grub_rescue_print_devices): Moved to corecmd.c.
+ (grub_rescue_print_files): Likewise.
+ (grub_rescue_cmd_ls): Likewise.
+ (grub_rescue_cmd_insmod): Likewise.
+ (grub_rescue_cmd_set): Likewise.
+ (grub_rescue_cmd_unset): Likewise.
+ (attempt_normal_mode): Use grub_command_find to get normal module.
+ (grub_enter_rescue_mode): Use grub_register_core_commands to register
+ commands, remove grub_rescue_register_command calls.
+
+ * normal/command.c (grub_register_command): Removed.
+ (grub_unregister_command): Likewise.
+ (grub_command_find): Likewise.
+ (grub_iterate_commands): Likewise.
+ (rescue_command): Likewise.
+ (export_command): Moved to corecmd.c.
+ (set_command): Removed.
+ (unset_command): Likewise.
+ (insmod_command): Likewise.
+ (rmmod_command): Likewise.
+ (lsmod_command): Likewise.
+ (grub_command_init): Likewise.
+
+ * normal/completion.c (iterate_command): Use cmd->prio to check for
+ active command.
+ (complete_arguments): Use grub_extcmd_t structure to find options.
+ (grub_normal_do_completion): Change function grub_iterate_commands to
+ grub_command_iterate.
+
+ * normal/execute.c (grub_script_execute_cmd): No need to parse
+ argument here.
+
+ * normal/main.c (grub_dyncmd_dispatcher): New function.
+ (read_command_list): Register unload commands as dyncmd.
+ (grub_cmd_normal): Use new command interface, register rescue,
+ unregister normal at entry, register normal, unregister rescue at exit.
+
+ * include/grub/list.h (grub_list_test_t): New type.
+ (grub_list_iterate): Return int instead of void.
+ (grub_list_insert): New function.
+ (GRUB_AS_NAMED_LIST_P): New macro.
+ (GRUB_AS_PRIO_LIST): Likewise.
+ (GRUB_AS_PRIO_LIST_P): Likewise.
+ (GRUB_PRIO_LIST_PRIO_MASK): New constant.
+ (GRUB_PRIO_LIST_FLAG_ACTIVE): Likewise.
+ (grub_prio_list): New structure.
+ (grub_prio_list_insert): New function.
+ (grub_prio_list_remove): New inline function.
+
+ * include/grub/normal.h: Remove <grub/arg.h>, add <grub/command.h>.
+ (GRUB_COMMAND_FLAG_CMDLINE): Moved to command.h.
+ (GRUB_COMMAND_FLAG_MENU): Likewise.
+ (GRUB_COMMAND_FLAG_BOTH): Likewise.
+ (GRUB_COMMAND_FLAG_TITLE): Likewise.
+ (GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
+ (GRUB_COMMAND_FLAG_NO_ARG_PARSE): Removed.
+ (GRUB_COMMAND_FLAG_NOT_LOADED): Likewise.
+ (grub_command): Likewise.
+ (grub_register_command): Likewise.
+ (grub_command_find): Likewise.
+ (grub_iterate_commands): Likewise.
+ (grub_command_init): Likewise.
+ (grub_arg_parse): Likewise.
+ (grub_arg_show_help): Likewise.
+
+ * include/grub/rescue.h (grub_rescue_register_command): Removed.
+ (grub_rescue_unregister_command): Likewise.
+
+ * include/grub/i386/bsd.h: Remove grub_rescue_cmd_freebsd,
+ grub_rescue_cmd_openbsd, grub_rescue_cmd_netbsd,
+ grub_rescue_cmd_freebsd_loadenv and grub_rescue_cmd_freebsd_module.
+
+ * include/grub/i386/efi/loader.h: Remove grub_rescue_cmd_linux and
+ grub_rescue_cmd_initrd.
+ * include/grub/i386/loader.h: Likewise.
+ * include/grub/x86_64/loader.h: Likewise.
+
+ * include/grub/i386/pc/chainloader.h: Remove grub_chainloader_cmd.
+
+2009-03-21 Bean <bean123ch@gmail.com>
+
+ * util/hostdisk.c (read_device_map): Use grub_util_get_disk_size
+ instead of stat in mingw environment.
+
+ * util/misc.c (grub_millisleep): Use Sleep in mingw environment.
+
+ * aclocal.m4 (grub_CHECK_LINK_DIR): New function.
+
+ * configure.ac: Use grub_CHECK_LINK_DIR to determine whether to use
+ AC_CONFIG_LINKS.
+
+2009-03-21 Bean <bean123ch@gmail.com>
+
+ * fs/ext2.c (grub_ext2_mount): Change errno to GRUB_ERR_BAD_FS for
+ out of range error.
+
+2009-03-18 Michel Dänzer <michel@daenzer.net>
+
+ * fs/ext2.c (grub_ext2_read_block): Take endianness into account when
+ checking inode flags for EXT4_EXTENTS_FLAG.
+
+2009-03-18 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/linux.c: Include `<grub/video.h>' and
+ `<grub/i386/pc/vbe.h>'..
+ (grub_linux_setup_video): New function. Loosely based on the EFI one.
+ (grub_linux32_boot): Attempt to configure video settings with
+ grub_linux_setup_video().
+ (grub_rescue_cmd_linux): Set noreturn=0 in grub_loader_set, in order
+ to avoid grub_console_fini() which would step out of graphical mode
+ unconditionally.
+
+2009-03-14 Robert Millan <rmh@aybabtu.com>
+
+ Fix build on powerpc.
+ * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Add `handler.h'.
+
+2009-03-12 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * term/gfxterm.c (GRUB_MOD_FINI(term_gfxterm)): Correct name of
+ background image command.
+
+2009-03-12 Colin D Bennett <colin@gibibit.com>
+
+ * term/gfxterm.c (draw_cursor): Ensure character is redrawn.
+ (grub_gfxterm_putchar): Extract pairs of identical calls to
+ draw_cursor out of conditional blocks.
+
+2009-03-11 Pavel Roskin <proski@gnu.org>
+
+ * fs/hfs.c (grub_hfs_strncasecmp): New function.
+ (grub_hfs_cmp_catkeys): Use HFS specific string comparison.
+
+2009-03-11 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/multiboot_elfxx.c
+ (CONCAT(grub_multiboot_load_elf, XX)): Do not reject ET_DYN files.
+
+2009-03-11 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add `kern/list.c' and
+ `kern/handler.c'.
+
+2009-03-11 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/multiboot.c (code_size): New variable.
+ (grub_multiboot): Define offsets by adding to `code_size' rather
+ than subtracting from `grub_multiboot_payload_size'. Provide
+ 4-byte alignment to MBI and others by increasing
+ `boot_loader_name_length' appropriately.
+
+ * loader/i386/multiboot_elfxx.c
+ (CONCAT(grub_multiboot_load_elf, XX)): Initialize `code_size'.
+
+2009-03-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove duplicated
+ `fs/ext2.c'.
+
+2009-03-08 Robert Millan <rmh@aybabtu.com>
+
+ Make loader/i386/linux.c usable on i386-pc again.
+
+ * kern/i386/pc/init.c (grub_machine_init): Disable addition of low
+ memory to heap.
+ * loader/i386/linux.c [GRUB_MACHINE_PCBIOS] (allocate_pages): Remove
+ `#error' stanza.
+
+2009-03-07 Bean <bean123ch@gmail.com>
+
+ * loader/i386/efi/linux.c (grub_rescue_cmd_initrd): Fix a bug in initrd
+ allocation.
+
+2009-03-06 Robert Millan <rmh@aybabtu.com>
+
+ Fix display issue on terminals with screen size other than 80x25
+ (e.g. gfxterm with resolution higher than 640x480).
+
+ * normal/main.c (grub_normal_init_page): Display title text in a
+ position relative to the center of the terminal instead of relying
+ on a hardcoded offset.
+
+2009-03-04 Robert Millan <rmh@aybabtu.com>
+
+ Filter /etc/grub.d/10_* so that only add-ons for native kernels are
+ installed.
+
+ * Makefile.in (host_kernel): New variable.
+ * conf/common.rmk (grub-mkconfig_SCRIPTS): Conditionalize all 10_*.in
+ scripts instead of just the windows one.
+ * configure.ac: Initialize and AC_SUBST `host_kernel'.
+
+2009-03-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `kern/list.c' and
+ `kern/handler.c'.
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+2009-03-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * partmap/pc.c (pc_partition_map_iterate): Skip over invalid BSD partitions
+ or if there's no space for the disk label and print the partition number on a
+ invalid magic.
+
+2009-03-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/misc.c: Include <time.h>.
+ (grub_millisleep): New function.
+
+2009-03-04 Bean <bean123ch@gmail.com>
+
+ * configure.ac: Only test -mcmodel=large option in x86_64-efi, also add
+ another option -mno-red-zone.
+
+ * commands/handler.c: Change module description.
+
+ * kern/handler.c: Add missing space at the end of description line.
+
+ * kern/list.c: Likewise.
+
+2009-03-03 Robert Millan <rmh@aybabtu.com>
+
+ Move more components to the relocation area, and fix mbi pointer
+ handling to use the destination rather than the origin (thanks to
+ Vladimir Serbinenko for spotting).
+
+ * loader/i386/multiboot.c (mbi_dest): New variable.
+ (grub_multiboot_boot): Use `mbi_dest' instead of `mbi'.
+ (grub_multiboot): Put cmdline, boot_loader_name and mbi in the
+ relocation area.
+
+2009-03-01 Bean <bean123ch@gmail.com>
+
+ * include/grub/efi/api.h (GRUB_EFI_MPS_TABLE_GUID): New constant.
+ (GRUB_EFI_ACPI_TABLE_GUID): Likewise.
+ (GRUB_EFI_ACPI_20_TABLE_GUID): Likewise.
+ (GRUB_EFI_SMBIOS_TABLE_GUID): Likewise.
+
+ * loader/i386/efi/linux.c (acpi_guid): New variable.
+ (acpi_guid): Likewise.
+ (EBDA_SEG_ADDR): New constant.
+ (LOW_MEM_ADDR): Likewise.
+ (FAKE_EBDA_SEG): Likewise.
+ (fake_bios_data): New function.
+ (grub_linux_boot): Call fake_bios_data.
+
+2009-03-01 Bean <bean123ch@gmail.com>
+
+ * commands/terminal.c: Removed.
+
+ * commands/handler.c: New file.
+
+ * include/grub/list.h: Likewise.
+
+ * include/grub/handler.h: Likewise.
+
+ * kern/list.c: Likewise.
+
+ * kern/handler.c: Likewise.
+
+ * kern/term.h: Include header file <grub/handler.h>.
+ (grub_term_input): Move next field to the beginning.
+ (grub_term_output): Likewise.
+ (grub_term_input_class): New variable.
+ (grub_term_output_class): Likewise.
+ (grub_term_register_input): Changed to inline function.
+ (grub_term_register_output): Likewise.
+ (grub_term_unregister_input): Likewise.
+ (grub_term_unregister_output): Likewise.
+ (grub_term_set_current_input): Likewise.
+ (grub_term_set_current_output): Likewise.
+ (grub_term_get_current_input): Likewise.
+ (grub_term_get_current_output): Likewise.
+ (grub_term_iterate_input): Removed.
+ (grub_term_iterate_output): Likewise.
+
+ * kern/term.c (grub_term_list_input): Removed.
+ (grub_term_list_output): Likewise.
+ (grub_term_input_class): New variable.
+ (grub_term_output_class): Likewise.
+ (grub_cur_term_input): Change variable as macro.
+ (grub_cur_term_output): Likewise.
+ (grub_term_register_input): Removed.
+ (grub_term_register_output): Likewise.
+ (grub_term_unregister_input): Likewise.
+ (grub_term_unregister_output): Likewise.
+ (grub_term_set_current_input): Likewise.
+ (grub_term_set_current_output): Likewise.
+ (grub_term_iterate_input): Likewise.
+ (grub_term_iterate_output): Likewise.
+ (grub_term_get_current_input): Likewise.
+ (grub_term_get_current_output): Likewise.
+
+ * util/grub-editenv.c: Include header file <grub/handler.h>.
+ (grub_term_get_current_input): Removed.
+ (grub_term_get_current_output): Likewise.
+ (grub_term_input_class): New variable.
+ (grub_term_output_class): Likewise.
+
+ * util/grub-fstest.c (grub_term_get_current_input): Removed.
+ (grub_term_get_current_output): Likewise.
+ (grub_term_input_class): New variable.
+ (grub_term_output_class): Likewise.
+
+ * util/grub-probe.c (grub_term_get_current_input): Removed.
+ (grub_term_get_current_output): Likewise.
+ (grub_term_input_class): New variable.
+ (grub_term_output_class): Likewise.
+
+ * util/i386/pc/grub-setup.c (grub_term_get_current_input): Removed.
+ (grub_term_get_current_output): Likewise.
+ (grub_term_input_class): New variable.
+ (grub_term_output_class): Likewise.
+
+ * conf/common.rmk (pkglib_MODULES): Replace terminal with handler.
+ (terminal_mod_SOURCES): Likewise.
+ (terminal_mod_CFLAGS): Likewise.
+ (terminal_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Replace terminal.c with
+ handler.c.
+ (kernel_img_SOURCES): Add list.c and handler.c.
+ (kernel_img_HEADERS): Add list.h and handler.h.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Replace terminal.c with
+ handler.c.
+ (kernel_mod_SOURCES): Add list.c and handler.c.
+ (kernel_mod_HEADERS): Add list.h and handler.h.
+
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Replace terminal.c with
+ handler.c.
+ (kernel_elf_SOURCES): Add list.c and handler.c.
+ (kernel_elf_HEADERS): Add list.h and handler.h.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with
+ handler.c.
+ (kernel_elf_SOURCES): Add list.c and handler.c.
+ (kernel_elf_HEADERS): Add list.h and handler.h.
+
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Replace terminal.c with
+ handler.c.
+ (kernel_mod_SOURCES): Add list.c and handler.c.
+ (kernel_mod_HEADERS): Add list.h and handler.h.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace terminal.c with
+ handler.c.
+ (kernel_elf_SOURCES): Add list.c and handler.c.
+ (kernel_elf_HEADERS): Add list.h and handler.h.
+
+2009-02-27 Robert Millan <rmh@aybabtu.com>
+
+ Factorize elf32 / elf64 code in Multiboot loader. This will
+ prevent it from getting out of sync again.
+
+ * loader/i386/multiboot.c (grub_multiboot_is_elf32,
+ grub_multiboot_load_elf32, grub_multiboot_is_elf64,
+ grub_multiboot_load_elf64): Move from here ...
+ * loader/i386/multiboot_elfxx.c (grub_multiboot_is_elf,
+ grub_multiboot_load_elf): ... to here (new file).
+
+2009-02-27 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in: Rename "single-user mode" to
+ "recovery mode".
+
+2009-02-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Don't leak in SCSI code.
+ * disk/scsi.c (grub_scsi_close): free `scsi'.
+
+2009-02-27 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c: Move from here ...
+ * loader/i386/multiboot.c: ... to here. Update all users.
+
+2009-02-27 Robert Millan <rmh@aybabtu.com>
+
+ Patch from Alexandre Bique <bique.alexandre@gmail.com>
+ * util/i386/pc/grub-setup.c (setup): Fix directory path.
+
+2009-02-27 Krzysztof Smiechowicz <deadwood@wp.pl>
+
+ * fs/sfs.c (grub_sfs_read_extent): Correction to traversing extent
+ b-tree.
+
+2009-02-27 Robert Millan <rmh@aybabtu.com>
+
+ * kern/misc.c (grub_strtoull): Fix bug (it mistakenly parsed the
+ `0x' qualifier as 0 when base is specified as parameter).
+
+2009-02-24 Bean <bean123ch@gmail.com>
+
+ * configure.ac: Check for -mcmodel=large in x86_64 target.
+
+ * include/grub/efi/api.h (efi_call_10): New macro.
+ (efi_wrap_10): New function.
+
+ * include/grub/efi/pe32.h (GRUB_PE32_REL_BASE_HIGH): New macro.
+ (GRUB_PE32_REL_BASED_HIGH): Likewise.
+ (GRUB_PE32_REL_BASED_LOW): Likewise.
+ (GRUB_PE32_REL_BASED_HIGHLOW): Likewise.
+ (GRUB_PE32_REL_BASED_HIGHADJ): Likewise.
+ (GRUB_PE32_REL_BASED_MIPS_JMPADDR): Likewise.
+ (GRUB_PE32_REL_BASED_SECTION): Likewise.
+ (GRUB_PE32_REL_BASED_REL): Likewise.
+ (GRUB_PE32_REL_BASED_IA64_IMM64): Likewise.
+ (GRUB_PE32_REL_BASED_DIR64): Likewise.
+ (GRUB_PE32_REL_BASED_HIGH3ADJ): Likewise.
+
+ * kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Fixed relocation
+ issue.
+
+ * kern/x86_64/efi/callwrap.S (efi_wrap_6): Bug fix.
+ (efi_wrap_10): New function.
+
+ * kern/x86_64/efi/startup.S (codestart): Use relative addressing.
+
+ * loader/efi/appleloader.c (devpath_5): Add support for late 2008
+ MB/MBP model (NV chipset).
+ (devdata_devs): Add devpath_5 to the list.
+
+ * load/i386/efi/linux.c (video_base): Remove variable.
+ (RGB_MASK): New macro.
+ (RGB_MAGIC): Likewise.
+ (LINE_MIN): Likewise.
+ (LINE_MAX): Likewise.
+ (FBTEST_STEP): Likewise.
+ (FBTEST_COUNT): Likewise.
+ (fb_list): New variable.
+ (grub_find_video_card): Remove function.
+ (find_framebuf): New function.
+ (grub_linux_setup_video): Use find_framebuf to get frame buffer and
+ line length.
+
+ * util/i386/efi/grub-mkimage.c (grub_reloc_section): Fix relocation
+ problem for x86_64.
+
+2009-02-22 Vesa Jääskeläinen <chaac@nic.fi>
+
+ Patch #25624 by Kevin Lacquement <kevin@lacqui>.
+
+ * util/grub-mkconfig.in: Use ${grub_mkdevicemap} instead of hard
+ coding tool name.
+
+2009-02-22 Robert Millan <rmh@aybabtu.com>
+
+ * include/multiboot.h (MULTIBOOT_INFO_ALIGN): New macro.
+ * loader/i386/pc/multiboot.c (grub_multiboot): Include the MBI
+ in our relocation, instead of using it directly from heap. Also
+ use `MULTIBOOT_INFO_ALIGN' to ensure it is aligned.
+
+2009-02-21 Robert Millan <rmh@aybabtu.com>
+
+ Implement USB keyboard support (based on patch by Marco Gerards)
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add `usb_keyboard.mod'.
+ (usb_keyboard_mod_SOURCES, usb_keyboard_mod_CFLAGS)
+ (usb_keyboard_mod_LDFLAGS): New variables.
+
+ * term/usb_keyboard.c: New file.
+
+2009-02-14 Vladimir Serbinenko <phcoder@gmail.com>
+
+ Corrected wrong declaration
+
+ * kern/disk.c: corrected declaration of grub_disk_ata_pass_through.
+
+2009-02-14 Christian Franke <franke@computer.org>
+
+ * commands/lspci.c (grub_pci_classes): Add `SATA Controller'.
+ (grub_lspci_iter): Print class code and programming interface byte.
+
+2009-02-14 Christian Franke <franke@computer.org>
+
+ * gendistlist.sh: Ignore `.svn' directories.
+
+2009-02-14 Felix Zielcke <fzielcke@z-51.de>
+
+ * fs/fat.c: Add 2009 to Copyright line.
+
+2009-02-14 Christian Franke <franke@computer.org>
+
+ * commands/hdparm.c: New file. Provides `hdparm' command
+ which sends ATA commands via grub_disk_ata_pass_through ().
+
+ * conf/i386-pc.rmk: Add ata_pthru.mod and hdparm.mod.
+
+ * disk/ata.c: Include <grub/ata.h>. Move <grub/misc.h>
+ and <grub/cpu/io.h> to include/grub/ata.h.
+ (enum grub_ata_addressing_t): Move to include/grub/ata.h.
+ (GRUB_CDROM_SECTOR_SIZE): Remove.
+ (GRUB_ATA_*): Move to include/grub/ata.h.
+ (GRUB_ATAPI_*): Likewise.
+ (enum grub_ata_commands): Likewise.
+ (enum grub_ata_timeout_milliseconds): Likewise.
+ (struct grub_ata_device): Likewise.
+ (grub_ata_regset): Likewise.
+ (grub_ata_regget): Likewise.
+ (grub_ata_regset2): Likewise.
+ (grub_ata_regget2): Likewise.
+ (grub_ata_check_ready): Likewise.
+ (grub_ata_wait_not_busy): Remove static, exported in
+ include/grub/ata.h.
+ (grub_ata_wait_drq): Likewise.
+ (grub_ata_pio_read): Likewise.
+
+ * disk/ata_pthru.c: New file. Provides grub_ata_pass_through ()
+ function for hdparm.mod.
+
+ * include/grub/ata.h: New file, contains declarations from
+ disk/ata.c.
+ (enum grub_ata_commands): Add new commands for commands/hdparm.c.
+
+ * include/grub/disk.h (grub_disk_ata_pass_through_parms): New struct.
+ (grub_disk_ata_pass_through): New exported variable.
+
+ * kern/disk.c (grub_disk_ata_pass_through): New variable.
+
+2009-02-13 Colin D Bennett <colin@gibibit.com>
+
+ Support multiple fallback entries, and provide an API to support
+ executing default+fallback menu entries. Renamed the `terminal' menu
+ viewer to `text'.
+
+ * include/grub/normal.h (grub_normal_text_menu_viewer): New global
+ variable declaration.
+ (grub_menu_execute_callback): New structure declaration.
+ (grub_menu_execute_callback_t): New typedef.
+ (grub_menu_execute_with_fallback): New function declaration.
+ (grub_menu_get_entry): Likewise.
+ (grub_menu_get_timeout): Likewise.
+ (grub_menu_set_timeout): Likewise.
+
+ * normal/main.c (GRUB_MOD_INIT(normal)): Refer to new variable name.
+
+ * normal/menu.c (grub_wait_after_message): Moved to
+ `normal/menu_text.c'.
+ (draw_border): Likewise.
+ (print_message): Likewise.
+ (print_entry): Likewise.
+ (print_entries): Likewise.
+ (grub_menu_init_page): Likewise.
+ (get_entry_number): Likewise.
+ (print_timeout): Likewise.
+ (run_menu): Likewise.
+ (grub_menu_execute_entry): Likewise.
+ (show_text_menu): Likewise.
+ (get_and_remove_first_entry_number): New function.
+ (grub_menu_execute_with_fallback): Likewise.
+ (get_entry): Renamed to ...
+ (grub_menu_get_entry): .. this and made it global.
+ (get_timeout): Renamed to ...
+ (grub_menu_get_timeout): ... this and made it global.
+ (set_timeout): Renamed to ...
+ (grub_menu_set_timeout): ... this and made it global.
+ (grub_normal_terminal_menu_viewer): Renamed to ...
+ (grub_normal_text_menu_viewer): ... this.
+
+ * normal/menu_text.c: New file. Extracted text-menu-specific code
+ from normal/menu.c.
+
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add `normal/menu_text.c'.
+ (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-pc.rmk, (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+2009-02-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Update old reference to `font' command.
+
+2009-02-10 Felix Zielcke <fzielcke@z-51.de>
+
+ * fs/fat.c (grub_fat_mount): Fix wrong comparison.
+
+ Based on patch from Javier Martín.
+
+2009-02-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/common.rmk (grub_probe_SOURCES): Move fs/ext2.c before fs/fat.c
+ to avoid false positives with FAT.
+ (grub_fstest_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+2009-02-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * fs/fat.c (grub_fat_mount): Try to avoid false positives by checking
+ bpb.version_specific.fat12_or_fat16.fstype and
+ bpb.version_specific.fat32.fstype.
+
+2009-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * fs/tar.c: Replace "fs/cpio.c" with "cpio.c".
+
+2009-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in (host_os, host_cpu): New variables.
+ (target_os): Remove. Update all users.
+
+2009-02-08 Marco Gerards <marco@gnu.org>
+
+ * Makefile.in (enable_grub_emu_usb): New variable.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/scsi.c'.
+ (grub_emu_SOURCES) [grub_emu_SOURCES]: Add `disk/usbms.c',
+ `util/usb.c', `bus/usb/usb.c' and `commands/usbtest.c'.
+ (grub_emu_LDFLAGS): Add `$(LIBUSB)'.
+ (pkglib_MODULES): Add `usb.mod', `uhci.mod', `ohci.mod',
+ `usbtest.mod' and `usbms.mod'.
+ (usb_mod_SOURCES, usb_mod_CFLAGS, usb_mod_LDFLAGS)
+ (usbtest_mod_SOURCES, usbtest_mod_CFLAGS, usbtest_mod_LDFLAGS)
+ (uhci_mod_SOURCES, uhci_mod_CFLAGS, uhci_mod_LDFLAGS,
+ (ohci_mod_SOURCES, ohci_mod_CFLAGS, ohci_mod_LDFLAGS)
+ (usbms_mod_SOURCES, usbms_mod_CFLAGS, usbms_mod_LDFLAGS): New
+ variables.
+
+ * disk/usbms.c: New file.
+
+ * include/grub/usb.h: Likewise.
+
+ * include/grub/usbtrans.h: Likewise.
+
+ * include/grub/usbdesc.h: Likewise.
+
+ * bus/usb/usbtrans.c: Likewise.
+
+ * bus/usb/ohci.c: Likewise.
+
+ * bus/usb/uhci.c: Likewise.
+
+ * bus/usb/usbhub.c: Likewise.
+
+ * bus/usb/usb.c: Likewise.
+
+ * commands/usbtest.c: Likewise.
+
+ * util/usb.c: Likewise.
+
+ * include/grub/err.h (grub_err_t): Add `GRUB_ERR_IO'.
+
+ * configure.ac: Test for libusb presence.
+
+ * util/grub-emu.c (main) [HAVE_LIBUSB_H]: Call `grub_libusb_init'.
+
+2009-02-08 Vesa Jääskeläinen <chaac@nic.fi>
+
+ * kern/mm.c: Add more comments.
+
+2009-02-08 Robert Millan <rmh@aybabtu.com>
+
+ Patch from Javier Martín.
+ * fs/ext2.c (EXT2_DRIVER_SUPPORTED_INCOMPAT): Add
+ `EXT4_FEATURE_INCOMPAT_FLEX_BG'.
+
+2009-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * fs/cpio.c: Split tar functionality to ...
+ * fs/tar.c: ... here (new file). Update all users.
+
+2009-02-07 Robert Millan <rmh@aybabtu.com>
+
+ * fs/ext2.c (grub_ext2_mount): Avoid mounting filesystems with
+ backward-incompatible features.
+
+ Based on patch from Javier Martín, with some adjustments.
+
+2009-02-07 Michael Scherer <misc@mandriva.org>
+
+ * fs/hfs.c (grub_hfsplus_iterate_dir): Treat hfs+ as case insensitive.
+
+2009-02-07 Robert Millan <rmh@aybabtu.com>
+
+ * conf/common.rmk (grub_probe_SOURCES, grub_fstest_SOURCES): Move
+ position of `disk/lvm.c' to ensure grub_init_all() always picks it
+ after the RAID stuff.
+
+2009-02-05 Vesa Jääskeläinen <chaac@nic.fi>
+
+ Fixes problem when running vbetest command as reported by
+ Vladimir Serbinenko <phcoder@gmail.com>.
+
+ * (grub_vbe_set_video_mode): Fixed problem with text modes.
+
+2009-02-04 Felix Zielcke <fzielcke@z-51.de>
+
+ util/getroot.c (grub_util_get_grub_dev): Add support for /dev/mdNpN and
+ /dev/md/NpN style mdraid devices.
+
+2009-02-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/unifont2pff.rb: Remove.
+
+2009-02-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add a missing trailing
+ `#'.
+
+2009-02-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `normal/menu_viewer.c'.
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+2009-02-02 Christian Franke <franke@computer.org>
+
+ * lib/hexdump.c (hexdump): Print at most 3 lines if data is identical.
+
+2009-02-01 Felix Zielcke <fzielcke@z-51.de>
+
+ * INSTALL: Note that we now require at least autoconf 2.59 and
+ that LZO is optional.
+
+2009-02-01 Vesa Jääskeläinen <chaac@nic.fi>
+
+ Base on patch on bug #24154 created by Tomas Tintera
+ <trosos@seznam.cz>.
+
+ * video/i386/pc/vbe.c (grub_video_vbe_scroll): Fix downward scrolling.
+
+2009-02-01 Vesa Jääskeläinen <chaac@nic.fi>
+
+ Based on patch on bug #25318 created by Bernhard Rosenkraenzer
+ <bero@arklinux.org>.
+
+ * normal/parser.y (script_init): Add missing semicolon.
+
+2009-01-31 Colin D Bennett <colin@gibibit.com>
+
+ * normal/main.c: Add include to grub/menu_viewer.h.
+ (free_menu_entry_classes): Added.
+ (grub_normal_menu_addentry): Added class property handling.
+ (grub_normal_execute): Changed to use new menu viewer for menu viewing.
+ (GRUB_MOD_INIT(normal)): Added register for text based menu viewer.
+
+ * normal/menu_viewer.c: New file.
+
+ * normal/menu.c (run_menu_entry): Renamed to ...
+ (grub_menu_execute_entry): ... this and made it as global.
+ (grub_menu_run): Renamed to ...
+ (show_text_menu): ... this and made it local.
+ (show_text_menu): Adapt to new function names.
+ (grub_normal_terminal_menu_viewer): New global variable.
+
+ * include/grub/menu.h: New file.
+
+ * include/grub/menu_viewer.h: New file.
+
+ * include/grub/normal.h: Added include to grub/menu.h.
+ (grub_menu_entry): Moved to include/grub/menu.h.
+ (grub_menu_entry_t): Likewise.
+ (grub_menu): Likewise.
+ (grub_menu_t): Likewise.
+ (grub_normal_terminal_menu_viewer): Added.
+ (grub_menu_execute_entry): Likewise.
+ (grub_menu_run): Removed.
+
+ * DISTLIST: Added include/grub/menu.h.
+ Added include/grub/menu_viewer.h.
+ Added normal/menu_viewer.c.
+
+2009-01-31 Vesa Jääskeläinen <chaac@nic.fi>
+
+ * normal/execute.c (grub_script_execute_menuentry): Changed to use
+ arglist for menutitle arguments.
+
+ * normal/main.c (grub_normal_menu_addentry): Likewise.
+
+ * normal/parser.y (menuentry): Likewise.
+
+ * normal/script.c (grub_script_create_cmdmenu): Likewise.
+
+ * include/grub/script.h (grub_script_cmd_menuentry): Likewise.
+ (grub_script_create_cmdmenu): Likewise.
+
+ * include/grub/normal.h (grub_normal_menu_addentry): Likewise.
+
+ * conf/i386-pc.rmk (normal_mod_SOURCES): Adapt Colin D Bennett's
+ changes.
+
+ * conf/x86_64-efi.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-coreboot.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (normal_mod_SOURCES): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (normal_mod_SOURCES): Likewise.
+
+2009-01-30 Christian Franke <franke@computer.org>
+
+ * normal/arg.c (grub_arg_show_help): Add indentation if '\n' appears
+ in option help text.
+
+2009-01-27 Pavel Roskin <proski@gnu.org>
+
+ * disk/fs_uuid.c (search_fs_uuid): Ignore case of the UUID.
+
+2009-01-27 Vesa Jääskeläinen <chaac@nic.fi>
+
+ * commands/lsmmap.c: Add include to grub/machine/memory.h.
+
+ * fs/i386/pc/pxe.c (grub_pxefs_open): Fix sign problem.
+
+ * term/i386/pc/at_keyboard.c (GRUB_MOD_FINI(at_keyboard)): Use proper
+ unregister function.
+
+2009-01-27 Vesa Jääskeläinen <chaac@nic.fi>
+
+ * disk/scsi.c (grub_scsi_read): Fix sign problem.
+
+ * term/i386/pc/vga_text.c (grub_vga_text_init_fini). Fix declaration.
+
+ * util/grub-mkfont.c (usage): Fix typo.
+
+ * util/elf/grub-mkimage.c (load_modules): Fix warning.
+
+2009-01-26 Daniel Mierswa <impulze@impulze.org>
+
+ * fs/fat.c (grub_fat_uuid): Fix shift of the first two bytes.
+
+ * commands/search.c (search_fs_uuid): Ignore case of the UUID.
+
+ * kern/misc.c (grub_strcasecmp): New function.
+ (grub_strcasecmp): Use grub_size_t instead of int for length.
+ Fix return value.
+ * include/grub/misc.h: Update function prototypes.
+
+2009-01-26 Robert Millan <rmh@aybabtu.com>
+
+ * configure.ac: Fix cross-compilation check.
+
+2009-01-22 Christian Franke <franke@computer.org>
+
+ * kern/misc.c (grub_vsprintf): Fix size and termination of `format2'
+ (precision) digit string. Allow `.format2' without `format1' (width).
+ Limit input chars for `%s' output to `format2' if specified. This is
+ compatible with standard printf ().
+
+2009-01-22 Christian Franke <franke@computer.org>
+
+ * disk/ata.c (grub_ata_wait_status): Replace by ...
+ (grub_ata_wait_not_busy): ... this function. Checks only BSY bit,
+ other status bits may be invalid while BSY is asserted.
+ (grub_ata_check_ready): New function.
+ (grub_ata_cmd): Removed.
+ (grub_ata_wait_drq): New function.
+ (grub_ata_strncpy): Remove inline.
+ (grub_ata_pio_read): Reduce to actual block transfer. BSY wait
+ and error check now done by grub_ata_wait_drq ().
+ (grub_ata_pio_write): Likewise.
+ (grub_atapi_identify): Set DEV before check for !BSY. Use
+ grub_ata_wait_drq () to wait for data.
+ (grub_ata_device_initialize): Add status register check to
+ detect missing SATA slave devices. Add debug messages.
+ (grub_atapi_wait_drq): Use grub_ata_wait_not_busy ().
+ (grub_atapi_packet): Set DEV before check for !BSY. Replace
+ transfer loop by grub_ata_pio_write ().
+ (grub_ata_identify): Set DEV before check for !BSY. Use
+ grub_ata_wait_drq () to wait for data.
+ (grub_ata_setaddress): Set DEV before check for !BSY.
+ (grub_ata_readwrite): Remove duplicate code, handle batch/rest and
+ read/write in one loop. Fix invalid command on write. Fix incomplete
+ command on (size % batch) == 0. Add missing error check after write of
+ last block. Add debug messages.
+ (grub_atapi_read): Replace transfer loop by grub_ata_pio_read ().
+
+2009-01-19 Christian Franke <franke@computer.org>
+
+ * disk/ata.c (GRUB_ATAPI_REG_*): New defines.
+ (GRUB_ATAPI_IREASON_*): Likewise.
+ (grub_ata_pio_write): Fix timeout error return.
+ (grub_atapi_identify): Add grub_ata_wait () after cmd.
+ (grub_atapi_wait_drq): New function.
+ (grub_atapi_packet): New parameter `size'.
+ Use grub_atapi_wait_drq () and direct write instead of
+ grub_ata_pio_write ().
+ (grub_atapi_read): Replace grub_ata_pio_read () by a loop which
+ reads the number of bytes requested by the device for each DRQ
+ assertion.
+ (grub_atapi_write): Remove old implementation, return not
+ implemented instead.
+
+2009-01-19 Christian Franke <franke@computer.org>
+
+ * disk/scsi.c (grub_scsi_read10): Use scsi->blocksize instead
+ of 512 to calculate data size.
+ (grub_scsi_read12): Likewise.
+ (grub_scsi_write10): Likewise.
+ (grub_scsi_write12): Likewise.
+ (grub_scsi_read): Adjust size according to blocksize.
+ Add checks for invalid blocksize and unaligned transfer.
+
+2009-01-19 Vesa Jääskeläinen <chaac@nic.fi>
+
+ * font/font.c (grub_font_loader_init): Re-position unknown glyph.
+
+ * term/gfxterm.c (write_char): Fix background rendering for wide
+ width glyphs.
+
+2009-01-19 Robert Millan <rmh@aybabtu.com>
+
+ * config.guess: Update to latest version from config git.
+ * config.sub: Likewise.
+
+2009-01-17 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in: Change font compilation to use new grub-mkfont instead
+ of java version.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: Remove.
+ * util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise.
+ * util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise.
+
+2009-01-16 Christian Franke <franke@computer.org>
+
+ * disk/ata.c (enum grub_ata_commands): Remove EXEC_DEV_DIAGNOSTICS.
+ (enum grub_ata_timeout_milliseconds): New enum.
+ (grub_ata_wait_status): Add parameter milliseconds.
+ (grub_ata_cmd): Remove variable `err'. Remove wait for !DRQ to allow
+ recovery from timed-out commands.
+ (grub_ata_pio_read): Add parameter milliseconds. Fix error return,
+ return grub_errno instead of REG_ERROR.
+ (grub_ata_pio_write): Add parameter milliseconds.
+ (grub_atapi_identify): Fix size of ATAPI IDENTIFY sector.
+ Pass milliseconds to grub_ata_wait_status () and
+ grub_ata_pio_read ().
+ (grub_atapi_packet): Pass milliseconds to grub_ata_pio_write ().
+ (grub_ata_identify): Remove variable `ataerr'. Pass milliseconds to
+ grub_ata_wait_status (). Fix IDENTIFY timeout check.
+ (grub_ata_device_initialize): Remove EXECUTE DEVICE DIAGNOSTICS.
+ It is not suitable for device detection, because DEV bit is ignored,
+ the command may run too long, and not all devices set the signature
+ properly.
+ (grub_ata_pciinit): Clear grub_errno before grub_ata_device_initialize ().
+ (grub_ata_setaddress): Pass milliseconds to grub_ata_wait_status ().
+ Fix device selection, DEV bit must be set first to address the registers
+ of the correct device.
+ (grub_ata_readwrite): Pass milliseconds to grub_ata_wait_status () and
+ grub_ata_pio_read/write ().
+ (grub_atapi_read): Pass milliseconds to grub_ata_pio_read ().
+ (grub_atapi_write): Pass milliseconds to grub_ata_pio_write ().
+
+2009-01-13 Carles Pina i Estany <carles@pina.cat>
+
+ * util/grub-editenv.c (main): Use fseeko(), not fseek().
+
+2009-01-13 Bean <bean123ch@gmail.com>
+
+ * util/grub-mkfont.c (write_font): forget to remove some debug code.
+
+2009-01-13 Bean <bean123ch@gmail.com>
+
+ * Makefile.in: (enable_grub_mkfont): New variable.
+ (freetype_cflags): Likewise.
+ (freetype_libs): Likewise.
+
+ * common.rmk (bin_UTILITIES): Add `grub-mkfont' if requested.
+ (grub_mkfont_SOURCES): New variable.
+ (grub_mkfont_CFLAGS): Likewise.
+ (grub_mkfont_LDFLAGS): Likewise.
+
+ * configure.ac (--enable-grub-mkfont): New option. Check for freetype2
+ library if `--enable-grub-mkfont' is requested.
+ (enable_grub_mkfont): New variable.
+ (freetype_cflags): Likewise.
+ (freetype_libs): Likewise.
+
+ * util/grub-mkfont.c: New file.
+
+2009-01-12 Christian Franke <franke@computer.org>
+
+ * disk/ata.c (grub_ata_pciinit): Fix bit numbers of compatibility
+ mode check. Fix setting of compat_use[].
+
+2009-01-10 Robert Millan <rmh@aybabtu.com>
+
+ Update a few copyright years which we forgot to do in 2008 (only for
+ files whose changes made in 2008 were copyright-significant)
+
+ * Makefile.in: Add 2008 to Copyright line.
+ * disk/ieee1275/ofdisk.c: Likewise.
+ * disk/efi/efidisk.c: Likewise.
+ * kern/dl.c: Likewise.
+ * kern/sparc64/ieee1275/init.c: Likewise.
+ * kern/mm.c: Likewise.
+ * kern/efi/mm.c: Likewise.
+ * boot/i386/pc/boot.S: Likewise.
+ * genfslist.sh: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/jfs.c: Likewise.
+ * fs/minix.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * gensymlist.sh.in: Likewise.
+ * genkernsyms.sh.in: Likewise.
+ * include/grub/misc.h: Likewise.
+ * include/grub/types.h: Likewise.
+ * include/grub/symbol.h: Likewise.
+ * include/grub/elf.h: Likewise.
+ * include/grub/kernel.h: Likewise.
+ * include/grub/disk.h: Likewise.
+ * include/grub/dl.h: Likewise.
+ * include/grub/i386/linux.h: Likewise.
+ * include/grub/i386/pc/biosdisk.h: Likewise.
+ * include/grub/efi/api.h: Likewise.
+ * include/grub/efi/pe32.h: Likewise.
+ * include/grub/util/misc.h: Likewise.
+ * normal/execute.c: Likewise.
+ * normal/arg.c: Likewise.
+ * normal/completion.c: Likewise.
+ * normal/lexer.c: Likewise.
+ * normal/parser.y: Likewise.
+ * normal/misc.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/hexdump.c: Likewise.
+ * commands/terminal.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/help.c: Likewise.
+ * partmap/pc.c: Likewise.
+ * loader/efi/chainloader.c: Likewise.
+ * loader/multiboot_loader.c: Likewise.
+ * loader/i386/pc/multiboot2.c: Likewise.
+ * term/efi/console.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * util/lvm.c: Likewise.
+ * util/console.c: Likewise.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+ * util/raid.c: Likewise.
+
+2009-01-06 Vesa Jääskeläinen <chaac@nic.fi>
+
+ * commands/videotest.c: Removed include to grub/machine/memory.h.
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Removed video.mod, gfxterm.mod,
+ videotest.mod, bitmap.mod, tga.mod, jpeg.mod, png.mod.
+ (video_mod_SOURCES): Removed.
+ (video_mod_CFLAGS): Likewise.
+ (video_mod_LDFLAGS): Likewise.
+ (gfxterm_mod_SOURCES): Likewise.
+ (gfxterm_mod_CFLAGS): Likewise.
+ (gfxterm_mod_LDFLAGS): Likewise.
+ (videotest_mod_SOURCES): Likewise.
+ (videotest_mod_CFLAGS): Likewise.
+ (videotest_mod_LDFLAGS): Likewise.
+ (bitmap_mod_SOURCES): Likewise.
+ (bitmap_mod_CFLAGS): Likewise.
+ (bitmap_mod_LDFLAGS): Likewise.
+ (tga_mod_SOURCES): Likewise.
+ (tga_mod_CFLAGS): Likewise.
+ (tga_mod_LDFLAGS): Likewise.
+ (jpeg_mod_SOURCES): Likewise.
+ (jpeg_mod_CFLAGS): Likewise.
+ (jpeg_mod_LDFLAGS): Likewise.
+ (png_mod_SOURCES): Likewise.
+ (png_mod_CFLAGS): Likewise.
+ (png_mod_LDFLAGS): Likewise.
+
+ * conf/common.rmk (pkglib_MODULES): Added video.mod, videotest.mod,
+ bitmap.mod, tga.mod, jpeg.mod, png.mod, font.mod, gfxterm.mod
+ (video_mod_SOURCES): Added.
+ (video_mod_CFLAGS): Likewise.
+ (video_mod_LDFLAGS): Likewise.
+ (videotest_mod_SOURCES): Likewise.
+ (videotest_mod_CFLAGS): Likewise.
+ (videotest_mod_LDFLAGS): Likewise.
+ (bitmap_mod_SOURCES): Likewise.
+ (bitmap_mod_CFLAGS): Likewise.
+ (bitmap_mod_LDFLAGS): Likewise.
+ (tga_mod_SOURCES): Likewise.
+ (tga_mod_CFLAGS): Likewise.
+ (tga_mod_LDFLAGS): Likewise.
+ (jpeg_mod_SOURCES): Likewise.
+ (jpeg_mod_CFLAGS): Likewise.
+ (jpeg_mod_LDFLAGS): Likewise.
+ (png_mod_SOURCES): Likewise.
+ (png_mod_CFLAGS): Likewise.
+ (png_mod_LDFLAGS): Likewise.
+ (gfxterm_mod_SOURCES): Likewise.
+ (gfxterm_mod_CFLAGS): Likewise.
+ (gfxterm_mod_LDFLAGS): Likewise.
+
+ * term/gfxterm.c: Removed include to grub/machine/memory.h,
+ grub/machine/console.h.
+
+2009-01-04 Jerone Young <jerone@gmail.com>
+
+ Make on screen instructions clearer
+
+ Based on patch created by Jidanni <jidanni@jidanni.org>
+
+ * normal/menu.c: print clearer instructions on the screen
+
+2009-01-02 Colin D Bennett <colin@gibibit.com>
+
+ New font engine.
+
+ Additional changes by Vesa Jääskeläinen <chaac@nic.fi> to adapt to
+ build system and fixed gfxterm.c to work with different sized fonts.
+
+ * configure.ac: Changed UNIFONT_HEX to UNIFONT_BDF.
+
+ * configure: Re-generated.
+
+ * DISTLIST: Removed font/manager.c.
+ Added font/font.c.
+ Added font/font_cmd.c.
+
+ * Makefile.in: Changed UNIFONT_HEX to UNIFONT_BDF. Added Font tool
+ compilation.
+
+ * include/grub/misc.h (grub_utf8_to_ucs4): Changed prototype. Changed users.
+
+ * kern/misc.c (grub_utf8_to_ucs4): Changed prototype.
+
+ * kern/term.c: Changed users of grub_utf8_to_ucs4.
+
+ * normal/menu.c: Likewise.
+
+ * conf/common.rmk (font_mod_SOURCES): Removed font/manager.c.
+ (font_mod_SOURCES): Added font/font_cmd.c, font/font.c.
+
+ * include/grub/font.h: Replaced with new file.
+
+ * include/grub/video.h (GRUB_VIDEO_MODE_TYPE_ALPHA): Changed value.
+ (GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED): Likewise.
+ (GRUB_VIDEO_MODE_TYPE_COLOR_MASK): Likewise.
+ (GRUB_VIDEO_MODE_TYPE_1BIT_BITMAP): Added.
+ (grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_1BIT_PACKED.
+ (grub_video_mode_info): Added bg_red, bg_green, bg_blue, bg_alpha,
+ fg_red, fg_green, fg_blue, fg_alpha.
+ (grub_video_adapter): Removed blit_glyph.
+ (grub_video_blit_glyph): Removed.
+
+ * font/manager.c: Removed file.
+
+ * font/font.c: New file.
+
+ * font/font_cmd.c: Likewise.
+
+ * video/video.c (grub_video_blit_glyph): Removed.
+
+ * video/i386/pc/vbe.c (grub_video_vbe_map_rgb): Added 1-bit support.
+ (grub_video_vbe_map_rgba): Likewise.
+ (grub_video_vbe_unmap_color_int): Likewise.
+ (grub_video_vbe_blit_glyph): Removed.
+ (grub_video_vbe_adapter): Removed blit_glyph.
+
+ * video/i386/pc/vbeutil.c (get_data_ptr): Added 1-bit support.
+ (get_pixel): Likewise.
+ (set_pixel): Likewise.
+
+ * commands/videotest.c (grub_cmd_videotest): Added more tests for fonts.
+
+ * term/gfxterm.c: Adapted to new font engine.
+
+ * term/i386/pc/vesafb.c: Marked as deprecated. Made it compile.
+
+ * term/i386/pc/vga.c: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/BDFLoader.java: New file.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/CharDefs.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/CharacterRange.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/Converter.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/Font.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/Glyph.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/PFF2Sections.java: Likewise.
+
+ * util/fonttool/src/org/gnu/grub/fonttool/PFF2Writer.java: Likewise.
+
+ * util/grub.d/00_header.in: Changed to use new loadfont command.
+
+ * util/grub-mkconfig_lib.in: Changed font extension.
+
+2008-12-28 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/getroot.c (grub_util_get_grub_dev): Add support for
+ /dev/md/dNNpNN style partitionable mdraid devices.
+
+2008-12-12 Alex Smith <alex@alex-smith.me.uk>
+
+ * fs/i386/pc/pxe.c (grub_pxefs_open): Handle the one open connection
+ at a time limit of the PXE TFTP API correctly.
+ (grub_pxefs_close): Likewise.
+
+2008-11-29 Robert Millan <rmh@aybabtu.com>
+
+ * disk/ata.c (grub_ata_pciinit): Handle errors raised by
+ grub_ata_device_initialize() calls.
+
+2008-11-28 Krzysztof Smiechowicz <deadwood@wp.pl>
+
+ * fs/affs.c (grub_affs_iterate_dir): Return failure when directory
+ iteration failed.
+ * fs/sfs.c (grub_sfs_iterate_dir): Likewise.
+
+2008-11-28 Robert Millan <rmh@aybabtu.com>
+
+ Fix build on powerpc-ieee1275. Based on patch created by
+ Manoel Abranches <mrabran@linux.vnet.ibm.com>.
+ * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add
+ `kern/ieee1275/mmap.c'.
+ * include/grub/powerpc/ieee1275/memory.h: New file.
+
+ Provide grub-install on coreboot.
+ * conf/i386-coreboot.rmk (sbin_SCRIPTS): Add `grub-install'.
+ (grub_install_SOURCES): New variable.
+ * util/i386/pc/grub-install.in: Add a few condition checks to make it
+ usable on coreboot.
+
+2008-11-25 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/grub-fstest.c (grub_term_get_current_input): Change return type
+ to `grub_term_input_t'.
+ (grub_term_get_current_output): Change return type to
+ `grub_term_output_t'.
+
+2008-11-22 Robert Millan <rmh@aybabtu.com>
+
+ Fix breakage on coreboot due to declaration mismatch.
+ * term/i386/pc/vga_text.c (grub_vga_text_init_fini): New function.
+ (grub_vga_text_term): Use grub_vga_text_init_fini() instead of
+ grub_vga_text_cls().
+
+ * kern/i386/loader.S (grub_multiboot_backward_relocator): Improve
+ comments. Avoid copying one more byte than necessary (just in case).
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Change link address
+ to 0x200000 (avoids trouble with some OFW implementations, and matches
+ with the one in Yaboot).
+ Reported by Manoel Abranches
+
+2008-11-20 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/coreboot/init.c (grub_time_tics): Remove variable.
+ (grub_get_rtc, grub_exit): Abort with grub_fatal() if called.
+
+ * util/grub-mkconfig_lib.in (grub_warn): New function.
+ (convert_system_path_to_grub_path): Use grub_warn() when issuing
+ warnings, to obtain consistent formatting.
+ * util/grub.d/00_header.in: Likewise.
+ * util/update-grub_lib.in: Likewise.
+
+ * loader/i386/linux.c (allocate_pages): Fix a warning.
+ Move comment text to `#error' stanza.
+
+ Harmonize ieee1275's grub_available_iterate() with the generic
+ grub_machine_mmap_iterate() interface (fixes a recently-introduced
+ build problem on i386-ieee1275):
+ * kern/ieee1275/openfw.c (grub_available_iterate): Moved from here ...
+ * kern/ieee1275/mmap.c (grub_machine_mmap_iterate): ... here. Add third
+ parameter `type'. Update all users of this function.
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add
+ `kern/ieee1275/mmap.c'.
+ * kern/ieee1275/init.c
+ * include/grub/ieee1275/ieee1275.h (grub_available_iterate): Replace
+ with ...
+ (grub_machine_mmap_iterate): ... this.
+ * include/grub/i386/pc/memory.h (grub_machine_mmap_iterate): Change
+ return type to `grub_err_t'. Update all implementations of this
+ function prototype.
+ * include/grub/i386/coreboot/memory.h (grub_machine_mmap_iterate):
+ Likewise.
+
+ Add `lsmmap' command (lists firmware-provided memory map):
+ * commands/lsmmap.c: New file.
+ * conf/i386-pc.rmk (pkglib_MODULES): Add `lsmmap.mod'.
+ (lsmmap_mod_SOURCES, lsmmap_mod_CFLAGS, lsmmap_mod_LDFLAGS): New
+ variables.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+
+2008-11-19 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Fix a typo.
+ * loader/i386/linux.c (grub_rescue_cmd_initrd): Implement a few needed
+ constraints to initrd allocation (based on code from
+ loader/i386/pc/linux.c). Without them, initrd was allocated too high
+ for Linux to find it.
+
+2008-11-14 Robert Millan <rmh@aybabtu.com>
+
+ * fs/cpio.c (grub_cpio_open): Compare `name' and `fn' by hand in
+ order to cope with duplicate slashes.
+
+2008-11-14 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/coreboot/memory.h (GRUB_MEMORY_MACHINE_LOWER_SIZE):
+ Redefine to match with GRUB_MEMORY_MACHINE_UPPER_START (0x100000). We
+ don't want to mess with lower memory, because it is used in the Linux
+ loader.
+
+ * loader/i386/linux.c (allocate_pages): Allocate `real_mode_mem' in
+ an appropriate place in lower memory, between 0x10000 and 0x90000,
+ like loader/i386/efi/linux.c does. Linux often panics if real_mode_mem
+ is in our heap (probably as a result of it being corrupted during
+ decompression). Add #error instance with comment to explain why this
+ loader isn't currently usable on PC/BIOS.
+
+2008-11-14 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/serial.c [! GRUB_MACHINE_PCBIOS]
+ (GRUB_SERIAL_PORT_NUM): Fix miscalculation.
+
+2008-11-12 Robert Millan <rmh@aybabtu.com>
+
+ Make loader/i386/linux.c buildable on i386-pc (although disabled).
+
+ * include/grub/i386/pc/init.h: Include `<grub/machine/memory.h>'.
+ (struct grub_machine_mmap_entry, grub_machine_mmap_iterate): Move
+ from here ...
+ * include/grub/i386/pc/memory.h: ... to here.
+
+2008-11-12 Robert Millan <rmh@aybabtu.com>
+
+ Fix build problems on i386-ieee1275 and *-efi (introduced by vga_text
+ split).
+
+ * include/grub/i386/pc/console.h: Include `<grub/i386/vga_common.h>'.
+ (grub_console_cur_color, grub_console_real_putchar)
+ (grub_console_putchar, grub_console_getcharwidth, grub_console_getwh)
+ (grub_console_setcolorstate, grub_console_setcolor)
+ (grub_console_getcolor): Move from here ...
+ * include/grub/i386/vga_common.h: ... to here (new file).
+
+ * term/i386/pc/vga_text.c: Replace `<grub/machine/console.h>' with
+ `<grub/i386/vga_common.h>' and `<grub/cpu/io.h>' with
+ `<grub/i386/io.h>'.
+ * term/i386/vga_common.c: Replace `<grub/machine/console.h>' with
+ `<grub/i386/vga_common.h>'.
+
+2008-11-12 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add `term/i386/vga_common.c'.
+ * conf/i386.rmk (pkglib_MODULES): Add `vga_text.mod'.
+ (vga_text_mod_SOURCES, vga_text_mod_CFLAGS, vga_text_mod_LDFLAGS): New
+ variables.
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Replace
+ `term/i386/pc/console.c' with `term/i386/vga_common.c'.
+
+ * kern/i386/coreboot/init.c (grub_machine_init): Replace call to
+ grub_console_init() with call to grub_vga_text_init().
+ (grub_machine_fini): Replace call to
+ grub_console_fini() with call to grub_vga_text_fini() and
+ grub_at_keyboard_fini().
+
+ * include/grub/i386/pc/console.h: Include `<grub/term.h>'.
+ (grub_console_putchar, grub_console_getcharwidth, grub_console_getwh)
+ (grub_console_setcolorstate, grub_console_setcolor)
+ (grub_console_getcolor): New function prototypes.
+
+ * term/i386/pc/vga_text.c: Include `<grub/dl.h>'.
+ (grub_vga_text_getxy, grub_vga_text_gotoxy, grub_vga_text_cls)
+ (grub_vga_text_setcursor): Static-ize.
+ (grub_vga_text_term): New structure.
+ (GRUB_MOD_INIT(vga_text), GRUB_MOD_FINI(vga_text)): New functions.
+
+ * term/i386/pc/console.c: Remove `<grub/machine/machine.h>'.
+ (grub_console_cur_color, grub_console_standard_color)
+ (grub_console_normal_color, grub_console_highlight_color)
+ (map_char, grub_console_putchar, grub_console_getcharwidth)
+ (grub_console_getwh, grub_console_setcolorstate, grub_console_setcolor)
+ (grub_console_getcolor): Move from here ...
+ * term/i386/vga_common.c: ... to here (same function names).
+
+2008-11-12 Robert Millan <rmh@aybabtu.com>
+
+ Use newly-added Multiboot support in coreboot.
+
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Replace
+ `kern/i386/coreboot/mmap.c' with `kern/i386/multiboot_mmap.c'.
+
+ * kern/i386/coreboot/startup.S: Enable Multiboot header, fix its
+ alignment, set `MULTIBOOT_MEMORY_INFO' flag.
+ (codestart): Store the MBI in `startup_multiboot_info' when we're
+ being loaded using Multiboot.
+
+ * kern/i386/coreboot/init.c (grub_machine_init): Move
+ grub_at_keyboard_init() call to beginning of function (useful for
+ debugging). Call grub_machine_mmap_init() before attempting to use
+ grub_machine_mmap_iterate().
+ (grub_lower_mem, grub_upper_mem): Move from here ...
+ * kern/i386/multiboot_mmap.c (grub_lower_mem, grub_upper_mem): ... to
+ here (new file).
+
+ * include/grub/i386/coreboot/memory.h (grub_machine_mmap_init): New
+ function prototype.
+
+2008-11-12 Robert Millan <rmh@aybabtu.com>
+
+ Fix a regression introduced by the at_keyboard.mod split. Because
+ some terminals are default on some platforms and non-default on
+ others, the first terminal being registered determines which is
+ going to be default.
+
+ * kern/term.c (grub_term_register_input): If this is the first
+ terminal being registered, set it as the current one.
+ (grub_term_register_output): Likewise.
+
+ * term/efi/console.c (grub_console_init): Do not call
+ grub_term_set_current_output() or grub_term_set_current_input().
+ * term/ieee1275/ofconsole.c (grub_console_init): Likewise.
+ * term/i386/pc/console.c (grub_console_init): Likewise.
+ (grub_console_fini): Do not call grub_term_set_current_input()
+ (but leave grub_term_set_current_output() to restore text mode).
+
+2008-11-10 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Add backward compatibility check for
+ versions of terminal.mod that don't understand `terminal_input' or
+ `terminal_output'.
+
+2008-11-09 Robert Millan <rmh@aybabtu.com>
+
+ * commands/terminal.c (GRUB_MOD_FINI(terminal)): Unregister
+ `terminal_input' / `terminal_output', not `terminal'.
+
+2008-11-08 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in (include_DATA): Fix srcdir=. assumption.
+ (DISTCLEANFILES): Add `build_env.mk'.
+
+2008-11-08 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/vesafb.c (grub_vesafb_term): Change type to
+ `struct grub_term_output'. Remove `.checkkey' and `.getkey'
+ members. Update all users.
+ * util/console.c (grub_ncurses_term): Split in ...
+ (grub_ncurses_term_input): ... this, and ...
+ (grub_ncurses_term_output): ... this. Update all users.
+ * term/ieee1275/ofconsole.c: Remove stale `#endif'.
+
+2008-11-08 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in (PKGLIB): Add $(pkglib_BUILDDIR).
+ (PKGDATA): Add $(pkgdata_SRCDIR).
+ (pkglib_BUILDDIR): New variable.
+ (pkgdata_SRCDIR): New variable.
+ (build_env.mk): New target.
+ (include_DATA): New variable.
+ (install-local): Install $(include_DATA) files in $(includedir).
+
+2008-11-07 Pavel Roskin <proski@gnu.org>
+
+ * gendistlist.sh: Use C locale for sorting to ensure consistent
+ output on all systems.
+
+ * util/grub.d/00_header.in: Remove incorrect space before
+ "serial".
+
+2008-11-07 Robert Millan <rmh@aybabtu.com>
+
+ * include/multiboot2.h (struct multiboot_header): Add `flags' member as
+ per specification.
+ * loader/multiboot2.c (grub_multiboot2): Fix Multiboot2 header check.
+ * loader/multiboot_loader.c (find_multi_boot2_header): New function
+ (based on find_multi_boot1_header).
+ (grub_rescue_cmd_multiboot_loader): Check for Multiboot2 header,
+ using find_multi_boot2_header(), and abort if neither Multiboot or
+ Multiboot headers were found.
+
+2008-11-07 Robert Millan <rmh@aybabtu.com>
+
+ Modularize at_keyboard.mod:
+
+ * conf/i386.rmk (pkglib_MODULES): Add `at_keyboard.mod'.
+ (at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
+ (at_keyboard_mod_LDFLAGS): New variables.
+
+ Actual terminal split:
+
+ * include/grub/term.h (struct grub_term): Split in ...
+ (struct grub_term_input): ... this, and ...
+ (struct grub_term_output): ... this. Update all users.
+ (grub_term_set_current): Split in ...
+ (grub_term_set_current_input): ... this, and ...
+ (grub_term_set_current_output): ... this.
+ (grub_term_get_current): Split in ...
+ (grub_term_get_current_input): ... this, and ...
+ (grub_term_get_current_output): ... this.
+ (grub_term_register): Split in ...
+ (grub_term_register_input): ... this, and ...
+ (grub_term_register_output): ... this.
+ (grub_term_unregister): Split in ...
+ (grub_term_unregister_input): ... this, and ...
+ (grub_term_unregister_output): ... this.
+ (grub_term_iterate): Split in ...
+ (grub_term_iterate_input): ... this, and ...
+ (grub_term_iterate_output): ... this.
+
+ * kern/term.c (grub_term_list): Split in ...
+ (grub_term_list_input): ... this, and ...
+ (grub_term_list_output): ... this. Update all users.
+ (grub_cur_term): Split in ...
+ (grub_cur_term_input): ... this, and ...
+ (grub_cur_term_output): ... this. Update all users.
+ (grub_term_set_current): Split in ...
+ (grub_term_set_current_input): ... this, and ...
+ (grub_term_set_current_output): ... this.
+ (grub_term_get_current): Split in ...
+ (grub_term_get_current_input): ... this, and ...
+ (grub_term_get_current_output): ... this.
+ (grub_term_register): Split in ...
+ (grub_term_register_input): ... this, and ...
+ (grub_term_register_output): ... this.
+ (grub_term_unregister): Split in ...
+ (grub_term_unregister_input): ... this, and ...
+ (grub_term_unregister_output): ... this.
+ (grub_term_iterate): Split in ...
+ (grub_term_iterate_input): ... this, and ...
+ (grub_term_iterate_output): ... this.
+
+ * kern/misc.c (grub_abort): Split use of grub_term_get_current() into
+ a check for input and one for output (and only attempt to get keys
+ from user when input works).
+
+ * util/grub-probe.c (grub_term_get_current): Split in ...
+ (grub_term_get_current_input): ... this, and ...
+ (grub_term_get_current_output): ... this.
+ * util/grub-fstest.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/grub-editenv.c: Likewise.
+
+ Portability adjustments:
+
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Remove
+ `term/i386/pc/at_keyboard.c'.
+ * kern/ieee1275/init.c [__i386__] (grub_machine_init): Remove call to
+ grub_keyboard_controller_init() (now handled by terminal .init).
+ * kern/i386/coreboot/init.c (grub_machine_init): Add call to
+ grub_at_keyboard_init().
+ * include/grub/i386/ieee1275/console.h (grub_keyboard_controller_init)
+ (grub_console_checkkey, grub_console_getkey): Remove (now provided by
+ at_keyboard.mod via input terminal interface).
+ * include/grub/i386/coreboot/console.h: Convert into a stub for
+ `<grub/i386/pc/console.h>'.
+
+ Migrate full terminals to new API:
+
+ * term/efi/console.c (grub_console_term): Split into ...
+ (grub_console_term_input): ... this, and ...
+ (grub_console_term_output): ... this. Update all users.
+ * term/ieee1275/ofconsole.c: Remove __i386__ hack.
+ (grub_ofconsole_init): Split into ...
+ (grub_ofconsole_init_input): ... this, and ...
+ (grub_ofconsole_init_output): ... this.
+ (grub_ofconsole_term): Split into ...
+ (grub_ofconsole_term_input): ... this, and ...
+ (grub_ofconsole_term_output): ... this. Update all users.
+ * term/i386/pc/serial.c (grub_serial_term): Split into ...
+ (grub_serial_term_input): ... this, and ...
+ (grub_serial_term_output): ... this. Update all users.
+ * term/i386/pc/console.c (grub_console_term): Split into ...
+ (grub_console_term_input): ... this, and ...
+ (grub_console_term_output): ... this. Update all users.
+ (grub_console_term_input): Only enable it on PC/BIOS platform.
+ (grub_console_init): Remove grub_keyboard_controller_init() call.
+
+ Migrate input terminals to new API:
+
+ * term/i386/pc/at_keyboard.c: Replace `cpu' and `machine' with
+ `i386' and `i386/pc' to enable build on x86_64 (this driver is
+ i386-specific anyway).
+ (grub_console_checkkey): Rename to ...
+ (grub_at_keyboard_checkkey): ... this. Static-ize. Update all
+ users.
+ (grub_keyboard_controller_orig): New variable.
+ (grub_console_getkey): Rename to ...
+ (grub_at_keyboard_getkey): ... this. Static-ize. Update all
+ users.
+ (grub_keyboard_controller_init): Static-ize. Save original
+ controller value so that it can be restored ...
+ (grub_keyboard_controller_fini): ... here (new function).
+ (grub_at_keyboard_term): New structure.
+ (GRUB_MOD_INIT(at_keyboard), GRUB_MOD_FINI(at_keyboard)): New
+ functions.
+
+ Migrate output terminals to new API:
+
+ * term/i386/pc/vga.c (grub_vga_term): Change type to
+ `struct grub_term_output'. Remove `.checkkey' and `.getkey'
+ members. Update all users.
+ * term/gfxterm.c (grub_video_term): Change type to
+ `struct grub_term_output'. Remove `.checkkey' and `.getkey'
+ members. Update all users.
+ * include/grub/i386/pc/console.h (grub_console_checkkey)
+ (grub_console_getkey): Do not export (no longer needed by gfxterm,
+ etc).
+
+ Migrate `terminal' command and userland tools to new API:
+
+ * commands/terminal.c (grub_cmd_terminal): Split into ...
+ (grub_cmd_terminal_input): ... this, and ...
+ (grub_cmd_terminal_output): ... this.
+ (GRUB_MOD_INIT(terminal)): Split `terminal' command in two commands:
+ `terminal_input' and `terminal_output'.
+ * util/grub.d/00_header.in: Adjust `terminal' calls to new
+ `terminal_input' / `terminal_output' API.
+ * util/grub-mkconfig.in: Export ${GRUB_TERMINAL_INPUT} and
+ ${GRUB_TERMINAL_OUTPUT} instead of ${GRUB_TERMINAL} (and if user
+ provided ${GRUB_TERMINAL}, convert it).
+
+2008-11-04 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_freebsd.in: New file. Generate grub configuration
+ for FreeBSD.
+ * conf/common.rmk (grub-mkconfig_SCRIPTS): Add 10_freebsd.
+
+2008-11-03 Bean <bean123ch@gmail.com>
+
+ * kern/elf.c (grub_elf32_load): Revert to previous code.
+ (grub_elf64_load): Likewise.
+
+ * loader/i386/bsd.c (grub_bsd_elf32_hook): Change return address.
+
+2008-11-01 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in (CPPFLAGS): Fix builddir=. assumption.
+ (TARGET_CPPFLAGS): Likewise.
+ * genmk.rb (mod_src): Fix builddir=. and srcdir=. assumptions.
+
+2008-11-01 Carles Pina i Estany <carles@pina.cat>
+
+ * normal/menu.c (run_menu): Add Previous and Next Page keys in menu.
+
+2008-10-29 Guillem Jover <guillem.jover@nokia.com>
+
+ * disk/lvm.c (grub_lvm_scan_device): Fix error recovery by delaying the
+ addition of objects until the code is not going to be able to fail.
+
+2008-10-29 Guillem Jover <guillem.jover@nokia.com>
+
+ * disk/lvm.c (grub_lvm_scan_device): Fix possible NULL value handling
+ (add a missing NULL check, and correct them by moving the pointer
+ operations after the actual check).
+
+2008-10-29 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: Handle empty string as output from
+ make_system_path_relative_to_its_root().
+
+2008-10-05 Hans Lambermont <hans@lambermont.dyndns.org>
+
+ * disk/lvm.c (grub_lvm_scan_device): Allocate buffer space for the
+ circular metadata worst case scenario. If the metadata is circular
+ then copy the wrap in place.
+ * include/grub/lvm.h: Add GRUB_LVM_MDA_HEADER_SIZE, from the LVM2
+ project lib/format_text/layout.h
+ Circular metadata bug found and patch debugged by Jan Derk Gerlings.
+
+2008-10-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/i386/pc/grub-install.in: Source grub-mkconfig_lib instead of update-grub_lib.
+
+2008-10-03 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/update-grub_lib.in: Mention filename in warning message.
+
+2008-09-29 Felix Zielcke <fzielcke@z-51.de>
+
+ * NEWS: Update for rename of update-grub to grub-mkconfig.
+
+2008-09-29 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/update-grub_lib.in: Copy to ...
+ * util/grub-mkconfig_lib.in: ... this. Update all users.
+ * util/update-grub_lib.in: Make it a stub to `grub-mkconfig_lib.in'.
+ * util/update-grub.in: Rename to ...
+ * util/grub-mkconfig.in: ... this. Update all users. Remove `-y'
+ option. Add `--output' option to allow users to specify the generated
+ configuration file. Default to stdout.
+ (update_grub_dir): Rename to ...
+ (grub_mkconfig_dir): ... this.
+ (grub_cfg): Default to an empty string.
+ * conf/common.rmk (update-grub): Rename to ...
+ (grub-mkconfig): ... this.
+ (update-grub_lib): Copy to ...
+ (grub-mkconfig_lib): ... this.
+ (update-grub_SCRIPTS): Copy to ...
+ (grub-mkconfig_SCRIPTS): ... this. Update all users.
+ (update-grub_DATA): Rename to ...
+ (grub-mkconfig_DATA): ... this.
+
+2008-09-28 Robert Millan <rmh@aybabtu.com>
+
+ * fs/iso9660.c (struct grub_iso9660_primary_voldesc): Rename `created'
+ to `modified'. Add the real `created' field.
+ (grub_iso9660_uuid): Use `modified' rather than `created' for
+ constructing the UUID.
+
+2008-09-28 Felix Zielcke <fzielcke@z-51.de>
+
+ fs/jfs.c (grub_jfs_find_file): Treat multiple slashes like one.
+ Based on code from Tomas Ebenlendr <ebik@ucw.cz>.
+
+2008-09-28 Bean <bean123ch@gmail.com>
+
+ * fs/ntfs.c (grub_ntfs_iterate_dir): Fix a bug in the previous patch.
+ Thanks to Christian Franke for finding this bug.
+
+2008-09-25 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-mkdevicemap.c (make_device_map): Actually replace all
+ instances of grub_util_get_disk_name() (see previous commit).
+
+2008-09-25 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Remove
+ `util/i386/get_disk_name.c'.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Remove
+ `util/ieee1275/get_disk_name.c'.
+ * include/grub/util/misc.h (grub_util_get_disk_name): Remove.
+ * util/ieee1275/get_disk_name.c: Remove file.
+ * util/i386/get_disk_name.c: Remove file.
+ * util/grub-mkdevicemap.c (make_device_map): Back to hardcoding
+ "hd%d" for device.map entries, rather than using
+ grub_util_get_disk_name().
+
+2008-09-24 Carles Pina i Estany <carles@pina.cat>
+
+ * disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Fix `unused parameter'
+ warning.
+ * commands/i386/pc/pxecmd.c (dmraid_nvidia): Likewise.
+
+2008-09-24 Carles Pina i Estany <carles@pina.cat>
+
+ * include/grub/i386/pc/console.h (GRUB_TERM_NPAGE):
+ Changed to 0x5100.
+ (GRUB_TERM_PPAGE): Changed to 0x4900.
+
+2008-09-24 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/powerpc/ieee1275/console.h (GRUB_CONSOLE_KEY_*): Remove
+ macros (they were i386-pc specific).
+ * include/grub/sparc64/ieee1275/console.h: Likewise.
+ * include/grub/efi/console.h: Likewise.
+
+2008-09-22 Bean <bean123ch@gmail.com>
+
+ * fs/ntfs.c (grub_ntfs_iterate_dir): Fix a rare case where $BITMAP is
+ resident and in attribute list.
+
+ * include/grub/ntfs.h (BMP_LEN): Removed.
+
+2008-09-22 Bean <bean123ch@gmail.com>
+
+ * disk/ata.c (grub_atapi_open): Initialize devfnd, no need to set
+ scsi->name and scsi->luns, as they will be set in grub_scsi_open.
+
+ * disk/scsi.c (grub_scsi_open): Don't call p->close (scsi) here when
+ error occurs, as grub_disk_open will call grub_disk_close, which will
+ call p->close (scsi).
+
+2008-09-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * configure.ac (AC_INIT): Quote `GRUB' string and version number.
+ (AC_PREREQ): Bumped to 2.59.
+ (AC_TRY_COMPILE): Replace obsolete macro with ...
+ (AC_COMPILE_IFELSE): ... this.
+ * aclocal.m4 (AC_TRY_LINK): Replace obsolete macro with ...
+ (AC_LINK_IFELSE): ... this.
+
+2008-09-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * autogen.sh: Add a call to `gendistlist.sh'.
+
+2008-09-19 Christian Franke <franke@computer.org>
+
+ * aclocal.m4 (grub_CHECK_ENABLE_EXECUTE_STACK): New function.
+ * configure.ac: Call grub_CHECK_ENABLE_EXECUTE_STACK.
+ * include/grub/misc.h [NEED_ENABLE_EXECUTE_STACK]:
+ Export __enable_execute_stack() to modules.
+ * kern/misc.c [NEED_ENABLE_EXECUTE_STACK] (__enable_execute_stack):
+ New function.
+
+2008-09-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * Makefile.in (RMKFILES): Add `i386.rmk' and `x86_64-efi.rmk'.
+ Sort the list.
+
+2008-09-09 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/hostdisk.c: Replace #include <grub/util/biosdisk.h> with
+ #include <grub/util/hostdisk.h>.
+
+2008-09-08 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Skip
+ segments when their filesz is zero (grub_file_read() interprets
+ zero-size as "read until EOF", which results in memory corruption).
+ Use `lowest_segment' rather than 0 for calculating the current
+ segment load address.
+
+2008-09-08 Robert Millan <rmh@aybabtu.com>
+
+ * util/hostdisk.c (open_device): Replace a grub_util_info() call
+ with grub_dprintf("hostdisk", ...), as it was so verbose that it
+ clobbered useful information.
+
+2008-09-08 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/util/biosdisk.h: Move to ...
+ * include/grub/util/hostdisk.h: ... here. Update all users.
+ * util/biosdisk.c: Move to ...
+ * util/hostdisk.c: ... here. Update all users.
+
+2008-09-07 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (mmap_addr, mmap_length): Remove
+ variables.
+ (grub_multiboot): Move `mbi' allocation upwards, so that mmap address
+ and length can be stored directly in the `mbi->mmap_addr' and
+ `mbi->mmap_length' struct fields.
+
+2008-09-07 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386.rmk: New file. Provides declaration for building
+ `cpuid.mod'.
+ * conf/i386-pc.rmk (pkglib_MODULES): Remove `cpuid.mod'.
+ (cpuid_mod_SOURCES, cpuid_mod_CFLAGS, cpuid_mod_LDFLAGS): Remove
+ variables.
+ Include `conf/i386.mk'.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/x86_64-efi.rmk: Likewise.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+
+2008-09-07 Vesa Jääskeläinen <chaac@nic.fi>
+
+ Based on patch created by Colin D Bennett <colin@gibibit.com>.
+ Adds optimization support for BGR based modes.
+
+ * include/grub/i386/pc/vbeblit.h (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8) Removed.
+ (grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_index_index): Likewise.
+ (grub_video_i386_vbeblit_replace_directN): Added.
+ (grub_video_i386_vbeblit_replace_BGRX8888_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_BGRX8888_RGB888): Likewise.
+ (grub_video_i386_vbeblit_replace_BGR888_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_BGR888_RGB888): Likewise.
+ (grub_video_i386_vbeblit_replace_RGBX8888_RGB888): Likewise.
+ (grub_video_i386_vbeblit_replace_RGB888_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_index_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_index_RGB888): Likewise.
+ (grub_video_i386_vbeblit_blend_BGRA8888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_BGR888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_RGBA8888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_RGB888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_index_RGBA8888): Likewise.
+
+ * include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8) Removed.
+ (grub_video_i386_vbefill_R8G8B8): Likewise.
+ (grub_video_i386_vbefill_index): Likewise.
+ (grub_video_i386_vbefill_direct32): Added.
+ (grub_video_i386_vbefill_direct24): Likewise.
+ (grub_video_i386_vbefill_direct16): Likewise.
+ (grub_video_i386_vbefill_direct8): Likewise.
+
+ * include/grub/video.h (grub_video_blit_format): Removed
+ GRUB_VIDEO_BLIT_FORMAT_R8G8B8A8, GRUB_VIDEO_BLIT_FORMAT_R8G8B8.
+ (grub_video_blit_format): Added GRUB_VIDEO_BLIT_FORMAT_RGBA_8888,
+ GRUB_VIDEO_BLIT_FORMAT_BGRA_8888, GRUB_VIDEO_BLIT_FORMAT_RGB_888,
+ GRUB_VIDEO_BLIT_FORMAT_BGR_888, GRUB_VIDEO_BLIT_FORMAT_RGB_565,
+ GRUB_VIDEO_BLIT_FORMAT_BGR_565.
+
+ * video/video.c (grub_video_get_blit_format): Updated to use new
+ blit formats. Added handling for 16 bit color modes.
+
+ * video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Updated to use new
+ fillers.
+ (common_blitter): Updated to use new blitters.
+
+ * video/i386/pc/vbeblit.c (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8):
+ Removed.
+ (grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_index_index): Likewise.
+ (grub_video_i386_vbeblit_replace_directN): Added.
+ (grub_video_i386_vbeblit_replace_BGRX8888_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_BGRX8888_RGB888): Likewise.
+ (grub_video_i386_vbeblit_replace_BGR888_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_BGR888_RGB888): Likewise.
+ (grub_video_i386_vbeblit_replace_RGBX8888_RGB888): Likewise.
+ (grub_video_i386_vbeblit_replace_RGB888_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_index_RGBX8888): Likewise.
+ (grub_video_i386_vbeblit_replace_index_RGB888): Likewise.
+ (grub_video_i386_vbeblit_blend_BGRA8888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_BGR888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_RGBA8888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_RGB888_RGBA8888): Likewise.
+ (grub_video_i386_vbeblit_blend_index_RGBA8888): Likewise.
+
+ * video/i386/pc/vbefill.c (grub_video_i386_vbefill_R8G8B8A8): Removed.
+ (grub_video_i386_vbefill_R8G8B8): Likewise.
+ (grub_video_i386_vbefill_index): Likewise.
+ (grub_video_i386_vbefill_direct32): Added.
+ (grub_video_i386_vbefill_direct24): Likewise.
+ (grub_video_i386_vbefill_direct16): Likewise.
+ (grub_video_i386_vbefill_direct8): Likewise.
+
+ * video/readers/jpeg.c (grub_jpeg_decode_sos): Adapt to new blitter
+ types.
+
+ * video/readers/tga.c (grub_video_reader_tga): Adapt to new blitter
+ types.
+
+ * video/readers/png.c (grub_png_decode_image_header): Adapt to new
+ blitter types.
+
+ * video/bitmap.c (grub_video_bitmap_create): Adapt to new blitter
+ types.
+
+2008-09-06 Felix Zielcke <fzielcke@z-51.de>
+
+ * disk/raid.c (insert_array): Set `array->chunk_size' to 64 for
+ RAID level 1.
+
+2008-09-06 Felix Zielcke <fzielcke@z-51.de>
+
+ * fs/iso9660.c (grub_iso9660_date): New structure.
+ (grub_iso9660_primary_voldesc): Add `grub_iso9660_date' member.
+ (grub_iso9660_uuid): New function.
+
+2008-09-05 Bean <bean123ch@gmail.com>
+
+ * fs/fshelp.c (grub_fshelp_find_file): Handle case insensitive names.
+
+ * fs/ntfs.c (list_file): Ignore names in DOS namespace, set the case
+ insensitive bit for names in Win32 and Win32 & DOS namespace.
+
+ * include/grub/fshelp.h (GRUB_FSHELP_CASE_INSENSITIVE): New macro.
+
+ * include/grub/types.h (LONG_MAX): Likewise.
+
+2008-09-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/getroot.c: Include <config.h>.
+ (grub_util_get_grub_dev): Rewrite to use asprintf for mdraid devices,
+ add support for /dev/md/N devices and handle LVM double dash escaping.
+
+2008-09-04 Felix Zielcke <fzielcke@z-51.de>
+
+ * config.guess: Update to latest version from config git.
+ * config.sub: Likewise.
+
+2008-09-03 Robert Millan <rmh@aybabtu.com>
+
+ * disk/scsi.c (grub_scsi_open): Remove size limit when printing
+ `disk->total_sectors'.
+
+2008-09-01 Colin D Bennett <colin@gibibit.com>
+
+ * include/grub/normal.h: Fixed incorrect comment for
+ GRUB_COMMAND_FLAG_NO_ARG_PARSE.
+
+2008-09-01 Colin D Bennett <colin@gibibit.com>
+
+ * commands/i386/pc/vbeinfo.c (grub_cmd_vbeinfo): Replaced constant
+ values with defines.
+
+ * include/grub/i386/pc/vbe.h (GRUB_VBE_MODEATTR_SUPPORTED): Added.
+ (GRUB_VBE_MODEATTR_RESERVED_1): Likewise.
+ (GRUB_VBE_MODEATTR_BIOS_TTY_OUTPUT_SUPPORT): Likewise.
+ (GRUB_VBE_MODEATTR_COLOR): Likewise.
+ (GRUB_VBE_MODEATTR_GRAPHICS): Likewise.
+ (GRUB_VBE_MODEATTR_VGA_COMPATIBLE): Likewise.
+ (GRUB_VBE_MODEATTR_VGA_WINDOWED_AVAIL): Likewise.
+ (GRUB_VBE_MODEATTR_LFB_AVAIL): Likewise.
+ (GRUB_VBE_MODEATTR_DOUBLE_SCAN_AVAIL): Likewise.
+ (GRUB_VBE_MODEATTR_INTERLACED_AVAIL): Likewise.
+ (GRUB_VBE_MODEATTR_TRIPLE_BUF_AVAIL): Likewise.
+ (GRUB_VBE_MODEATTR_STEREO_AVAIL): Likewise.
+ (GRUB_VBE_MODEATTR_DUAL_DISPLAY_START): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_TEXT): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_CGA): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_HERCULES): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_PLANAR): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_NONCHAIN4_256): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_YUV): Likewise.
+
+2008-08-31 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_get_multiboot_mmap_len): Fix
+ declaration.
+ (grub_multiboot): Fix a few warnings.
+
+2008-08-31 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c: Update comment not to say that
+ boot_device support is unimplemented.
+
+2008-08-31 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c: Update comment not to say that a.out
+ or memory map support are unimplemented.
+
+2008-08-31 Colin D Bennett <colin@gibibit.com>
+
+ * util/i386/pc/grub-mkrescue.in: Support multiple overlay directories.
+
+2008-08-31 Colin D Bennett <colin@gibibit.com>
+
+ * commands/i386/pc/vbeinfo.c (grub_cmd_vbeinfo): Show VBE version and
+ total video memory in 'vbeinfo' output; show color format details for
+ each video mode.
+
+2008-08-30 Pavel Roskin <proski@gnu.org>
+
+ * util/genmoddep.c: Remove for real this time.
+ * DISTLIST: Remove util/genmoddep.c.
+
+2008-08-30 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/pc/startup.S (multiboot_header): Force 4-byte alignment
+ as required by Multiboot spec (it was already 4-byte aligned, but
+ only by chance).
+
+2008-08-29 Pavel Roskin <proski@gnu.org>
+
+ * kern/powerpc/ieee1275/crt0.S: Rename to ...
+ * kern/powerpc/ieee1275/startup.S: ... this.
+ * conf/powerpc-ieee1275.rmk: Adjust for the above.
+ * DISTLIST: Likewise.
+
+ * kern/powerpc/ieee1275/crt0.S: Include grub/symbol.h and
+ grub/cpu/kernel.h. Add start label for consistency with other
+ platforms. Add grub_prefix immediately after start. Add jump
+ to the code after grub_prefix.
+ * include/grub/powerpc/kernel.h: Provide valid values for
+ GRUB_KERNEL_CPU_PREFIX and GRUB_KERNEL_CPU_DATA_END.
+
+2008-08-29 Bean <bean123ch@gmail.com>
+
+ * configure.ac: Change host_os to cygwin for mingw.
+ (asprintf): New check for function.
+
+ * include/grub/symbol.h: Replace #ifndef __CYGWIN__ with
+ #if ! defined (__CYGWIN__) && ! defined (__MINGW32__).
+
+ * include/grub/util/misc.h: #include <config.h> and <grub/types.h>,
+ declare asprintf if HAVE_ASPRINTF is not set, declare fseeko, ftello,
+ sync, sleep and grub_util_get_disk_size for mingw.
+
+ * util/biosdisk.c (grub_util_biosdisk_open): Use grub_util_get_disk_size
+ to get size in mingw.
+ (open_device): Use flag O_BINARY if it's defined.
+ (find_root_device): Add dummy code for mingw.
+
+ * util/grub-mkdevicemap.c (get_floppy_disk_name): Return 0 for mingw.
+ (get_ide_disk_name): Return //./PHYSICALDRIVE%d for mingw.
+ (get_scsi_disk_name): Return 0 for mingw.
+
+ * util/hostfs.c: #include <grub/util/misc.h>.
+ (grub_hostfs_open): Use "rb" flag to open file, use
+ grub_util_get_disk_size to get disk size for mingw.
+
+ * util/misc.c: #include <windows.h> and <winioctl.h> in mingw.
+ (asprintf): New function if HAVE_ASPRINTF is not set.
+ (sync): New function for mingw.
+ (sleep): Likewise.
+ (grub_util_get_disk_size): Likewise.
+
+2008-08-28 Pavel Roskin <proski@gnu.org>
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add
+ kern/time.c.
+
+2008-08-28 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (find_grub_drive): Declare missing `i' variable.
+
+2008-08-28 Robert Millan <rmh@aybabtu.com>
+
+ Change find_grub_drive() syntax so it doesn't prevent it from
+ detecting NULL names as errors.
+
+ * util/biosdisk.c (find_grub_drive): Move free slot search code
+ from here ...
+ (find_free_slot): ... to here.
+ (read_device_map): Use find_free_slot() to search for free slots.
+
+2008-08-27 Marco Gerards <marco@gnu.org>
+
+ * conf/common.rmk (pkglib_MODULES): Add scsi.mod.
+ (scsi_mod_SOURCES): New variable.
+ (scsi_mod_CFLAGS): Likewise
+ (scsi_mod_LDFLAGS): Likewise.
+
+ * disk/scsi.c: New file.
+
+ * include/grub/scsi.h: Likewise.
+
+ * include/grub/scsicmd.h: Likewise.
+
+ * disk/ata.c: Include <grub/scsi.h>.
+ (grub_atapi_packet): Do not use grub_ata_cmd, use registers
+ instead.
+ (grub_ata_iterate): Skip ATAPI devices.
+ (grub_ata_open): Only handle ATAPI devices.
+ (struct grub_atapi_read): Removed.
+ (grub_atapi_readsector): Likewise.
+ (grub_ata_read): No longer handle ATAPI devices.
+ (grub_ata_write): Likewise.
+ (grub_atapi_iterate): New function.
+ (grub_atapi_read): Likewise.
+ (grub_atapi_write): Likewise.
+ (grub_atapi_open): Likewise.
+ (grub_atapi_close): Likewise.
+ (grub_atapi_dev): New variable.
+ (GRUB_MOD_INIT(ata)): Register ATAPI as SCSI device.
+ (GRUB_MOD_FINI(ata)): Unregister ATAPI.
+
+ * include/grub/disk.h (enum grub_disk_dev_id): Add
+ `GRUB_DISK_DEVICE_SCSI_ID'.
+
+2008-08-26 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (grub_util_biosdisk_open, open_device)
+ (grub_util_biosdisk_get_grub_dev): Make error messages a bit more
+ descriptive.
+
+2008-08-23 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (grub_probe_SOURCES): Add disk/mdraid_linux.c.
+ (grub_fstest_SOURCES): Add disk/raid5_recover.c, disk/raid6_recover.c,
+ disk/mdraid_linux.c and disk/dmraid_nvidia.c and lib/crc.c.
+ (pkglib_MODULES): Add raid5rec.mod, raid6rec.mod, mdraid.mod and
+ dm_nv.mod.
+ (raid5rec_mod_SOURCES): New macro.
+ (raid5rec_mod_CFLAGS): Likewise.
+ (raid5rec_mod_LDFLAGS): Likewise.
+ (raid6rec_mod_SOURCES): Likewise.
+ (raid6rec_mod_CFLAGS): Likewise.
+ (raid6rec_mod_LDFLAGS): Likewise.
+ (mdraid_mod_SOURCES): Likewise.
+ (mdraid_mod_CFLAGS): Likewise.
+ (mdraid_mod_LDFLAGS): Likewise.
+ (dm_nv_mod_SOURCES): Likewise.
+ (dm_nv_mod_CFLAGS): Likewise.
+ (dm_nv_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add disk/mdraid_linux.c.
+ (grub_emu_SOURCES): Add disk/raid5_recover.c, disk/raid6_recover.c,
+ disk/mdraid_linux.c and disk/dmraid_nvidia.c.
+
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add disk/raid5_recover.c,
+ disk/raid6_recover.c, disk/mdraid_linux.c and disk/dmraid_nvidia.c.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * disk/raid5_recover.c: New file.
+
+ * disk/raid6_recover.c: Likewise.
+
+ * disk/mdraid_linux.c: Likewise.
+
+ * disk/dmraid_nvidia.c: Likewise.
+
+ * disk/i386/pc/biosdisk.c: Set total_sectors of cdrom device to
+ ULONG_MAX.
+
+ * disk/raid.c (grub_raid_open): Use the size of the smallest disk to
+ calculate the size of raid device.
+ (grub_raid_read): Simplify raid0 code. Support raid4, raid6 and four
+ different layout of raid5.
+ (grub_raid_scan_device): Remove code specific to mdraid.
+ (grub_raid_list): New variable.
+ (free_array): New function.
+ (grub_raid_register): Likewise.
+ (grub_raid_unregister): Likewise.
+ (grub_raid_rescan): Likewise.
+ (GRUB_MOD_INIT): Don't iterate device here.
+ (GRUB_MOD_FINI): Use free_array to release resource.
+
+ * include/grub/raid.h: Remove macro and structure specific to mdraid.
+ (grub_raid5_recover_func_t): New function variable type.
+ (grub_raid6_recover_func_t): Likewise.
+ (grub_raid5_recover_func): New variable.
+ (grub_raid6_recover_func): Likewise.
+ (grub_raid_register): New function.
+ (grub_raid_unregister): Likewise.
+ (grub_raid_rescan): Likewise.
+ (grub_raid_block_xor): Likewise.
+
+ * util/grub-fstest.c: Add #include <grub/raid.h> and <grub/lib/crc.h>.
+ (CMD_CRC): New macro.
+ (part): Removed.
+ (read_file): Handle device as well as file.
+ (cmd_crc): New function.
+ (fstest): Handle multiple disks.
+ (options): Remove part, raw and long, add root and diskcount.
+ (usage): Add crc, remove -p, -r, -l, add -r and -c.
+ (main): Find the first non option entry and ignore subsequent options,
+ add handling for the new options, support multiple disks.
+
+ * util/grub-probe.c (probe): Add mdraid to abstraction_name.
+
+2008-08-23 Bean <bean123ch@gmail.com>
+
+ * normal/x86_64/setjmp.S (grub_longjmp): Return 1 when val = 0.
+
+ * genfslist.sh: Ignore kernel.mod.
+
+ * genpartmaplist.sh: Likewise.
+
+2008-08-23 Robert Millan <rmh@aybabtu.com>
+
+ * util/getroot.c (find_root_device): Skip anything that starts with
+ a dot, not just directories. This avoids things like /dev/.tmp.md0.
+
+2008-08-22 Felix Zielcke <fzielcke@z-51.de>
+
+ * util/update-grub.in (GRUB_GFXMODE): Export variable.
+ * util/grub.d/00_header.in: Allow the administrator to change default
+ gfxmode via ${GRUB_GFXMODE}.
+
+2008-08-21 Felix Zielcke <fzielcke@z-51.de>
+
+ * fs/ntfs.c (grub_ntfs_mount): Fix a memory leak.
+
+2008-08-21 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/linux.c: New file. Implements generic 32-bit Linux
+ loader.
+ * conf/i386-coreboot.rmk (_linux_mod_SOURCES): Replace
+ `loader/i386/pc/linux.c' with `loader/i386/linux.c'.
+
+2008-08-20 Carles Pina i Estany <carles@pina.cat>
+
+ * menu/normal.c (run_menu): Replace hardcoded numbers with macros
+ (16 for GRUB_TERM_UP and 14 for GRUB_TERM_DOWN)
+
+2008-08-19 Robert Millan <rmh@aybabtu.com>
+
+ * term/gfxterm.c (DEFAULT_CURSOR_COLOR): Remove.
+ (struct grub_virtual_screen): Remove `cursor_color'.
+ (grub_virtual_screen_setup): Remove `virtual_screen.cursor_color'
+ initialization.
+ (write_cursor): Use `virtual_screen.fg_color' to draw cursor.
+
+2008-08-18 Robert Millan <rmh@aybabtu.com>
+
+ Unify (identical) linux_normal.c files.
+ * loader/i386/efi/linux_normal.c: Move from here ...
+ * loader/linux_normal.c: ... to here. Update all users.
+ * loader/i386/pc/linux_normal.c: Delete. Update all users.
+ * loader/i386/ieee1275/linux_normal.c: Likewise.
+
+2008-08-18 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/linux.h (LINUX_LOADER_ID_LILO)
+ (LINUX_LOADER_ID_LOADLIN, LINUX_LOADER_ID_BOOTSECT)
+ (LINUX_LOADER_ID_SYSLINUX, LINUX_LOADER_ID_ETHERBOOT)
+ (LINUX_LOADER_ID_ELILO, LINUX_LOADER_ID_GRUB, LINUX_LOADER_ID_UBOOT)
+ (LINUX_LOADER_ID_XEN, LINUX_LOADER_ID_GUJIN, LINUX_LOADER_ID_QEMU):
+ New macros.
+ (GRUB_LINUX_CL_OFFSET, GRUB_LINUX_CL_END_OFFSET): Move from here ...
+ * loader/i386/pc/linux.c (GRUB_LINUX_CL_OFFSET)
+ (GRUB_LINUX_CL_END_OFFSET): ... to here.
+ * loader/i386/efi/linux.c (GRUB_EFI_CL_OFFSET): Rename to ...
+ (GRUB_LINUX_CL_OFFSET): ... this. Update all users.
+ (GRUB_EFI_CL_END_OFFSET): Rename to ...
+ (GRUB_LINUX_CL_END_OFFSET): ... this. Update all users.
+ (grub_rescue_cmd_linux): Macroify `type_of_loader' initialization.
+ Initialize `params->video_cursor_x' and `params->video_cursor_y'
+ portably using grub_getxy().
+ Replace `-EFI' with `-bzImage' in boot message.
+
+2008-08-17 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/x86_64/kernel.h: New file (<grub/i386/kernel.h> stub).
+
+2008-08-17 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pc/mmap.c'.
+
+ * include/grub/i386/pc/init.h (GRUB_MACHINE_MEMORY_AVAILABLE)
+ (GRUB_MACHINE_MEMORY_RESERVED): New macros.
+ (grub_machine_mmap_iterate): New function declaration.
+ * include/grub/multiboot.h (struct grub_multiboot_mmap_entry): New
+ structure.
+ (GRUB_MMAP_MEMORY_AVAILABLE, GRUB_MMAP_MEMORY_RESERVED): New
+ macros.
+
+ * kern/i386/pc/init.c (grub_machine_init): Replace hardcoded region
+ type check value with `GRUB_MACHINE_MEMORY_AVAILABLE'.
+ Move e820 parsing from here ...
+ * kern/i386/pc/mmap.c: New file.
+ (grub_machine_mmap_iterate): ... to here.
+
+ * include/grub/i386/coreboot/memory.h: Remove `<grub/err.h>'.
+ (GRUB_LINUXBIOS_MEMORY_AVAILABLE): Rename (for consistency) to ...
+ (GRUB_MACHINE_MEMORY_AVAILABLE): ... this. Update all users.
+ (grub_available_iterate): Redeclare to return `void', and redeclare
+ its hook to use grub_uint64_t as addr and size parameters, and rename
+ to ...
+ (grub_machine_mmap_iterate): ... this. Update all users.
+
+ * kern/i386/coreboot/mmap.c (grub_mmap_iterate): Simplify parser loop
+ to make it more readable. Rename to ...
+ (grub_machine_mmap_iterate): ... this.
+
+ * loader/i386/pc/multiboot.c (mmap_addr, mmap_length): New variables.
+ (grub_get_multiboot_mmap_len, grub_fill_multiboot_mmap): New functions.
+ (grub_multiboot): Allocate an extra region after the payload, and fill
+ it with a Multiboot memory map. Adjust a.out loader to calculate size
+ with the extra space.
+ (grub_multiboot_load_elf32): Adjust elf32 loader to calculate size
+ with the extra space.
+
+2008-08-17 Carles Pina i Estany <carles@pina.cat>
+
+ * menu/normal.c (run_menu): Add Home and End keys in grub-menu.
+
+2008-08-17 Felix Zielcke <fzielcke@z-51.de>
+
+ * gendistlist.sh: Add *.y, *.tex, *.texi, grub.cfg, README, *.sc,
+ mdate-sh to the list `find' searches for.
+ * DISTLIST: Regenerated.
+
+2008-08-16 Felix Zielcke <fzielcke@z-51.de>
+
+ * gendistlist.sh (EXTRA_DISTFILES): Remove gensymlist.sh,
+ genkernsyms.sh. Add geninit.sh, geninitheader.sh, genkernsyms.sh.in,
+ genmoddep.awk, gensymlist.sh.in.
+ (DISTDIRS): Add bus, docs, hook, lib.
+ * DISTLIST: Regenerated.
+ * NEWS: Add cygwin support and change the `os-prober' entry a bit.
+
+2008-08-16 Robert Millan <rmh@aybabtu.com>
+
+ * disk/raid.c (grub_raid_init): Handle/report errors set by
+ grub_device_iterate().
+ * disk/lvm.c (grub_lvm_init): Likewise.
+
+2008-08-15 Bean <bean123ch@gmail.com>
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add datetime.mod, date.mod
+ and datehook.mod.
+ (datetime_mod_SOURCES): New macro.
+ (datetime_mod_CFLAGS): Likewise.
+ (datetime_mod_LDFLAGS): Likewise.
+ (date_mod_SOURCES): Likewise.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (datehook_mod_SOURCES): Likewise.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+
+ * conf/i386-coreboot.rmk (pkglib_MODULES): Add datetime.mod, date.mod
+ and datehook.mod.
+ (datetime_mod_SOURCES): New macro.
+ (datetime_mod_CFLAGS): Likewise.
+ (datetime_mod_LDFLAGS): Likewise.
+ (date_mod_SOURCES): Likewise.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (datehook_mod_SOURCES): Likewise.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+
+ * conf/i386-ieee1275.rmk (pkglib_MODULES): Add datetime.mod, date.mod
+ and datehook.mod.
+ (datetime_mod_SOURCES): New macro.
+ (datetime_mod_CFLAGS): Likewise.
+ (datetime_mod_LDFLAGS): Likewise.
+ (date_mod_SOURCES): Likewise.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (datehook_mod_SOURCES): Likewise.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+
+ * conf/i386-efi.rmk (pkglib_MODULES): Add datetime.mod, date.mod
+ and datehook.mod.
+ (datetime_mod_SOURCES): New macro.
+ (datetime_mod_CFLAGS): Likewise.
+ (datetime_mod_LDFLAGS): Likewise.
+ (date_mod_SOURCES): Likewise.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (datehook_mod_SOURCES): Likewise.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+
+ * conf/x86_64-efi.rmk (pkglib_MODULES): Add datetime.mod, date.mod
+ and datehook.mod.
+ (datetime_mod_SOURCES): New macro.
+ (datetime_mod_CFLAGS): Likewise.
+ (datetime_mod_LDFLAGS): Likewise.
+ (date_mod_SOURCES): Likewise.
+ (date_mod_CFLAGS): Likewise.
+ (date_mod_LDFLAGS): Likewise.
+ (datehook_mod_SOURCES): Likewise.
+ (datehook_mod_CFLAGS): Likewise.
+ (datehook_mod_LDFLAGS): Likewise.
+
+ * kern/env.c (grub_env_insert): Fix a bug in prevp pointer.
+
+ * commands/date.c: New file.
+
+ * hook/datehook.c: Likewise.
+
+ * include/grub/lib/datetime.h: Likewise.
+
+ * include/grub/i386/cmos.h: Likewise.
+
+ * lib/datetime.c: Likewise.
+
+ * lib/i386/datetime.c: Likewise.
+
+ * lib/efi/datetime.c: Likewise.
+
+2008-08-14 Robert Millan <rmh@aybabtu.com>
+
+ * conf/common.rmk (bin_UTILITIES): Add `grub-mkelfimage'.
+ (grub_mkelfimage_SOURCES): New variable.
+ (util/elf/grub-mkimage.c_DEPENDENCIES): Likewise.
+
+ * conf/i386-coreboot.rmk (bin_UTILITIES, grub_mkimage_SOURCES)
+ (grub_mkimage_LDFLAGS, util/elf/grub-mkimage.c_DEPENDENCIES): Remove.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+
+ * kern/ieee1275/init.c: Include `<grub/cpu/kernel.h>'.
+ * kern/i386/coreboot/init.c: Likewise.
+
+ * kern/i386/ieee1275/startup.S: Replace `<grub/machine/kernel.h>'
+ with `<grub/cpu/kernel.h>'.
+ (GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Renamed
+ to ...
+ (GRUB_KERNEL_CPU_PREFIX, GRUB_KERNEL_CPU_DATA_END): ... this.
+ * kern/i386/coreboot/startup.S: Likewise.
+
+ * include/grub/powerpc/ieee1275/kernel.h (GRUB_MOD_ALIGN)
+ (GRUB_MOD_GAP): Remove.
+ * include/grub/powerpc/kernel.h: New file.
+ * include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX)
+ (GRUB_KERNEL_MACHINE_DATA_END): Remove.
+ * include/grub/i386/kernel.h: New file.
+ * include/grub/i386/coreboot/kernel.h (GRUB_MOD_ALIGN)
+ (GRUB_MOD_GAP, GRUB_KERNEL_MACHINE_PREFIX)
+ (GRUB_KERNEL_MACHINE_DATA_END): Remove.
+
+ * util/ieee1275/grub-install.in (grub_mkimage): Initialize to use
+ `grub-mkelfimage'.
+ Use --directory when invoking grub_mkimage.
+
+ * util/elf/grub-mkimage.c: Include `<grub/cpu/kernel.h>'.
+ (add_segments): Replace GRUB_KERNEL_MACHINE_DATA_END and
+ GRUB_KERNEL_MACHINE_PREFIX with GRUB_KERNEL_CPU_DATA_END
+ and GRUB_KERNEL_CPU_PREFIX.
+
+2008-08-14 Felix Zielcke <fzielcke@z-51.de>
+
+ * include/grub/err.h (grub_err_printf): New function prototype.
+ * util/misc.c (grub_err_printf): New function.
+ * kern/misc.c [! GRUB_UTIL] (grub_err_printf): New alias for
+ grub_printf.
+ * kern/err.c (grub_print_error): Use grub_err_printf.
+
+2008-08-13 Robert Millan <rmh@aybabtu.com>
+
+ * docs/grub.cfg: Remove `/dev/' prefix in GNU/Hurd boot entry.
+
+2008-08-13 Robert Millan <rmh@aybabtu.com>
+
+ * docs/grub.cfg: Use the native device name for the example GNU/Hurd
+ boot entry.
+
+2008-08-12 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Move part
+ of the relocation code from here ...
+ (grub_multiboot): ... to here.
+ (forward_relocator, backward_relocator): Move from here ...
+ * kern/i386/loader.S (grub_multiboot_forward_relocator)
+ (grub_multiboot_backward_relocator): ... to here.
+ (grub_multiboot_real_boot): Use %edx for entry offset. Put Multiboot
+ magic in %eax. Use %ebp for jumping (so %edx is not trashed).
+ * include/grub/i386/loader.h (grub_multiboot_forward_relocator)
+ (grub_multiboot_forward_relocator_end)
+ (grub_multiboot_backward_relocator)
+ (grub_multiboot_backward_relocator_end): New variables.
+
+2008-08-12 Bean <bean123ch@gmail.com>
+
+ * disk/raid.c (grub_raid_read): Fix a bug in raid0 code.
+
+2008-08-11 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/linuxbios/startup.S: Move from here ...
+ * kern/i386/coreboot/startup.S: ... to here.
+
+ * kern/i386/linuxbios/init.c: Move from here ...
+ * kern/i386/coreboot/init.c: ... to here.
+
+ * kern/i386/linuxbios/table.c: Move from here ...
+ * kern/i386/coreboot/mmap.c: ... to here.
+
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Update moved files.
+
+2008-08-11 Robert Millan <rmh@aybabtu.com>
+
+ * kern/device.c (grub_device_open): Do not handle grub_disk_open()
+ errors. Leave it to the upper layer to handle them.
+
+2008-08-09 Christian Franke <franke@computer.org>
+
+ * Makefile.in: Add `target_os' and `enable_grub_pe2elf'.
+ * conf/common.rmk: Install `grub-pe2elf' only if requested.
+ Install `grub.d/10_windows' only on Cygwin.
+ * configure.ac: Add subst of `target_os'.
+ Check `target_os' also before setting TARGET_OBJ2ELF.
+ Add `--enable-grub-pe2elf'.
+
+2008-08-08 Robert Millan <rmh@aybabtu.com>
+
+ * kern/disk.c: Replace `<grub/machine/time.h>' with `<grub/time.h>'.
+ (grub_last_time): Change type to grub_uint64_t.
+ (grub_disk_open): Migrate code from to using grub_get_time_ms().
+ (grub_disk_close): Likewise.
+
+ * normal/menu.c: Replace `<grub/machine/time.h>' with `<grub/time.h>'.
+ (run_menu): Migrate code from to using grub_get_time_ms().
+
+ * util/misc.c (grub_get_time_ms): New function.
+
+2008-08-08 Marco Gerards <marco@gnu.org>
+
+ * disk/ata.c (grub_ata_regget): Change return type to
+ `grub_uint8_t'.
+ (grub_ata_regget2): Likewise.
+ (grub_ata_wait_status): New function.
+ (grub_ata_wait_busy): Removed function, updated all users to use
+ `grub_ata_wait_status'.
+ (grub_ata_wait_drq): Likewise.
+ (grub_ata_cmd): New function.
+ (grub_ata_pio_read): Change return type to `grub_uint8_t'. Add
+ error handling.
+ (grub_ata_pio_write): Add error handling.
+ (grub_atapi_identify): Likewise.
+ (grub_atapi_packet): Use `grub_ata_cmd' and improve error
+ handling.
+ (grub_ata_identify): Use `grub_ata_cmd' and improve error
+ handling. Actually use the detected registers. Reorder the
+ detection logic such that it is easier to read.
+ (grub_ata_pciinit): Do not assign the same ID to each controller.
+ (grub_ata_setaddress): Use `grub_ata_cmd' and improve error
+ handling.
+ (grub_atapi_readsector): Check the result of `grub_ata_pio_read'.
+
+ * include/grub/err.h (grub_err_t): Add `GRUB_ERR_TIMEOUT'.
+
+2008-08-08 Marco Gerards <marco@gnu.org>
+
+ * NEWS: Update.
+
+2008-08-07 Bean <bean123ch@gmail.com>
+
+ * include/grub/x86_64/pci.h: New file.
+
+2008-08-07 Christian Franke <franke@computer.org>
+
+ * kern/i386/pit.c (TIMER2_SPEAKER): New define.
+ (TIMER2_GATE): Likewise.
+ (grub_pit_wait): Add enable/disable of the timer2 gate
+ bit of port 0x61. This fixes a possible infinite loop.
+
+2008-08-07 Bean <bean123ch@gmail.com>
+
+ * conf/x86_64-efi.rmk (kernel_mod_SOURCES): Add kern/time.c,
+ kern/i386/tsc.c and kern/i386/pit.c.
+
+ * include/grub/i386/tsc.h (grub_cpu_is_cpuid_supported): Handle
+ x86_64 platform.
+
+ * kern/i386/efi/init.c: Replace <grub/cpu/tsc.h> with
+ <grub/i386/tsc.h>.
+
+ * kern/i386/pit.c: Replace <grub/cpu/io.h> with <grub/i386/io.h>.
+
+2008-08-07 Bean <bean123ch@gmail.com>
+
+ * conf/i386-efi.rmk (kernel_mod_SOURCES): Add kern/time.c.
+
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add kern/time.c,
+
+ * include/grub/i386/pit.h: Use macro KERNEL_CPU_PIT_HEADER to avoid
+ multiple inclusion. Add #include <grub/types.h>.
+
+2008-08-06 Christian Franke <franke@computer.org>
+
+ * conf/common.rmk: Build and install `10_windows'.
+ * util/grub.d/10_windows.in: New script.
+
+2008-08-06 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/pit.c: Include `<grub/i386/pit.h>'.
+
+2008-08-06 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-coreboot.rmk (kernel_elf_ASFLAGS): New variable.
+ * kern/i386/tsc.c: Include `<grub/i386/pit.h>'.
+
+2008-08-06 Bean <bean123ch@gmail.com>
+
+ * fs/i386/pc/pxe.c (grub_pxe_data): New member block_size.
+ (grub_pxefs_fs_int): Remove dummy definition.
+ (grub_pxefs_open): Use data->block_size to store the current block
+ size setting.
+ (grub_pxefs_read): Use block size stored in data->block_size. As the
+ value of grub_pxe_blksize can be changed after the file is opened.
+
+2008-08-06 Bean <bean123ch@gmail.com>
+
+ * fs/i386/pc/pxe.c (curr_file): new variable.
+ (grub_pxefs_open): Simply the handling of pxe file system. Don't
+ require the dummy internal file system anymore.
+ (grub_pxefs_read): Removed.
+ (grub_pxefs_close): Likewise.
+ (grub_pxefs_fs_int): Likewise.
+ (grub_pxefs_read_int): Renamed to grub_pxefs_read. Reinitialize tftp
+ connection when we switch file.
+ (grub_pxefs_close_int): Renamed to grub_pxefs_close.
+
+2008-08-06 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-coreboot.rmk (pkglib_MODULES): Add `reboot.mod' and
+ `halt.mod'.
+ (reboot_mod_SOURCES, reboot_mod_CFLAGS, reboot_mod_LDFLAGS)
+ (halt_mod_SOURCES, halt_mod_CFLAGS, halt_mod_LDFLAGS): New variables.
+
+ * kern/i386/halt.c: New file.
+ * kern/i386/reboot.c: Likewise.
+ * include/grub/i386/reboot.h: Likewise.
+ * include/grub/i386/halt.h: Likewise.
+
+ * commands/halt.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]:
+ Include `<grub/cpu/halt.h>'.
+ * commands/reboot.c [! GRUB_MACHINE_IEEE1275 ! GRUB_MACHINE_EFI]
+ [! GRUB_MACHINE_PCBIOS]: Include `<grub/cpu/reboot.h>'.
+
+ * term/i386/pc/at_keyboard.c: Include `<grub/cpu/at_keyboard.h>'.
+ (SHIFT_L, SHIFT_R, CTRL, ALT, CAPS_LOCK, KEYBOARD_REG_DATA)
+ (KEYBOARD_REG_STATUS, KEYBOARD_COMMAND_ISREADY, KEYBOARD_COMMAND_READ)
+ (KEYBOARD_COMMAND_WRITE, KEYBOARD_COMMAND_REBOOT)
+ (KEYBOARD_SCANCODE_SET1, KEYBOARD_ISMAKE, KEYBOARD_ISREADY)
+ (KEYBOARD_SCANCODE, OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): Move
+ from here ...
+ * include/grub/i386/at_keyboard.h: ... to here.
+
+2008-08-05 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/i386/pit.c'.
+ * conf/i386-efi.rmk (kernel_mod_SOURCES): Likewise.
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Likewise. Also add
+ `kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and
+ `kern/generic/millisleep.c'.
+
+ * kern/i386/tsc.c (calibrate_tsc): Rewrite using grub_pit_wait()
+ instead of grub_get_rtc().
+ (grub_tsc_init): Initialize `tsc_boot_time'.
+
+ * kern/i386/linuxbios/init.c (grub_millisleep): Remove stub.
+ (grub_machine_init): Use grub_tsc_init() rather than
+ installing an RTC-based handler via grub_install_get_time_ms().
+
+ * kern/i386/pit.c: New file.
+ * include/grub/i386/pit.h: Likewise.
+
+2008-08-05 Bean <bean123ch@gmail.com>
+
+ * boot/i386/pc/pxeboot.S (_start): Use drive number 0x7F for pxe.
+
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Add machine/pxe.h.
+ (pkglib_MODULES): Add pxe.mod and pxecmd.mod.
+ (pxe_mod_SOURCES): New macro.
+ (pxe_mod_CFLAGS): Likewise.
+ (pxe_mod_LDFLAGS): Likewise.
+ (pxecmd_mod_SOURCES): Likewise.
+ (pxecmd_mod_CFLAGS): Likewise.
+ (pxecmd_mod_LDFLAGS): Likewise.
+
+ * kern/i386/pc/startup.S (grub_pxe_scan): New function.
+ (grub_pxe_call): Likewise.
+
+ * include/grub/disk.h (grub_disk_dev_id): Add GRUB_DISK_DEVICE_PXE_ID.
+
+ * commands/i386/pc/pxecmd.c: New file.
+
+ * fs/i386/pc/pxe.c: Likewise.
+
+ * include/grub/i386/pc/pxe.h: Likewise.
+
+2008-08-05 Bean <bean123ch@gmail.com>
+
+ * util/console.c (grub_console_cur_color): New variable.
+ (grub_console_standard_color): Likewise.
+ (grub_console_normal_color): Likewise.
+ (grub_console_highlight_color): Likewise.
+ (color_map): Likewise.
+ (use_color): Likewise.
+ (NUM_COLORS): New macro.
+ (grub_ncurses_setcolorstate): Handle color properly.
+ (grub_ncurses_setcolor): Don't change color here, just remember the
+ settings, color will be set in grub_ncurses_setcolorstate.
+ (grub_ncurses_getcolor): New function.
+ (grub_ncurses_init): Initialize color pairs.
+ (grub_ncurses_term): New member grub_ncurses_getcolor.
+
+2008-08-05 Colin D Bennett <colin@gibibit.com>
+
+ High resolution timer support. Implemented for x86 CPUs using TSC.
+ Extracted generic grub_millisleep() so it's linked in only as needed.
+ This requires a Pentium compatible CPU; if the RDTSC instruction is
+ not supported, then it falls back on the generic grub_get_time_ms()
+ implementation that uses the machine's RTC.
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/time.c',
+ `kern/i386/tsc.c', `kern/generic/rtc_get_time_ms.c' and
+ `kern/generic/millisleep.c'.
+
+ * conf/i386-efi.rmk (kernel_mod_SOURCES): Add `kern/i386/tsc.c',
+ `kern/generic/rtc_get_time_ms.c' and `kern/generic/millisleep.c'.
+
+ * conf/x86_64-efi.rml (kernel_mod_SOURCES): Add
+ `kern/generic/millisleep.c' and `kern/generic/rtc_get_time_ms.c'.
+
+ * conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Add
+ `kern/generic/millisleep.c'.
+
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Likewise.
+
+ * conf/i386-coreboot.rmk (kernel_elf_SOURCES): Add `kern/time.c'.
+
+ * kern/generic/rtc_get_time_ms.c: New file.
+
+ * kern/generic/millisleep.c: New file.
+
+ * kern/misc.c: Don't include
+ <kern/time.h> anymore.
+ (grub_millisleep_generic): Removed.
+
+ * commands/sleep.c (grub_interruptible_millisleep): Uses
+ grub_get_time_ms() instead of grub_get_rtc().
+
+ * include/grub/i386/tsc.h (grub_get_tsc): New file. New inline
+ function.
+ (grub_cpu_is_cpuid_supported): New inline function.
+ (grub_cpu_is_tsc_supported): New inline function.
+ (grub_tsc_init): New function prototype.
+ (grub_tsc_get_time_ms): New function prototype.
+
+ * kern/i386/tsc.c (grub_get_time_ms): New file.
+
+ * include/grub/time.h: Include <grub/types.h.
+ (grub_millisleep_generic): Removed.
+ (grub_get_time_ms): New prototype.
+ (grub_install_get_time_ms): New prototype.
+ (grub_rtc_get_time_ms): New prototype.
+
+ * kern/time.c (grub_get_time_ms): New function.
+ (grub_install_get_time_ms): New function.
+
+ * kern/i386/efi/init.c: Include <grub/cpu/tsc.h>. Don't include
+ <grub/time.h> anymore.
+ (grub_millisleep): Removed.
+ (grub_machine_init): Call grub_tsc_init.
+
+ * kern/i386/linuxbios/init.c (grub_machine_init): Install the RTC
+ get_time_ms() implementation.
+
+ * kern/sparc64/ieee1275/init.c (grub_millisleep): Removed.
+ (ieee1275_get_time_ms): New function.
+ (grub_machine_init): Install get_time_ms() implementation.
+
+ * kern/i386/pc/init.c: Include <grub/cpu/tsc.h>.
+ (grub_machine_init): Call grub_tsc_init().
+ (grub_millisleep): Removed.
+
+ * kern/ieee1275/init.c (grub_millisleep): Removed.
+ (grub_machine_init): Install ieee1275_get_time_ms()
+ implementation.
+ (ieee1275_get_time_ms): New function.
+ (grub_get_rtc): Now calls ieee1275_get_time_ms(), which does the
+ real work.
+
+2008-08-05 Marco Gerards <marco@gnu.org>
+
+ * disk/ata.c: Include <grub/pci.h>.
+ (enum grub_ata_commands): Add `GRUB_ATA_CMD_EXEC_DEV_DIAGNOSTICS'.
+ (grub_ata_initialize): Rewritten.
+ (grub_ata_device_initialize): New function.
+
+2008-08-04 Pavel Roskin <proski@gnu.org>
+
+ * kern/main.c: Include grub/mm.h.
+
+2008-08-04 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-coreboot.rmk (COMMON_ASFLAGS, COMMON_CFLAGS)
+ (COMMON_LDFLAGS): Harmonize with i386-pc version (fixes a code
+ corruption problem).
+
+2008-08-04 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Fix misc
+ warnings introduced in my last commit.
+
+2008-08-03 Robert Millan <rmh@aybabtu.com>
+
+ Make PCI available on all i386 architectures.
+
+ * include/grub/i386/pc/pci.h: Move from here ...
+ * include/grub/i386/pci.h: ... to here.
+
+ * include/grub/i386/pc/pci.h: Remove.
+ * include/grub/i386/efi/pci.h: Remove.
+ * include/grub/x86_64/efi/pci.h: Remove.
+
+ * include/grub/pci.h: Replace `<grub/machine/pci.h>' with
+ `<grub/cpu/pci.h>'.
+
+ * conf/i386-coreboot.rmk (pkglib_MODULES): Add `pci' and `lspci'.
+ (pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS, lspci_mod_SOURCES)
+ (lspci_mod_CFLAGS, lspci_mod_LDFLAGS): New variables.
+
+ * conf/i386-ieee1275.rmk: Likewise.
+
+2008-08-03 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/vga_text.c (CRTC_CURSOR_DISABLE): New macro.
+ (grub_console_setcursor): Make it possible to set cursor off.
+
+2008-08-03 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Be platform-agnostic. Probe for existence
+ of modules instead of assuming which platform provides what.
+ * util/update-grub.in: Likewise.
+
+2008-08-03 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/pc/init.c (make_install_device): Check for `grub_prefix'
+ instead of `grub_install_dos_part' to determine whether a drive needs
+ to be prepended to prefix (`grub_install_dos_part' is not reliable,
+ because it can be overridden when loading GRUB via Multiboot).
+
+2008-08-02 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: Remove trailing slash from prefix.
+
+2008-08-02 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Add a pair
+ of informational grub_dprintf() calls.
+
+2008-08-02 Robert Millan <rmh@aybabtu.com>
+
+ * disk/memdisk.c (memdisk_size): Don't initialize.
+ (GRUB_MOD_INIT(memdisk)): Find memdisk using grub_module_iterate().
+
+ * include/grub/i386/pc/kernel.h
+ (GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): Remove macro.
+ (GRUB_KERNEL_MACHINE_PREFIX, GRUB_KERNEL_MACHINE_DATA_END): Shift.
+ (grub_memdisk_image_size, grub_arch_memdisk_addr)
+ (grub_arch_memdisk_size): Remove.
+
+ * include/grub/kernel.h (struct grub_module_header): Remove `offset'
+ field (was only used to transfer a constant). Add `type' field to
+ support multiple module types.
+ (grub_module_iterate): New function.
+
+ * kern/device.c (grub_device_open): Do not hide error messages
+ when grub_disk_open() fails. Use grub_print_error() instead.
+
+ * kern/i386/pc/init.c (grub_arch_modules_addr)
+ (grub_arch_memdisk_size): Remove functions.
+ (grub_arch_modules_addr): Return the module address in high memory
+ (now that it isn't copied anymore).
+
+ * kern/i386/pc/startup.S (grub_memdisk_image_size): Remove variable.
+ (codestart): Don't add grub_memdisk_image_size to %ecx in LZMA
+ decompression routine (grub_total_module_size already includes that
+ now). Don't copy modules back to low memory.
+
+ * kern/main.c: Include `<grub/mm.h>'.
+ (grub_load_modules): Split out (and use) ...
+ (grub_module_iterate): ... this function, which iterates through
+ module objects and runs a hook.
+ Comment out grub_mm_init_region() call, as it would cause non-ELF
+ modules to be overwritten.
+
+ * util/i386/pc/grub-mkimage.c (generate_image): Instead of appending
+ the memdisk image in its own region, make it part of the module list.
+ * util/elf/grub-mkimage.c (options): Add "memdisk"|'m' option.
+ (main): Parse --memdisk|-m option, and pass user-provided path as
+ parameter to generate_image().
+ (add_segments): Pass `memdisk_path' down to load_modules().
+ (load_modules): Embed memdisk image in module section when requested.
+ * util/i386/efi/grub-mkimage.c (make_mods_section): Initialize
+ `header.type' instead of `header.offset'.
+
+ * conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add `memdisk.mod'.
+ (memdisk_mod_SOURCES, memdisk_mod_CFLAGS)
+ (memdisk_mod_LDFLAGS): New variables.
+ * conf/i386-coreboot.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+
+2008-08-02 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (playground, forward_relocator)
+ (backward_relocator): New variables. Used to allocate and relocate
+ the payload, respectively.
+ (grub_multiboot_load_elf32): Load into heap instead of requested
+ address, install the appropriate relocator code in each bound of
+ the payload, and set the entry point such that
+ grub_multiboot_real_boot() will jump to one of them.
+
+ * kern/i386/loader.S (grub_multiboot_payload_size)
+ (grub_multiboot_payload_orig, grub_multiboot_payload_dest)
+ (grub_multiboot_payload_entry_offset): New variables.
+ (grub_multiboot_real_boot): Set cpu context to what the relocator
+ expects, and jump to the relocator instead of the payload.
+
+ * include/grub/i386/loader.h (grub_multiboot_payload_size)
+ (grub_multiboot_payload_orig, grub_multiboot_payload_dest)
+ (grub_multiboot_payload_entry_offset): Export.
+
+2008-08-01 Bean <bean123ch@gmail.com>
+
+ * normal/menu_entry.c (editor_getline): Don't return the original
+ string as result, as it will be released by lexer once it has done
+ using it.
+
+2008-08-01 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in: Use prepare_grub_to_access_device() from
+ within menuentries, not before them.
+ util/grub.d/10_hurd.in: Likewise.
+
+2008-08-01 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkglib_MODULES): Add bufio.mod.
+ (bufio_mod_SOURCES): New macro.
+ (bufio_mod_CFLAGS): Likewise.
+ (bufio_mod_LDFLAGS): Likewise.
+
+ * include/grub/bufio.h: New file.
+
+ * io/bufio.c: Likewise.
+
+ * video/png.c: Replace <grub/file.h> with <grub/bufio.h>.
+ (grub_video_reader_png): Use grub_buffile_open to open file.
+
+ * video/jpeg.c: Replace <grub/file.h> with <grub/bufio.h>.
+ (grub_video_reader_jpeg): Use grub_buffile_open to open file.
+
+ * video/tga.c: Replace <grub/file.h> with <grub/bufio.h>.
+ (grub_video_reader_tga): Use grub_buffile_open to open file.
+
+ * font/manager.c: Include <grub/bufio.h>.
+ (add_font): Use grub_buffile_open to open file.
+
+2008-07-31 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): When loading
+ ELF segments, use a macro for arbitrarily accessing any of them instead
+ of preparing a pointer that allows access to one at a time.
+ (grub_multiboot_load_elf64): Likewise.
+
+2008-07-31 Bean <bean123ch@gmail.com>
+
+ * boot/i386/pc/lnxboot.S (real_code_2): Replace 0x50 with
+ GRUB_KERNEL_MACHINE_DATA_END.
+
+2008-07-30 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_DATA_END):
+ Increase from 0x50 to 0x60.
+ * util/i386/pc/grub-install.in: Detect cross-disk installs, and
+ use UUIDs to identify the root drive for them. If that's not
+ possible, abort.
+ * util/i386/pc/grub-setup.c (setup): Do not special-case, or even
+ check, for cross-disk installs.
+
+2008-07-30 Robert Millan <rmh@aybabtu.com>
+
+ * kern/ieee1275/init.c (grub_machine_set_prefix): If `grub_prefix'
+ is non-empty, use it to set the `prefix' environment variable instead
+ of the usual approach.
+ * kern/i386/linuxbios/init.c (make_install_device): Remove function.
+ (grub_machine_set_prefix): Use `grub_prefix' to set the `prefix'
+ environment variable instead of dummy make_install_device().
+
+ * kern/i386/ieee1275/startup.S: Include `<grub/machine/kernel.h>'.
+ (start): Insert a data section, with `grub_prefix' variable.
+ * kern/i386/linuxbios/startup.S: Likewise.
+
+ * include/grub/powerpc/ieee1275/kernel.h [!ASM_FILE] (grub_prefix):
+ New variable reference.
+ * include/grub/i386/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_PREFIX):
+ New macro. Defines offset of `grub_prefix' within startup.S (relative
+ to `start').
+ (GRUB_KERNEL_MACHINE_DATA_END): New macro. Defines the end of data
+ section within startup.S (relative to `start').
+ * include/grub/i386/coreboot/kernel.h: Likewise.
+
+ * util/elf/grub-mkimage.c (add_segments): Receive `prefix' parameter.
+ Overwrite grub_prefix with its contents, at the beginning of the
+ first segment.
+ (main): Understand -p|--prefix.
+
+2008-07-30 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_hurd.in: Source ${libdir}/grub/update-grub_lib.
+
+2008-07-30 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/vga_text.c (grub_console_cls): Use
+ grub_console_gotoxy() to go back to beginning of the screen.
+ Found by Patrick Georgi <patrick.georgi@coresystems.de>
+
+2008-07-29 Christian Franke <franke@computer.org>
+
+ * util/update-grub_lib.in (make_system_path_relative_to_its_root):
+ Add conversion of emulated mount points on Cygwin.
+
+2008-07-29 Christian Franke <franke@computer.org>
+
+ * util/update-grub.in: Add a check for admin
+ group on Cygwin.
+ Remove old `grub.cfg.new' before creation.
+ Add `-f' to `mv' to handle the different filesystem
+ semantics of Windows.
+
+2008-07-29 Bean <bean123ch@gmail.com>
+
+ * normal/main.c (get_line): Fix buffer overflow bug.
+
+2008-07-28 Robert Millan <rmh@aybabtu.com>
+
+ * partmap/apple.c (GRUB_APPLE_HEADER_MAGIC): New macro.
+ (struct grub_apple_header): New struct. Describes the layout of
+ the partmap header.
+ (apple_partition_map_iterate): Check the header magic as well as the
+ partition magic (which was already being checked).
+
+2008-07-28 Pavel Roskin <proski@gnu.org>
+
+ * genmk.rb: Add a warning to the beginning of the output that
+ it's a generated file and should not be edited.
+
+2008-07-28 Robert Millan <rmh@aybabtu.com>
+
+ * disk/raid.c (grub_raid_scan_device): Do not abort when two disks
+ with the same number are found, just use issue a warning with
+ grub_dprintf(), as this error has been reported to be non-fatal.
+
+2008-07-27 Robert Millan <rmh@aybabtu.com>
+
+ * disk/ata.c (grub_ata_dumpinfo): Use grub_dprintf() for debugging
+ information.
+
+2008-07-27 Bean <bean123ch@gmail.com>
+
+ * fs/fat.c (GRUB_FAT_MAXFILE): New constant.
+ (grub_fat_find_dir): Ignore case when comparing filename.
+
+2008-07-27 Bean <bean123ch@gmail.com>
+
+ * fs/xfs.c (grub_xfs_dir_header): Change field i8count back to
+ smallino, as it's more descriptive, and i8count can be confused with
+ the other field count.
+ (grub_xfs_iterate_dir): Adjust grub_xfs_dir_entry pointer for small
+ inode type.
+
+2008-07-27 Bean <bean123ch@gmail.com>
+
+ * commands/crc.c: New file.
+
+ * lib/crc.c: Likewise.
+
+ * include/grub/lib/crc.h: Likewise.
+
+ * util/grub-fstest.c: grub/hexdump.h => grub/lib/hexdump.h.
+
+ * commands/hexdump.c: grub/hexdump.h => grub/lib/hexdump.h.
+ (hexdump): Move this function to ...
+
+ * lib/hexdump.c: ... here.
+
+ * include/grub/hexdump.h: Renamed to ...
+
+ * include/grub/lib/hexdump.h: ... this.
+
+ * commands/loadenv.c: grub/envblk.h => grub/lib/envblk.h
+
+ * util/grub-editenv.c: Likewise.
+
+ * include/envblk.h: Renamed to ...
+
+ * include/lib/envblk.h: ... this.
+
+ * util/envblk.c: Renamed to ...
+
+ * lib/envblk.c: ... this.
+
+ * conf/common.rmk (grub_fstest_SOURCES): commands/hexdump.c =>
+ lib/hexdump.c.
+ (grub_editenv_SOURCES): util/envblk.c => lib/envblk.c
+ (pkglib_MODULES): Add crc.mod.
+ (hexdump_mod_SOURCES): Add lib/hexdump.c.
+ (loadenv_mod_SOURCES): util/envblk.c => lib/envblk.c.
+ (crc_mod_SOURCES): New macro.
+ (crc_mod_CFLAGS): Likewise.
+ (crc_mod_LDFLAGS): Likewise.
+
+ * conf/i386-coreboot.rmk (grub_emu_SOURCES): Add lib/hexdump.c.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/x86_64-efi.rmk (grub_emu_SOURCES): Likewise.
+
+2008-07-27 Felix Zielcke <fzielcke@z-51.de>
+
+ * commands/help.c: Include <grub/term.h>.
+ (TERM_WIDTH): Removed. Updated all users.
+
+2008-07-27 Pavel Roskin <proski@gnu.org>
+
+ * util/getroot.c (find_root_device): Rephrase a comment to avoid
+ spurious warnings about a comment within a comment.
+
+2008-07-25 Robert Millan <rmh@aybabtu.com>
+
+ * util/getroot.c (find_root_device): Skip devices that match
+ /dev/dm-[0-9]. This lets the real device be found for any type of
+ abstraction (LVM, EVMS, RAID..).
+ (grub_guess_root_device): Do not traverse /dev/mapper (for LVM)
+ and /dev/evms (for EVMS) before traversing /dev. If a /dev/dm-[0-9]
+ device is found first, find_root_device() will now skip it.
+
+2008-07-24 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/types.h: Use __builtin_bswap32() and
+ __builtin_bswap64() with gcc 4.3 and newer.
+
+2008-07-24 Christian Franke <franke@computer.org>
+
+ * util/i386/pc/grub-install.in: If `--debug' is specified,
+ pass `--verbose' to grub-setup.
+ Abort script if make_system_path_relative_to_its_root() fails.
+
+2008-07-24 Bean <bean123ch@gmail.com>
+
+ * configure.ac: Fixed a bug caused by the previous cygwin patch,
+ variable `target_platform' should be `platform'.
+
+2008-07-24 Bean <bean123ch@gmail.com>
+
+ * video/reader/png.c (DEFLATE_HLIT_MAX): Change value.
+ (grub_png_init_fixed_block): New function.
+ (grub_png_decode_image_data): Handle fixed huffman code compression.
+
+2008-07-24 Bean <bean123ch@gmail.com>
+
+ * common.rmk (bin_UTILITIES): Add grub-pe2elf.
+ (grub_pe2elf_SOURCES): New macro.
+ (CLEANFILES): Add grub-pe2elf.
+
+ * include/grub/efi/pe32.h (GRUB_PE32_SCN_ALIGN_1BYTES): New constant.
+ (GRUB_PE32_SCN_ALIGN_2BYTES): Likewise.
+ (GRUB_PE32_SCN_ALIGN_4BYTES): Likewise.
+ (GRUB_PE32_SCN_ALIGN_8BYTES): Likewise.
+ (GRUB_PE32_SCN_ALIGN_16BYTES): Likewise.
+ (GRUB_PE32_SCN_ALIGN_32BYTES): Likewise.
+ (GRUB_PE32_SCN_ALIGN_64BYTES): Likewise.
+ (GRUB_PE32_SCN_ALIGN_SHIFT): Likewise.
+ (GRUB_PE32_SCN_ALIGN_MASK): Likewise.
+ (GRUB_PE32_SYM_CLASS_EXTERNAL): Likewise.
+ (GRUB_PE32_SYM_CLASS_STATIC): Likewise.
+ (GRUB_PE32_SYM_CLASS_FILE): Likewise.
+ (GRUB_PE32_DT_FUNCTION): Likewise.
+ (GRUB_PE32_REL_I386_DIR32): Likewise.
+ (GRUB_PE32_REL_I386_REL32): Likewise.
+ (grub_pe32_symbol): New structure.
+ (grub_pe32_reloc): Likewise.
+
+ * util/grub-pe2elf.c: New file.
+
+ * configure.ac: Set TARGET_OBJ2ELF if host os is cygwin. Don't test for
+ start symbol in non pc platform.
+
+ * genmk.rb: Use TARGET_OBJ2ELF to convert native object format to elf.
+
+ The following patches are from Christian Franke.
+
+ * include/grub/dl.h: Remove .previous, gas supports this only
+ for ELF format.
+
+ * include/grub/symbol.h [__CYGWIN__] (#define FUNCTION/VARIABLE):
+ Remove .type, gas supports this only for ELF format.
+
+ * kern/dl.c (grub_dl_resolve_dependencies): Add check for trailing
+ nullbytes in symbol table. This fixes an infinite loop if table is
+ zero filled.
+
+ * Makefile.in: Add autoconf replacements TARGET_IMG_LDSCRIPT,
+ TARGET_IMG_LDFLAGS and EXEEXT.
+
+ * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Replace -Wl,-N by
+ TARGET_IMG_LDFLAGS_AC.
+ (grub_CHECK_STACK_ARG_PROBE): New function.
+
+ * conf/i386-pc.rmk: Replace -Wl,-N by TARGET_IMG_LDFLAGS.
+
+ * conf/i386-pc-cygwin-ld-img.sc: New linker script.
+
+ * configure.ac: Add check for linker script "conf/${target}-img-ld.c"
+ to set TARGET_IMG_LD* accordingly.
+ Add check for Cygwin to set TARGET_MOD_OBJCOPY accordingly.
+ Add call to grub_CHECK_STACK_ARG_PROBE.
+ Use TARGET_IMG_LDFLAGS to check start, bss_start, end symbols.
+
+ * genkernsyms.sh.in: Handle HAVE_ASM_USCORE case.
+
+ * genmk.rb: Add EXEEXT to CLEANFILES.
+
+2008-07-23 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in (UNICODE_ARROWS, UNICODE_LINES): New variables (they
+ define the codes for arrows and lines used for the menu).
+ (ascii.pff): Generate fonts for $(UNICODE_ARROWS) and $(UNICODE_LINES)
+ as well.
+
+ * util/update-grub_lib.in (font_path): Prefer ascii.pff over complete
+ fonts, because the latter are too slow.
+
+2008-07-21 Bean <bean123ch@gmail.com>
+
+ * kern/i386/pc/startup.S (gate_a20_try_bios): Change test order for
+ a20. Run keyboard test last, as it will cause macbook to halt.
+
+2008-07-18 Pavel Roskin <proski@gnu.org>
+
+ * kern/dl.c: Go back to using GRUB_CPU_SIZEOF_VOID_P. We cannot
+ load foreign architecture modules correctly anyway. Keep
+ support for loading host architecture modules, whether we
+ compile them or not.
+
+2008-07-17 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Use -m32 or -m64 regardless of whether we had to
+ change target_cpu. The compiler default can mismatch target_cpu
+ in any case.
+
+ * disk/efi/efidisk.c: Fix format warnings on x86_64.
+ * kern/efi/efi.c: Likewise.
+
+ * aclocal.m4 (grub_PROG_TARGET_CC): New macro. Check if the
+ target compiler is functional.
+ * configure.ac: Call grub_PROG_TARGET_CC once all target flags
+ are set up.
+
+ * configure.ac: Default to efi platform for x86_64-apple. Allow
+ powerpc64 CPU, default to ieee1275 platform for it. Split CPU
+ adjustments from the rest, only do them if target is not
+ explicitly given. Merge other adjustments with the final sanity
+ check. Remove an extraneous check for supported CPU. Be
+ specific which CPU and which platform is not supported.
+
+ * configure.ac: Default to pc platform for x86_64.
+
+2008-07-17 Robert Millan <rmh@aybabtu.com>
+
+ Partial LinuxBIOS -> Coreboot rename.
+
+ * conf/i386-linuxbios.rmk: Renamed to ...
+ * conf/i386-coreboot.rmk: ... this.
+ * Makefile.in (RMKFILES): s/i386-linuxbios.rmk/i386-coreboot.rmk/g.
+ * configure.ac: Accept "coreboot" as input platform (but maintain
+ compatibility with "linuxbios").
+ * include/grub/i386/linuxbios: Renamed to ...
+ * include/grub/i386/coreboot: ... this.
+
+2008-07-17 Bean <bean123ch@gmail.com>
+
+ * conf/i386/efi.rmk (pkglib_MODULES): add pci.mod and lspci.mod.
+ (appleldr_mod_SOURCE): New variable.
+ (appleldr_mod_CFLAGS): Likewise.
+ (appleldr_mod_LDFLAGS): Likewise.
+ (pci_mod_SOURCES): Likewise.
+ (pci_mod_CFLAGS): Likewise.
+ (pci_mod_LDFLAGS): Likewise.
+ (lspci_mod_SOURCES): Likewise.
+ (lspci_mod_CFLAGS): Likewise.
+ (lspci_mod_LDFLAGS): Likewise.
+
+ * conf/x86_64-efi.rmk: New file.
+
+ * disk/efi/efidisk.c (grub_efidisk_read): Wrap efi calls with efi_call_N
+ macro.
+ (grub_efidisk_write): Likewise.
+
+ * include/efi/api.h (efi_call_0): New macro.
+ (efi_call_1): Likewise.
+ (efi_call_2): Likewise.
+ (efi_call_3): Likewise.
+ (efi_call_4): Likewise.
+ (efi_call_5): Likewise.
+ (efi_call_6): Likewise.
+
+ * include/grub/efi/chainloader.h (grub_chainloader_cmd): Rename to
+ grub_rescue_cmd_chainloader.
+
+ * include/grub/efi/pe32.h (GRUB_PE32_MACHINE_X86_64): New macro.
+ (grub_pe32_optional_header): Change some fields based on i386 or
+ x86_64 platform.
+ (GRUB_PE32_PE32_MAGIC): Likewise.
+
+ * include/grub/efi/uga_draw.h: New file.
+
+ * include/grub/elf.h (STN_ABS): New constant.
+ (R_X86_64_NONE): Relocation constant for x86_64.
+ (R_X86_64_64): Likewise.
+ (R_X86_64_PC32): Likewise.
+ (R_X86_64_GOT32): Likewise.
+ (R_X86_64_PLT32): Likewise.
+ (R_X86_64_COPY): Likewise.
+ (R_X86_64_GLOB_DAT): Likewise.
+ (R_X86_64_JUMP_SLOT): Likewise.
+ (R_X86_64_RELATIVE): Likewise.
+ (R_X86_64_GOTPCREL): Likewise.
+ (R_X86_64_32): Likewise.
+ (R_X86_64_32S): Likewise.
+ (R_X86_64_16): Likewise.
+ (R_X86_64_PC16): Likewise.
+ (R_X86_64_8): Likewise.
+ (R_X86_64_PC8): Likewise.
+
+ * include/grub/i386/efi/pci.h: New file.
+
+ * include/grub/i386/linux.h (GRUB_LINUX_EFI_SIGNATURE):
+ Change it value based on platform.
+ (GRUB_LINUX_EFI_SIGNATURE_0204): New constant.
+ (GRUB_E820_RAM): Likewise.
+ (GRUB_E820_RESERVED): Likewise.
+ (GRUB_E820_ACPI): Likewise.
+ (GRUB_E820_NVS): Likewise.
+ (GRUB_E820_EXEC_CODE): Likewise.
+ (GRUB_E820_MAX_ENTRY): Likewise.
+ (grub_e820_mmap): New structure.
+ (linux_kernel_header): Change the efi field according to different
+ kernel version, also field from linux_kernel_header.
+
+ * include/grub/kernel.h (grub_module_info): Add padding for x86_64.
+
+ * include/grub/pci.h (GRUB_PCI_ADDR_SPACE_MASK): New constant.
+ (GRUB_PCI_ADDR_SPACE_MEMORY): Likewise.
+ (GRUB_PCI_ADDR_SPACE_IO): Likewise.
+ (GRUB_PCI_ADDR_MEM_TYPE_MASK): Likewise.
+ (GRUB_PCI_ADDR_MEM_TYPE_32): Likewise.
+ (GRUB_PCI_ADDR_MEM_TYPE_1M): Likewise.
+ (GRUB_PCI_ADDR_MEM_TYPE_64): Likewise.
+ (GRUB_PCI_ADDR_MEM_PREFETCH): Likewise.
+ (GRUB_PCI_ADDR_MEM_MASK): Likewise.
+ (GRUB_PCI_ADDR_IO_MASK): Likewise.
+
+ * include/grub/x86_64/efi/kernel.h: New file.
+
+ * include/grub/x86_64/efi/loader.h: Likewise.
+
+ * include/grub/x86_64/efi/machine.h: Likewise.
+
+ * include/grub/x86_64/efi/pci.h: Likewise.
+
+ * include/grub/x86_64/efi/time.h: Likewise.
+
+ * include/grub/x86_64/linux.h: Likewise.
+
+ * include/grub/x86_64/setjmp.h: Likewise.
+
+ * include/grub/x86_64/time.h: Likewise.
+
+ * include/grub/x86_64/types.h: Likewise.
+
+ * kern/dl.c (GRUB_CPU_SIZEOF_VOID_P): Changed to
+ GRUB_TARGET_SIZEOF_VOID_P.
+
+ * kern/efi/efi.c (grub_efi_locate_protocol): Wrap efi calls.
+ (grub_efi_locate_handle): Likewise.
+ (grub_efi_open_protocol): Likewise.
+ (grub_efi_set_text_mode): Likewise.
+ (grub_efi_stall): Likewise.
+ (grub_exit): Likewise.
+ (grub_reboot): Likewise.
+ (grub_halt): Likewise.
+ (grub_efi_exit_boot_services): Likewise.
+ (grub_get_rtc): Likewise.
+
+ * kern/efi/mm.c (MEMORY_MAP_SIZE): Change to 0x3000 for new models.
+ (GRUB_CPU_SIZEOF_VOID_P): Changed to GRUB_TARGET_SIZEOF_VOID_P.
+ (grub_efi_allocate_pages): Wrap efi calls.
+ (grub_efi_free_pages): Wrap efi calls.
+ (grub_efi_get_memory_map): Wrap efi calls.
+
+ * kern/x86_64/dl.c: New file.
+
+ * kern/x86_64/efi/callwrap.S: Likewise.
+
+ * kern/x86_64/efi/startup.S: Likewise.
+
+ * loader/efi/appleloader.c: Likewise.
+
+ * loader/efi/chainloader.c (cmdline): New variable.
+ (grub_chainloader_unload): Wrap efi calls.
+ (grub_chainloader_boot): Likewise.
+ (grub_rescue_cmd_chainloader): Wrap efi calls, handle
+ command line.
+
+ * loader/efi/chainloader_normal.c (chainloader_command):
+ Change grub_chainloader_cmd to grub_rescue_cmd_chainloader, pass
+ command line.
+
+ * loader/i386/efi/linux.c (allocate_pages): Change allocation
+ method.
+ (grub_e820_add_region): New function.
+ (grub_linux_boot): Construct e820 map from efi map, handle x86_64
+ booting.
+ (grub_find_video_card): New function.
+ (grub_linux_setup_video): New function.
+ (grub_rescue_cmd_linux): Probe for video information.
+
+ * normal/x86_64/setjmp.S: New file.
+
+ * term/efi/console.c (map_char): New function.
+ (grub_console_putchar): Map unicode char.
+ (grub_console_checkkey): Wrap efi calls.
+ (grub_console_getkey): Likewise.
+ (grub_console_getwh): Likewise.
+ (grub_console_gotoxy): Likewise.
+ (grub_console_cls): Likewise.
+ (grub_console_setcolorstate): Likewise.
+ (grub_console_setcursor): Likewise.
+
+ * util/i386/efi/grub-mkimage.c: Add support for x86_64.
+
+2008-07-16 Pavel Roskin <proski@gnu.org>
+
+ * loader/i386/efi/linux.c (allocate_pages): Fix warnings in
+ format strings.
+
+ * util/i386/efi/grub-mkimage.c (get_target_address): Return a
+ pointer, not an integer. This fixes a warning and prevents
+ precision loss on 64-bit systems.
+ (relocate_addresses): Remove unneeded cast.
+
+2008-07-15 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/ieee1275/init.c: Include grub/cache.h.
+
+ * term/ieee1275/ofconsole.c: Disable code unused on i386.
+
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_get_integer_property):
+ Fix comparison between signed and unsigned.
+
+ * include/grub/i386/ieee1275/console.h: Declare
+ grub_console_init() and grub_console_fini().
+
+ * loader/i386/ieee1275/linux.c (grub_set_bootpath): Remove.
+ It's empty and unused.
+
+ * fs/ext2.c (grub_ext2_read_block): Initialize blknr in the
+ beginning to avoid warnings with some compilers.
+
+ * loader/ieee1275/multiboot2.c: Include grub/machine/loader.h.
+ [__i386__] (grub_mb2_arch_boot): Avoid unnecessary cast.
+
+2008-07-14 Pavel Roskin <proski@gnu.org>
+
+ * kern/env.c (grub_register_variable_hook): Don't copy empty
+ string, it leaks memory. Pass "" to grub_env_set(), it should
+ handle constant strings.
+
+ * commands/blocklist.c (grub_cmd_blocklist): Fix format warning.
+ * commands/cmp.c (grub_cmd_cmp): Likewise.
+ * kern/dl.c (grub_dl_flush_cache): Likewise.
+ (grub_dl_load_core): Likewise.
+ * kern/elf.c (grub_elf32_load_phdrs): Likewise.
+ (grub_elf64_load_phdrs): Likewise.
+
+2008-07-13 Pavel Roskin <proski@gnu.org>
+
+ * lib/LzmaEnc.c (LzmaEnc_SetProps): Fix warning about comparison
+ between signed and unsigned.
+ (LzmaEnc_Finish): Fix warning about an unused parameter.
+
+2008-07-13 Bean <bean123ch@gmail.com>
+
+ * Makefile.in (enable_lzo): New rule.
+
+ * conf/i386-pc.rmk (grub_mkimage_SOURCES): New test with enable_lzo.
+
+ * configure.ac (ENABLE_LZO): New option --enable-lzo.
+
+ * boot/i386/pc/lnxboot.S: #include <config.h>.
+
+ * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE): Change
+ its value according to the compression algorithm used, lzo or lzma.
+
+ * util/i386/pc/grub-mkimage.c (compress_kernel): Use different
+ compression algorithm according to configure macro.
+
+ * kern/i386/pc/startup.S (codestart): Likewise.
+
+ * kern/i386/pc/lzma_decode.S: New file.
+
+ * include/grub/lib/LzFind.h: Likewise.
+
+ * include/grub/lib/LzHash.h: Likewise.
+
+ * include/grub/lib/LzmaDec.h: Likewise.
+
+ * include/grub/lib/LzmaEnc.h: Likewise.
+
+ * include/grub/lib/LzmaTypes.h: Likewise.
+
+ * lib/LzFind.c: Likewise.
+
+ * lib/LzmaDec.c: Likewise.
+
+ * lib/LzmaEnc.c: Likewise.
+
+2008-07-13 Bean <bean123ch@gmail.com>
+
+ * fs/ext2.c (EXT4_EXTENTS_FLAG): New macro.
+ (grub_ext4_extent_header): New structure.
+ (grub_ext4_extent): Likewise.
+ (grub_ext4_extent_idx): Likewise.
+ (grub_ext4_find_leaf): New function.
+ (grub_ext2_read_block): Handle extents.
+
+2008-07-12 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-mkrescue.in: s/grub-install/grub-mkrescue/g.
+
+2008-07-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/40_custom.in: New file. Example on how to add custom
+ entries to /etc/grub.d.
+ * conf/common.rmk (%, update-grub_SCRIPTS, CLEANFILES): Install
+ 40_custom (implicitly, by merging all the grub.d rules).
+
+2008-07-11 Pavel Roskin <proski@gnu.org>
+
+ * commands/read.c (grub_getline): Fix invalid memory access.
+ Don't add newline to the variable value.
+
+ * term/i386/pc/serial.c (GRUB_SERIAL_PORT_NUM): New constant.
+ [!GRUB_MACHINE_PCBIOS] (serial_hw_io_addr): Add COM2 and COM3.
+ (serial_hw_get_port): Check validity of the port number.
+ (grub_cmd_serial): Check return value of serial_hw_get_port().
+
+2008-07-07 Pavel Roskin <proski@gnu.org>
+
+ * boot/i386/pc/diskboot.S (notification_string): Replace
+ "Loading kernel" with just "loading". This is shorter, less
+ confusing and saves a few bytes for possible future changes.
+
+2008-07-05 Pavel Roskin <proski@gnu.org>
+
+ * disk/ata.c (grub_ata_dumpinfo): Don't output addressing and
+ size for ATAPI devices, they are undefined. Output sector
+ number in decimal form.
+
+ * disk/ata.c: Use named constants for status bits.
+
+2008-07-04 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/linuxbios/init.c (grub_machine_init): Cast addr to
+ grub_addr_t before casting it to the void pointer to fix a
+ warning. Non-addressable regions are discarded earlier.
+ (grub_arch_modules_addr): Cast _end to grub_addr_t.
+ * kern/i386/linuxbios/table.c: Include grub/misc.h.
+ (check_signature): Don't shadow table_header.
+ (grub_linuxbios_table_iterate): Cast numeric constants to
+ grub_linuxbios_table_header_t.
+ * include/grub/i386/linuxbios/init.h: Add noreturn attribute to
+ grub_stop().
+
+ * kern/ieee1275/init.c: Cast _start and _end to grub_addr_t to
+ prevent warnings.
+
+ * include/grub/misc.h (ALIGN_UP): Avoid unnecessary cast to a
+ pointer, which can cause warnings. Support 64-bit addresses.
+
+ * util/elf/grub-mkimage.c: Use GRUB_TARGET_SIZEOF_LONG instead
+ of sizeof(long). This fixes PowerPC image generation on x86_64.
+
+2008-07-04 Robert Millan <rmh@aybabtu.com>
+
+ This fixes a performance issue when pc & gpt partmap iterators
+ didn't abort iteration even after our hook found what it was
+ looking for (often causing expensive probes of non-existent drives).
+
+ Some callers relied on previous buggy behaviour, since they would
+ raise an error when their own hooks caused early abortion of its
+ iteration.
+
+ * kern/device.c (grub_device_open): Improve error message.
+ * disk/lvm.c (grub_lvm_open): Likewise.
+ * disk/raid.c (grub_raid_open): Likewise.
+
+ * partmap/pc.c (pc_partition_map_iterate): Abort parent iteration
+ when hook requests it, independently of grub_errno.
+ (pc_partition_map_probe): Do not fail when find_func() caused
+ early abortion of pc_partition_map_iterate().
+
+ * partmap/gpt.c (gpt_partition_map_iterate): Abort parent iteration
+ when hook requests it, independently of grub_errno.
+ (gpt_partition_map_probe): Do not fail when find_func() caused
+ early abortion of gpt_partition_map_iterate().
+
+ * kern/partition.c (grub_partition_iterate): Abort parent iteration
+ when hook requests it, independently of grub_errno. Do not fail when
+ part_map_iterate_hook() caused early abortion of p->iterate().
+
+ * util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Do not fail
+ when grub_partition_iterate() returned with non-zero.
+
+2008-07-03 Pavel Roskin <proski@gnu.org>
+
+ * disk/ata.c (grub_ata_pio_write): Check status before writing,
+ like we do in grub_ata_pio_read().
+ (grub_ata_readwrite): Always write individual sectors. Fix the
+ sector count for the remainder.
+ (grub_ata_write): Enable writing to ATA devices. Correctly
+ report error for ATAPI devices.
+
+2008-07-02 Pavel Roskin <proski@gnu.org>
+
+ * boot/i386/pc/cdboot.S: Add _start entry to fix a linker
+ warning.
+
+ * disk/ata.c (grub_ata_readwrite): Don't increment sector number
+ for every read sector, we already increment it for the whole
+ batch. This fixes reading more than 256 sectors at once.
+
+ * util/grub-editenv.c (cmd_info): Cast argument to long
+ explicitly. ptrdiff_t reduces to int on i386.
+
+ * util/grub-editenv.c (main): Be specific which parameter is
+ missing.
+
+ * disk/memdisk.c (memdisk_addr): Make a pointer to fix warnings.
+ (memdisk): Make memdisk_orig_addr a pointer.
+
+ * fs/reiserfs.c (grub_reiserfs_read): Fix misuse of grub_size_t
+ for file offsets, use grub_off_t instead. Fix printf format
+ warnings.
+
+ * fs/reiserfs.c: Remove #warning, TODO list items don't belong
+ there. Real unexpected warnings should not drown in the noise
+ about known problems.
+
+ * commands/hexdump.c (grub_cmd_hexdump): Fix misuse of
+ grub_disk_addr_t for memory addresses.
+
+ * loader/aout.c (grub_aout_load): Cast load_addr to pointer
+ explicitly to fix a warning.
+
+ * util/grub-editenv.c (cmd_info): Fix warning in printf format.
+
+ * Makefile.in (MODULE_LDFLAGS): New variable.
+ * aclocal.m4 (grub_PROG_LD_BUILD_ID_NONE): New macro. Check if
+ the linker accepts --build-id=none.
+ * configure.ac: Call grub_PROG_LD_BUILD_ID_NONE. Substitute
+ MODULE_LDFLAGS.
+ * genmk.rb: Use MODULE_LDFLAGS when linking modules.
+
+ * fs/xfs.c (struct grub_xfs_dir_header): Use names similar to
+ those in Linux XFS code. Provide a way to access 64-bit parent
+ inode.
+ (grub_xfs_iterate_dir): Use the new names. Avoid reading past
+ the end of struct grub_xfs_dir_header.
+
+2008-07-02 Bean <bean123ch@gmail.com>
+
+ * include/grub/ieee1275.h (grub_ieee1275_flag): New constant
+ GRUB_IEEE1275_FLAG_CANNOT_INTERPRET, GRUB_IEEE1275_FLAG_FORCE_CLAIM
+ and GRUB_IEEE1275_FLAG_NO_ANSI.
+
+ * kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set flag
+ GRUB_IEEE1275_FLAG_CANNOT_INTERPRET, GRUB_IEEE1275_FLAG_FORCE_CLAIM
+ and GRUB_IEEE1275_FLAG_NO_ANSI for Open Hackware.
+
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_interpret): Return
+ immediately if GRUB_IEEE1275_FLAG_CANNOT_INTERPRET is set.
+
+ * kern/ieee1275/init.c (grub_claim_heap): Claim memory directly if
+ GRUB_IEEE1275_FLAG_FORCE_CLAIM is set.
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_writeesc): Don't output
+ esc sequence on non ANSI terminal.
+ (grub_ofconsole_gotoxy): Emulate backspace key on non ANSI terminal.
+
+ * util/elf/grub-mkimage.c (add_segments): Move ELF header to the
+ beginning of file.
+
+2008-07-02 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (bin_UTILITIES): Add grub-editenv.
+ (grub_editenv_SOURCES): New variable.
+ (pkglib_MODULES): Add loadenv.mod.
+ (loadenv_mod_SOURCES): New variable.
+ (loadenv_mod_CFLAGS): Likewise.
+ (loadenv_mod_LDFLAGS): Likewise.
+
+ * include/grub/envblk.h: New file.
+
+ * util/envblk.c: New file.
+
+ * util/grub-editenv.c: New file.
+
+ * commands/loadenv.c: New file.
+
+2008-07-01 Pavel Roskin <proski@gnu.org>
+
+ * include/multiboot2.h (struct multiboot_tag_module): Use char,
+ not unsigned char. This fixes warnings and is consistent with
+ other tags.
+
+ * disk/fs_uuid.c (search_fs_uuid): Correctly increment count.
+
+ * normal/parser.y: Define YYENABLE_NLS as 0 to fix warnings.
+
+ * term/tparm.c (analyze): Always set *popcount.
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_linux): Remove useless
+ cast to fix a warning.
+
+ * loader/i386/pc/multiboot2.c (grub_mb2_arch_module_alloc): Use
+ cast to suppress a warning.
+
+ * fs/afs.c (grub_afs_read_block): Return grub_disk_addr_t, as
+ grub_fshelp_read_file() expects.
+
+ * fs/fat.c: Fix UUID calculation on big-endian systems. We
+ write uuid as a 32-bit value in CPU byte order, so declare and
+ use it as such.
+
+ * disk/raid.c: Cast grub_dprintf() arguments to unsigned long
+ long if the format specifier expects it.
+ * partmap/gpt.c (gpt_partition_map_iterate): Likewise.
+ * partmap/pc.c (pc_partition_map_iterate): Likewise.
+ * fs/ntfs.c (grub_ntfs_uuid): Cast data->uuid to unsigned long
+ long to fix a warning.
+ * fs/reiserfs.c (grub_reiserfs_read): Change casts in
+ grub_dprintf() arguments to fix warnings.
+
+2008-06-30 Pavel Roskin <proski@gnu.org>
+
+ * util/i386/pc/grub-setup.c (setup): Write install_dos_part and
+ install_bsd_part immediately before core.img is embedded or
+ modified on disk. This fixes core.img verification if core.img
+ cannot be embedded.
+
+ * util/i386/pc/grub-setup.c (setup): Use core_path_dev, not
+ core_path to calculate the blocklist.
+ Patch from Javier Martín <lordhabbit@gmail.com>
+
+2008-06-29 Robert Millan <rmh@aybabtu.com>
+
+ * fs/xfs.c (GRUB_XFS_FSB_TO_BLOCK): New macro. Maps filesystem
+ block to disk block.
+ (grub_xfs_read_block): Use GRUB_XFS_FSB_TO_BLOCK() on result.
+ Patch from Niels Böhm <bitbucket@arcor.de>
+
+2008-06-29 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (font_path): Search for fonts in
+ /boot/grub first, which is more likely to be readable (we aren't
+ deciding where fonts live, just looking for them).
+
+2008-06-26 Pavel Roskin <proski@gnu.org>
+
+ * util/biosdisk.c (read_device_map): Don't leave dead map
+ entries for devices failing stat() check.
+
+ * util/i386/pc/grub-setup.c (setup): Don't reuse core_path, use
+ core_path_dev for the core.img path on the target device.
+
+2008-06-26 Robert Millan <rmh@aybabtu.com>
+
+ * disk/fs_uuid.c: New file.
+ * conf/common.rmk (pkglib_MODULES): Add `fs_uuid.mod'.
+ (fs_uuid_mod_SOURCES, fs_uuid_mod_CFLAGS)
+ (fs_uuid_mod_LDFLAGS): New variables.
+ * include/grub/disk.h (grub_disk_dev_id): Add
+ `GRUB_DISK_DEVICE_UUID_ID'.
+ * kern/disk.c (grub_disk_dev_iterate): Allow disk devices not to
+ implement iterate().
+
+2008-06-26 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in: Avoid passing UUIDs to Linux when either
+ "/dev/disk/by-uuid/${GRUB_DEVICE_UUID}" does not exist, or when a
+ Linux image includes no initrd.
+
+2008-06-21 Javier Martín <lordhabbit@gmail.com>
+
+ * util/i386/pc/grub-setup.c (setup): Remove literal "core.img" in a
+ call to resolve the core image location that effectively appended the
+ name twice.
+
+2008-06-21 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Move last prepare_grub_to_access_device()
+ call from here ...
+
+ * util/grub.d/10_hurd.in: ... to here ...
+ * util/grub.d/10_linux.in: ... and here.
+
+2008-06-19 Robert Millan <rmh@aybabtu.com>
+
+ * kern/main.c (grub_main): Export `prefix' variable immediately
+ after it has been set by grub_machine_set_prefix().
+
+2008-06-19 Robert Millan <rmh@aybabtu.com>
+
+ * commands/search.c (search_label, search_fs_uuid, search_file): Print
+ search result when not saving to variable, not the other way around.
+ When saving to variable, abort iteration as soon as a match is found.
+
+2008-06-19 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (prepare_grub_to_access_device): Remove
+ check for partition that provides /boot/grub. Its logic is flawed,
+ as it prevents prepare_grub_to_access_device() from being called
+ multiple times.
+
+2008-06-19 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (prepare_grub_to_access_device): Issue
+ "insmod" command directly when abstraction modules are needed,
+ instead of relying on GRUB_PRELOAD_MODULES (which had no effect
+ since it had already been processed).
+
+2008-06-19 Pavel Roskin <proski@gnu.org>
+
+ * conf/i386-efi.rmk: Recompile grub-mkimage.c if Makefile has
+ changed. This is needed in case GRUB_LIBDIR changes.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-linuxbios.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+
+2008-06-18 Pavel Roskin <proski@gnu.org>
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_SOURCES): Rename
+ kernel_elf_symlist.c to symlist.c for consistency with other
+ architectures. Update all users.
+ * conf/sparc64-ieee1275.rmk (kernel_elf_SOURCES): Likewise.
+
+2008-06-18 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: If the drive is LVM or RAID, prepend
+ it in prefix.
+
+ * util/i386/pc/grub-setup.c (main): Don't handle prefix at all. Set
+ `must_embed' to 1 when root_dev is a RAID device. When dest_dev is
+ a RAID device, run setup() for all members independently on whether
+ LVM abstraction is being used.
+ (setup): Don't handle prefix at all; let grub-mkimage take care of it.
+ If grub-mkimage has set `*install_dos_part == -2', don't override this
+ value.
+ Perform *install_dos_part adjustments independently on whether
+ we're embedding or not.
+ Clarify error message when image is too big for embedding.
+ Remove duplicate *install_dos_part stanza.
+
+2008-06-17 Robert Millan <rmh@aybabtu.com>
+
+ * term/ieee1275/ofconsole.c (fgcolor, bgcolor): Remove variables.
+ (grub_ofconsole_normal_color, grub_ofconsole_highlight_color): New
+ variables.
+ (grub_ofconsole_setcolor, grub_ofconsole_getcolor): Load/store
+ values in grub_ofconsole_normal_color and
+ grub_ofconsole_highlight_color (they're not directly related to
+ background and foreground).
+ (grub_ofconsole_setcolorstate): Extract background and foreground
+ from grub_ofconsole_normal_color and grub_ofconsole_highlight_color.
+
+2008-06-17 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (prepare_grub_to_access_device): Use
+ /boot/grub for the check in last commit, not /boot (they could be
+ different partitions).
+
+2008-06-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (prepare_grub_to_access_device): If we were
+ asked to setup access for the same partition that provides /boot,
+ don't bother using UUIDs since our root already has the value we
+ want.
+
+2008-06-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (convert_system_partition_to_system_disk): Detect
+ I2O devices.
+ Patch from Sven Mueller <sven@debian.org>.
+
+2008-06-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Check for $EUID instead of $UID.
+ Reported by Vincent Zweije.
+
+2008-06-16 Bean <bean123ch@gmail.com>
+
+ * fs/ext2.c (grub_ext2_blockgroup): Revert to pre-journal state.
+ (grub_ext2_read_block): Likewise.
+ (grub_ext2_read_inode): Likewise.
+ (grub_ext2_mount): Likewise.
+ (grub_ext2_close): Likewise.
+ (grub_ext3_get_journal): Removed.
+
+ * fs/reiserfs.c (grub_reiserfs_get_item): Revert to pre-journal state.
+ (grub_reiserfs_read_symlink): Likewise.
+ (grub_reiserfs_mount): Likewise.
+ (grub_reiserfs_open): Likewise.
+ (grub_reiserfs_read): Likewise.
+ (grub_reiserfs_close): Likewise.
+ (grub_reiserfs_get_journal): Removed.
+
+ * fs/fshelp.c (grub_fshelp_read): Removed.
+ (grub_fshelp_map_block): Likewise.
+
+ * include/grub/fshelp.h (grub_fshelp_journal_type): Removed.
+ (grub_fshelp_journal): Likewise.
+ (grub_fshelp_read): Likewise.
+ (grub_fshelp_map_block): Likewise.
+
+2008-06-16 Pavel Roskin <proski@gnu.org>
+
+ * conf/powerpc-ieee1275.rmk: Remove -msoft-float, we don't use
+ floating point anymore.
+ * include/grub/powerpc/libgcc.h: Leave only necessary exports.
+
+2008-06-15 Pavel Roskin <proski@gnu.org>
+
+ * commands/ls.c (grub_ls_list_files): Use integer calculations
+ for human readable format, avoid floating point use.
+ * kern/misc.c (grub_ftoa): Remove.
+ (grub_vsprintf): Remove floating point support.
+
+2008-06-15 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in: Use the underlying device for loop-AES
+ devices.
+ Reported by Max Vozeler.
+
+2008-06-15 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-mkimage.c (generate_image): If we included a drive
+ in our prefix, set install_{dos,bsd}_part = -2 to indicate this can be
+ skipped later.
+ (main): If a memdisk was requested, add "(memdisk)" drive explicitly to
+ the beginning of the prefix.
+
+ * kern/i386/pc/init.c (make_install_device): Remove memdisk check.
+ It is assumed that if we have a memdisk, grub-mkimage has set
+ grub_prefix to include the "(memdisk)" drive in it.
+
+2008-06-15 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/console.c [GRUB_MACHINE_LINUXBIOS] (grub_console_init):
+ Initialize keyboard controller after registering the terminal, so that
+ grub_printf() can be called from grub_keyboard_controller_init().
+
+2008-06-15 Robert Millan <rmh@aybabtu.com>
+
+ * fs/sfs.c (grub_sfs_read_extent): Fix the count of nodes in
+ extent-btree which is written as big endian on disk.
+ Reported by Alain Greppin <al@chilibi.org>.
+
+2008-06-14 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/efi/grub-install.in (modules): Remove `_chain'.
+ * util/i386/pc/grub-install.in (modules): Likewise.
+
+2008-06-13 Pavel Roskin <proski@gnu.org>
+
+ * commands/ls.c (grub_ls_list_files): Fix format warnings.
+
+2008-06-13 Bean <bean123ch@gmail.com>
+
+ * commands/hexdump.c (grub_cmd_hexdump): Adjust offset for partition.
+
+ * fs/ext2.c (grub_ext3_get_journal): Fix revoke block handling.
+
+ * fs/fshelp.c (grub_fshelp_map_block): Don't map block 0 as it's used
+ to indicate sparse block.
+
+2008-06-12 Pavel Roskin <proski@gnu.org>
+
+ * fs/ext2.c (grub_ext2_read_inode): Don't normalize block
+ number, grub_fshelp_read() does it for us.
+
+ * fs/fshelp.c (grub_fshelp_read): New function. Implement
+ linear disk read with journal translation.
+ * fs/ext2.c: Use grub_fshelp_read() instead of grub_disk_read().
+ * include/grub/fshelp.h: Declare grub_fshelp_read().
+
+2008-06-09 Pavel Roskin <proski@gnu.org>
+
+ * fs/minix.c (grub_minix_mount): Handle error reading
+ superblock.
+
+2008-06-08 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (main): If install drive is an LVM,
+ don't append the RAID prefix afterwards.
+ Reported by Clint Adams.
+
+2008-06-08 Robert Millan <rmh@aybabtu.com>
+
+ Based on description from Pavel:
+ * kern/disk.c (grub_disk_check_range): Rename to ...
+ (grub_disk_adjust_range): ... this. Add a comment explaining the
+ tasks performed by this function.
+
+2008-06-08 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/ntfs.h (struct grub_ntfs_bpb): Rename `serial_number' to
+ `num_serial' (for consistency with other variables).
+ (struct grub_ntfs_data): Add `uuid' member.
+ * fs/ntfs.c (grub_ntfs_mount): Initialize `data->uuid'.
+ (grub_ntfs_uuid): New function.
+ (grub_ntfs_fs): Reference grub_ntfs_uuid() in `uuid' struct member.
+
+2008-06-07 Pavel Roskin <proski@gnu.org>
+
+ * util/biosdisk.c (open_device): Revert last change to the
+ function, it broke installation. The sector needs to be
+ different dependent on which device is opened.
+
+2008-06-06 Robert Millan <rmh@aybabtu.com>
+
+ Ensure GRUB_KERNEL_MACHINE_DATA_END is always consistent with the
+ rest of GRUB, and breakage doesn't happen if its value were modified.
+
+ * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
+ Redefine as an offset from `GRUB_KERNEL_MACHINE_DATA_END' instead of
+ a constant (same value).
+ * kern/i386/pc/startup.S: Replace hardcoded `0x50' with
+ `GRUB_KERNEL_MACHINE_DATA_END' (same value).
+
+2008-06-06 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (open_device): Do not modify sector offset when
+ accessing a partition. kern/disk.c already handles this for us.
+
+2008-06-06 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-emu.c (grub_machine_init): Move code in this function from
+ here ...
+ (main): ... to here (before grub_util_biosdisk_init() call, to prevent
+ segfault in case grub_printf() is called).
+
+ * util/i386/pc/grub-install.in: Append `--device-map=${device_map}' to
+ grub_probe. Update all users not to explicitly add it again.
+ (grub_device): New variable; contains corresponding device for grubdir.
+ (fs_module, partmap_module, devabstraction_module): Pass
+ `--device ${grub_device}' to grub_probe to avoid traversing /dev
+ every time.
+
+2008-06-05 Robert Millan <rmh@aybabtu.com>
+
+ * normal/misc.c (grub_normal_print_device_info): When a filesystem UUID
+ is found, print it (same layout as with labels).
+
+2008-06-04 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (get_drive): Rename to ...
+ (find_grub_drive): ... this. Update all users.
+
+ (get_os_disk): Rename to ...
+ (convert_system_partition_to_system_disk): ... this. Update all users.
+
+ (find_drive): Rename to ...
+ (find_system_device): ... this. Update all users.
+
+2008-06-04 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (get_os_disk): Handle IDA devices.
+ * util/grub-mkdevicemap.c (get_mmc_disk_name)
+ (make_device_map): Likewise.
+
+2008-06-01 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (get_drive): Verify that `map[i].drive' is non-NULL
+ before dereferencing it.
+
+ * fs/fat.c (struct grub_fat_bpb): Move fat32-specific fields into a
+ union with fat12/fat16-specific ones. Add some new fields, including
+ `num_serial' for both versions.
+ (struct grub_fat_data): Add `uuid' member.
+ (grub_fat_mount): Refer to fat32-specific fields in `bpb' by their new
+ names. Initialize `data->uuid' using `num_serial'.
+ (grub_fat_uuid): New function.
+ (grub_fat_fs): Reference grub_fat_uuid() in `uuid' struct member.
+
+ * fs/reiserfs.c (grub_reiserfs_superblock): Add `uuid' field.
+ (grub_reiserfs_uuid): New function.
+ (grub_reiserfs_fs): Reference grub_reiserfs_uuid() in `uuid' struct
+ member.
+
+ * fs/xfs.c (grub_xfs_sblock): Add `uuid' field.
+ (grub_xfs_uuid): New function.
+ (grub_xfs_fs): Reference grub_reiserfs_uuid() in `uuid' struct member.
+
+2008-06-01 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (prepare_grub_to_access_device): Generate
+ code that is backward compatible with pre-uuid search command.
+
+2008-05-31 Robert Millan <rmh@aybabtu.com>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Iterate through
+ floppies after everything else, to ensure floppy drive isn't accessed
+ unnecessarily (patch from Bean).
+
+2008-05-31 Robert Millan <rmh@aybabtu.com>
+
+ * commands/search.c (search_label, search_fs_uuid, search_file): Do
+ not print device names when we were asked to set a variable.
+
+2008-05-31 Robert Millan <rmh@aybabtu.com>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_setcursor): Implement
+ using "cursor-on" and "cursor-off" commands (understood at least by
+ the Open Firmware flavour on OLPC).
+
+2008-05-31 Michael Gorven <michael@gorven.za.net>
+
+ * term/terminfo.c (grub_terminfo_set_current): Correct vt100 cursor
+ on and off sequences.
+
+2008-05-31 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in: Replace `grub-probe' with `${grub_probe}'.
+ * util/update-grub.in: Likewise.
+
+2008-05-30 Pavel Roskin <proski@gnu.org>
+
+ * util/biosdisk.c (linux_find_partition): Simplify logic and
+ make the code more universal. Keep special processing for
+ devfs, but use a simple rule for all other devices. If the
+ device ends with a number, append 'p' and the partition number.
+ Otherwise, append only the partition number.
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in (GRUB_DISABLE_LINUX_UUID): Export variable.
+ * util/grub.d/10_linux.in: If GRUB_DEVICE_UUID is set, and
+ GRUB_DISABLE_LINUX_UUID isn't true, use the filesystem UUIDs as
+ the `root' parameter to Linux.
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * commands/search.c (options): Rename --fs_uuid to --fs-uuid.
+ * util/update-grub_lib.in (prepare_grub_to_access_device): Replace
+ --fs_uuid with --fs-uuid.
+ * util/update-grub.in: Allow filesystem UUID probes to fail (since not
+ all filesystems support them).
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * fs/ext2.c (grub_ext2_uuid): Use `04x' instead of '02x' as
+ grub_printf() flags, since we're printing in units of 2 bytes.
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Remove obsolete comment referencing
+ convert_system_path_to_grub_path().
+ * util/update-grub.in: Likewise.
+ * util/update-grub_lib.in (is_path_readable_by_grub): New function.
+ (convert_system_path_to_grub_path): Add a warning message explaining
+ that this function is deprecated. Rely on is_path_readable_by_grub()
+ for the readability checks.
+ (font_path): Use is_path_readable_by_grub() for the readability
+ check rather than convert_system_path_to_grub_path().
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (prepare_grub_to_access_device): New function.
+ * util/update-grub.in: Set `GRUB_FONT_PATH' to the system path, without
+ converting it first.
+ * util/grub.d/00_header.in: Use prepare_grub_to_access_device() to setup
+ grub.cfg for access to font file, and afterwards call it again to set
+ the root device.
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * commands/search.c (options): Add --fs_uuid option.
+ (search_fs_uuid): New function.
+ (grub_cmd_search): Fix --set argument passing.
+ Use search_fs_uuid() when requested via --fs_uuid.
+ (grub_search_init): Update help message.
+ * fs/ext2.c (struct grub_ext2_sblock): Rename `unique_id' to `uuid'
+ and redeclare it as an array of 16-bit words.
+ (grub_ext2_uuid): New function.
+ (grub_ext2_fs): Reference grub_ext2_uuid() in `uuid' struct member.
+ * include/grub/fs.h (struct grub_fs): Add `uuid' struct member.
+ * util/update-grub.in (GRUB_DEVICE_UUID, GRUB_DEVICE_BOOT)
+ (GRUB_DEVICE_BOOT_UUID): New variables.
+ (GRUB_DRIVE. GRUB_DRIVE_BOOT. GRUB_DRIVE_BOOT_GRUB): Remove.
+ * util/grub.d/00_header.in: Set root using `search --fs_uuid' command
+ whenever possible.
+ * util/grub.d/10_hurd.in: Avoid explicit use of root drive. Instead,
+ just assume `root' variable has the right value.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/grub-probe.c (probe): Probe for filesystem UUID when requested
+ via PRINT_FS_UUID.
+ (main): Recognise `-t fs_uuid' argument.
+
+2008-05-30 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (map): Redefine structure to hold information
+ about GRUB drive name.
+ (get_drive): Reimplement without assuming (and verifying) BIOS-like
+ drive names.
+ (call_hook): Remove.
+ (grub_util_biosdisk_iterate): Access drive names via `.drive' struct
+ member. Assume drive has partitions.
+ (grub_util_biosdisk_open): Access device names via `.device' struct
+ member.
+ (open_device): Likewise.
+ (find_drive): Likewise.
+ (read_device_map): Adjust map[] usage to match the new struct
+ definition. Don't check for duplicates (still possible, but not cheap
+ anymore).
+ (grub_util_biosdisk_fini): Free malloced buffers referenced by map[].
+ (make_device_name): Remove assumption of BIOS-like drive names.
+
+2008-05-30 Pavel Roskin <proski@gnu.org>
+
+ * conf/i386-efi.rmk (normal/execute.c_DEPENDENCIES): Remove, as
+ compiling execute.c doesn't need grub_script.tab.h anymore.
+ (normal/command.c_DEPENDENCIES): Likewise.
+ (normal/function.c_DEPENDENCIES): Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-linuxbios.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+
+2008-05-29 Pavel Roskin <proski@gnu.org>
+
+ * disk/lvm.c (grub_lvm_scan_device): Check for the buffer end
+ when scanning metadata for volume group name.
+
+ * include/grub/script.h: Don't include grub_script.tab.h. It's
+ a generated file, which may only be included from the files with
+ DEPENDENCIES rules in the makefile. Don't use typedef YYSTYPE,
+ use union YYSTYPE, as the later allows forward declaration.
+ * normal/lexer.c: Don't use typedef YYSTYPE, use union YYSTYPE.
+
+2008-05-29 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/at_keyboard.c: Include `grub/machine/machine.h'.
+ (OLPC_UP, OLPC_DOWN, OLPC_LEFT, OLPC_RIGHT): New macros.
+ [GRUB_MACHINE_IEEE1275] (keyboard_map): Add OLPC scan codes
+ (grub_console_checkkey): Add grub_dprintf() call to report unknown
+ scan codes.
+
+2008-05-29 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/at_keyboard.c (grub_console_checkkey): Add support for
+ control key combinations.
+
+2008-05-29 Robert Millan <rmh@aybabtu.com>
+
+ * util/powerpc/ieee1275/grub-install.in: Move from here ...
+ * util/ieee1275/grub-install.in: ... to here.
+ * powerpc-ieee1275.rmk (grub_install_SOURCES): Update location.
+ * i386-ieee1275.rmk (sbin_SCRIPTS): New variable.
+ (grub_install_SOURCES): Likewise.
+
+2008-05-29 Robert Millan <rmh@aybabtu.com>
+
+ * fs/affs.c: Update copyright year.
+ * fs/ext2.c: Likewise.
+ * fs/fshelp.c: Likewise.
+ * fs/hfsplus.c: Likewise.
+ * fs/ntfs.c: Likewise.
+ * fs/xfs.c: Likewise.
+ * include/grub/fshelp.h: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+
+2008-05-28 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Allow chmod call to fail, since /boot/grub/
+ might need to be fatfs to support some firmware implementations
+ (e.g. OFW or EFI).
+
+2008-05-28 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (linux_find_partition, get_os_disk): Handle MMC
+ devices.
+ * util/grub-mkdevicemap.c (get_mmc_disk_name)
+ (make_device_map): Likewise.
+
+2008-05-20 Bean <bean123ch@gmail.com>
+
+ * fs/fshelp.c (grub_fshelp_map_block): New function.
+ (grub_fshelp_find_file): Use 64-bit type for pos and block address.
+ Use `>>' and `&' operator to avoid 64-bit divide and modulo.
+
+ * include/grub/fshelp.h (grub_fshelp_journal_type): New enum.
+ (GRUB_FSHELP_JOURNAL_UNUSED_MAPPING): New macro.
+ (grub_fshelp_journal): New structure.
+ (grub_fshelp_map_block): New function prototype.
+ (grub_fshelp_read_file): Use grub_disk_addr_t as block type.
+ (grub_fshelp_map_block): Likewise.
+
+ * fs/ext2.c (EXT3_FEATURE_COMPAT_HAS_JOURNAL): New macro.
+ (EXT3_JOURNAL_MAGIC_NUMBER): Likewise.
+ (EXT3_JOURNAL_DESCRIPTOR_BLOCK): Likewise.
+ (EXT3_JOURNAL_COMMIT_BLOCK): Likewise.
+ (EXT3_JOURNAL_SUPERBLOCK_V1): Likewise.
+ (EXT3_JOURNAL_SUPERBLOCK_V2): Likewise.
+ (EXT3_JOURNAL_REVOKE_BLOCK): Likewise.
+ (EXT3_JOURNAL_FLAG_ESCAPE): Likewise.
+ (EXT3_JOURNAL_FLAG_SAME_UUID): Likewise.
+ (EXT3_JOURNAL_FLAG_DELETED): Likewise.
+ (EXT3_JOURNAL_FLAG_LAST_TAG): Likewise.
+ (grub_ext2_sblock): New members for journal support.
+ (grub_ext3_journal_header): New structure.
+ (grub_ext3_journal_revoke_header): Likewise.
+ (grub_ext3_journal_block_tag): Likewise.
+ (grub_ext3_journal_sblock): Likewise.
+ (grub_fshelp_node): New members logfile and journal.
+ (grub_ext2_read_block): Change block type to grub_disk_addr_t. Use
+ grub_fshelp_map_block to get real block number.
+ (grub_ext2_blockgroup): Use grub_fshelp_map_block to get real block
+ number.
+ (grub_ext2_read_inode): Likewise.
+ (grub_ext3_get_journal): New function.
+ (grub_read_inode): Initialize journal using grub_ext3_get_journal.
+ (grub_ext2_close): Release memory used by journal.
+
+ * fs/reiserfs.c (REISERFS_MAGIC_STRING): Changed to "ReIsEr".
+ (REISERFS_MAGIC_DESC_BLOCK): New macro.
+ (grub_reiserfs_transaction_header): Renamed to
+ grub_reiserfs_description_block, replace field data with real_blocks.
+ (grub_reiserfs_commit_block): New structure.
+ (grub_reiserfs_data): New member journal.
+ (grub_reiserfs_get_item): Use grub_fshelp_map_block to get real block
+ number.
+ (grub_reiserfs_read_symlink): Likewise.
+ (grub_reiserfs_iterate_dir): Likewise.
+ (grub_reiserfs_open): Likewise.
+ (grub_reiserfs_read): Likewise.
+ (grub_reiserfs_get_journal): New function.
+ (grub_reiserfs_mount): Use "ReIsEr" as super block magic, as there are
+ three varieties ReIsErFs, ReIsEr2Fs and ReIsEr3Fs. Initialize journal
+ using grub_reiserfs_get_journal.
+ (grub_reiserfs_close): Release memory used by journal.
+
+ * fs/affs.c (grub_affs_read_block): Change block type to
+ grub_disk_addr_t. Use grub_divmod64 to do 64-bit division.
+
+ * fs/afs.c (grub_afs_read_block): Change block type to grub_disk_addr_t.
+
+ * fs/hfsplus.c (grub_hfsplus_read_block): Likewise.
+
+ * fs/ntfs.c (grub_ntfs_read_block): Likewise.
+
+ * fs/udf.c (grub_udf_read_block): Change block type to
+ grub_disk_addr_t. Use type cast to avoid warning.
+
+ * fs/xfs.c (grub_xfs_read_block): Likewise.
+
+2008-05-16 Christian Franke <franke@computer.org>
+
+ * commands/cat.c (grub_cmd_cat): Remove non-ESC keys from keyboard queue
+ to ensure that break with ESC will always work.
+ * commands/sleep.c (grub_interruptible_millisleep): Likewise.
+ Remove ESC from keyboard queue.
+
+2008-05-16 Christian Franke <franke@computer.org>
+
+ * util/biosdisk.c: [__CYGWIN__] Add includes.
+ (grub_util_biosdisk_open): Use Linux code also for Cygwin.
+ (get_os_disk): Move variable declarations to OS specific
+ parts to avoid warning.
+ [__GNU__] (get_os_disk): Fix /dev/sdXsN case.
+ [__CYGWIN__] (get_os_disk): Add Cygwin /dev/sdXN device names.
+ (grub_util_biosdisk_get_grub_dev): Use Linux code also for
+ Cygwin.
+ * util/getroot.c: [__CYGWIN__] Add includes.
+ (strip_extra_slashes): Fix "/" case.
+ [__CYGWIN__] (get_win32_path): New function.
+ [__CYGWIN__] (grub_get_prefix): Add conversion to win32 path.
+ [__CYGWIN__] (find_root_device): Disable.
+ [__CYGWIN__] (get_bootsec_serial): New function.
+ [__CYGWIN__] (find_cygwin_root_device): Likewise.
+ [__linux__] (grub_guess_root_device): Add early returns to simplify
+ structure.
+ [__CYGWIN__] (grub_guess_root_device): Call find_cygwin_root_device.
+ [__linux__] (grub_util_get_dev_abstraction): Enable LVM and RAID
+ check for Linux only.
+
+2008-05-15 Bean <bean123ch@gmail.com>
+
+ * kern/i386/pc/startup.S (grub_console_getkey): Workaround for the
+ keyboard hang problem in apple's intel mac.
+
+2008-05-09 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (linux_find_partition, get_os_disk): Handle Virtio
+ devices.
+ * util/grub-mkdevicemap.c (get_virtio_disk_name)
+ (make_device_map): Likewise.
+ Reported by Aurelien Jarno <aurel32@debian.org>
+
+2008-05-07 Ian Campbell <ijc@hellion.org.uk>
+
+ * util/biosdisk.c (get_os_disk): Recognise xvd type disks.
+ * util/grub-mkdevicemap.c (get_xvd_disk_name): New function.
+ (make_device_map): Output entries for xvd type disks.
+
+2008-05-07 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (linux_find_partition, get_os_disk): Handle CCISS
+ devices.
+ * util/grub-mkdevicemap.c (get_cciss_disk_name)
+ (make_device_map): Likewise.
+ Reported by Roland Dreier <rdreier@cisco.com>
+
+2008-05-07 Robert Millan <rmh@aybabtu.com>
+
+ * disk/lvm.c (grub_lvm_scan_device): Detect errors in an additional
+ grub_strstr() call. Correct a few mistakes in failure path handling.
+
+2008-05-06 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (make_system_path_relative_to_its_root):
+ Do not print a trailing slash (therefore, the root directory is an
+ empty string).
+ (convert_system_path_to_grub_path): Do not remove trailing slash
+ from make_system_path_relative_to_its_root() output.
+
+ * util/i386/pc/grub-install.in: Add trailing slash to output from
+ make_system_path_relative_to_its_root().
+
+2008-05-06 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-fstest.c (grub_refresh): Call `fflush (stdout)'. This
+ ensures that output lines aren't intermangled with those sent to
+ stderr (via grub_util_info()).
+ * util/grub-probe.c (grub_refresh): Likewise.
+ * util/i386/pc/grub-setup.c (grub_refresh): Likewise.
+
+2008-05-05 Christian Franke <franke@computer.org>
+
+ * util/grub-mkdevicemap.c (get_floppy_disk_name) [__CYGWIN__]:
+ Add Cygwin device names.
+ (get_ide_disk_name) [__CYGWIN__]: Likewise.
+ (get_scsi_disk_name) [__CYGWIN__]: Likewise.
+ (check_device): Return error instead of success on empty name.
+ (make_device_map): Move label inside linux specific code to
+ prevent compiler warning.
+
+2008-04-30 Robert Millan <rmh@aybabtu.com>
+
+ Based on patch from Fabian Greffrath <greffrath@leat.rub.de>
+ * util/grub.d/10_linux.in: Add ${GRUB_CMDLINE_LINUX_DEFAULT} to the
+ first boot option.
+ * util/update-grub.in: Export GRUB_CMDLINE_LINUX_DEFAULT.
+
+2008-04-29 Robert Millan <rmh@aybabtu.com>
+
+ * docs/grub.cfg: New file (example GRUB configuration).
+
+2008-04-26 Robert Millan <rmh@aybabtu.com>
+
+ * DISTLIST: Sort (sort -u < DISTLIST | sponge DISTLIST). Add
+ `loader/i386/ieee1275/linux.c', `loader/i386/ieee1275/linux_normal.c'
+ and `disk/ieee1275/nand.c'.
+
+2008-04-25 Bean <bean123ch@gmail.com>
+
+ * Makefile.in (RMKFILES): Add missing arch i386-ieee1275 and
+ i386-linuxbios.
+
+ * commands/hexdump.c (grub_cmd_hexdump): Support dumping of device,
+ change the buffer size to 4096 for cdrom device.
+
+ * conf/i386-ieee1275.rmk (pkglib_MODULES): Add _linux.mod, linux.mod
+ and nand.mod.
+ (_linux_mod_SOURCES): New variable.
+ (_linux_mod_CFLAGS): Likewise.
+ (_linux_mod_LDFLAGS): Likewise.
+ (linux_mod_SOURCES): Likewise.
+ (linux_mod_CFLAGS): Likewise.
+ (linux_mod_LDFLAGS): Likewise.
+ (nand_mod_SOURCES): Likewise.
+ (nand_mod_CFLAGS): Likewise.
+ (nand_mod_LDFLAGS): Likewise.
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Return
+ GRUB_ERR_UNKNOWN_DEVICE instead of GRUB_ERR_BAD_DEVICE if no device
+ type property. (nand device in olpc don't have this property)
+
+ * include/grub/disk.h (grub_disk_dev_id): New macro
+ GRUB_DISK_DEVICE_NAND_ID.
+
+ * include/grub/i386/ieee1275/loader.h (grub_rescue_cmd_linux): New
+ function prototype.
+ (grub_rescue_cmd_initrd): Likewise.
+
+ * include/grub/i386/linux.h (GRUB_LINUX_OFW_SIGNATURE): New macro.
+ (linux_kernel_params): Add new member ofw_signature, ofw_num_items,
+ ofw_cif_handler and ofw_idt, adjust padding number.
+
+ * include/grub/i386/pc/memory.h (grub_upper_mem): Export it if
+ GRUB_MACHINE_IEEE1275 is defined.
+
+ * include/grub/ieee1275/ieee1275.h (grub_available_iterate):
+ Use NESTED_FUNC_ATTR attribute on the hook parameter.
+
+ * kern/powerpc/ieee1275/init.c (grub_claim_heap): Use NESTED_FUNC_ATTR
+ on nested function heap_init.
+ (grub_upper_mem): New variable for i386-ieee1275.
+ (grub_get_extended_memory): New function for i386-ieee1275.
+ (grub_machine_init): Call grub_get_extended_memory for i386-ieee1275.
+
+ * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Use
+ NESTED_FUNC_ATTR on the hook parameter. Don't quit if no device type
+ property.
+
+ * loader/i386/ieee1275/linux.c: New file.
+
+ * loader/i386/ieee1275/linux_normal.c: New file.
+
+ * disk/ieee1275/nand.c: New file.
+
+2008-04-18 Thomas Schwinge <tschwinge@gnu.org>
+
+ * util/i386/pc/grub-mkrescue.in (grub_mkimage): Don't overwrite correct
+ value.
+ * util/powerpc/ieee1275/grub-mkrescue.in (grub_mkimage): Likewise.
+
+2008-04-18 Robert Millan <rmh@aybabtu.com>
+
+ Restructures early code path on ieee1275 to unify grub_main() as
+ the first C function that is executed in every platform.
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_init): New prototype.
+ * kern/i386/ieee1275/startup.S (_start): Jump to grub_main() instead of
+ cmain().
+ * kern/powerpc/ieee1275/crt0.S (_start): Likewise.
+ * kern/ieee1275/cmain.c (cmain): Rename to ...
+ * kern/ieee1275/cmain.c (grub_ieee1275_init): ... this.
+ * kern/ieee1275/init.c (grub_machine_init): Call grub_ieee1275_init()
+ at the beginning.
+
+2008-04-18 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Fix syntax error when setting
+ `GRUB_PRELOAD_MODULES'.
+ Reported by Stephane Chazelas <stephane@artesyncp.com>
+
+2008-04-17 Lubomir Kundrak <lkundrak@redhat.com>
+
+ * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): take only .text
+ section into account, newer toolchains generate unique build ids
+ * configure.ac: remove the test for --build-id=none acceptance,
+ we want build ids to be preserved
+ * genmk.rb: add -R .note.gnu.build-id to objcopy, so build id
+ far from other sections don't cause the raw binary images grow
+ size
+
+2008-04-15 Robert Millan <rmh@aybabtu.com>
+
+ * disk/lvm.c: Update copyright year.
+ * kern/misc.c: Likewise.
+
+2008-04-14 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * disk/lvm.c (grub_lvm_scan_device): Add forgotten failure path when
+ there is no memory left for physical volume name.
+
+2008-04-14 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * disk/lvm.c (grub_lvm_scan_device): Fix logical volume's physical
+ volume name mapping to support bigger than 9 character names properly.
+
+2008-04-13 Robert Millan <rmh@aybabtu.com>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_rw): Fix CHS limit check,
+ as per http://www.allensmith.net/Storage/HDDlimit/Int13h.htm
+
+2008-04-13 Christian Franke <franke@computer.org>
+
+ * util/i386/pc/grub-mkrescue.in: Add --emulation=floppy
+ to create a floppy emulation boot CD when non emulation mode
+ does not work.
+ Enable Joliet CD filesystem extension.
+
+2008-04-13 Robert Millan <rmh@aybabtu.com>
+
+ * kern/misc.c (grub_strncat): Fix off-by-one error.
+ Reported by Zhang Huan <zhanghuan@nrchpc.ac.cn>
+
+ * kern/env.c (grub_env_context_close): Clear current context, not
+ previous one.
+ Patch from Zhang Huan <zhanghuan@nrchpc.ac.cn>
+
+ * kern/misc.c (grub_strcat): Minor speed optimization (same code size).
+
+2008-04-13 Robert Millan <rmh@aybabtu.com>
+
+ Improve robustness when handling LVM.
+
+ * disk/lvm.c (grub_lvm_getvalue): Return 0 when `*p' is NULL
+ (and leave `*p' unmodified).
+ (grub_lvm_iterate): Don't assume `vg->lvs != NULL' when iterating
+ through it.
+ (grub_lvm_memberlist): Don't assume `lv->vg->pvs != NULL' when
+ iterating through it.
+ (grub_lvm_open): Don't assume `vg->lvs != NULL' when iterating
+ through it.
+ (grub_lvm_scan_device): Check the return value (and fail gracefully
+ when due) on each grub_lvm_getvalue() or grub_strstr() call.
+ Don't assume `vg->pvs != NULL' when iterating through it.
+
+2008-04-13 Robert Millan <rmh@aybabtu.com>
+
+ * gendistlist.sh (EXTRA_DISTFILES): Add `genpartmaplist.sh'.
+ * genmk.rb (partmap): New variable.
+ (CLEANFILES, PARTMAPFILES): Add #{partmap}.
+ (#{partmap}): New target rule.
+ * genpartmaplist.sh: New file.
+ * Makefile.in (pkglib_DATA): Add partmap.lst.
+ (partmap.lst): New target rule.
+ * util/i386/pc/grub-mkrescue.in: Generate grub.cfg that loads needed
+ modules (including all partition maps), instead of preloading them.
+
+2007-04-13 Fabian Greffrath <fabian.greffrath@web.de>
+
+ * util/grub.d/30_os-prober.in: New script. Use `os-prober' and
+ `linux-boot-prober' (if installed) to detect other operating
+ systems which are installed on the computer and add them to
+ the boot menu.
+ * conf/common.rmk: Build and install 30_os-prober.
+
+2008-04-12 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/init.c: Move from here ...
+ * kern/ieee1275/init.c: ... to here. Update all users.
+
+ * kern/powerpc/ieee1275/cmain.c: Move from here ...
+ * kern/ieee1275/cmain.c: ... to here. Update all users.
+
+ * kern/powerpc/ieee1275/openfw.c: Move from here ...
+ * kern/ieee1275/openfw.c: ... to here. Update all users.
+
+ * loader/powerpc/ieee1275/multiboot2.c: Move from here ...
+ * loader/ieee1275/multiboot2.c: ... to here. Update all users.
+
+2008-04-10 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Always use "_cv_" in cache variables for
+ compatibility with Autoconf 2.62.
+
+2008-04-07 Robert Millan <rmh@aybabtu.com>
+
+ Revert grub/machine/init.h addition by Pavel (since it breaks on
+ i386-ieee1275 and others):
+ * util/i386/pc/misc.c: Remove grub/machine/init.h.
+ * util/powerpc/ieee1275/misc.c: Likewise.
+
+2008-04-07 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-probe.c (probe): Improve error message.
+
+2008-04-07 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (read_device_map): Skip devices that don't exist
+ (this prevents the presence of a bogus entry from ruining the whole
+ thing).
+
+2008-04-06 Pavel Roskin <proski@gnu.org>
+
+ * util/biosdisk.c: Include grub/util/biosdisk.h.
+ * util/grub-fstest.c (execute_command): Make static.
+ * util/grub-mkdevicemap.c (check_device): Likewise.
+ * util/i386/pc/misc.c: Include grub/machine/init.h.
+ * util/powerpc/ieee1275/misc.c: Likewise.
+ * util/lvm.c: Include grub/util/lvm.h.
+ * util/misc.c: Include grub/kernel.h, grub/misc.h and
+ grub/cache.h.
+ * util/raid.c: Include grub/util/raid.h.
+ (grub_util_getdiskname): Make static.
+
+ * util/grub-emu.c (main): Remove calls to grub_hostfs_init() and
+ grub_hostfs_fini(), as they are called from grub_init_all() and
+ grub_fini_all() respectively. This fixes an infinite loop in
+ grub-fstest due to double registration of hostfs.
+ Reported by Christian Franke <Christian.Franke@t-online.de>
+
+2008-04-05 Pavel Roskin <proski@gnu.org>
+
+ * bus/pci.c (grub_pci_iterate): For multifunction devices, probe
+ all 8 functions. Otherwise, probe function 0 only.
+
+2008-04-04 Pavel Roskin <proski@gnu.org>
+
+ * commands/lspci.c (grub_lspci_iter): Print the bus number
+ correctly.
+
+ * commands/lspci.c (grub_pci_classes): Fix typos.
+ (grub_lspci_iter): Don't print func twice. Print vendor ID
+ before device ID, as it's normally done.
+
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options):
+ Fix signedness warnings.
+ * kern/powerpc/ieee1275/openfw.c (grub_available_iterate):
+ Likewise.
+ * util/ieee1275/get_disk_name.c: Include config.h so that
+ _GNU_SOURCE is defined and getline() is declared. Mark an
+ unused argument as such. Fix a signedness warning.
+
+2008-04-02 Pavel Roskin <proski@gnu.org>
+
+ * genkernsyms.sh.in: Use more robust assignments for CC and
+ srcdir. Quote srcdir.
+ * gensymlist.sh.in: Likewise. Assert at the compile time that
+ the symbol table is not empty.
+
+ * disk/raid.c (grub_raid_memberlist): Fix a signedness warning.
+ * fs/cpio.c (grub_cpio_read): Likewise.
+
+2008-04-01 Pavel Roskin <proski@gnu.org>
+
+ * disk/ata.c (grub_ata_open): Don't lose precision in disk->id.
+ * disk/host.c (grub_host_open): Likewise.
+ * disk/loopback.c (grub_loopback_open): Likewise.
+ * disk/memdisk.c (grub_memdisk_open): Use a string pointer for
+ disk->id as in disk/host.c, not a multi-character constant.
+
+ * util/grub-fstest.c (cmd_cmp): Use fseeko(), not fseek(). The
+ later is obsolete, potentially dangerous and sets a bad example.
+ * util/i386/efi/grub-mkimage.c (make_header): Likewise.
+ * util/misc.c (grub_util_get_image_size): Likewise.
+
+ * disk/loopback.c (options): Improve help for "--partitions".
+
+ * normal/arg.c (grub_arg_show_help): Fix spacing of the long
+ options to align them with the short options, e.g. "echo -e".
+
+2008-03-31 Bean <bean123ch@gmail.com>
+
+ * video/reader/png.c (grub_png_data): New member is_16bit and
+ image_data.
+ (grub_png_decode_image_header): Detect 16 bit png image.
+ (grub_png_convert_image): New function to convert 16 bit image to 8 bit.
+ (grub_png_decode_png): Call grub_png_convert_image for 16 bit image.
+ (grub_video_reader_png): Release memory occupied by image_data.
+
+ * fs/ntfs.c (find_attr): Handle non-resident attribute list larger than
+ 4096 bytes.
+ (grub_nfs_mount): Skip the test for sector per cluster.
+
+ * include/grub/ntfs.h (MAX_SPC): Removed.
+
+2008-03-31 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkgdata_MODULES): Add afs.mod.
+ (grub_probe_SOURCES): Add fs/afs.c.
+ (grub_fstest_SOURCES): Likewise.
+ (afs_mod_SOURCES): New variable.
+ (afs_mod_CFLAGS): Likewise.
+ (afs_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/afs.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * fs/afs.c: New file.
+
+2008-03-30 Pavel Roskin <proski@gnu.org>
+
+ * disk/host.c: Include grub/misc.h to fix a warning.
+ * util/hostfs.c: Use GRUB_MOD_INIT and GRUB_MOD_FINI to fix
+ warnings about implicit declarations.
+
+ * fs/udf.c (grub_udf_mount): Fix warning about a shadowing a
+ variable.
+ * include/grub/i386/loader.h: Change declaration of
+ grub_linux_boot() to match what grub_loader_set() expects.
+ * util/getroot.c (grub_guess_root_device): Return const char* to
+ fix a warning.
+ * util/grub-probe.c (probe): Fix a warning about uninitialized
+ abstraction_name variable.
+ * util/i386/get_disk_name.c (grub_util_get_disk_name): Mark
+ second argument as unused to fix a warning.
+
+ * loader/i386/pc/multiboot2.c (grub_mb2_arch_elf64_hook): Add
+ missing grub_error() call.
+
+ * util/update-grub_lib.in: Define datarootdir, since Autoconf
+ 2.60 and newer uses it to define datadir.
+
+ * commands/sleep.c: Fix warning about implicit declaration.
+ * disk/memdisk.c: Likewise.
+ * loader/aout.c: Likewise.
+ * loader/i386/bsd_normal.c: Likewise.
+ * util/grub-probe.c: Likewise.
+
+ * commands/i386/cpuid.c (has_longmode): Make static.
+ * disk/i386/pc/biosdisk.c (cd_drive): Likewise.
+ * include/grub/i386/bsd.h (bios_memmap_t): Remove, it's unused.
+
+ * kern/i386/pc/startup.S (real_to_prot): Use %cs prefix to load
+ GDT. This is more robust, as %ds can change.
+ (grub_biosdisk_rw_int13_extensions): Don't clear %ds before
+ calling real_to_prot().
+ (grub_biosdisk_get_diskinfo_int13_extensions): Likewise.
+
+2008-03-28 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/pc/startup.S: Assert that uncompressed functions
+ don't spill beyond GRUB_KERNEL_MACHINE_RAW_SIZE.
+ * kern/i386/pc/lzo1x.S: Remove all .align directives in the
+ code, as they push parts of the code (error handlers) beyond
+ GRUB_KERNEL_MACHINE_RAW_SIZE. Speed is not as important in this
+ code as correctness and size.
+
+2008-03-28 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/pc/startup.S
+ (grub_biosdisk_get_diskinfo_int13_extensions): When converting
+ data block address to the real mode, keep offset minimal. This
+ works around a bug in AWARD BIOS on old Athlon systems, which
+ makes CD detection hang.
+
+2008-03-26 Pavel Roskin <proski@gnu.org>
+
+ * normal/color.c (grub_parse_color_name_pair): Make `name' a
+ const.
+ * include/grub/normal.h: Add grub_parse_color_name_pair()
+ declaration.
+
+2008-03-24 Bean <bean123ch@gmail.com>
+
+ * disk/i386/pc/biosdisk.c (cd_start): Removed.
+ (cd_count): Removed.
+ (cd_drive): New variable.
+ (grub_biosdisk_get_drive): Don't check for (cdN) device.
+ (grub_biosdisk_call_hook): Likewise.
+ (grub_biosdisk_iterate): Change cdrom detection method.
+ (grub_biosdisk_open): Replace cd_start with cd_drive.
+ (GRUB_MOD_INIT): Use grub_biosdisk_get_cdinfo_int13_extension to
+ detect cdrom device.
+
+ * include/grub/i386/pc/biosdisk.h (GRUB_BIOSDISK_MACHINE_CDROM_START):
+ Removed.
+ (GRUB_BIOSDISK_MACHINE_CDROM_END): Removed.
+ (GRUB_BIOSDISK_CDTYPE_NO_EMUL): New macro.
+ (GRUB_BIOSDISK_CDTYPE_1_2_M): Likewise.
+ (GRUB_BIOSDISK_CDTYPE_1_44_M): Likewise.
+ (GRUB_BIOSDISK_CDTYPE_2_88_M): Likewise.
+ (GRUB_BIOSDISK_CDTYPE_HARDDISK): Likewise.
+ (GRUB_BIOSDISK_CDTYPE_MASK): Likewise.
+ (grub_biosdisk_cdrp): New structure.
+ (grub_biosdisk_get_cdinfo_int13_extensions): New function.
+
+ * include/grub/i386/pc/kernel.h (grub_boot_drive): Export this variable.
+
+ * kern/i386/pc/init.c (make_install_device): Don't use (cdN) as root
+ device.
+
+ * kern/i386/pc/startup.S (grub_biosdisk_get_cdinfo_int13_extensions):
+ New function.
+
+2008-03-20 Robert Millan <rmh@aybabtu.com>
+
+ Remove 2 TiB limit in ata.mod.
+ * disk/ata.c (grub_ata_device): Promote `size' to grub_uint64_t.
+ (grub_ata_dumpinfo): Print sector count with 0x%llx.
+ (grub_ata_identify): Interpret `&info16[100]' as a pointer to
+ grub_uint64_t instead of grub_uint32_t.
+
+2008-03-05 Bean <bean123ch@gmail.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_get_bootdev): New function.
+ (grub_multiboot): Set boot device.
+
+ * boot/i386/pc/lnxboot.S (real_code_2): Set %dh to 0xFF.
+
+2008-03-02 Bean <bean123ch@gmail.com>
+
+ * fs/reiserfs.c (grub_reiserfs_read_symlink): Add 0 at the end of
+ symlink_buffer.
+
+2008-03-01 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added docs/fdl.texi, docs/grub.texi, docs/mdate-sh and
+ texinfo.tex.
+
+ * docs/grub.texi: New file. Copied from GRUB Legacy, and slightly
+ modified.
+
+ * docs/fdl.texi: New file.
+
+ * docs/mdate-sh: New file. Copied from gnulib.
+ * docs/texinfo.tex: Likewise.
+
+ * config.guess: Updated from gnulib.
+ * install-sh: Likewise.
+
+2008-02-28 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-linuxbios.rmk (pkglib_MODULES): Add aout.mod.
+ (aout_mod_SOURCES): New variable.
+ (aout_mod_CFLAGS): Likewise.
+ (aout_mod_LDFLAGS): Likewise.
+
+ * conf/i386-ieee1275.rmk: Likewise.
+
+2008-02-28 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Reorganise terminal validity check. Accept
+ `ieee1275:console' (OLPC) and `*:gfxterm' as valid too.
+ Based on suggestion by Franklin PIAT.
+
+2008-02-28 Fabian Greffrath <greffrath@leat.rub.de>
+
+ * include/grub/util/getroot.h (grub_util_check_block_device): Export new
+ function.
+ * util/getroot.c (grub_util_check_block_device): New function that
+ returns the given argument if it is a block device and returns NULL else.
+ * util/grub-probe.c (argument_is_device): New variable.
+ (probe): Promote device_name from a variable to an argument. Receive
+ device_name from grub_util_check_block_device() if path is NULL and from
+ grub_guess_root_device() else. Do not free() device_name anymore.
+ (options): Introduce new parameter '-d, --device'.
+ (main): Add description of the new parameter to the help screen.
+ Rename path variable to argument. Set argument_is_device if the '-d'
+ option is given. Pass argument to probe() depending on
+ argument_is_device.
+
+2008-02-24 Bean <bean123ch@gmail.com>
+
+ * fs/iso9660.c (GRUB_ISO9660_VOLDESC_BOOT): New macro.
+ (GRUB_ISO9660_VOLDESC_PRIMARY): Likewise.
+ (GRUB_ISO9660_VOLDESC_SUPP): Likewise.
+ (GRUB_ISO9660_VOLDESC_PART): Likewise.
+ (GRUB_ISO9660_VOLDESC_END): Likewise.
+ (grub_iso9660_primary_voldesc): New member escape.
+ (grub_iso9660_data): New member joliet.
+ (grub_iso9660_convert_string): New function.
+ (grub_iso9660_mount): Detect joliet extension.
+ (grub_iso9660_iterate_dir): Convert filename when joliet is detected.
+ (grub_iso9660_iso9660_label): Likewise.
+
+ * conf/common.rmk (pkgdata_MODULES): Add udf.mod.
+ (grub_setup_SOURCES): Add fs/udf.c.
+ (grub_fstest_SOURCES): Likewise.
+ (udf_mod_SOURCES): New variable.
+ (udf_mod_CFLAGS): Likewise.
+ (udf_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/udf.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * fs/udf.c: New file.
+
+2008-02-24 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-efi.rmk (normal/function.c_DEPENDENCIES)
+ (normal/lexer.c_DEPENDENCIES): New variables.
+ * conf/i386-ieee1275.rmk (normal/function.c_DEPENDENCIES)
+ (normal/lexer.c_DEPENDENCIES): Likewise.
+ * conf/i386-linuxbios.rmk (normal/function.c_DEPENDENCIES)
+ (normal/lexer.c_DEPENDENCIES): Likewise.
+ * conf/i386-pc.rmk (normal/function.c_DEPENDENCIES)
+ (normal/lexer.c_DEPENDENCIES): Likewise.
+ * conf/powerpc-ieee1275.rmk (normal/function.c_DEPENDENCIES)
+ (normal/lexer.c_DEPENDENCIES): Likewise.
+ * conf/sparc64-ieee1275.rmk (normal/function.c_DEPENDENCIES)
+ (normal/lexer.c_DEPENDENCIES): Likewise.
+
+2008-02-23 Robert Millan <rmh@aybabtu.com>
+
+ * partmap/gpt.c (grub_gpt_magic): Add `0x' qualifier to each member,
+ since they were intended to be in hex. This didn't break previously
+ because of a bug in gpt_partition_map_iterate() (see below).
+
+ (gpt_partition_map_iterate): Replace `grub_memcmp' with `! grub_memcmp'
+ when checking the validity of GPT header.
+ Remove `partno', since it always provides the same information as `i'.
+
+2008-02-21 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/grub/efi/time.h: Fix a wrong comment.
+
+2008-02-19 Pavel Roskin <proski@gnu.org>
+
+ * kern/rescue.c (grub_enter_rescue_mode): Improve initial
+ message.
+
+2008-02-19 Bean <bean123ch@gmail.com>
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add aout.mod _bsd.mod and bsd.mod.
+ (aout_mod_SOURCES): New variable.
+ (aout_mod_CFLAGS): Likewise.
+ (aout_mod_LDFLAGS): Likewise.
+ (_bsd_mod_SOURCES): New variable.
+ (_bsd_mod_CFLAGS): Likewise.
+ (_bsd_mod_LDFLAGS): Likewise.
+ (bsd_mod_SOURCES): New variable.
+ (bsd_mod_CFLAGS): Likewise.
+ (bsd_mod_LDFLAGS): Likewise.
+
+ * include/grub/aout.h: New file.
+
+ * include/grub/i386/loader.h (grub_unix_real_boot): New function.
+
+ * include/grub/i386/bsd.h: New file.
+
+ * include/grub/i386/pc/init.h (grub_get_mmap_entry): Use EXPORT_FUNC
+ to make it public.
+
+ * kern/elf.c (grub_elf32_load): Get the physical address after the hook
+ function is called, so that it's possible to change it inside the hook.
+ (grub_elf64_load): Likewise.
+ (grub_elf_file): Don't close the file if elf header is not found.
+ (grub_elf_close): Close the file if grub_elf_file fails (The new
+ grub_elf_file won't close it).
+ (grub_elf32_size): Use NESTED_FUNC_ATTR for nested function calcsize.
+ (grub_elf64_size): Likewise.
+
+ * kern/i386/loader.S (grub_unix_real_boot): New function.
+
+ * loader/aout.c: New file.
+
+ * loader/i386/bsd.c: New file.
+
+ * loader/i386/bsd_normal.c: New file.
+
+ * loader/i386/pc/multiboot.c (grub_multiboot): Handle a.out format.
+
+ * loader/multiboot2.c (grub_multiboot2): Reset grub_errno so that it
+ can test other formats.
+
+2008-02-19 Robert Millan <rmh@aybabtu.com>
+
+ * partmap/gpt.c: Include `<grub/gpt_partition.h>'.
+ (grub_gpt_partition_type_empty): Redefine with macro from
+ `<grub/gpt_partition.h>'.
+ (gpt_partition_map_iterate): Adjust partition type comparison.
+
+ Export `entry' as partmap-specific `part.data' struct.
+ (grub_gpt_header, grub_gpt_partentry): Move from here ...
+
+ * include/grub/gpt_partition.h (grub_gpt_header)
+ (grub_gpt_partentry): ... to here (new file).
+
+ * util/i386/pc/grub-setup.c: Include `<grub/gpt_partition.h>'.
+
+ (grub_gpt_partition_type_bios_boot): New const variable, defined
+ with macro from `<grub/gpt_partition.h>'.
+
+ (setup): Replace `first_start' with `embed_region', which keeps
+ track of the embed region (and is partmap-agnostic).
+
+ Replace find_first_partition_start() with find_usable_region(),
+ which finds a usable region for embedding using partmap-specific
+ knowledge (supports PC/MSDOS and GPT).
+
+ Fix all assumptions that the embed region start at sector 1, using
+ `embed_region.start' from now on. Similarly, use `embed_region.end'
+ rather than `first_start' to calculate available size.
+
+ In grub_util_info() message, replace "into after the MBR" with an
+ indication of the specific sector our embed region starts at.
+
+2008-02-19 Robert Millan <rmh@aybabtu.com>
+
+ * DISTLIST: Replace `commands/ieee1275/halt.c' and
+ `commands/ieee1275/reboot.c' with `commands/halt.c' and
+ `commands/reboot.c'.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES, reboot_mod_SOURCES)
+ (halt_mod_SOURCES): Likewise.
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES, reboot_mod_SOURCES)
+ (halt_mod_SOURCES): Likewise.
+
+2008-02-17 Christian Franke <franke@computer.org>
+
+ * commands/cat.c (grub_cmd_cat): Add break on GRUB_TERM_ESC key.
+
+2008-02-17 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (setup): In find_first_partition_start(),
+ set `first_start' to 0 for non-PC/MSDOS partition maps.
+
+2008-02-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (setup): In find_first_partition_start(),
+ do not assume partition map is PC/MSDOS before performing checks that
+ are specific to that layout.
+
+2008-02-13 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Remove
+ `commands/i386/pc/halt.c' and `commands/i386/pc/reboot.c'.
+ * kern/i386/linuxbios/init.c (grub_halt, grub_reboot): Remove stubs.
+
+2008-02-13 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac: Only a cosmetic change on the handling of
+ -fno-stack-protector.
+
+2008-02-12 Alexandre Boeglin <alex@boeglin.org>
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Replace
+ commands/i386/pc/halt.c and reboot.c by commands/halt.c and
+ reboot.c.
+ (grub_install_SOURCES): Add halt.mod and reboot.mod.
+ (halt_mod_SOURCES): New variable.
+ (halt_mod_CFLAGS): Likewise.
+ (halt_mod_LDFLAGS): Likewise.
+ (reboot_mod_SOURCES): Likewise.
+ (reboot_mod_CFLAGS): Likewise.
+ (reboot_mod_LDFLAGS): Likewise.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Replace
+ commands/ieee1275/halt.c and reboot.c by commands/halt.c and
+ reboot.c.
+ (halt_mod_SOURCES): Likewise.
+ (reboot_mod_SOURCES): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Replace
+ commands/i386/pc/reboot.c by commands/reboot.c.
+ (reboot_mod_SOURCES): Likewise.
+
+ * commands/i386/pc/reboot.c: merge this file ...
+
+ * commands/ieee1275/reboot.c: ... and this file ...
+
+ * commands/reboot.c: ... to this file.
+ Add some precompiler directive to include the correct header for
+ each machine.
+
+ * commands/ieee1275/halt.c: move this file ...
+
+ * commands/halt.c: ... to here.
+ Add some precompiler directive to include the correct header for
+ each machine.
+
+ * include/grub/efi/efi.h (grub_reboot): New function declaration.
+ (grub_halt): Likewise.
+
+ * kern/efi/efi.c (grub_reboot): New function.
+ (grub_halt): Likewise.
+
+2008-02-12 Robert Millan <rmh@aybabtu.com>
+
+ * util/getroot.c (grub_guess_root_device): Inspect /dev/evms before
+ /dev (like it is done for /dev/mapper). This doesn't provide support
+ for EVMS, but at least it is now easy to identify the problem when it
+ arises.
+
+2008-02-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (grub_util_biosdisk_open, linux_find_partition)
+ (grub_util_biosdisk_get_grub_dev): Check open() exit status by
+ comparing it with -1, not 0.
+
+2008-02-10 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Add `disk/raid.c' and
+ `disk/lvm.c'.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
+
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Move `disk/raid.c' and
+ `disk/lvm.c' to the end of the list.
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+
+2008-02-10 Robert Millan <rmh@aybabtu.com>
+
+ * kern/main.c (grub_load_normal_mode): Do not reset `grub_errno'. Call
+ grub_print_error() instead. This will let user know why we're entering
+ rescue mode.
+ Based on suggestions from Sam Morris.
+
+2008-02-10 Alexandre Boeglin <alex@boeglin.org>
+
+ * normal/arg.c (grub_arg_parse): If one of the args is "--", call add_arg()
+ on remaining N args, instead of "--" arg N times.
+
+2008-02-09 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * font/manager.c (unknown_glyph): Added variable for unknown glyph.
+ (fill_with_default_glyph): Changed to use unknown_glyph for fill
+ pattern for unknown glyphs.
+
+2008-02-09 Robert Millan <rmh@aybabtu.com>
+
+ * configure.ac: Probe for `help2man'.
+ * Makefile.in (builddir): New variable.
+ (HELP2MAN): Likewise. Set to `true' when @HELP2MAN@ doesn't provide it,
+ or otherwise add a few flags/options to it.
+ (install-local): For every executable utility or script that is
+ installed, invoke $(HELP2MAN) to install a manpage based on --help
+ output.
+
+ * util/i386/pc/grub-install.in: Move down `update-grub_lib' sourcing, so
+ that it doesn't prevent --help from working in build tree.
+
+ * util/i386/pc/grub-mkrescue.in (usage): Replace `grub-devel@gnu.org'
+ with `bug-grub@gnu.org'.
+ * util/powerpc/ieee1275/grub-mkrescue.in (usage): Likewise.
+ * util/update-grub.in (usage): New function.
+ Implement proper argument check, with support for --help and --version
+ (as well as existing -y).
+
+2008-02-09 Christian Franke <franke@computer.org>
+
+ * commands/cat.c (grub_cmd_cat): Print '\r' as hex to
+ avoid overwriting previous output.
+ * kern/rescue.c (grub_rescue_cmd_cat): Likewise.
+
+2008-02-09 Robert Millan <rmh@aybabtu.com>
+
+ * normal/menu.c (run_menu): If timeout is set to zero, don't bother
+ drawing the menu.
+
+2008-02-09 Robert Millan <rmh@aybabtu.com>
+
+ * commands/sleep.c: New file.
+ * conf/common.rmk (pkglib_MODULES): Add `commands/sleep.c'.
+ (sleep_mod_SOURCES): New variable.
+ (sleep_mod_CFLAGS): Likewise.
+ (sleep_mod_LDFLAGS): Likewise.
+
+2008-02-09 Robert Millan <rmh@aybabtu.com>
+
+ * disk/raid.c (grub_raid_scan_device): Add a pair of sanity checks for
+ situations in which we can deduce the RAID size and the superblock
+ doesn't match it.
+
+2008-02-09 Robert Millan <rmh@aybabtu.com>
+
+ * disk/lvm.c [GRUB_UTIL] (grub_lvm_memberlist): New function. Construct
+ and return a grub_diskmemberlist_t composed of LVM physical volumes.
+ [GRUB_UTIL] (grub_lvm_dev): Add `memberlist' member.
+
+ * disk/raid.c [GRUB_UTIL] (grub_raid_memberlist): New function. Construct
+ and return a grub_diskmemberlist_t composed of physical array members.
+ [GRUB_UTIL] (grub_raid_dev): Add `memberlist' member.
+
+ * include/grub/disk.h [GRUB_UTIL] (grub_disk_memberlist): New struct
+ prototype.
+ [GRUB_UTIL] (struct grub_disk_dev): Add `memberlist' function pointer.
+ [GRUB_UTIL] (struct grub_disk_memberlist): New struct declaration.
+ [GRUB_UTIL] (grub_disk_memberlist_t): New typedef.
+
+ * util/grub-probe.c (probe): Move partmap probing code from here ...
+ (probe_partmap): ... to here.
+ (probe): Use probe_partmap() once for the disk we're probing, and
+ additionally, when such disk contains a memberlist() struct member,
+ once for each disk that is contained in the structure returned by
+ memberlist().
+
+2008-02-09 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-probe.c (main): When `verbosity > 1', set `debug'
+ environment variable to 'all' in order to obtain debug output from
+ non-util/ code.
+ * util/i386/pc/grub-setup.c (main): Likewise.
+
+2008-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * disk/raid.c (grub_raid_scan_device): Check for
+ `array->device[sb.this_disk.number]' rather than for
+ `array->device[sb.this_disk.number]->name', since the latter is not
+ guaranteed to be accessible.
+
+2008-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * disk/raid.c: Update copyright.
+ * fs/cpio.c: Likewise.
+ * include/grub/raid.h: Likewise.
+ * loader/i386/pc/multiboot.c: Likewise.
+ * util/hostfs.c: Likewise.
+
+2008-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/raid.h (struct grub_raid_array): Change type of `device'
+ to a grub_disk_t array.
+ * disk/raid.c (grub_raid_read): Replace `device[x].disk' accesses with
+ `device[x]'.
+ (grub_raid_scan_device): Replace `device[x].name' accesses with
+ `device[x]->name'. Simplify initialization of `array->device[x]'.
+
+2008-02-08 Robert Millan <rmh@aybabtu.com>
+
+ * disk/raid.c (grub_raid_open, grub_raid_scan_device): Add a few
+ grub_dprintf() calls.
+ * kern/disk.c (grub_disk_read): Include grub_errmsg in out of range
+ error message.
+
+2008-02-07 Christian Franke <franke@computer.org>
+
+ * util/hostfs.c (grub_hostfs_open): Use fseeko and ftello
+ instead of fseek and ftell to support large files.
+ (grub_hostfs_read): Likewise.
+
+2008-02-07 Robert Millan <rmh@aybabtu.com>
+
+ Patch from Jeroen Dekkers.
+ * disk/raid.c (grub_raid_scan_device): Reset `grub_errno' on disk
+ failure, since successfully reading all array members might not be
+ required.
+
+2008-02-06 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-probe.c (probe): Simplify partmap probing (with the
+ assumption that the first word up to the underscore equals to
+ the module name).
+
+2008-02-06 Christian Franke <franke@computer.org>
+
+ * fs/cpio.c (grub_cpio_find_file): Return GRUB_ERR_NONE
+ (and set *ofs = 0) instead of GRUB_ERR_FILE_NOT_FOUND on
+ last block of a cpio or tar stream.
+ Check for "TRAILER!!!" instead of any empty data
+ block to detect last block of a cpio stream.
+ (grub_cpio_dir): Fix constness of variable np.
+ (grub_cpio_open): Return GRUB_ERR_FILE_NOT_FOUND if
+ cpio or tar trailer is detected. This fixes a crash
+ on open of a non existing file.
+
+2008-02-05 Bean <bean123ch@gmail.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Get physical
+ address of entry.
+ (grub_multiboot_load_elf64): Likewise.
+ (grub_multiboot): Initialize mbi structure.
+
+ * util/grub-fstest.c: Don't include unused header file script.h.
+
+ * conf/common.rmk (grub-fstest.c_DEPENDENCIES): Move to the beginning
+ of file.
+ (grub_fstest_SOURCES): Likewise.
+
+2008-02-05 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/term.h (GRUB_TERM_LEFT, GRUB_TERM_RIGHT)
+ (GRUB_TERM_UP, GRUB_TERM_DOWN, GRUB_TERM_HOME, GRUB_TERM_END)
+ (GRUB_TERM_DC, GRUB_TERM_PPAGE, GRUB_TERM_NPAGE, GRUB_TERM_ESC)
+ (GRUB_TERM_TAB, GRUB_TERM_BACKSPACE): New macros.
+
+ * kern/i386/pc/startup.S: Include `<grub/term.h>'.
+ (translation_table): Replace hardcoded values with macros
+ provided by `<grub/term.h>'.
+
+ * term/i386/pc/at_keyboard.c: Include `<grub/term.h>'.
+ (keyboard_map): Correct/add a few values, with macros provided
+ by `<grub/term.h>'.
+ (keyboard_map_shift): Zero values that don't differ from their
+ `keyboard_map' equivalents.
+ (grub_console_checkkey): Optimize KEYBOARD_STATUS_CAPS_LOCK toggling.
+ Discard the second scan code that is always sent by Caps lock.
+ Only use `keyboard_map_shift' when it provides a non-zero value,
+ otherwise fallback to `keyboard_map'.
+
+2008-02-04 Bean <bean123ch@gmail.com>
+
+ * Makefile.in (enable_grub_fstest): New variable.
+
+ * conf/common.rmk (grub_fstest_init.lst): New rule.
+ (grub_fstest_init.h): Likewise.
+ (grub_fstest_init.c): Likewise.
+ (util/grub-fstest.c_DEPENDENCIES): New variable.
+ (grub_fstest_SOURCES): Likewise.
+
+ * configure.ac (enable_grub_fstest): Check for --enable-grub-fstest.
+
+ * util/grub-fstest.c: New file.
+
+2008-02-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Make grub-setup handle a separate root device.
+
+ * util/i386/pc/grub-setup.c (setup): Always open the root device,
+ so that the root device can be compared with the destination
+ device.
+ When embedding the core image, if the root and destination devices
+ are different, set ROOT_DRIVE to ROOT_DEV->DISK->ID. Otherwise, to
+ 0xFF.
+ When not embedding, set ROOT_DRIVE to 0xFF.
+
+2008-02-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Add support for having a grub directory in a different drive. This
+ is still only the data handling part.
+
+ * kern/i386/pc/startup.S (multiboot_trampoline): Set %dh to 0xFF.
+ (codestart): Save %dh in GRUB_ROOT_DRIVE.
+ (grub_root_drive): New variable.
+
+ * kern/i386/pc/init.c (make_install_device): Use GRUB_ROOT_DRIVE
+ instead of GRUB_BOOT_DRIVE to construct a device name. Set
+ GRUB_ROOT_DRIVE to GRUB_BOOT_DRIVE if it is 0xFF, otherwise use it
+ as it was.
+
+ * include/grub/i386/pc/kernel.h (grub_root_drive): New prototype.
+
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_ROOT_DRIVE): New
+ macro.
+ (GRUB_BOOT_MACHINE_DRIVE_CHECK): Set to 0x4f.
+
+ * boot/i386/pc/pxeboot.S (_start): Set %dh to 0xFF. For now, this
+ is bogus, because PXE booting does not specify any drive
+ correctly.
+
+ * boot/i386/pc/lnxboot.S (reg_edx): Set the second byte to 0xFF. I
+ am not sure if this is really correct.
+
+ * boot/i386/pc/cdboot.S: Set %dh to 0xFF, because the root drive
+ is always identical to the boot drive when booting from a CD.
+
+ * boot/i386/pc/boot.S (MOV_MEM_TO_AL): Removed. Not needed any
+ longer.
+ (root_drive): New variable.
+ (real_start): Unconditionally set %dh to ROOT_DRIVE.
+ (setup_sectors): Push %dx right after popping it, because %dh will
+ be modified later.
+ (copy_buffer): Restore %dx.
+
+2008-02-03 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-mkrescue.in: Rewrite most of image generation to
+ use `cdboot.img' for cdrom images.
+
+2008-02-03 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Issue scripting commands for GRUB to
+ only setup gfxterm when `font' command has succeeded.
+
+2008-02-03 Robert Millan <rmh@aybabtu.com>
+
+ * loader/multiboot_loader.c [GRUB_MACHINE_LINUXBIOS]
+ (grub_rescue_cmd_multiboot_loader)
+ (grub_rescue_cmd_module_loader): Enable multiboot1 calls.
+
+2008-02-03 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/pc/startup.S (grub_chainloader_real_boot): Pop
+ %edx and %esi from stack only after grub_gate_a20() is called.
+ grub_gate_a20() clobbers %edx.
+
+2008-02-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac (AC_INIT): Bumped to 1.96.
+
+ * DISTLIST: Added boot/i386/pc/cdboot.S, bus/pci.c,
+ commands/lspci.c,disk/memdisk.c, include/grub/pci.h,
+ include/grub/i386/pc/pci.h, video/readers/jpeg.c, and
+ video/readers/png.c.
+
+2008-02-03 Bean <bean123ch@gmail.com>
+
+ * conf/i386-pc.rmk (pkglib_IMAGES): Add cdboot.img.
+ (cdboot_img_SOURCES): New variable.
+ (cdboot_img_ASFLAGS): New variable.
+ (cdboot_img_LDFLAGS): New variable.
+
+ * boot/i386/pc/cdboot.S: New file.
+
+ * disk/i386/pc/biosdisk.c (cd_start): New variable.
+ (cd_count): Likewise.
+ (grub_biosdisk_get_drive): Add support for cd device.
+ (grub_biosdisk_call_hook): Likewise.
+ (grub_biosdisk_iterate): Likewise.
+ (grub_biosdisk_open): Likewise.
+ (GRUB_BIOSDISK_CDROM_RETRY_COUNT): New macro.
+ (grub_biosdisk_rw): Support reading from cd device.
+ (GRUB_MOD_INIT): Iterate cd devices.
+
+ * include/grub/i386/pc/biosdisk.h (GRUB_BIOSDISK_FLAG_CDROM): New macro.
+ (GRUB_BIOSDISK_MACHINE_CDROM_START): Likewise.
+ (GRUB_BIOSDISK_MACHINE_CDROM_END): Likewise.
+
+ * kern/i386/pc/init.c (make_install_device): Check for cd device.
+
+2008-02-02 Robert Millan <rmh@aybabtu.com>
+
+ * commands/read.c: New file.
+ * conf/common.rmk (pkglib_MODULES): Add `commands/read.c'.
+ (read_mod_SOURCES): New variable.
+ (read_mod_CFLAGS): Likewise.
+ (read_mod_LDFLAGS): Likewise.
+
+2008-02-02 Robert Millan <rmh@aybabtu.com>
+
+ * normal/main.c (grub_normal_execute): Check for `menu->size' when
+ determining whether menu has to be displayed.
+
+2008-02-02 Marco Gerards <marco@gnu.org>
+
+ * bus/pci.c: New file.
+
+ * include/grub/pci.h: Likewise.
+
+ * include/grub/i386/pc/pci.h: Likewise.
+
+ * commands/lspci.c: Likewise.
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add `pci.mod' and
+ `lspci.mod'.
+ (pci_mod_SOURCES): New variable.
+ (pci_mod_CFLAGS): Likewise.
+ (pci_mod_LDFLAGS): Likewise.
+ (lspci_mod_SOURCES): Likewise.
+ (lspci_mod_CFLAGS): Likewise.
+ (lspci_mod_LDFLAGS): Likewise.
+
+2008-02-02 Bean <bean123ch@gmail.com>
+
+ * fs/ufs.c (INODE_BLKSZ): Fix incorrect value.
+ (grub_ufs_get_file_block): Fix indirect block calculation problem.
+
+ * fs/xfs.c (grub_xfs_sblock): New member log2_dirblk.
+ (grub_xfs_btree_node): New structure.
+ (grub_xfs_btree_root): New structure.
+ (grub_xfs_inode): New members nblocks, extsize, nextents and btree.
+ (GRUB_XFS_EXTENT_OFFSET): Use exts instead of inode->data.extents.
+ (GRUB_XFS_EXTENT_BLOCK): Likewise.
+ (GRUB_XFS_EXTENT_SIZE): Likewise.
+ (grub_xfs_read_block): Support btree format type.
+ (grub_xfs_iterate_dir): Use NESTED_FUNC_ATTR in call_hook.
+ Use directory block as basic unit.
+
+ * fs/fshelp.c (grub_fshelp_read_file): Bug fix for sparse block.
+
+ * aclocal.m4 (grub_i386_CHECK_REGPARM_BUG): Define NESTED_FUNC_ATTR as
+ __attribute__ ((__regparm__ (1))).
+
+2008-02-01 Robert Millan <rmh@aybabtu.com>
+
+ Correct a mistake in previous commit.
+
+ * conf/i386-pc.rmk (normal/execute.c_DEPENDENCIES): Move to the
+ top.
+ (normal/command.c_DEPENDENCIES): New variable.
+
+2008-02-01 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-efi.rmk (normal/execute.c_DEPENDENCIES): Move to the
+ top.
+ (normal/command.c_DEPENDENCIES): New variable.
+ (grub-emu_DEPENDENCIES, normal_mod_DEPENDENCIES): Remove variables.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-linuxbios.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ (grub_emu_SOURCES): Add `fs/fshelp.c'.
+
+ * genmk.rb: Add `$(#{src}_DEPENDENCIES)' in targets that require it.
+
+2008-02-01 Robert Millan <rmh@aybabtu.com>
+
+ * kern/disk.c (grub_disk_read, grub_disk_write): Add grub_dprintf()
+ call at beginning of function.
+
+2008-01-31 Pavel Roskin <proski@gnu.org>
+
+ * util/powerpc/ieee1275/grub-mkrescue.in: New file.
+ * conf/powerpc-ieee1275.rmk (bin_SCRIPTS): New variable.
+ (grub_mkrescue_SOURCES): Likewise.
+ * DISTLIST: Add util/powerpc/ieee1275/grub-mkrescue.in.
+
+2008-01-30 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (sbin_UTILITIES): Remove `grub-probe'.
+ (util/grub-probe.c_DEPENDENCIES, grub_probe_SOURCES): Moved from here ...
+ * conf/common.rmk (util/grub-probe.c_DEPENDENCIES)
+ (grub_probe_SOURCES): ... to here.
+
+ * conf/i386-efi.rmk (sbin_UTILITIES): Remove `grub-probe'.
+ (util/grub-probe.c_DEPENDENCIES, grub_probe_SOURCES): Remove.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/i386-linuxbios.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+
+2008-01-30 Tristan Gingold <gingold@free.fr>
+
+ * kern/rescue.c: Silently accept empty lines.
+
+2008-01-29 Bean <bean123ch@gmail.com>
+
+ * boot/i386/pc/lnxboot.S (data_start): Code cleanup.
+ (real_code_2): Code cleanup and change comment style.
+ (move_memory): Avoid using 32-bit address mode.
+
+2008-01-29 Bean <bean123ch@gmail.com>
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add `png.mod'.
+ (png_mod_SOURCES): New variable.
+ (png_mod_CFLAGS): Likewise.
+ (png_mod_LDFLAGS): Likewise.
+
+ * video/readers/png.c: New file.
+
+2008-01-28 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/linuxbios/kernel.h (GRUB_MOD_GAP): New macro.
+ * kern/powerpc/ieee1275/init.c (grub_arch_modules_addr): Remove
+ `ifndef GRUB_MOD_GAP' hack.
+ * util/elf/grub-mkimage.c (add_segments): Likewise.
+
+2008-01-27 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/init.c (grub_arch_modules_addr): Skip
+ `GRUB_MOD_GAP' for platforms in which it's not defined.
+ * util/elf/grub-mkimage.c (add_segments): Likewise.
+
+2008-01-27 Robert Millan <rmh@aybabtu.com>
+
+ Get grub-emu to build again (including parallel builds).
+
+ * conf/i386-pc.rmk (util/grub-emu.c_DEPENDENCIES): Remove variable.
+ Split into ...
+ (util/grub-emu.c_DEPENDENCIES): ... this, ...
+ (normal/execute.c_DEPENDENCIES): ... this, ...
+ (grub-emu_DEPENDENCIES): ... and this.
+
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-linuxbios.rmk: Likewise.
+ * conf/i386-ieee1275.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ (grub_emu_SOURCES): Remove duplicated `kern/file.c'.
+
+2008-01-27 Robert Millan <rmh@aybabtu.com>
+
+ * NEWS: Add a few items.
+
+2008-01-27 Robert Millan <rmh@aybabtu.com>
+
+ Fix parallel builds with grub-emu. Based on earlier commit for
+ grub-probe and grub-setup.
+
+ * conf/i386-pc.rmk (grub-emu_DEPENDENCIES): Renamed to ...
+ (util/grub-emu.c_DEPENDENCIES): ... this.
+ * conf/i386-efi.rmk (grub-emu_DEPENDENCIES): Renamed to ...
+ (util/grub-emu.c_DEPENDENCIES): ... this.
+ * conf/i386-linuxbios.rmk (grub-emu_DEPENDENCIES): Renamed to ...
+ (util/grub-emu.c_DEPENDENCIES): ... this.
+ * conf/i386-ieee1275.rmk (grub-emu_DEPENDENCIES): Renamed to ...
+ (util/grub-emu.c_DEPENDENCIES): ... this.
+ * conf/powerpc-ieee1275.rmk (grub-emu_DEPENDENCIES): Renamed to ...
+ (util/grub-emu.c_DEPENDENCIES): ... this.
+
+2008-01-27 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/powerpc/ieee1275/kernel.h: Introduce GRUB_MOD_GAP
+ to create a gap between _end and the modules added to the image
+ with grub-mkrescue. That fixes "CLAIM failed" on PowerMAC.
+ * kern/powerpc/ieee1275/init.c: Use GRUB_MOD_GAP.
+ * util/elf/grub-mkimage.c (add_segments): Likewise.
+
+2008-01-26 Pavel Roskin <proski@gnu.org>
+
+ * kern/dl.c (grub_dl_load): Don't abort if prefix is not set,
+ just return an error.
+
+2008-01-26 Bean <bean123ch@gmail.com>
+
+ * fs/reiserfs.c (grub_fshelp_node): New member next_offset.
+ (grub_reiserfs_get_item): Save offset of the next item.
+ (grub_reiserfs_iterate_dir): Use next_offset to find next item.
+
+2008-01-25 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES, grub_emu_SOURCES): Regroup to
+ make all filesystem sources appear together (possibly fixing omissions
+ while at it).
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-pc.rmk (grub_probe_SOURCES): Likewise. Additionally,
+ add `kern/file.c'.
+ * conf/i386-efi.rmk (grub_probe_SOURCES): Likewise.
+ * conf/i386-ieee1275.rmk (grub_probe_SOURCES): Likewise.
+ * conf/i386-linuxbios.rmk (grub_probe_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Likewise.
+
+ * util/grub-probe.c: Include `<grub/file.h>' and `<sys/stat.h>'.
+ (probe): Add a sanity check to make sure of our ability to read
+ requested files when probing for filesystem type.
+
+ * genmk.rb: Update copyright year (2007).
+
+ * include/grub/fs.h (grub_fat_init, grub_fat_fini, grub_ext2_init)
+ (grub_ext2_fini, grub_ufs_init, grub_ufs_fini, grub_minix_init)
+ (grub_minix_fini, grub_hfs_init, grub_hfs_fini, grub_jfs_init)
+ (grub_jfs_fini, grub_xfs_init, grub_xfs_fini, grub_affs_init)
+ (grub_affs_fini, grub_sfs_init, grub_sfs_fini, grub_iso9660_init)
+ : Remove function prototypes.
+
+2008-01-25 Robert Millan <rmh@aybabtu.com>
+
+ Revert my previous commits (based on wrong assumption of how grub_errno
+ works).
+
+ * kern/disk.c (grub_disk_open): Stop resetting grub_errno.
+ * kern/file.c (grub_file_open): Likewise.
+
+2008-01-24 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/ieee1275/ieee1275.h: Introduce flag for firmwares
+ that hang if GRUB tries to setup colors.
+ * term/ieee1275/ofconsole.c (grub_ofconsole_init): Don't set
+ colors for firmwares that don't support it.
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_set_flag):
+ Recognize Open Hack'Ware, set flags to work around its
+ limitations.
+
+2008-01-24 Robert Millan <rmh@aybabtu.com>
+
+ * kern/file.c (grub_file_open): Do not account previous failures of
+ unrelated functions when grub_errno is checked for.
+ Reported by Oleg Strikov.
+
+2008-01-24 Bean <bean123ch@gmail.com>
+
+ * fs/ufs.c (GRUB_UFS_VOLNAME_LEN): New macro.
+ (grub_ufs_sblock): New member volume name.
+ (grub_ufs_find_file): Fix string copy bug.
+ (grub_ufs_label): Implement this function properly.
+
+ * fs/hfs.c (grub_hfs_cnid_type): New enum.
+ (grub_hfs_iterate_records): Use the correct file number for extents
+ and catalog file. Fix problem in next index calculation.
+ (grub_hfs_find_node): Replace recursive function call with loop.
+ (grub_hfs_iterate_dir): Replace recursive function call with loop.
+
+2008-01-23 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/ieee1275/loader.h: Include `<grub/types.h>',
+ `<grub/symbol.h>' and `<grub/multiboot.h>'.
+ (grub_multiboot2_real_boot): New function prototype.
+
+ * include/grub/i386/pc/memory.h: Include `<grub/machine/machine.h>'.
+ [!GRUB_MACHINE_IEEE1275] (grub_lower_mem, grub_upper_mem): Disable.
+
+ * kern/i386/ieee1275/init.c (grub_os_area_addr)
+ (grub_os_area_size, grub_lower_mem, grub_upper_mem): Remove variables.
+
+2008-01-23 Robert Millan <rmh@aybabtu.com>
+
+ * kern/mm.c (grub_mm_init_region): Replace grub_dprintf() call with
+ #ifdef'ed out grub_printf().
+
+2008-01-23 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/at_keyboard.c (grub_keyboard_isr): #ifdef out
+ grub_dprintf calls, since they make "debug=all" mode unusable.
+ (grub_console_checkkey): Likewise.
+
+2008-01-23 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add
+ `term/i386/pc/at_keyboard.c'.
+ (pkglib_MODULES): Add `serial.mod'.
+ (serial_mod_SOURCES): New variable.
+ (serial_mod_CFLAGS): Likewise.
+ (serial_mod_LDFLAGS): Likewise.
+
+ * include/grub/i386/ieee1275/console.h: Add `<grub/symbol.h>'. Remove
+ `<grub/powerpc/ieee1275/console.h>'.
+ (grub_keyboard_controller_init): New function prototype.
+ (grub_console_checkkey): Likewise.
+ (grub_console_getkey): Likewise.
+
+ * kern/powerpc/ieee1275/init.c (grub_machine_init): Initialize AT
+ keyboard on i386.
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_term): On i386, use
+ grub_ofconsole_checkkey() and grub_ofconsole_getkey() for input.
+
+2008-01-23 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/pc/init.c (make_install_device): When memdisk image is
+ present, "(memdisk)/boot/grub" becomes the default prefix.
+
+ * util/i386/pc/grub-mkrescue.in: Switch to a minimal core.img plus
+ a memdisk tarball with all the modules. Add --overlay=DIR option that
+ allows users to overlay additional files into the image.
+
+2008-01-23 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-ieee1275.rmk (kernel_elf_SOURCES): Add `machine/loader.h'
+ and `machine/memory.h'.
+ (pkglib_MODULES): Add `multiboot.mod' and `_multiboot.mod'.
+ (_multiboot_mod_SOURCES): New variable.
+ (_multiboot_mod_CFLAGS): Likewise.
+ (_multiboot_mod_LDFLAGS): Likewise.
+ (multiboot_mod_SOURCES): Likewise.
+ (multiboot_mod_CFLAGS): Likewise.
+ (multiboot_mod_LDFLAGS): Likewise.
+
+ * include/grub/i386/ieee1275/loader.h: New file.
+
+ * include/grub/i386/ieee1275/machine.h: Likewise.
+
+ * include/grub/i386/ieee1275/memory.h: Likewise.
+
+ * include/grub/i386/pc/init.h (grub_os_area_addr): Remove (redundant)
+ variable declaration.
+ (grub_os_area_size): Likewise.
+
+ * kern/i386/ieee1275/init.c (grub_os_area_addr, grub_os_area_size)
+ (grub_lower_mem, grub_upper_mem): New variables.
+ (grub_stop_floppy): New function (just to make
+ grub_multiboot2_real_boot() happy).
+
+ * kern/i386/ieee1275/startup.S: Include `<grub/machine/memory.h>',
+ `<grub/cpu/linux.h>', `<multiboot.h>' and `<multiboot2.h>'.
+ (grub_stop): New function.
+ Include `"../realmode.S"' and `"../loader.S"'.
+
+ * loader/multiboot_loader.c: Include `<grub/machine/machine.h>'.
+ Replace `__i386__' #ifdefs with `GRUB_MACHINE_PCBIOS'.
+
+ * loader/powerpc/ieee1275/multiboot2.c (grub_mb2_arch_boot): On i386,
+ rely on grub_multiboot2_real_boot() for final boot.
+
+2008-01-22 Robert Millan <rmh@aybabtu.com>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): When
+ `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' flag is set, skip any
+ device that doesn't look like an SD card.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): Add
+ `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' flag.
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_set_flag): Detect
+ OLPC laptop, and set `GRUB_IEEE1275_FLAG_OFDISK_SDCARD_ONLY' when
+ found.
+
+2008-01-22 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/init.c (grub_claim_heap): Add sanity check to
+ avoid claiming over our own code.
+
+2008-01-22 Bean <bean123ch@gmail.com>
+
+ * conf/i386-pc.rmk (pkglib_MODULES): Add `jpeg.mod'.
+ (jpeg_mod_SOURCES): New variable.
+ (jpeg_mod_CFLAGS): Likewise.
+ (jpeg_mod_LDFLAGS): Likewise.
+
+ * video/readers/jpeg.c : New file.
+
+2008-01-22 Bean <bean123ch@gmail.com>
+
+ * fs/cpio.c (grub_cpio_find_file): Return GRUB_ERR_FILE_NOT_FOUND when
+ there are no more items.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * kern/mm.c (grub_mm_init_region): Improve debug message.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): New variable.
+ (kernel_img_LDFLAGS): Use `GRUB_MEMORY_MACHINE_LINK_ADDR' as link
+ address.
+ (grub_mkimage_CFLAGS): Propagate `GRUB_MEMORY_MACHINE_LINK_ADDR' as
+ a C macro.
+ * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): New macro.
+ Indicates start of upper memory.
+ * util/i386/pc/grub-mkimage.c: Include `<grub/machine/memory.h>'.
+ (generate_image): Abort when image size is big enough to corrupt
+ upper memory.
+
+ * include/grub/i386/pc/vga.h: Include `<grub/machine/memory.h>'.
+ (GRUB_MEMORY_MACHINE_VGA_ADDR): Alias for `GRUB_MEMORY_MACHINE_UPPER'.
+ * term/i386/pc/vga.c (VGA_MEM): Use `GRUB_MEMORY_MACHINE_VGA_ADDR'
+ instead of hardcoding 0xA0000.
+ * video/i386/pc/vbe.c: Include `<grub/machine/vga.h>'.
+ (grub_vbe_set_video_mode): Use `GRUB_MEMORY_MACHINE_VGA_ADDR'
+ instead of hardcoding 0xA0000.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * disk/memdisk.c (memdisk_size): New variable.
+ (grub_memdisk_open): Replace grub_arch_memdisk_size() call with
+ `memdisk_size'.
+ (grub_memdisk_init): Initialize `memdisk_size'. Reallocate memdisk
+ image to dynamic memory.
+ (grub_memdisk_fini): Replace grub_arch_memdisk_size() call with
+ `memdisk_size'. Free memdisk block.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ Fix detection of very small filesystems (like tar).
+
+ * fs/reiserfs.c (grub_reiserfs_mount): When disk is too small to
+ contain a ReiserFS, abort with GRUB_ERR_BAD_FS rather than
+ GRUB_ERR_OUT_OF_RANGE (which made the upper layer think there's
+ a problem with this disk).
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_iterate): Add debug message
+ on grub_biosdisk_rw_standard() error.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/ieee1275/ieee1275.h: Add 2008 to Copyright line for
+ recent changes.
+ * kern/elf.c: Likewise.
+ * kern/ieee1275/ieee1275.c: Likewise.
+ * kern/powerpc/ieee1275/openfw.c: Likewise.
+ * term/ieee1275/ofconsole.c: Likewise.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/pc/kernel.h: Include `<grub/symbol.h>'.
+
+ * include/grub/kernel.h (grub_arch_memdisk_addr)
+ (grub_arch_memdisk_size): Moved from here ...
+
+ * include/grub/i386/pc/kernel.h (grub_arch_memdisk_addr)
+ (grub_arch_memdisk_size): ... to here.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ Mostly based on bugfix from Bean.
+
+ * kern/elf.c (grub_elf32_phdr_iterate): Use `NESTED_FUNC_ATTR'
+ attribute with hook() parameter.
+ (grub_elf32_load): Use `NESTED_FUNC_ATTR' with grub_elf32_load_segment()
+ declaration.
+ (grub_elf64_phdr_iterate): Use `NESTED_FUNC_ATTR'
+ attribute with hook() parameter.
+ (grub_elf64_load): Use `NESTED_FUNC_ATTR' with grub_elf64_load_segment()
+ declaration.
+
+2008-01-21 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Add `machine/kernel.h'.
+ (pkglib_MODULES): Add `memdisk.mod'.
+ (memdisk_mod_SOURCES): New variable.
+ (memdisk_mod_CFLAGS): Likewise.
+ (memdisk_mod_LDFLAGS): Likewise.
+
+ * disk/memdisk.c: New file.
+
+ * include/grub/disk.h (grub_disk_dev_id): Add
+ `GRUB_DISK_DEVICE_MEMDISK_ID'.
+
+ * include/grub/i386/pc/kernel.h
+ (GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE): New macro.
+ (GRUB_KERNEL_MACHINE_PREFIX): Increment by 4.
+ (grub_kernel_image_size): New variable declaration.
+ (grub_total_module_size): Likewise.
+ (grub_memdisk_image_size): Likewise.
+
+ * include/grub/i386/pc/memory.h
+ (GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR): New macro.
+
+ * include/grub/kernel.h: Include `<grub/symbol.h>'.
+ (grub_arch_memdisk_addr): New variable declaration.
+ (grub_arch_memdisk_size): Likewise.
+
+ * kern/i386/pc/init.c (grub_arch_memdisk_addr): New function.
+ (grub_arch_memdisk_size): Likewise.
+
+ * kern/i386/pc/startup.S (grub_memdisk_image_size): New variable.
+ (codestart): Replace hardcoded `0x100000' with
+ `GRUB_MEMORY_MACHINE_DECOMPRESSION_ADDR' macro.
+
+ * util/i386/pc/grub-mkimage.c: Include `<grub/misc.h>'.
+ (generate_image): Add `memdisk_path' parameter. When `memdisk_path' is
+ not NULL, append the contents of the file it refers to, at the end of
+ the compressed kernel image. Initialize `grub_memdisk_image_size'
+ variable (at `GRUB_KERNEL_MACHINE_MEMDISK_IMAGE_SIZE' offset).
+ (options): Add "memdisk"|'m' option.
+ (main): Parse --memdisk|-m option, and pass user-provided path as
+ parameter to generate_image().
+
+2008-01-20 Robert Millan <rmh@aybabtu.com>
+
+ * kern/sparc64/ieee1275/openfw.c (grub_devalias_iterate): Copy debug
+ grub_dprintf() calls from here ...
+ * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): ... to here.
+
+2008-01-20 Robert Millan <rmh@aybabtu.com>
+
+ Fix detection of "real mode" when /options/real-mode? doesn't exist.
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_mmu): New variable
+ declaration.
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_mmu): New variable.
+ (grub_ieee1275_find_options): If `grub_ieee1275_mmu' is 0, set
+ `GRUB_IEEE1275_FLAG_REAL_MODE'.
+ (cmain): Initialize `grub_ieee1275_mmu' (using /chosen/mmu integer
+ property).
+ * kern/powerpc/ieee1275/openfw.c (grub_map): Rely on pre-initialized
+ `grub_ieee1275_mmu' rather than obtaining a handler on every call.
+
+2008-01-19 Robert Millan <rmh@aybabtu.com>
+
+ Get rid of confusing function (superseded by
+ `grub_ieee1275_get_integer_property')
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_decode_int_4): Remove
+ prototype.
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_decode_int_4): Remove
+ function.
+ * term/ieee1275/ofconsole.c (grub_ofconsole_init): Avoid use of
+ grub_ieee1275_decode_int_4(), by obtaining integer properties directly
+ in native endianness from grub_ieee1275_get_integer_property().
+
+2008-01-19 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/openfw.c (grub_halt): Issue "power-off"
+ command after "shut-down", since implementations differ on which
+ the command for halt is.
+
+2008-01-19 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/linuxbios/console.h: Add header protection.
+ (grub_keyboard_controller_init): New function prototype.
+ * term/i386/pc/at_keyboard.c (KEYBOARD_COMMAND_ISREADY): New macro.
+ (KEYBOARD_COMMAND_READ): Likewise.
+ (KEYBOARD_COMMAND_WRITE): Likewise.
+ (KEYBOARD_SCANCODE_SET1): Likewise.
+ (grub_keyboard_controller_write): New function.
+ (grub_keyboard_controller_read): Likewise.
+ (grub_keyboard_controller_init): Likewise.
+
+ * term/i386/pc/console.c: Include `<grub/machine/machine.h>'.
+ (grub_console_init): On coreboot/LinuxBIOS, call
+ grub_keyboard_controller_init().
+
+2008-01-19 Robert Millan <rmh@aybabtu.com>
+
+ PowerPC changes provided by Pavel Roskin.
+
+ * kern/powerpc/ieee1275/cmain.c (cmain): Don't take any arguments.
+ * kern/powerpc/ieee1275/crt0.S: Store r5 in grub_ieee1275_entry_fn,
+ don't rely on cmain() doing it.
+ * kern/i386/ieee1275/startup.S (_start): Store %eax in
+ grub_ieee1275_entry_fn, don't rely on cmain() doing it.
+
+2008-01-16 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/linuxbios/memory.h
+ (GRUB_MEMORY_MACHINE_LINUXBIOS_TABLE_ADDR): Remove macro.
+ * kern/i386/linuxbios/table.c (grub_linuxbios_table_iterate): Do not
+ receive `table_header' as argument. Instead, probe for it in the
+ known memory ranges where it can be present.
+ (grub_available_iterate): Do not pass a fixed `table_header' address
+ to grub_linuxbios_table_iterate().
+
+2008-01-15 Robert Millan <rmh@aybabtu.com>
+
+ * configure.ac: Add `i386-ieee1275' to the list of supported targets.
+ * conf/i386-ieee1275.rmk: New file.
+ * include/grub/i386/ieee1275/console.h: Likewise.
+ * include/grub/i386/ieee1275/ieee1275.h: Likewise.
+ * include/grub/i386/ieee1275/kernel.h: Likewise.
+ * include/grub/i386/ieee1275/time.h: Likewise.
+ * kern/i386/ieee1275/init.c: Likewise.
+ * kern/i386/ieee1275/startup.S: Likewise.
+
+2008-01-15 Robert Millan <rmh@aybabtu.com>
+
+ * kern/misc.c (grub_vsprintf): Do not reset `longlongfmt' to zero
+ when pointers are 32-bit (but still do set it to one when they are
+ 64-bit).
+
+2008-01-15 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/ieee1275/ieee1275.h
+ (grub_ieee1275_get_integer_property): New function prototype.
+
+ * kern/ieee1275/ieee1275.c: Include `<grub/types.h>'.
+ (grub_ieee1275_get_integer_property): New function. Wraps around
+ grub_ieee1275_get_property() to handle endianness.
+
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Replace
+ grub_ieee1275_get_property() with grub_ieee1275_get_integer_property()
+ where appropriate.
+ * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Likewise.
+ (grub_map): Likewise.
+ * kern/sparc64/ieee1275/openfw.c (grub_map): Likewise.
+
+2008-01-15 Bean <bean123ch@gmail.com>
+
+ * normal/execute.c (grub_script_exec_argument_to_string): Check for undefined variable.
+ (grub_script_execute_cmdline): Reset grub_errno.
+
+ * normal/main.c (read_config_file): Reset grub_errno.
+
+ * normal/parse.y (script_init): New.
+ (script): Move function and menuentry here.
+ (delimiter): New.
+ (command): Add delimiter at the end of command.
+ (commands): Adjust to match the new command.
+ (commandblock): Remove grub_script_lexer_record_start.
+ (menuentry): Add grub_script_lexer_record_start, use the new commands.
+ (if): Use the new commands.
+
+ * conf/common.rmk (pkgdata_MODULES): Add echo.mod.
+
+2008-01-15 Robert Millan <rmh@aybabtu.com>
+
+ * normal/menu.c (run_menu): Move timeout message from here ...
+ (print_timeout): ... to here.
+ (run_menu): Use print_timeout() once during initial draw to print
+ the whole message, and again in every clock tick to update only
+ the number of seconds.
+
+2008-01-15 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Obtain
+ actual size of `available' from grub_ieee1275_get_property(), and
+ restrict parsing to that bound.
+
+2008-01-15 Christian Franke <franke@computer.org>
+
+ * util/grub-emu.c: Replace <argp.h> by <getopt.h>.
+ (argp_program_version): Remove variable.
+ (argp_program_bug_address): Likewise.
+ (options): Convert from struct argp_option to struct option.
+ (struct arguments): Remove.
+ (parse_opt): Remove.
+ (usage): New function.
+ (main): Replace struct args members by simple variables.
+ Replace argp_parse() by getopt_long().
+ Add switch to evaluate options.
+ Add missing "(...)" around root_dev in prefix string.
+
+2008-01-14 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/init.c (grub_exit): Reimplement as a wrapper
+ for grub_ieee1275_exit(), in order to improve portability.
+
+2008-01-14 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in (prefix): Define.
+ (exec_prefix): Likewise. Both definitions are later used by `libdir'.
+
+2008-01-13 Pavel Roskin <proski@gnu.org>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Don't use
+ grub_errno if no errors have been detected.
+
+2008-01-12 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/util/getroot.h (grub_dev_abstraction_types): New enum.
+ (grub_util_get_dev_abstraction): New function prototype.
+
+ * util/getroot.c: Include `<grub/util/getroot.h>'
+ (grub_util_get_grub_dev): Move detection of abstraction type to ...
+ (grub_util_get_dev_abstraction): ... here (new function).
+
+ * util/grub-probe.c: Convert PRINT_* to an enum. Add
+ `PRINT_ABSTRACTION'.
+ (probe): Probe for abstraction type when requested.
+ (main): Understand `--target=abstraction'.
+
+ * util/i386/efi/grub-install.in: Add abstraction module to core
+ image when it is found to be necessary.
+ * util/i386/pc/grub-install.in: Likewise.
+ * util/powerpc/ieee1275/grub-install.in: Likewise.
+
+ * util/update-grub_lib.in (font_path): Return system path without
+ converting to GRUB path.
+ * util/update-grub.in: Convert system path returned by font_path()
+ to a GRUB path. Use `grub-probe -t abstraction' to determine what
+ abstraction module is needed for loading fonts (if any). Export
+ that as `GRUB_PRELOAD_MODULES'.
+ * util/grub.d/00_header.in: Process `GRUB_PRELOAD_MODULES' (print
+ insmod commands).
+
+2008-01-12 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Remove some unused code from reiserfs.
+
+ * fs/reiserfs.c (struct grub_reiserfs_key)
+ [GRUB_REISERFS_KEYV2_BITFIELD]: Removed offset and type.
+ (struct grub_reiserfs_node_body): Removed.
+ (grub_reiserfs_get_key_v2_type) [GRUB_REISERFS_KEYV2_BITFIELD]:
+ Likewise.
+ (grub_reiserfs_get_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]:
+ Likewise.
+ (grub_reiserfs_set_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]:
+ Likewise.
+ (grub_reiserfs_set_key_offset) [GRUB_REISERFS_KEYV2_BITFIELD]:
+ Likewise.
+ (grub_reiserfs_set_key_type) [GRUB_REISERFS_KEYV2_BITFIELD]:
+ Likewise.
+ (grub_reiserfs_iterate_dir) [GRUB_REISERFS_KEYV2_BITFIELD]:
+ Likewise.
+ (grub_reiserfs_open) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise.
+ (grub_reiserfs_read) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise.
+ (grub_reiserfs_dir) [GRUB_REISERFS_KEYV2_BITFIELD]: Likewise.
+
+2008-01-10 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (grub_file_is_not_garbage): New function.
+ Determines if a file is garbage left by packaging systems, etc.
+ * util/update-grub.in: Use grub_file_is_not_garbage() as a condition
+ for processing /etc/grub.d scripts.
+ * util/grub.d/10_hurd.in: Fix `GRUB_DISTRIBUTOR' comparison.
+ * util/grub.d/10_linux.in: Likewise. Use grub_file_is_not_garbage()
+ as a condition for processing Linux images.
+
+2008-01-10 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/powerpc/libgcc.h (__ucmpdi2): New export. Needed
+ to compile reiserfs.c on PowerPC.
+
+2008-01-10 Robert Millan <rmh@aybabtu.com>
+
+ * kern/device.c (grub_device_iterate): Do not abort device iteration
+ when one of the devices cannot be opened.
+ * kern/disk.c (grub_disk_open): Do not account previous failures of
+ unrelated functions when grub_errno is checked for.
+
+2008-01-08 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_linux): For
+ `! grub_linux_is_bzimage', change order of address comparison to make
+ it more intuitive, and improve "too big zImage" error message.
+
+2008-01-08 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in (uninstall): Handle `$(update-grub_SCRIPTS)' and
+ `$(update-grub_DATA)'.
+ (distcheck): Fix race condition when invoking `$(MAKE)' on multiple
+ targets.
+
+2008-01-07 Robert Millan <rmh@aybabtu.com>
+
+ * boot/i386/pc/boot.S (boot_drive_check): Add a comment indicating
+ which instruction is modified by grub-setup during installation
+ (since it wasn't obvious by only looking at this file).
+
+2008-01-07 Robert Millan <rmh@aybabtu.com>
+
+ * TODO: Rewrite. Just refer to the wiki and the BTS instead of
+ listing actual TODO items.
+
+2008-01-06 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/reiserfs.c (grub_reiserfs_get_key_v2_type): Handle endianness
+ correctly.
+ (grub_reiserfs_get_key_offset): Likewise.
+ (grub_reiserfs_set_key_offset): Likewise.
+ (grub_reiserfs_set_key_type): Likewise.
+ (grub_reiserfs_iterate_dir): Return 1 if found, otherwise 0.
+
+ (GRUB_REISERFS_KEYV2_BITFIELD): Undefined. Probably it would be
+ better to remove the bitfield version completely.
+
+2008-01-06 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/reiserfs.c (grub_reiserfs_iterate_dir): ENTRY_ITEM must be
+ allocated from the heap, due to the fshelp implementation.
+ (grub_reiserfs_dir): Free NODE, due to the same reason.
+
+2008-01-06 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Mostly from Vincent Pelletier:
+
+ * fs/reiserfs.c: New file.
+
+ * conf/common.rmk (pkglib_MODULES): Added reiserfs.mod.
+ (reiserfs_mod_SOURCES): New variable.
+ (reiserfs_mod_CFLAGS): Likewise.
+ (reiserfs_mod_LDFLAGS): Likewise.
+
+ * DISTLIST: Added boot/i386/pc/lnxboot.S, commands/hexdump.c,
+ disk/ata.c, fs/cpio.c, fs/ntfscomp.c, fs/reiserfs.c,
+ include/grub/ntfs.h, include/grub/i386/pc/machine.h, and
+ normal/color.c.
+
+2008-01-06 Robert Millan <rmh@aybabtu.com>
+
+ * normal/color.c: Remove `<grub/env.h>'.
+
+2008-01-05 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * include/grub/normal.h: Include <grub/env.h>.
+
+2008-01-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-setup.c (usage): Replace obsolete `(hd0,0)' in
+ usage example with `(hd0,1)'.
+ Reported by Samuel Thibault.
+
+2008-01-05 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/loader.S (grub_linux_is_bzimage): New variable.
+ (grub_linux_boot_zimage): Rename to ...
+ (grub_linux_boot): ... this.
+ (grub_linux_boot_bzimage): Merge with `grub_linux_boot_zimage'.
+ (grub_linux_boot_zimage): Conditionalize zImage copy.
+
+ * include/grub/i386/loader.h (grub_linux_is_bzimage): Add prototype.
+ (grub_linux_boot_bzimage): Remove prototype.
+ (grub_linux_boot_zimage): Rename to ...
+ (grub_linux_boot): ... this.
+
+ * loader/i386/pc/linux.c (big_linux): Replace with `grub_linux_is_bzimage'.
+ (grub_linux_boot): Remove function.
+
+2008-01-05 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/normal.h (grub_env_write_color_normal): New prototype.
+ (grub_env_write_color_highlight): Likewise.
+ (grub_wait_after_message): Likewise.
+
+ * normal/color.c: New file.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `normal/color.c'.
+ (normal_mod_DEPENDENCIES): Likewise.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Add `normal/color.c'.
+ (normal_mod_DEPENDENCIES): Likewise.
+
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Add `normal/color.c'.
+ (normal_mod_DEPENDENCIES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `normal/color.c'.
+ (normal_mod_DEPENDENCIES): Likewise.
+
+ * normal/menu_entry.c (run): Rely on grub_wait_after_message()
+ for waiting after a message is printed.
+ * normal/main.c (read_config_file): Likewise.
+ (grub_normal_init): Register grub_env_write_color_normal() and
+ grub_env_write_color_highlight() hooks. Mark `color_normal' and
+ `color_highlight' variables as global.
+
+ * normal/menu.c (grub_wait_after_message): New function.
+ (grub_color_menu_normal): New variable. Replaces ...
+ (GRUB_COLOR_MENU_NORMAL): ... this macro.
+ (grub_color_menu_highlight): New variable. Replaces ...
+ (GRUB_COLOR_MENU_HIGHLIGHT): ... this macro.
+ (draw_border): Set color state to `GRUB_TERM_COLOR_NORMAL' instead of
+ `GRUB_TERM_COLOR_STANDARD'.
+ (print_message): Use `grub_setcolorstate' to reload colors. Rename
+ `normal_code' and `highlight_code' to `old_color_normal' and
+ `old_color_highlight', respectively.
+ (grub_menu_init_page): Update colors when drawing the menu, based on
+ `menu_color_normal' and `menu_color_highlight' variables.
+ (grub_menu_run): Rely on grub_wait_after_message() for waiting after
+ a message is printed.
+
+2008-01-05 Robert Millan <rmh@aybabtu.com>
+
+ * kern/env.c (grub_env_context_open): Propagate hooks for global
+ variables to new context.
+
+ * kern/main.c (grub_set_root_dev): Export `root' variable.
+
+2008-01-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (get_os_disk): Check for devfs-style IDE and SCSI
+ discs unconditionally, since udev and others have options to provide
+ them.
+
+2008-01-05 Robert Millan <rmh@aybabtu.com>
+
+ * normal/completion.c (iterate_dir): Skip `.' and `..' directories.
+
+2008-01-04 Christian Franke <franke@computer.org>
+
+ * kern/i386/pc/init.c (grub_machine_init): Fix evaluation
+ of eisa_mmap.
+
+2008-01-03 Pavel Roskin <proski@gnu.org>
+
+ * kern/i386/linuxbios/init.c: Put "void" to all function
+ declarations with no arguments.
+ * kern/powerpc/ieee1275/init.c: Likewise.
+ * term/i386/pc/at_keyboard.c: Likewise.
+ * term/i386/pc/vga_text.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+
+2008-01-02 Robert Millan <rmh@aybabtu.com>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf32): Improve error
+ message when loaded image is out of bounds.
+ (grub_multiboot_load_elf64): Likewise.
+
+2008-01-02 Pavel Roskin <proski@gnu.org>
+
+ * util/grub.d/10_linux.in: Try version without ".old" when
+ looking for initrd. It's better to use initrd from the newer
+ kernel of the same version than no initrd at all.
+
+2008-01-01 Robert Millan <rmh@aybabtu.com>
+
+ * util/biosdisk.c (get_os_disk): Fix check for IDE or SCSI discs.
+
+2008-01-01 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * include/grub/video.h: Added grub_video_unmap_color and
+ grub_video_get_active_render_target.
+ (grub_video_adapter): Added unmap_color and get_active_render_target.
+
+ * video/video.c: Added grub_video_unmap_color and
+ grub_video_get_active_render_target.
+ (grub_video_get_info): Changed method to accept NULL pointer as an
+ argument to allow detection of active video adapter.
+
+ * video/i386/pc/vbe.c: Renamed grub_video_vbe_unmap_color as
+ grub_video_vbe_unmap_color_int.
+ Added grub_video_vbe_unmap_color and
+ grub_video_vbe_get_active_render_target.
+ (grub_video_vbe_adapter): Added unmap_color and
+ get_active_render_target.
+
+ * video/i386/pc/vbeblit.c: Replaced grub_video_vbe_unmap_color usage
+ with grub_video_vbe_unmap_color_int.
+
+ * term/gfxterm.c (DEFAULT_STANDARD_COLOR): Added.
+ (DEFAULT_NORMAL_COLOR): Likewise.
+ (DEFAULT_HIGHLIGHT_COLOR) Likewise.
+ (DEFAULT_FG_COLOR): Removed.
+ (DEFAULT_BG_COLOR): Likewise.
+ (DEFAULT_CURSOR_COLOR): Changed value.
+ (grub_virtual_screen): Added standard_color_setting,
+ normal_color_setting, highlight_color_setting and term_color.
+ (grub_virtual_screen): Removed fg_color_setting and bg_color_setting.
+ (bitmap_width): Added.
+ (bitmap_height): Likewise.
+ (bitmap): Likewise.
+ (set_term_color): Likewise.
+ (grub_virtual_screen_setup): Changed to use new terminal coloring
+ settings.
+ (grub_gfxterm_init): Added init for bitmap.
+ (grub_gfxterm_fini): Added destroy for bitmap.
+ (redraw_screen_rect): Updated to use background bitmap and new
+ terminal coloring.
+ (scroll_up): Added optimization for case when there is no bitmap.
+ (grub_gfxterm_cls): Fixed to use correct background color.
+ (grub_virtual_screen_setcolorstate): Changed to use new terminal
+ coloring.
+ (grub_virtual_screen_setcolor): Likewise.
+ (grub_virtual_screen_getcolor): Added.
+ (grub_gfxterm_background_image_cmd): Likewise.
+ (grub_video_term): Added setcolor and getcolor.
+ (MOD_INIT): Added registration of background_image command.
+ (MOD_TERM): Added unregistration for background_image command.
+
+2007-12-30 Pavel Roskin <proski@gnu.org>
+
+ * loader/multiboot_loader.c: Fix multiboot command
+ unregistration. Fix all typos in the word "multiboot".
+
+2007-12-29 Pavel Roskin <proski@gnu.org>
+
+ * util/grub.d/10_linux.in: Refactor search for initrd. Add
+ support for initrd names used in Fedora.
+
+2007-12-26 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkgdata_MODULES): Add cpio.mod.
+ (cpio_mod_SOURCES): New variable.
+ (cpio_mod_CFLAGS): Likewise.
+ (cpio_mod_LDFLAGS): Likewise.
+
+ * fs/cpio.c: New file.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add cpio.c.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+2007-12-25 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/term.h (struct grub_term): Add `getcolor' function.
+ (grub_getcolor): New function.
+
+ * kern/term.c (grub_getcolor): New function.
+ * normal/menu.c (GRUB_COLOR_MENU_NORMAL): New macro.
+ (GRUB_COLOR_MENU_HIGHLIGHT): New macro.
+ (print_entry): Set normal and highlight colors to
+ `GRUB_COLOR_MENU_NORMAL' and `GRUB_COLOR_MENU_HIGHLIGHT',
+ respectively, before printing and restore them to old
+ values afterwards.
+ (grub_menu_init_page): Likewise. Fill an additional colored space
+ that would otherwise be left blank.
+
+ * term/efi/console.c (grub_console_getcolor): New function.
+ (struct grub_console_term.getcolor): New variable.
+ * term/i386/pc/console.c (grub_console_getcolor): New function.
+ (struct grub_console_term.getcolor): New variable.
+ * term/ieee1275/ofconsole.c (grub_ofconsole_getcolor): New function.
+ (struct grub_console_term.getcolor): New variable.
+
+ * term/i386/pc/serial.c (grub_serial_setcolor): Remove function.
+ (struct grub_console_term.setcolor): Remove variable.
+ * term/i386/pc/vesafb.c (grub_virtual_screen_setcolor): Remove function.
+ (struct grub_console_term.setcolor): Remove variable.
+ * term/i386/pc/vga.c (grub_vga_setcolor): Remove function.
+ (struct grub_console_term.setcolor): Remove variable.
+ * term/gfxterm.c (grub_virtual_screen_setcolor): Remove function.
+ (struct grub_console_term.setcolor): Remove variable.
+
+2007-12-25 Robert Millan <rmh@aybabtu.com>
+
+ * configure.ac: Search for possible unifont.hex locations, and
+ define UNIFONT_HEX if found.
+
+ * Makefile.in (UNIFONT_HEX): Define variable.
+ (DATA): Rename to ...
+ (PKGLIB): ... this. Update all users.
+ (PKGDATA): New variable.
+ (pkgdata_IMAGES): Rename to ...
+ (pkglib_IMAGES): ... this. Update all users.
+ (pkgdata_MODULES): Rename to ...
+ (pkglib_MODULES): ... this. Update all users.
+ (pkgdata_PROGRAMS): Rename to ...
+ (pkglib_PROGRAMS): ... this. Update all users.
+ (pkgdata_DATA): Rename to ...
+ (pkglib_DATA): ... this. Update all users.
+ (CLEANFILES): Redefine to `$(pkglib_DATA) $(pkgdata_DATA)'.
+ (unicode.pff, ascii.pff): New rules.
+ (all-local): Add `$(PKGDATA)' dependency.
+ (install-local): Process `$(PKGDATA)'.
+
+ * util/update-grub_lib.in (font_path): Search for *.pff files in
+ a few more locations, including `${pkgdata}'.
+
+2007-12-23 Robert Millan <rmh@aybabtu.com>
+
+ Patch from Bean <bean123ch@gmail.com>:
+ * disk/loopback.c (grub_loopback_read): Add missing bit shift to
+ `size'.
+
+2007-12-21 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkgdata_MODULES): Add ntfscomp.mod.
+ (ntfscomp_mod_SOURCES): New variable.
+ (ntfscomp_mod_CFLAGS): Likewise.
+ (ntfscomp_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ntfscomp.c.
+ (grub_probe_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-linuxbios.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add fs/ntfscomp.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * fs/ntfs.c (grub_ntfscomp_func): New variable.
+ (read_run_list): Renamed to grub_ntfs_read_run_list.
+ (decomp_nextvcn): Moved to ntfscomp.c.
+ (decomp_getch): Likewise.
+ (decomp_get16): Likewise.
+ (decomp_block): Likewise.
+ (read_block): Likewise.
+ (read_data): Partially moved to ntfscomp.c.
+ (fixup): Change unsigned to grub_uint16_t.
+ (read_mft): Change unsigned long to grub_uint32_t.
+ (read_attr): Likewise.
+ (read_data): Likewise.
+ (read_run_data): Likewise.
+ (read_run_list): Likewise.
+ (read_mft): Likewise.
+
+ * fs/ntfscomp.c: New file.
+
+ * include/grub/ntfs.h: New file.
+
+2007-12-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-mkdevicemap.c (make_device_map): Iterate up to 20 for
+ IDE disk check, since Linux is known to support 20 IDE disks.
+ Reported by Colin Watson.
+
+2007-12-15 Bean <bean123ch@gmail.com>
+
+ * conf/i386-pc.rmk (pkgdata_IMAGES): Add lnxboot.img.
+ (lnxboot_img_SOURCES): New variable.
+ (lnxboot_img_ASFLAGS): Likewise.
+ (lnxboot_img_LDFLAGS): Likewise.
+
+ * boot/i386/pc/lnxboot.S: New file.
+
+2007-11-24 Pavel Roskin <proski@gnu.org>
+
+ * configure.ac: Test if '--build-id=none' is supported by the
+ linker. If yes, add it to TARGET_LDFLAGS. Build ID causes
+ objcopy to generate incorrect binary files (binutils
+ 2.17.50.0.18-1 as shipped by Fedora 8).
+ * aclocal.m4 (grub_PROG_OBJCOPY_ABSOLUTE): Use LDFLAGS when
+ linking, so that build ID doesn't break the test.
+
+2007-11-24 Pavel Roskin <proski@gnu.org>
+
+ * include/grub/i386/time.h: use "void" in the argument list
+ of grub_cpu_idle().
+ * include/grub/powerpc/time.h: Likewise.
+ * include/grub/sparc64/time.h: Likewise.
+
+2007-11-18 Christian Franke <franke@computer.org>
+
+ * util/console.c (grub_ncurses_getkey): Change curses KEY_* mapping,
+ now return control chars instead of GRUB_CONSOLE_KEY_* constants.
+ This fixes the problem that function keys did not work in grub-emu.
+
+2007-11-18 Christian Franke <franke@computer.org>
+
+ * disk/host.c (grub_host_open): Remove attribute unused from
+ name parameter. Add check for "host". This fixes the problem
+ that grub-emu does not find partitions.
+
+2007-11-18 Christian Franke <franke@computer.org>
+
+ * util/hostfs.c (is_dir): New function.
+ (grub_hostfs_dir): Handle missing dirent.d_type case.
+ (grub_hostfs_read): Add missing fseek().
+ (grub_hostfs_label): Clear label pointer. This fixes a crash
+ of grub-emu on "ls (host)".
+
+2007-11-18 Christian Franke <franke@computer.org>
+
+ * include/grub/i386/pc/init.h (struct grub_machine_mmap_entry):
+ Add attribute packed, gcc 3.4.4 on Cygwin aligns this
+ to 64 bit boundary by default.
+
+2007-11-18 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkgdata_MODULES): Add hexdump.mod.
+ (hexdump_mod_SOURCES): New variable.
+ (hexdump_mod_CFLAGS): Likewise.
+ (hexdump_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add command/hexdump.c.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Add command/hexdump.c.
+
+ * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Add command/hexdump.c.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add command/hexdump.c.
+
+ * include/grub/hexdump.h: New file.
+
+ * commands/hexdump.c: New file.
+
+2007-11-10 Robert Millan <rmh@aybabtu.com>
+
+ * commands/i386/pc/play.c (beep_off): Switch order of arguments
+ in grub_outb() calls.
+ (beep_on): Likewise.
+
+2007-11-10 Christian Franke <franke@computer.org>
+
+ * normal/menu.c (run_menu): Check for empty menu to avoid crash.
+ (grub_menu_run): Likewise.
+
+2007-11-10 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/efi/machine.h: New file.
+ * include/grub/i386/linuxbios/machine.h: Likewise.
+ * include/grub/i386/pc/machine.h: Likewise.
+ * include/grub/powerpc/ieee1275/machine.h: Likewise.
+ * include/grub/sparc64/ieee1275/machine.h: Likewise.
+
+ * term/i386/pc/serial.c: Include <grub/machine/machine.h>.
+ (serial_hw_io_addr): New variable.
+ (serial_hw_get_port): Obtain port address from `serial_hw_io_addr'
+ instead of `(unsigned short *) 0x400'.
+
+2007-11-10 Bean <bean123ch@gmail.com>
+
+ * fs/ntfs.c (read_block): Fix a bug caused by adjacent blocks.
+
+2007-11-10 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added vga.mod.
+ (vga_mod_SOURCES): Added.
+ (vga_mod_CFLAGS): Likewise.
+ (vga_mod_LDFLAGS): Likewise.
+
+ * term/i386/pc/vga.c (get_map_mask): Switch order of arguments in
+ grub_outb() calls.
+ (set_map_mask): Likewise.
+ (set_read_map): Likewise.
+ (set_read_address): Likewise.
+ (vga_font): Removed variable.
+ (get_vga_glyph): Removed function.
+ (invalidate_char): Likewise.
+ (write_char): Changed to use grub_font_get_glyph() for font
+ information.
+ (grub_vga_putchar): Likewise.
+ (grub_vga_getcharwidth): Likewise.
+
+2007-11-10 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * conf/i386-pc.rmk (boot_img_LDFLAGS): Use COMMON_LDFLAGS for target
+ flags.
+ (pxeboot_img_LDFLAGS): Likewise.
+ (diskboot_img_LDFLAGS): Likewise.
+ (kernel_img_LDFLAGS): Likewise.
+
+2007-11-06 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/serial.c (serial_hw_put): Switch order of arguments
+ in grub_outb() calls.
+ (serial_hw_init): Likewise.
+
+2007-11-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Allow files in ${update_grub_dir} to contain
+ spaces. Skip non-regular files.
+
+2007-11-05 Robert Millan <rmh@aybabtu.com>
+
+ * kern/disk.c (grub_disk_firmware_fini)
+ (grub_disk_firmware_is_tainted): New variables.
+
+ * include/grub/disk.h (grub_disk_firmware_fini)
+ (grub_disk_firmware_is_tainted): Likewise.
+
+ * disk/i386/pc/biosdisk.c (GRUB_MOD_FINI(biosdisk)): Moved from here ...
+ (grub_disk_biosdisk_fini): ... to here.
+ (GRUB_MOD_FINI(biosdisk)): Implement using grub_disk_biosdisk_fini().
+ (GRUB_MOD_INIT(biosdisk)): Abort when `grub_disk_firmware_is_tainted'
+ is set. Register grub_disk_biosdisk_fini() in
+ `grub_disk_firmware_fini'.
+
+ * disk/ata.c: Remove `<grub/machine/biosdisk.h>'.
+ (GRUB_MOD_INIT(ata)): Remove grub_biosdisk_fini() call.
+ Use `grub_disk_firmware_is_tainted' and `grub_disk_firmware_fini'
+ to finish existing firmware disk interface.
+
+ * conf/i386-linuxbios.rmk (pkgdata_MODULES): Add `ata.mod'.
+ (ata_mod_SOURCES): New variable.
+ (ata_mod_CFLAGS): Likewise.
+ (ata_mod_LDFLAGS): Likewise.
+
+2007-11-05 Robert Millan <rmh@aybabtu.com>
+
+ * disk/ata.c: Remove `<grub/machine/time.h>'. Include `<grub/time.h>'.
+ (grub_ata_wait): Reimplement using grub_millisleep().
+
+ * include/grub/misc.h (grub_div_roundup): Fix parenthesization.
+ * include/grub/i386/time.h (grub_cpu_idle): Disable `hlt' instruction.
+
+2007-11-03 Marco Gerards <marco@gnu.org>
+
+ * term/i386/pc/vga_text.c: Include <grub/cpu/io.h>.
+ (CRTC_ADDR_PORT): New macro.
+ (CRTC_DATA_PORT): Likewise.
+ (CRTC_CURSOR): Likewise.
+ (CRTC_CURSOR_ADDR_HIGH): Likewise.
+ (CRTC_CURSOR_ADDR_LOW): Likewise.
+ (update_cursor): New function.
+ (grub_console_real_putchar): Call `update_cursor'.
+ (grub_console_gotoxy): Likewise.
+ (grub_console_cls): Set the default color when clearing the
+ screen.
+ (grub_console_setcursor): Implemented.
+
+2007-11-03 Marco Gerards <marco@gnu.org>
+
+ * disk/ata.c (grub_ata_pio_read): Don't wait for the command to
+ become activate.
+ (grub_ata_pio_write): Likewise.
+
+ (grub_atapi_identify): Wait after issuing an ATA command.
+ (grub_atapi_packet): Likewise.
+ (grub_ata_identify): Likewise.
+ (grub_ata_readwrite): Likewise.
+
+2007-11-03 Marco Gerards <marco@gnu.org>
+
+ * disk/ata.c (grub_ata_pio_read): Detect and return the error code.
+ (grub_ata_pio_write): Likewise.
+ (grub_ata_readwrite): Use `grub_error', instead of
+ returning `grub_errno'.
+
+2007-11-03 Marco Gerards <marco@gnu.org>
+
+ * disk/ata.c (grub_ata_readwrite): Call grub_ata_pio_read and
+ grub_ata_pio_write once for every single sector, instead of for
+ multiple sectors.
+
+2007-10-31 Robert Millan <rmh@aybabtu.com>
+
+ * configure.ac: Add `i386-linuxbios' to the list of supported targets.
+
+ * conf/i386-linuxbios.rmk: New file.
+
+ * kern/i386/pc/hardware.c: Likewise.
+ * term/i386/pc/at_keyboard.c: Likewise.
+ * term/i386/pc/vga_text.c: Likewise.
+
+ * include/grub/i386/linuxbios/boot.h: Likewise.
+ * include/grub/i386/linuxbios/console.h: Likewise.
+ * include/grub/i386/linuxbios/init.h: Likewise.
+ * include/grub/i386/linuxbios/kernel.h: Likewise.
+ * include/grub/i386/linuxbios/loader.h: Likewise.
+ * include/grub/i386/linuxbios/memory.h: Likewise.
+ * include/grub/i386/linuxbios/serial.h: Likewise.
+ * include/grub/i386/linuxbios/time.h: Likewise.
+
+ * kern/i386/linuxbios/init.c: Likewise.
+ * kern/i386/linuxbios/startup.S: Likewise.
+ * kern/i386/linuxbios/table.c: Likewise.
+
+2007-10-31 Marco Gerards <marco@gnu.org>
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Add `ata.mod'.
+ (ata_mod_SOURCES): New variable.
+ (ata_mod_CFLAGS): Likewise.
+ (ata_mod_LDFLAGS): Likewise.
+
+ * disk/ata.c: New file.
+
+ * include/grub/disk.h (grub_disk_dev_id): Add
+ `GRUB_DISK_DEV_ATA_ID'.
+
+2007-10-31 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/pc/init.h (grub_lower_mem): Moved from here ...
+ * include/grub/i386/pc/memory.h (grub_lower_mem): ... to here.
+
+ * include/grub/i386/pc/init.h (grub_upper_mem): Moved from here ...
+ * include/grub/i386/pc/memory.h (grub_upper_mem): ... to here.
+
+ * include/grub/i386/pc/memory.h: Include `<grub/symbol.h>' and
+ `<grub/types.h>'.
+
+ * loader/i386/pc/multiboot.c: Include `<grub/machine/memory.h>'.
+
+2007-10-27 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/types.h (ULONG_MAX): Define macro.
+
+2007-10-22 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/pc/startup.S: Remove `"kern/i386/realmode.S"'. Include
+ `"../realmode.S"'.
+ Remove `"kern/i386/loader.S"'. Include `"../loader.S"'.
+
+2007-10-22 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Remove `disk/i386/pc/biosdisk.c'.
+ (pkgdata_MODULES): Add `biosdisk.mod'.
+ (biosdisk_mod_SOURCES, biosdisk_mod_CFLAGS, biosdisk_mod_LDFLAGS): New
+ variables.
+
+ * disk/i386/pc/biosdisk.c: Include `<grub/dl.h>'.
+ (grub_biosdisk_init): Replace with ...
+ (GRUB_MOD_INIT(biosdisk)): ... this.
+ (grub_biosdisk_fini): Replace with ...
+ (GRUB_MOD_FINI(biosdisk)): ... this.
+
+ * kern/i386/pc/init.c: Remove `<grub/machine/biosdisk.h>'.
+ (grub_machine_init): Remove call to grub_biosdisk_init().
+ (grub_machine_fini): Remove call to grub_machine_fini().
+
+ * util/i386/pc/grub-install.in (modules): Add `biosdisk'.
+
+2007-10-22 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/time.h: New file.
+ * include/grub/i386/time.h: Likewise.
+ * include/grub/powerpc/time.h: Likewise.
+ * include/grub/sparc64/time.h: Likewise.
+
+ * include/grub/i386/pc/time.h (KERNEL_TIME_HEADER): Rename all
+ instances to ...
+ (KERNEL_MACHINE_TIME_HEADER): ... this.
+ * include/grub/powerpc/ieee1275/time.h (KERNEL_TIME_HEADER): Rename all
+ instances to ...
+ (KERNEL_MACHINE_TIME_HEADER): ... this.
+ * include/grub/sparc64/ieee1275/time.h (KERNEL_TIME_HEADER): Rename all
+ instances to ...
+ (KERNEL_MACHINE_TIME_HEADER): ... this.
+
+ * kern/i386/efi/init.c: Include `<grub/time.h>'.
+ (grub_millisleep): New function.
+ * kern/i386/pc/init.c: Include `<grub/time.h>'.
+ (grub_millisleep): New function.
+ * kern/powerpc/ieee1275/init.c: Include `<grub/time.h>'.
+ Remove `grub/machine/time.h' include.
+ (grub_millisleep): New function.
+ * kern/sparc64/ieee1275/init.c: Include `<grub/time.h>'.
+ Remove `grub/machine/time.h' include.
+ (grub_millisleep): New function.
+
+ * include/grub/misc.h (grub_div_roundup): New function.
+
+ * kern/misc.c: Include `<grub/time.h>'.
+ (grub_millisleep_generic): New function.
+
+ * conf/i386-efi.rmk (kernel_mod_HEADERS): Remove `i386/efi/time.h'.
+ Add `time.h'.
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Remove `machine/time.h'.
+ Add `time.h'.
+ * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Remove
+ `machine/time.h'. Add `time.h'.
+ * conf/sparc64-ieee1275.rmk (kernel_elf_HEADERS): Likewise.
+
+2007-10-21 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/misc.h (grub_max): New function.
+
+2007-10-21 Robert Millan <rmh@aybabtu.com>
+
+ * util/misc.c (grub_util_info): Call fflush() before returning.
+
+2007-10-20 Robert Millan <rmh@aybabtu.com>
+
+ * genmk.rb (Image): Copy `extra_flags' from here ...
+ (PModule): ... to here. Use it in `#{obj}: #{src}' rule.
+
+ * commands/i386/cpuid.c (grub_cmd_cpuid): Add __attribute__ ((unused))
+ to `argc' and `args' arguments.
+
+2007-10-17 Robert Millan <rmh@aybabtu.com>
+
+ * kern/i386/loader.S: New file.
+
+ * kern/i386/pc/startup.S (grub_linux_prot_size): Moved from here ...
+ * kern/i386/loader.S (grub_linux_prot_size)... to here.
+ * kern/i386/pc/startup.S (grub_linux_tmp_addr): Moved from here ...
+ * kern/i386/loader.S (grub_linux_tmp_addr)... to here.
+ * kern/i386/pc/startup.S (grub_linux_real_addr): Moved from here ...
+ * kern/i386/loader.S (grub_linux_real_addr)... to here.
+ * kern/i386/pc/startup.S (grub_linux_boot_zimage): Moved from here ...
+ * kern/i386/loader.S (grub_linux_boot_zimage)... to here.
+ * kern/i386/pc/startup.S (grub_linux_boot_bzimage): Moved from here ...
+ * kern/i386/loader.S (grub_linux_boot_bzimage)... to here.
+ * kern/i386/pc/startup.S (grub_multiboot_real_boot): Moved from here ...
+ * kern/i386/loader.S (grub_multiboot_real_boot)... to here.
+ * kern/i386/pc/startup.S (grub_multiboot2_real_boot): Moved from here ...
+ * kern/i386/loader.S (grub_multiboot2_real_boot)... to here.
+
+ * kern/i386/realmode.S: New file.
+
+ * kern/i386/pc/startup.S (protstack): Moved from here ...
+ * kern/i386/realmode.S (protstack)... to here.
+ * kern/i386/pc/startup.S (gdt): Moved from here ...
+ * kern/i386/realmode.S (gdt)... to here.
+ * kern/i386/pc/startup.S (prot_to_real): Moved from here ...
+ * kern/i386/realmode.S (prot_to_real)... to here.
+
+ * kern/i386/pc/startup.S: Include `kern/i386/loader.S' and
+ `kern/i386/realmode.S'.
+
+2007-10-17 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/loader.h: New file.
+
+ * include/grub/i386/pc/loader.h (grub_linux_prot_size)
+ (grub_linux_tmp_addr, grub_linux_real_addr, grub_os_area_addr)
+ (grub_os_area_size, grub_linux_boot_zimage, grub_linux_boot_bzimage)
+ (grub_multiboot_real_boot, grub_multiboot2_real_boot)
+ (grub_rescue_cmd_linux, grub_rescue_cmd_initrd): Moved from here ...
+ * include/grub/i386/loader.h (grub_linux_prot_size)
+ (grub_linux_tmp_addr, grub_linux_real_addr, grub_os_area_addr)
+ (grub_os_area_size, grub_linux_boot_zimage, grub_linux_boot_bzimage)
+ (grub_multiboot_real_boot, grub_multiboot2_real_boot)
+ (grub_rescue_cmd_linux, grub_rescue_cmd_initrd): ... to here.
+
+ * include/grub/i386/pc/loader.h: Include `grub/cpu/loader.h'.
+
+2007-10-15 Robert Millan <rmh@aybabtu.com>
+
+ * normal/misc.c (grub_normal_print_device_info): Do not probe for
+ filesystem when dev->disk is unset.
+ Do probe for filesystem even when dev->disk->has_partitions is set.
+ In case a filesystem is found, always report it.
+ In case it isn't, if dev->disk->has_partitions is set, report that
+ a partition table was found instead of reporting that no filesystem
+ could be identified.
+
+2007-10-12 Robert Millan <rmh@aybabtu.com>
+
+ * conf/powerpc-ieee1275.rmk (grub_mkimage_SOURCES): Replace reference
+ to util/powerpc/ieee1275/grub-mkimage.c with util/elf/grub-mkimage.c.
+
+ * include/grub/types.h (grub_host_to_target16): New macro.
+ (grub_host_to_target32): Likewise.
+ (grub_host_to_target64): Likewise.
+ (grub_target_to_host16): Likewise.
+ (grub_target_to_host32): Likewise.
+ (grub_target_to_host64): Likewise.
+
+ * include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN):
+ Renamed from to ...
+ (GRUB_MOD_ALIGN): ...this. Update all users.
+
+ * util/elf/grub-mkimage.c (load_note): Replace grub_cpu_to_be32 with
+ grub_host_to_target32.
+ Replace grub_be_to_cpu32 with grub_target_to_host32.
+ (load_modules): Likewise.
+ (add_segments): Replace grub_be_to_cpu16 with grub_target_to_host16.
+ Replace grub_be_to_cpu32 with grub_target_to_host32.
+ Replace grub_cpu_to_be16 with grub_host_to_target16.
+ Replace grub_cpu_to_be32 grub_host_to_target32.
+
+2007-10-12 Robert Millan <rmh@aybabtu.com>
+
+ * util/powerpc/ieee1275/grub-mkimage.c: Moved to ...
+ * util/elf/grub-mkimage.c: ... here.
+
+ * DISTLIST: Add `util/elf/grub-mkimage.c'. Remove
+ `util/powerpc/ieee1275/grub-mkimage.c'.
+
+2007-10-07 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/init.c: Rename HEAP_LIMIT to HEAP_MAX_ADDR,
+ and make it easier to figure out.
+ Add HEAP_MIN_SIZE and HEAP_MAX_ADDR definitions.
+ (grub_claim_heap): Use HEAP_MAX_ADDR rather than taking a parameter.
+ Do not avoid claiming a region above HEAP_MAX_ADDR if that would
+ leave us with less than HEAP_MIN_SIZE total heap.
+ Avoid our total amount of heap to surpass HEAP_MAX_SIZE.
+
+2007-10-03 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/io.h: New file.
+ * commands/i386/pc/play.c (inb): Removed.
+ (outb): Removed.
+ Include grub/cpu/io.h. Replace inb() with grub_inb() and outb()
+ with grub_outb().
+ * term/i386/pc/serial.c (inb): Removed.
+ (outb): Removed.
+ Include grub/cpu/io.h. Replace inb() with grub_inb() and outb()
+ with grub_outb().
+ * term/i386/pc/vga.c (inb): Removed.
+ (outb): Removed.
+ Include grub/cpu/io.h. Replace inb() with grub_inb() and outb()
+ with grub_outb().
+
+2007-10-02 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Add util/hostfs.c.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ Reported by Marcin Kurek.
+
+2007-09-07 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_test_flag): Detect
+ SmartFirmware version updates (as released by Sven Luther), and avoid
+ setting GRUB_IEEE1275_FLAG_NO_PARTITION_0 or
+ GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS unless the running version is
+ known broken.
+
+2007-09-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ From Hitoshi Ozeki:
+ * kern/i386/pc/init.c (compact_mem_regions): Decrease NUM_REGIONS
+ when merging two regions.
+
+2007-09-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/rescue.c (grub_enter_rescue_mode): Free ARGS.
+ * normal/completion.c (grub_normal_do_completion): Likewise.
+ Reported by Hitoshi Ozeki.
+
+2007-09-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Do not use devices at boot in chainloading.
+
+ * loader/i386/pc/chainloader.c (boot_drive): New variable.
+ (boot_part_addr): Likewise.
+ (grub_chainloader_boot): Simply call grub_chainloader_real_boot
+ with BOOT_DRIVE and BOOT_PART_ADDR.
+ (grub_chainloader_cmd): Set BOOT_DRIVE and BOOT_PART_ADDR.
+ Reported by Hitoshi Ozeki <h-ozeki@ck2.so-net.ne.jp>.
+
+2007-08-29 Robert Millan <rmh@aybabtu.com>
+
+ Patch from Simon Peter <dn.tlp@gmx.net>:
+ * genmk.rb (Utility): Append $(#{src}_DEPENDENCIES) to #{obj} targets.
+ * conf/i386-pc.rmk: Replace grub-probe_DEPENDENCIES with
+ util/grub-probe.c_DEPENDENCIES. Replace grub-setup_DEPENDENCIES with
+ util/i386/pc/grub-setup.c_DEPENDENCIES.
+ * conf/i386-efi.rmk: Replace grub-probe_DEPENDENCIES with
+ util/grub-probe.c_DEPENDENCIES.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+
+2007-08-28 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/get_disk_name.c: New. Implement grub_util_get_disk_name()
+ to tell grub-mkdevicemap how to name devices.
+ * util/ieee1275/get_disk_name.c: Likewise (using "ofpathname -a"
+ feature).
+
+ * conf/i386-efi.rmk (grub_mkdevicemap_SOURCES): Add
+ util/i386/get_disk_name.c.
+ * conf/i386-pc.rmk (grub_mkdevicemap_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_mkdevicemap_SOURCES): Add
+ util/ieee1275/get_disk_name.c.
+
+ * include/grub/util/misc.h: grub_util_get_disk_name() declaration.
+
+ * DISTLIST: Add util/i386/get_disk_name.c and
+ util/ieee1275/get_disk_name.c.
+
+ * util/grub-mkdevicemap.c: Replace device naming logic with
+ grub_util_get_disk_name() calls.
+
+2007-08-20 Robert Millan <rmh@aybabtu.com>
+
+ * normal/menu.c (run_menu): Refer to seconds as "s" not "seconds"
+ (so that it works for both plural and singular quantities).
+
+2007-08-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in (test_gt): Strip out vmlinu[xz]- prefix
+ so that [xz] isn't taken into account when determining order.
+
+2007-08-02 Marco Gerards <marco@gnu.org>
+
+ * DISTLIST: Add `disk/host.c', `fs/ntfs.c', `include/multiboot.h',
+ `include/multiboot2.h', `include/grub/elfload.h',
+ `include/multiboot.h', `include/grub/multiboot.h',
+ `include/grub/multiboot_loader.h', `include/grub/multiboot2.h',
+ `include/grub/i386/pc/biosdisk.h', `include/grub/util/biosdisk.h',
+ `kern/elf.c', `loader/multiboot_loader.c',
+ `loader/multiboot_loader_normal.c', `loader/multiboot2.c',
+ `loader/i386/pc/multiboot2.c',
+ `loader/powerpc/ieee1275/multiboot2.c', `util/hostfs.c' and
+ `util/i386/pc/grub-mkrescue.in'. Remove
+ `include/grub/biosdisk.h', `include/grub/i386/pc/multiboot.h',
+ `include/grub/i386/pc/util/biosdisk.h' and
+ `include/grub/powerpc/ieee1275/multiboot.h'.
+
+2007-08-02 Bean <bean123ch@gmail.com>
+
+ * conf/common.rmk (pkgdata_MODULES): Add ntfs.mod.
+ (ntfs_mod_SOURCES): New variable.
+ (ntfs_mod_CFLAGS): Likewise.
+ (ntfs_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ntfs.c.
+ (grub_probe_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/i386-efi.rmk (grub_probe_SOURCES): Add fs/ntfs.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add fs/ntfs.c.
+ (grub_emu_SOURCES): Likewise.
+
+ * conf/misc.c (grub_utf16_to_utf8): Fix unicode conversion bug.
+
+ * fs/ntfs.c: New file.
+
+2007-08-02 Bean <bean123ch@gmail.com>
+
+ * disk.h (grub_disk): Use NESTED_FUNC_ATTR.
+
+ * file.h (grub_file): Likewise.
+
+ * fshelp.h (grub_fshelp_read_file): Likewise.
+
+ * util/i386/pc/grub-setup.c (setup): Likewise.
+ (save_first_sector): Likewise.
+ (save_blocklists): Likewise.
+
+ * fs/affs.c (grub_affs_read_file): Likewise.
+
+ * fs/ext2.c (grub_ext2_read_file): Likewise.
+
+ * fs/fat.c (grub_fat_read_data): Likewise.
+
+ * fs/fshelp.c (grub_fshelp_read_file): Likewise.
+
+ * fs/hfs.c (grub_hfs_read_file): Likewise.
+
+ * fs/hfsplus.c (grub_hfsplus_read_file): Likewise.
+
+ * fs/jfs.c (grub_jfs_read_file): Likewise.
+
+ * fs/minix.c (grub_minix_read_file): Likewise.
+
+ * fs/sfs.c (grub_sfs_read_file): Likewise.
+
+ * fs/ufs.c (grub_ufs_read_file): Likewise.
+
+ * fs/xfs.c (grub_xfs_read_file): Likewise.
+
+ * command/blocklist.c (read_blocklist): Likewise.
+ (print_blocklist): Likewise.
+
+2007-08-02 Marco Gerards <marco@gnu.org>
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/host.c' and
+ `util/hostfs.c'.
+
+ * disk/host.c: New file.
+
+ * util/hostfs.c: Likewise.
+
+ * fs/hfsplus.c (grub_hfsplus_mount): When reading out of disk,
+ return `GRUB_ERR_BAD_FS'.
+ * fs/sfs.c (grub_sfs_mount): Likewise.
+ * fs/xfs.c (grub_xfs_mount): Likewise.
+
+ * include/grub/disk.h (enum grub_disk_dev_id): Add
+ `GRUB_DISK_DEVICE_HOST_ID'.
+
+ * util/grub-emu.c (main): Initialize and de-initialize hostfs.
+
+2007-07-24 Jerone Young <jerone@gmail.com>
+
+ * conf/i386-pc.rmk: Add Multiboot loader and multiboot 2 to multiboot
+ modules for compilation.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+
+ * include/multiboot.h: Move multiboot definitions to one file. Rename
+ many definitions to not get grub specific.
+ * include/multiboot2.h: Create header with multiboot 2 definitions.
+ * include/grub/multiboot.h: Header for grub specific function
+ prototypes and definitions.
+ * include/grub/multiboot2.h: Likewise.
+ * include/grub/multiboot_loader.h: Likewise.
+ * include/grub/i386/pc/multiboot.h: Removed.
+ * include/grub/powerpc/ieee1275/multiboot.h: Removed.
+
+ * loader/multiboot_loader.c: Created to act as a proxy for multiboot 1
+ and 2 to allow for one multiboot and module commands.
+ * loader/multiboot2.c: Add multiboot2 functionality.
+ * loader/i386/pc/multiboot.c: Modify for new multiboot header location
+ and definition names.
+ * loader/i386/pc/multiboot2.c: Created to add i386 specific multiboot
+ 2 functions.
+ * loader/powerpc/ieee1275/multiboot2.c: Created to add powerpc
+ ieee1275 specific multiboot2 code.
+
+ * kern/i386/pc/startup.S: Change headers and definition names for
+ multiboot. Add function grub_multiboot2_real_boot for multiboot 2.
+
+2007-07-22 Robert Millan <rmh@aybabtu.com>
+
+ * geninitheader.sh: Process file specified in first parameter rather
+ than hardcoding grub_modules_init.lst.
+ * geninit.sh: Likewise. Also, construct header name dynamically rather
+ than hardcoding grub_modules_init.h.
+
+ * conf/common.rmk: Rename grub_modules_init.[ch] files associated with
+ grub-emu to grub_emu_init.[ch]. Add rules to build analogous
+ grub_probe_init.[ch] and grub_setup_init.[ch].
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Replace
+ grub_modules_init.h with grub_emu_init.h.
+ (grub_probe_DEPENDENCIES, grub_probe_SOURCES): Add new
+ grub_probe_init.[ch] files.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ (grub_setup_DEPENDENCIES, grub_setup_SOURCES): Add new
+ grub_setup_init.[ch] files.
+
+ * util/grub-emu.c: Replace grub_modules_init.h with grub_emu_init.h.
+ * util/grub-probe.c: Include grub_probe_init.h. Use grub_init_all()
+ to initialize modules rather than a list of hardcoded functions.
+ * util/i386/pc/grub-setup.c: Include grub_setup_init.h. Use
+ grub_init_all() to initialize modules rather than a list of hardcoded
+ functions.
+
+2007-07-22 Robert Millan <rmh@aybabtu.com>
+
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Set
+ GRUB_IEEE1275_FLAG_NO_PARTITION_0 flag when running on SmartFirmware.
+
+2007-07-22 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): Add
+ GRUB_IEEE1275_FLAG_BROKEN_OUTPUT flag.
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options): Set this
+ flag when running on SmartFirmware.
+ * term/ieee1275/ofconsole.c (grub_ofconsole_init): Avoid running
+ "output-device output" command when GRUB_IEEE1275_FLAG_BROKEN_OUTPUT
+ was set.
+
+ * kern/powerpc/ieee1275/openfw.c (grub_ieee1275_encode_devname):
+ Increase partno when GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS flag is set,
+ rather than decreasing it.
+
+ * util/i386/pc/grub-setup.c (setup): When embedding is required, but
+ there's not enough space to do it, fail in the same way as when it
+ can't be done because there are no partitions.
+
+ * util/powerpc/ieee1275/grub-install.in: Improve error message shown
+ when nvsetenv failed.
+
+2007-07-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * conf/i386-pc.rmk (CLEANFILES): Removed for grub-mkrescue,
+ because this rule is automatically generated.
+ (grub-mkrescue): Removed for the same reason as above.
+
+2007-07-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Migrate to GNU General Public License Version 3.
+
+ * COPYING: Replaced with the plain text version of GPLv3.
+
+ * config.guess: Updated from gnulib.
+ * config.sub: Likewise.
+
+ * geninit.sh: Output a GPLv3 copyright notice.
+ * geninitheader.sh: Likewise.
+ * genmodsrc.sh: Likewise.
+ * gensymlist.sh.in: Likewise.
+
+ * boot/i386/pc/boot.S: Upgraded to GPLv3.
+ * boot/i386/pc/diskboot.S: Likewise.
+ * boot/i386/pc/pxeboot.S: Likewise.
+ * commands/blocklist.c: Likewise.
+ * commands/boot.c: Likewise.
+ * commands/cat.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/configfile.c: Likewise.
+ * commands/echo.c: Likewise.
+ * commands/help.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/search.c: Likewise.
+ * commands/terminal.c: Likewise.
+ * commands/test.c: Likewise.
+ * commands/videotest.c: Likewise.
+ * commands/i386/cpuid.c: Likewise.
+ * commands/i386/pc/halt.c: Likewise.
+ * commands/i386/pc/play.c: Likewise.
+ * commands/i386/pc/reboot.c: Likewise.
+ * commands/i386/pc/vbeinfo.c: Likewise.
+ * commands/i386/pc/vbetest.c: Likewise.
+ * commands/ieee1275/halt.c: Likewise.
+ * commands/ieee1275/reboot.c: Likewise.
+ * commands/ieee1275/suspend.c: Likewise.
+ * disk/loopback.c: Likewise.
+ * disk/lvm.c: Likewise.
+ * disk/raid.c: Likewise.
+ * disk/efi/efidisk.c: Likewise.
+ * disk/i386/pc/biosdisk.c: Likewise.
+ * disk/ieee1275/ofdisk.c: Likewise.
+ * font/manager.c: Likewise.
+ * fs/affs.c: Likewise.
+ * fs/ext2.c: Likewise.
+ * fs/fat.c: Likewise.
+ * fs/fshelp.c: Likewise.
+ * fs/hfs.c: Likewise.
+ * fs/hfsplus.c: Likewise.
+ * fs/iso9660.c: Likewise.
+ * fs/jfs.c: Likewise.
+ * fs/minix.c: Likewise.
+ * fs/sfs.c: Likewise.
+ * fs/ufs.c: Likewise.
+ * fs/xfs.c: Likewise.
+ * hello/hello.c: Likewise.
+ * include/grub/acorn_filecore.h: Likewise.
+ * include/grub/arg.h: Likewise.
+ * include/grub/bitmap.h: Likewise.
+ * include/grub/boot.h: Likewise.
+ * include/grub/cache.h: Likewise.
+ * include/grub/device.h: Likewise.
+ * include/grub/disk.h: Likewise.
+ * include/grub/dl.h: Likewise.
+ * include/grub/elfload.h: Likewise.
+ * include/grub/env.h: Likewise.
+ * include/grub/err.h: Likewise.
+ * include/grub/file.h: Likewise.
+ * include/grub/font.h: Likewise.
+ * include/grub/fs.h: Likewise.
+ * include/grub/fshelp.h: Likewise.
+ * include/grub/gzio.h: Likewise.
+ * include/grub/hfs.h: Likewise.
+ * include/grub/kernel.h: Likewise.
+ * include/grub/loader.h: Likewise.
+ * include/grub/lvm.h: Likewise.
+ * include/grub/misc.h: Likewise.
+ * include/grub/mm.h: Likewise.
+ * include/grub/net.h: Likewise.
+ * include/grub/normal.h: Likewise.
+ * include/grub/parser.h: Likewise.
+ * include/grub/partition.h: Likewise.
+ * include/grub/pc_partition.h: Likewise.
+ * include/grub/raid.h: Likewise.
+ * include/grub/rescue.h: Likewise.
+ * include/grub/script.h: Likewise.
+ * include/grub/setjmp.h: Likewise.
+ * include/grub/symbol.h: Likewise.
+ * include/grub/term.h: Likewise.
+ * include/grub/terminfo.h: Likewise.
+ * include/grub/tparm.h: Likewise.
+ * include/grub/types.h: Likewise.
+ * include/grub/video.h: Likewise.
+ * include/grub/efi/api.h: Likewise.
+ * include/grub/efi/chainloader.h: Likewise.
+ * include/grub/efi/console.h: Likewise.
+ * include/grub/efi/console_control.h: Likewise.
+ * include/grub/efi/disk.h: Likewise.
+ * include/grub/efi/efi.h: Likewise.
+ * include/grub/efi/pe32.h: Likewise.
+ * include/grub/efi/time.h: Likewise.
+ * include/grub/i386/linux.h: Likewise.
+ * include/grub/i386/setjmp.h: Likewise.
+ * include/grub/i386/types.h: Likewise.
+ * include/grub/i386/efi/kernel.h: Likewise.
+ * include/grub/i386/efi/loader.h: Likewise.
+ * include/grub/i386/efi/time.h: Likewise.
+ * include/grub/i386/pc/biosdisk.h: Likewise.
+ * include/grub/i386/pc/boot.h: Likewise.
+ * include/grub/i386/pc/chainloader.h: Likewise.
+ * include/grub/i386/pc/console.h: Likewise.
+ * include/grub/i386/pc/init.h: Likewise.
+ * include/grub/i386/pc/kernel.h: Likewise.
+ * include/grub/i386/pc/loader.h: Likewise.
+ * include/grub/i386/pc/memory.h: Likewise.
+ * include/grub/i386/pc/multiboot.h: Likewise.
+ * include/grub/i386/pc/serial.h: Likewise.
+ * include/grub/i386/pc/time.h: Likewise.
+ * include/grub/i386/pc/vbe.h: Likewise.
+ * include/grub/i386/pc/vbeblit.h: Likewise.
+ * include/grub/i386/pc/vbefill.h: Likewise.
+ * include/grub/i386/pc/vbeutil.h: Likewise.
+ * include/grub/i386/pc/vga.h: Likewise.
+ * include/grub/ieee1275/ieee1275.h: Likewise.
+ * include/grub/ieee1275/ofdisk.h: Likewise.
+ * include/grub/powerpc/libgcc.h: Likewise.
+ * include/grub/powerpc/setjmp.h: Likewise.
+ * include/grub/powerpc/types.h: Likewise.
+ * include/grub/powerpc/ieee1275/biosdisk.h: Likewise.
+ * include/grub/powerpc/ieee1275/console.h: Likewise.
+ * include/grub/powerpc/ieee1275/ieee1275.h: Likewise.
+ * include/grub/powerpc/ieee1275/kernel.h: Likewise.
+ * include/grub/powerpc/ieee1275/loader.h: Likewise.
+ * include/grub/powerpc/ieee1275/multiboot.h: Likewise.
+ * include/grub/powerpc/ieee1275/time.h: Likewise.
+ * include/grub/powerpc/ieee1275/util/biosdisk.h: Likewise.
+ * include/grub/sparc64/libgcc.h: Likewise.
+ * include/grub/sparc64/setjmp.h: Likewise.
+ * include/grub/sparc64/types.h: Likewise.
+ * include/grub/sparc64/ieee1275/console.h: Likewise.
+ * include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
+ * include/grub/sparc64/ieee1275/kernel.h: Likewise.
+ * include/grub/sparc64/ieee1275/time.h: Likewise.
+ * include/grub/util/biosdisk.h: Likewise.
+ * include/grub/util/getroot.h: Likewise.
+ * include/grub/util/lvm.h: Likewise.
+ * include/grub/util/misc.h: Likewise.
+ * include/grub/util/raid.h: Likewise.
+ * include/grub/util/resolve.h: Likewise.
+ * io/gzio.c: Likewise.
+ * kern/device.c: Likewise.
+ * kern/disk.c: Likewise.
+ * kern/dl.c: Likewise.
+ * kern/elf.c: Likewise.
+ * kern/env.c: Likewise.
+ * kern/err.c: Likewise.
+ * kern/file.c: Likewise.
+ * kern/fs.c: Likewise.
+ * kern/loader.c: Likewise.
+ * kern/main.c: Likewise.
+ * kern/misc.c: Likewise.
+ * kern/mm.c: Likewise.
+ * kern/parser.c: Likewise.
+ * kern/partition.c: Likewise.
+ * kern/rescue.c: Likewise.
+ * kern/term.c: Likewise.
+ * kern/efi/efi.c: Likewise.
+ * kern/efi/init.c: Likewise.
+ * kern/efi/mm.c: Likewise.
+ * kern/i386/dl.c: Likewise.
+ * kern/i386/efi/init.c: Likewise.
+ * kern/i386/efi/startup.S: Likewise.
+ * kern/i386/pc/init.c: Likewise.
+ * kern/i386/pc/lzo1x.S: Likewise.
+ * kern/i386/pc/startup.S: Likewise.
+ * kern/ieee1275/ieee1275.c: Likewise.
+ * kern/powerpc/cache.S: Likewise.
+ * kern/powerpc/dl.c: Likewise.
+ * kern/powerpc/ieee1275/cmain.c: Likewise.
+ * kern/powerpc/ieee1275/crt0.S: Likewise.
+ * kern/powerpc/ieee1275/init.c: Likewise.
+ * kern/powerpc/ieee1275/openfw.c: Likewise.
+ * kern/sparc64/cache.S: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * kern/sparc64/ieee1275/init.c: Likewise.
+ * kern/sparc64/ieee1275/openfw.c: Likewise.
+ * loader/efi/chainloader.c: Likewise.
+ * loader/efi/chainloader_normal.c: Likewise.
+ * loader/i386/efi/linux.c: Likewise.
+ * loader/i386/efi/linux_normal.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/pc/chainloader_normal.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/i386/pc/linux_normal.c: Likewise.
+ * loader/i386/pc/multiboot.c: Likewise.
+ * loader/i386/pc/multiboot_normal.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * loader/powerpc/ieee1275/linux_normal.c: Likewise.
+ * normal/arg.c: Likewise.
+ * normal/cmdline.c: Likewise.
+ * normal/command.c: Likewise.
+ * normal/completion.c: Likewise.
+ * normal/execute.c: Likewise.
+ * normal/function.c: Likewise.
+ * normal/lexer.c: Likewise.
+ * normal/main.c: Likewise.
+ * normal/menu.c: Likewise.
+ * normal/menu_entry.c: Likewise.
+ * normal/misc.c: Likewise.
+ * normal/parser.y: Likewise.
+ * normal/script.c: Likewise.
+ * normal/i386/setjmp.S: Likewise.
+ * normal/powerpc/setjmp.S: Likewise.
+ * normal/sparc64/setjmp.S: Likewise.
+ * partmap/acorn.c: Likewise.
+ * partmap/amiga.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * partmap/gpt.c: Likewise.
+ * partmap/pc.c: Likewise.
+ * partmap/sun.c: Likewise.
+ * term/gfxterm.c: Likewise.
+ * term/terminfo.c: Likewise.
+ * term/efi/console.c: Likewise.
+ * term/i386/pc/console.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+ * term/ieee1275/ofconsole.c: Likewise.
+ * util/biosdisk.c: Likewise.
+ * util/console.c: Likewise.
+ * util/genmoddep.c: Likewise.
+ * util/getroot.c: Likewise.
+ * util/grub-emu.c: Likewise.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ * util/lvm.c: Likewise.
+ * util/misc.c: Likewise.
+ * util/raid.c: Likewise.
+ * util/resolve.c: Likewise.
+ * util/update-grub.in: Likewise.
+ * util/update-grub_lib.in: Likewise.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+ * util/i386/efi/grub-install.in: Likewise.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+ * util/i386/pc/grub-install.in: Likewise.
+ * util/i386/pc/grub-mkimage.c: Likewise.
+ * util/i386/pc/grub-mkrescue.in: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/i386/pc/misc.c: Likewise.
+ * util/powerpc/ieee1275/grub-install.in: Likewise.
+ * util/powerpc/ieee1275/grub-mkimage.c: Likewise.
+ * util/powerpc/ieee1275/misc.c: Likewise.
+ * video/bitmap.c: Likewise.
+ * video/video.c: Likewise.
+ * video/i386/pc/vbe.c: Likewise.
+ * video/i386/pc/vbeblit.c: Likewise.
+ * video/i386/pc/vbefill.c: Likewise.
+ * video/i386/pc/vbeutil.c: Likewise.
+ * video/readers/tga.c: Likewise.
+
+2007-07-02 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-efi.rmk: Replace obsolete reference to
+ util/i386/pc/biosdisk.c with util/biosdisk.c, and util/i386/pc/getroot.c
+ with util/getroot.c.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+
+ * util/grub-emu.c (main): Fix unchecked pointer handling.
+
+2007-07-02 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/efi/grub-install.in: Allow `grub_probe --target=partmap'
+ invocation to fail, in order to support partition-less media.
+
+ * util/i386/pc/grub-install.in: Likewise.
+
+ * util/powerpc/ieee1275/grub-install.in: Use grub-probe to determine
+ which fs or partmap modules are needed (akin to its sister scripts).
+
+ Also use grub-probe to get rid of unportable /proc/mounts check.
+
+ Print the same informational message that the other scripts do, before
+ exiting.
+
+2007-06-23 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (font_path): New function. Determine whether
+ a font file can be found and, if so, echo the GRUB path to it.
+
+ * util/update-grub.in: Handle multiple terminals depending on user
+ input, platform availability and font file presence. Propagate
+ variables of our findings to /etc/grub.d/ children.
+
+ * util/grub.d/00_header.in: Handle multiple terminals, based on
+ environment setup by update-grub.
+
+2007-06-23 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Add serial.mod.
+
+2007-06-21 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/pc/kernel.h: Define GRUB_KERNEL_MACHINE_DATA_END to
+ indicate end of data section in kernel image.
+ * include/grub/i386/efi/kernel.h: Define GRUB_KERNEL_MACHINE_PREFIX and
+ GRUB_KERNEL_MACHINE_DATA_END.
+
+ * kern/i386/pc/startup.S: Do not initialize grub_prefix, only reserve
+ space for it.
+ * kern/i386/efi/startup.S: Likewise.
+
+ * util/i386/pc/grub-mkimage.c: Initialize grub_prefix to /boot/grub
+ during image generation. Implement --prefix option to override this
+ patch.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+
+ * util/update-grub_lib.in (convert_system_path_to_grub_path): Split
+ code to make path relative to its root into a separate function.
+
+ * util/i386/pc/grub-install.in: Use newly provided
+ make_system_path_relative_to_its_root() to convert ${grubdir}, then
+ pass the result to grub-install --prefix.
+
+2007-06-13 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/util/misc.h: Define DEFAULT_DIRECTORY and
+ DEFAULT_DEVICE_MAP.
+ * util/grub-emu.c: Use above definitions from misc.h instead of
+ defining them.
+ * util/grub-mkdevicemap.c: Likewise.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/grub-probe.c: Likewise.
+ (probe): Abort with grub_util_error() when either
+ grub_guess_root_device or grub_util_get_grub_dev fails.
+
+2007-06-12 Robert Millan <rmh@aybabtu.com>
+
+ * normal/command.c (grub_command_execute): Use NULL rather than 0 for
+ "pager" assignment.
+ * util/biosdisk.c (grub_util_biosdisk_get_grub_dev): Likewise for
+ "pcdata".
+ * util/grub-probe.c (probe): Likewise for "drive_name".
+
+2007-06-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-mkrescue.in: Pad both floppy images with zeroes,
+ not just the cdrom one.
+
+2007-06-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-mkrescue.in: Add "set -e".
+ Add --pkglibdir=DIR option to override pkglibdir.
+ Mention --image-type=TYPE in help output.
+ Fix --grub-mkimage (it was a no-op).
+ Abort gracefully when no parameter is given.
+
+2007-06-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-mkrescue.in: New file.
+ * conf/i386-pc.rmk: Add its build declarations. Put it in bin_SCRIPTS.
+ * Makefile.in: Handle bin_SCRIPTS.
+
+2007-06-10 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * term/gfxterm.c (grub_gfxterm_init): Added support for specifying
+ list of video modes.
+
+2007-06-06 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in (convert_system_path_to_grub_path): Abort if
+ file doesn't exist, or if it is in a filesystem grub can't read.
+
+ * util/update-grub.in: Set fallback for GRUB_FS check to "unknown". Do
+ not abort if GRUB_DRIVE could not be defined. Rearrange generated
+ header comment to fit in 80 columns when the variables are resolved.
+
+ * util/grub.d/00_header.in: Only set root variable when GRUB_DRIVE
+ could be identified by update-grub. Remove redundant check for
+ unifont.pff existence (since convert_system_path_to_grub_path now
+ handles that).
+
+2007-06-04 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-efi.rmk (grub_probe_SOURCES): Add partmap/apple.c.
+
+ * conf/i386-pc.rmk (grub_probe_SOURCES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_probe_SOURCES): Add partmap/pc.c.
+
+2007-06-04 Robert Millan <rmh@aybabtu.com>
+
+ * conf/powerpc-ieee1275.rmk: Enable grub-mkdevicemap and grub-probe.
+
+ * include/grub/partition.h: Declare grub_apple_partition_map_init and
+ grub_apple_partition_map_fini.
+
+ * util/biosdisk.c
+ (grub_util_biosdisk_open): Replace BLKGETSIZE with BLKGETSIZE64 (needed
+ to access >2 TiB disks).
+
+ Print disk->total_sectors with %llu instead of %lu, since this
+ variable is always 64-bit (prevents wrong disk size from being displayed
+ on either >2 TiB disk or big-endian CPU).
+
+ (grub_util_biosdisk_get_grub_dev): Convert gpt_partition_map handling
+ into a generic case that supports all (sane) partition maps.
+
+ Stop using grub_cpu_to_le32() on dos_part / bsd_part since it actually
+ breaks big-endian.
+
+ * util/grub-probe.c: Call grub_apple_partition_map_init() before probe()
+ and grub_apple_partition_map_fini() after that.
+
+2007-06-01 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Export GRUB_CMDLINE_LINUX.
+
+ * util/grub.d/00_header.in: Only enable gfxterm when
+ convert_system_path_to_grub_path() succeeds.
+
+2007-05-20 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub_lib.in: New file.
+ * DISTLIST: Add update-grub_lib.in.
+ * conf/common.rmk: Generate update-grub_lib and install it in
+ $(lib_DATA).
+ * Makefile.in: Add install routine for $(lib_DATA).
+
+ * util/grub.d/00_header.in: Use convert_system_path_to_grub_path()
+ function provided by update-grub_lib to support arbitrary paths of
+ unifont.pff.
+ * util/update-grub.in: Use convert_system_path_to_grub_path() to
+ initialize GRUB_DRIVE_BOOT and GRUB_DRIVE_BOOT_GRUB variables.
+
+2007-05-19 Robert Millan <rmh@aybabtu.com>
+
+ * commands/i386/cpuid.c: New module.
+ * DISTLIST: Add it.
+ * conf/i386-efi.rmk: Enable cpuid.mod.
+ * conf/i386-pc.rmk: Likewise.
+
+2007-05-18 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * kern/disk.c (grub_disk_read): Check return value of
+ grub_realloc().
+
+2007-05-18 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * util/getroot.c (grub_util_get_grub_dev): Support partitionable
+ arrays.
+ * disk/raid.c (grub_raid_open): Likewise.
+
+2007-05-17 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * util/biosdisk.c (linux_find_partition): Allocate real_dev on the
+ stack instead of on the heap.
+
+ * kern/disk.c (grub_disk_read): Make sure tmp_buf is big enough
+ before doing a read on it.
+
+ * configure.ac: Only use -fno-stack-protector for the target
+ environment.
+
+2007-05-17 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * video/i386/pc/vbe.c (grub_video_vbe_create_render_target): Add
+ __attribute_ ((unused)) to mode_type argument.
+
+ * util/getroot.c (grub_guess_root_device): Fix #endif.
+
+ * kern/misc.c (memcmp): Fix prototype.
+
+ * include/grub/partition.h [GRUB_UTIL]
+ (grub_gpt_partition_map_init): Add prototype.
+ (grub_gpt_partition_map_fini): Likewise.
+
+ * fs/jfs.c (struct grub_jfs_inode): Put __attribute__ ((packed)
+ at the right place.
+
+ * fs/fat.c (grub_fat_mount): Replace ~0UL with ~0U.
+ (grub_fat_read_data): Likewise.
+ (grub_fat_find_dir): Likewise.
+
+ * font/manager.c (find_glyph): Make table a const.
+ (grub_font_get_glyph): Remove bitmap from if statement.
+
+2007-05-16 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * util/getroot.c (grub_guess_root_device): Remove RAID and LVM
+ code, first search for device in /dev/mapper, then in /dev.
+ (grub_util_get_grub_dev): New function.
+ * include/grub/util/getroot.h (grub_util_get_grub_dev): Add
+ prototype.
+ * util/grub-probe.c (probe): Remove check for RAID, call
+ grub_util_get_grub_dev() instead of
+ grub_util_biosdisk_get_grub_dev().
+ * util/grub-emu.c (main): Call grub_util_get_grub_dev() instead of
+ grub_util_biosdisk_get_grub_dev().
+ * util/i386/pc/grub-setup.c (main): Likewise.
+
+2007-05-16 Robert Millan <rmh@aybabtu.com>
+
+ * DISTLIST: Update for the latest changes.
+ * conf/i386-pc.rmk: Use the new paths for util/getroot.c,
+ util/grub-mkdevicemap.c, util/grub-probe.c and util/biosdisk.c.
+ * util/grub-emu.c: Replace grub/i386/pc/util/biosdisk.h with
+ grub/util/biosdisk.h.
+ * util/i386/pc/grub-setup.c: Replace grub/machine/util/biosdisk.h with
+ grub/util/biosdisk.h.
+
+2007-05-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/00_header.in: Set default gfxmode to `640x480'.
+
+2007-05-16 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/efi/grub-install.in: New.
+ * conf/i386-efi.rmk: Enable grub-mkdevicemap, grub-probe and the
+ newly added grub-install.
+ * util/biosdisk.c: Remove unnecessary grub/machine/biosdisk.h
+ include.
+ * util/getroot.c: Replace grub/i386/pc/util/biosdisk.h with
+ grub/util/biosdisk.h.
+ * util/grub-probe.c: Replace grub/machine/util/biosdisk.h with
+ grub/util/biosdisk.h.
+
+2007-05-16 Robert Millan <rmh@aybabtu.com>
+
+ * include/grub/i386/pc/util/biosdisk.h: Moved to ...
+ * include/grub/util/biosdisk.h: ... here.
+ * util/i386/pc/biosdisk.c: Moved to ...
+ * util/biosdisk.c: ... here.
+ * util/i386/pc/getroot.c: Moved to ...
+ * util/getroot.c: ... here.
+ * util/i386/pc/grub-mkdevicemap.c: Moved to ...
+ * util/grub-mkdevicemap.c: ... here.
+ * util/i386/pc/grub-probe.c: Moved to ...
+ * util/grub-probe.c: ... here.
+
+2007-05-15 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Remove duplicated line in grub.cfg header
+ message.
+
+2007-05-13 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Fix a few assumptions about the devices holding
+ /, /boot and /boot/grub being the same.
+ * util/grub.d/00_header.in: Likewise.
+ * util/grub.d/10_hurd.in: Likewise.
+ * util/grub.d/10_linux.in: Likewise.
+
+ * util/grub.d/10_linux.in: Implement Linux image sorting with arbitrary
+ patterns. Use that to define the `.old' suffix as older than `'.
+
+ * util/grub.d/00_header.in: Set default gfxmode to `800x600x16'.
+
+ * util/update-grub.in: Add a reference to ${sysconfdir}/default/grub in
+ the grub.cfg header message.
+
+2007-05-11 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Create device.map if it doesn't already exist,
+ before attempting to run grub-probe.
+ Check for grub-probe and grub-mkdevicemap with the same code
+ grub-install is using.
+ Remove test mode.
+
+2007-05-09 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * Makefile.in: Add the datarootdir autoconf variable.
+
+2007-05-09 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-probe.c (probe): When detecting partition map,
+ fail gracefully if dev->disk->partition == NULL.
+
+2007-05-07 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-probe.c: Add `grub-probe -t partmap' parameter to
+ determine partition map module.
+ * util/i386/pc/grub-install.in: Use this feature to decide which
+ partition module to load, instead of hardcoding pc and gpt.
+
+2007-05-07 Robert Millan <rmh@aybabtu.com>
+
+ * Makefile.in: Fix assumption that $(srcdir) has a trailing slash when
+ source directory differs from build directory.
+
+2007-05-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/powerpc/ieee1275/grub-install.in: Fix syntax error in pkglibdir
+ initialisation.
+
+2007-05-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/update-grub.in: Create ${grub_prefix} if it doesn't exist.
+
+2007-05-05 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub.d/10_linux.in: Allow the administrator to insert Linux
+ command-line arguments via ${GRUB_CMDLINE_LINUX}.
+
+2007-05-05 Robert Millan <rmh@aybabtu.com>
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add partmap/gpt.c.
+ (grub_probe_SOURCES): Likewise.
+ * util/i386/pc/biosdisk.c (grub_util_biosdisk_get_grub_dev): Detect
+ GPT and initialize dos_part and bsd_part accordingly.
+ * util/i386/pc/grub-setup.c (setup): Ditto for install_dos_part and
+ install_bsd_part.
+ (main): Activate gpt module for use during partition identification,
+ and deactivate it afterwards.
+ * util/i386/pc/grub-install.in: Add gpt module to core.img.
+ * util/i386/pc/grub-probe.c (main): Activate gpt module for use during
+ partition identification, and deactivate it afterwards.
+
+2007-05-05 Robert Millan <rmh@aybabtu.com>
+
+ * term/i386/pc/console.c (grub_console_fini): Call
+ grub_term_set_current() before grub_term_unregister().
+
+2007-05-04 Robert Millan <rmh@aybabtu.com>
+
+ * DISTLIST: Add util/update-grub.in, util/grub.d/00_header.in,
+ util/grub.d/10_hurd.in, util/grub.d/10_linux.in and util/grub.d/README.
+ * Makefile.in: Build update-grub_SCRIPTS. Install update-grub_SCRIPTS
+ and update-grub_DATA.
+ * conf/common.rmk: Build and install update-grub components.
+ * conf/common.mk: Regenerate.
+ * util/update-grub.in: New. Core of update-grub.
+ * util/grub.d/00_header.in: New. Generates grub.cfg header.
+ * util/grub.d/10_hurd.in: New. Generates boot entries for the Hurd.
+ * util/grub.d/10_linux.in: New. Generates boot entries for Linux.
+ * util/grub.d/README: New. Document grub.d directory layout.
+
+2007-05-01 Robert Millan <rmh@aybabtu.com>
+
+ * util/grub-emu.c: Move initialization functions
+ grub_util_biosdisk_init() and grub_init_all() before
+ grub_util_biosdisk_get_grub_dev(), which relies on them.
+
+2007-04-19 Robert Millan <rmh@aybabtu.com>
+
+ * util/powerpc/ieee1275/grub-install.in: Initialize ${bindir}, since
+ it is used later.
+
+2007-04-18 Jerone Young <jerone@gmail.com>
+
+ * kernel/elf.c: Add missing parenthesis for conditional statement
+ stanza.
+
+2007-04-10 Jerone Young <jerone@gmail.com>
+
+ * util/i386/pc/getroot.c: Update so that if root device is /dev/root ,
+ continue on and look for device node with real device name.
+
+2007-04-10 Jerone Young <jerone@gmail.com>
+
+ * configure.ac: Add argument for autoconf to use transformation
+ ability.
+ * Makefile.in: Add autoconf package transformation code.
+ * util/i386/pc/grub-install.in: Likewise.
+ * util/powerpc/ieee1275/grub-install.in: Likewise.
+
+2007-03-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/ext2.c (EXT2_GOOD_OLD_REVISION): New macro.
+ (EXT2_GOOD_OLD_INODE_SIZE): Likewise.
+ (EXT2_REVISION): Likewise.
+ (EXT2_INODE_SIZE): Likewise.
+ (struct grub_ext2_block_group): Added a missing member
+ "used_dirs".
+ (grub_ext2_read_inode): Divide by the inode size in a superblock
+ instead of 128 to obtain INODES_PER_BLOCK.
+ Use the macro EXT2_INODE_SIZE instead of directly using
+ SBLOCK->INODE_SIZE.
+
+2007-03-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/ext2.c (grub_ext2_read_inode): Use the inode size in a
+ superblock instead of the structure size to compute an
+ offset. This fixes the problem that GRUB could not read a
+ filesystem when inode size is different from 128-byte.
+
+2007-03-05 Marco Gerards <marco@gnu.org>
+
+ * normal/main.c (read_config_file): When "menu" is not set, create
+ an initial context.
+
+2007-02-21 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/init.c (HEAP_SIZE): Removed.
+ (HEAP_LIMIT): New macro.
+ (grub_claim_heap): Claim memory up to `heaplimit'.
+
+2007-02-21 Hollis Blanchard <hollis@penguinppc.org>
+
+ * conf/powerpc-ieee1275.rmk (kernel_elf_LDFLAGS): Link at 64KB.
+ * kern/powerpc/ieee1275/init.c (_end): Add declaration.
+ (_start): Likewise.
+ (grub_arch_modules_addr): Return address after `_end'.
+ * util/powerpc/ieee1275/grub-mkimage.c: Include grub/misc.h.
+ (load_modules): Use new parameter as `p_paddr' and `p_vaddr'.
+ (add_segments): Calculate `_end' from phdr size and location.
+ (ALIGN_UP): Moved to ...
+ * include/grub/misc.h: here.
+ * include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MOD_ALIGN):
+ New macro.
+ (GRUB_IEEE1275_MODULE_BASE): Removed.
+
+2007-02-20 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/openfw.c (grub_available_iterate): Correct
+ loop boundary.
+
+2007-02-20 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/elfload.h (grub_elf32_load_hook_t): Return grub_err_t.
+ All users updated.
+ (grub_elf64_load_hook_t): Likewise.
+ * kern/elf.c: Call `grub_error_push' before `grub_error'. Improve
+ debug output.
+
+2007-02-20 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/mm.c: Update copyright.
+ (grub_mm_debug): Correct syntax error.
+ (grub_mm_dump_free): New function.
+ (grub_debug_free): Call `grub_free'.
+ * include/grub/mm.h: Update copyright.
+ (grub_mm_dump_free): Add declaration.
+
+2007-02-12 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/ieee1275/ieee1275.h: Update copyright.
+ * kern/powerpc/ieee1275/init.c: Likewise.
+ * kern/powerpc/ieee1275/openfw.c: Likewise.
+
+ * loader/powerpc/ieee1275/linux.c: Likewise.
+ * include/grub/elfload.h: Likewise.
+ * kern/elf.c: Likewise.
+ (grub_elf32_load): Pass `base' and `size' parameters. Update all
+ callers.
+ (grub_elf64_load): Likewise.
+ (grub_elf32_load_segment): Move to a nested function.
+ (grub_elf64_load_segment): Likewise.
+
+2007-02-12 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/ieee1275/ieee1275.h (grub_available_iterate): New
+ prototype.
+ * kern/powerpc/ieee1275/init.c (grub_heap_start): Removed.
+ (grub_heap_len): Likewise.
+ (HEAP_SIZE): New macro.
+ (grub_claim_heap): New function.
+ (grub_machine_init): Don't claim heap directly. Call
+ `grub_claim_heap'.
+ * kern/powerpc/ieee1275/openfw.c: Include alloca.h.
+ (grub_available_iterate): New function.
+
+2007-02-03 Thomas Schwinge <tschwinge@gnu.org>
+
+ * aclocal.m4 (grub_CHECK_STACK_PROTECTOR): New definition.
+ * configure.ac: Use it for testing the HOST and TARGET compilers.
+
+2006-12-13 Thomas Schwinge <tschwinge@gnu.org>
+
+ * Makefile.in (enable_grub_emu): New variable.
+ * configure.ac (--enable-grub-emu): New option.
+ Do the checks for (n)curses only if `--enable-grub-emu' is requested.
+ * conf/i386-efi.rmk (sbin_UTILITIES): Add `grub-emu' only if requested.
+ * conf/i386-pc.rmk: Likewise.
+ * conf/powerpc-ieee1275.rmk: Likewise.
+ * conf/sparc64-ieee1275.rmk (bin_UTILITIES): Likewise.
+
+2006-12-12 Marco Gerards <marco@gnu.org>
+
+ * include/grub/err.h (grub_err_t): Add `GRUB_ERR_MENU'.
+
+ * kern/env.c (grub_env_unset): Don't free the member `value' when
+ the type is GRUB_ENV_VAR_DATA, in this case it's a user defined
+ pointer.
+
+ * normal/main.c (current_menu): Removed.
+ (free_menu): Unset the `menu' environment variable.
+ (grub_normal_menu_addentry): Make use of the environment variable
+ `menu', instead of using the global `current_menu'. Allocate
+ memory for the sourcecode of this entry.
+ (read_config_file): New argument `nested', changed all callers.
+ Only in the case of a new context, initialize a new menu. Set the
+ `menu' environment variable.
+ (grub_normal_execute): Don't set and unset the environment
+ variable `menu' here anymore. Only free the menu when leaving the
+ context.
+
+ * util/i386/pc/biosdisk.c (linux_find_partition): Fixed a memory
+ leak.
+
+2006-12-11 Marco Gerards <marco@gnu.org>
+
+ * normal/menu_entry.c (run): Fix off by one bug so the last line
+ is executed. Move the loader check to outside the loop.
+
+2006-12-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/cmain.c (cmain): Mark r3 and r4 as `UNUSED'.
+
+2006-11-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-mkimage.c (generate_image): Fix the offset of
+ the number of sectors. Reported by Andrey Shuvikov
+ <mr_hyro@yahoo.com>.
+
+2006-11-11 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * kern/disk.c (grub_disk_read): When there is a read error, always
+ try to read only the necessary data.
+
+ * conf/i386-pc.rmk (grub_probe_SOURCES): Add disk/lvm.c and
+ disk/raid.c.
+ * include/grub/disk.h [GRUB_UTIL] (grub_raid_init): New
+ prototype.
+ [GRUB_UTIL] (grub_raid_fini): Likewise.
+ [GRUB_UTIL] (grub_lvm_init): Likewise.
+ [GRUB_UTIL] (grub_lvm_fini): Likewise.
+ * util/i386/pc/grub-probe.c (probe): Check whether DEVICE_NAME is
+ RAID device and copy DEVICE_NAME to DRIVE_NAME in that case.
+ (main): Call grub_raid_init(), grub_lvm_init(), grub_lvm_fini()
+ and grub_raid_fini().
+
+2006-11-09 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * include/grub/types.h (__unused): Rename to UNUSED.
+ * kern/elf.c (grub_elf32_size): Use UNUSED instead of __unused.
+ (grub_elf64_size): Likewise.
+
+2006-11-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/elf.c (grub_elf_file): Call grub_file_seek. Call
+ grub_error_push and grub_error_pop in the error-handling path.
+ (grub_elf32_load_segment): Only call grub_file_read with non-zero
+ length.
+
+2006-11-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Add kern/elf.c.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (kernel_elf_SOURCES): Likewise.
+ * conf/i386-efi.rmk (kernel_mod_HEADERS): Add elfload.h and cache.h.
+ * conf/i386-pc.rmk (kernel_mod_HEADERS): Likewise.
+ * conf/powerpc-ieee1275.rmk (kernel_elf_HEADERS): Likewise.
+ * conf/sparc64-ieee1275.rmk (kernel_elf_HEADERS): Likewise.
+ * conf/common.rmk (pkgdata_MODULES): Add elf.mod.
+ (elf_mod_SOURCES): New variable.
+ (elf_mod_CFLAGS): Likewise.
+ (elf_mod_LDFLAGS): Likewise.
+ * include/grub/types.h (__unused): New macro.
+ * include/grub/elfload.h: New file.
+ * kern/elf.c: Likewise.
+ * loader/powerpc/ieee1275/linux.c: Include elfload.h.
+ (ELF32_LOADMASK): New macro.
+ (ELF64_LOADMASK): Likewise.
+ (vmlinux): Removed.
+ (grub_linux_load32): New function.
+ (grub_linux_load64): Likewise.
+ (grub_rescue_cmd_linux): Call grub_linux_load32 or grub_linux_load64.
+ Use grub_elf_t instead of grub_file_t.
+
+2006-11-02 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): Add
+ `catch_result' to struct set_color_args.
+
+2006-10-28 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/menu.c: Include grub/script.h.
+ * normal/menu_entry.c: Likewise.
+ * include/grub/normal.h: Do not include grub/script.h.
+
+2006-10-27 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/disk.c (grub_disk_read): Correct debug printf formatting.
+
+2006-10-27 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/disk.c (grub_disk_open): Print debug messages when opening a
+ disk.
+ (grub_disk_close): Print debug messages when closing a disk.
+ (grub_disk_read): Print debug messages when disk read fails.
+ * kern/fs.c (grub_fs_probe): Print debug messages when detecting
+ filesystem type.
+ * kern/partition.c: Include misc.h.
+ (grub_partition_iterate): Print debug messages when detecting
+ partition type.
+
+2006-10-27 Hollis Blanchard <hollis@penguinppc.org>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Return error if `status'
+ is negative.
+ * kern/ieee1275/ieee1275.c (IEEE1275_IHANDLE_INVALID): Change to 0.
+
+2006-10-26 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/openfw.c (grub_ieee1275_encode_devname):
+ Reverse GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS test.
+
+2006-10-25 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * disk/lvm.c (grub_lvm_scan_device): Malloc sizeof(*lv) bytes
+ instead of sizeof(lv). Patch by Michael Guntsche.
+
+2006-10-18 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * disk/lvm.c: Rename VGS to VG_LIST.
+ (grub_lvm_iterate): Change VGS->LV to VG-LV.
+ (grub_lvm_open): Likewise.
+ Thanks to Michael Guntsche for finding this bug.
+
+2006-10-15 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac (AC_INIT): Bumped to 1.95.
+
+2006-10-14 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/getroot.c (grub_guess_root_device): Don't compare os_dev
+ with "/dev/.static/dev/md".
+
+2006-10-14 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-probe.c (probe): Print DEVICE_NAME instead of
+ DRIVE_NAME when grub_util_biosdisk_get_grub_dev fails. Open
+ DRIVE_NAME instead of DEVICE_NAME. Make sure that DEVICE_NAME and
+ DRIVE_NAME are always freed.
+
+ * util/i386/pc/biosdisk.c (make_device_name): Add one into
+ DOS_PART, as a DOS partition is counted from one instead of zero
+ now. Reported by Robert Millan.
+
+2006-10-14 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/getroot.c (grub_guess_root_device): Stop using
+ grub_util_biosdisk_get_grub_dev to convert system device to GRUB device.
+ * util/grub-emu.c (main): Use grub_util_biosdisk_get_grub_dev with the
+ string returned by grub_guess_root_device.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/i386/pc/grub-probefs.c: Likewise.
+
+ * util/i386/pc/grub-probefs.c: Rename to ...
+ * util/i386/pc/grub-probe.c: ... this.
+ * DISTLIST: Remove grub-probefs, add grub-probe.
+ * conf/i386-efi.rmk: Likewise.
+ * conf/i386-pc.rmk: Likewise.
+ * util/i386/pc/grub-install.in: Likewise.
+
+ * util/i386/pc/grub-probe.c: Add --target=(fs|device|drive) option to
+ choose which information we want to print.
+
+2006-10-14 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added commands/echo.c, disk/lvm.c, disk/raid.c,
+ include/grub/bitmap.h, include/grub/lvm.h, include/grub/raid.h,
+ include/grub/i386/pc/vbeutil.h, include/grub/util/lvm.h,
+ include/grub/util/raid.h, util/lvm.c, util/raid.c, video/bitmap.c,
+ video/readers/tga.c and video/i386/pc/vbeutil.c.
+
+2006-10-14 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ Added support for RAID and LVM.
+
+ * disk/lvm.c: New file.
+ * disk/raid.c: Likewise.
+ * include/grub/lvm.h: Likewise.
+ * include/grub/raid.h: Likewise.
+ * include/grub/util/lvm.h: Likewise.
+ * include/grub/util/raid.h: Likewise.
+ * util/lvm.c: Likewise.
+ * util/raid.c: Likewise.
+
+ * include/grub/disk.h (grub_disk_dev_id): Add
+ GRUB_DISK_DEVICE_RAID_ID and GRUB_DISK_DEVICE_LVM_ID.
+ (grub_disk_get_size): New prototype.
+ * kern/disk.c (grub_disk_open): Check whether grub_partition_probe()
+ returns a partition.
+ (grub_disk_get_size): New function.
+
+ * kern/i386/pc/init.c (make_install_device): Copy the prefix
+ verbatim if grub_install_dos_part is -2.
+
+ * util/i386/pc/getroot.c (grub_guess_root_device): Support RAID
+ and LVM devices.
+
+ * util/i386/pc/grub-setup.c (setup): New argument
+ MUST_EMBED. Force embedding of GRUB when the argument is
+ true. Close FILE before returning.
+ (main): Add support for RAID and LVM.
+
+ * conf/common.rmk: Add RAID and LVM modules.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add util/raid.c and
+ util/lvm.c.
+ (grub_emu_SOURCES): Add disk/raid.c and disk/lvm.c.
+
+ * kern/misc.c (grub_strstr): New function.
+ * include/grub/misc.h (grub_strstr): New prototype.
+
+2006-10-10 Tristan Gingold <tristan.gingold@bull.net>
+
+ * include/grub/efi/api.h (GRUB_EFI_ERROR_CODE): Long constant.
+
+2006-10-05 Tristan Gingold <tristan.gingold@bull.net>
+
+ * kern/misc.c (grub_strtoull): Guess the base only if not
+ specified.
+
+2006-10-01 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/cmain.c (cmain): Remove incomplete Old World
+ PowerMac support.
+
+2006-10-01 Hollis Blanchard <hollis@penguinppc.org>
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Cast `size' to long.
+
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_next_property):
+ Remove `flags' argument. All callers changed.
+ * kern/ieee1275/ieee1275.c (IEEE1275_PHANDLE_ROOT): Removed.
+ (IEEE1275_IHANDLE_INVALID): New variable.
+ (IEEE1275_CELL_INVALID): New variable.
+ (grub_ieee1275_finddevice, grub_ieee1275_get_property,
+ grub_ieee1275_get_property_length, grub_ieee1275_instance_to_package,
+ grub_ieee1275_package_to_path, grub_ieee1275_instance_to_path,
+ grub_ieee1275_peer, grub_ieee1275_child, grub_ieee1275_open,
+ grub_ieee1275_claim, grub_ieee1275_set_property): Error-check return
+ codes from Open Firmware. All callers updated.
+ (grub_ieee1275_next_property): Directly return Open Firmware return
+ code.
+ * kern/powerpc/ieee1275/cmain.c (grub_ieee1275_find_options):
+ Standardize error checking from `grub_ieee1275_get_property'.
+ * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Rename
+ `devalias' to `aliases'. Correct comments. Consolidate error paths.
+
+2006-10-01 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_instance_to_path): Rename
+ `instance_to_package_args' to `instance_to_path_args'.
+
+ * kern/powerpc/ieee1275/init.c (grub_machine_init): Use
+ `grub_ieee1275_chosen'.
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_init): Call
+ `grub_ieee1275_interpret'.
+
+2006-09-25 Hollis Blanchard <hollis@penguinppc.org>
+
+ * util/powerpc/ieee1275/grub-mkimage.c: Include config.h.
+
+2006-09-25 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/powerpc/libgcc.h (__floatdisf): New prototype.
+ (__cmpdi): Likewise.
+
+ * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Pass 0 as
+ `flags' to `grub_ieee1275_next_property'. Change `pathlen' to type
+ `grub_ssize_t'.
+
+ * kern/powerpc/ieee1275/cmain.c: Include grub/misc.h.
+
+ * loader/powerpc/ieee1275/linux.c (grub_linux_boot): Change `actual'
+ to type `grub_ssize_t'.
+ (grub_rescue_cmd_linux): Cast -1 to `grub_off_t'.
+
+2006-09-22 Marco Gerards <marco@gnu.org>
+
+ * normal/script.c (grub_script_create_cmdmenu): Skip leading
+ newlines.
+
+2006-09-22 Marco Gerards <marco@gnu.org>
+
+ * commands/echo.c: New file.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/echo.c'.
+
+ * conf/common.rmk (echo_mod_SOURCES): New variable.
+ (echo_mod_CFLAGS): Likewise.
+ (echo_mod_LDFLAGS): Likewise.
+
+2006-09-22 Marco Gerards <marco@gnu.org>
+
+ * normal/main.c (get_line): Malloc memory instead of using
+ preallocated memory. Removed the arguments `cmdline' and
+ `max_len'. Updated all callers.
+
+2006-09-22 Marco Gerards <marco@gnu.org>
+
+ * conf/i386-efi.rmk (grub_emu_DEPENDENCIES): New variable.
+ (normal_mod_DEPENDENCIES): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_DEPENDENCIES): Likewise.
+ (normal_mod_DEPENDENCIES): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (normal_mod_DEPENDENCIES): Likewise.
+
+2006-09-22 Johan Rydberg <jrydberg@gnu.org>
+
+ * genmk.rb: Add DEPENDENCIES variables to modules, utilities, and
+ programs.
+ * conf/i386-pc.rmk (grub_emu_DEPENDENCIES): Declare.
+ (normal_mod_DEPENDENCIES): Likewise.
+ * conf/i386-pc.mk: Regenerate.
+ * conf/i386-efi.mk: Likewise
+ * conf/common.mk: Likewise.
+ * conf/powerpc-ieee1275.mk: Likewise.
+ * conf/sparc64-ieee1275.mk: Likewise.
+
+2006-09-22 Robert Millan <rmh@aybabtu.com>
+
+ Sync with i386 version.
+ * conf/powerpc-ieee1275.rmk (bin_UTILITIES): Remove grub-emu, add grub-mkimage.
+ * conf/powerpc-ieee1275.rmk (sbin_UTILITIES): Remove grub-mkimage, add grub-emu.
+
+2006-09-21 Robert Millan <rmh@aybabtu.com>
+
+ Import from GRUB Legacy (lib/device.c):
+ * util/i386/pc/grub-mkdevicemap.c (get_i2o_disk_name): New function.
+ (init_device_map) [__linux__]: Add support for I2O devices.
+
+2006-09-14 Marco Gerards <marco@gnu.org>
+
+ * conf/i386-pc.rmk (COMMON_LDFLAGS): Use `-m32' instead of
+ `-melf_i386'.
+
+2006-09-14 Robert Millan <rmh@aybabtu.com>
+
+ * util/i386/pc/grub-install.in: Skip menu.lst when removing
+ /boot/grub/*.lst.
+
+ * util/i386/pc/getroot.c: Don't recurse into dotdirs (e.g. ".static").
+
+ * util/i386/pc/grub-mkdevicemap.c: Make sure the floppy device exists
+ before adding it to device.map.
+
+2006-08-15 Johan Rydberg <jrydberg@gnu.org>
+
+ * genmk.rb: Let GCC generate dependencies the first time it
+ compiles a file; using the -MD option.
+ * conf/common.mk: Regenerate.
+ * conf/i386-pc.mk: Likewise.
+ * conf/i386-efi.mk: Likewise.
+ * conf/powerpc-ieee1275.mk: Likewise.
+ * conf/sparc64-ieee1275.mk: Likewise.
+
+2006-08-04 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Move the prototypes of grub_setjmp and grub_longjmp to
+ cpu/setjmp.h, so that each architecture may specify different
+ attributes.
+
+ * include/grub/i386/setjmp.h (grub_setjmp): New prototype.
+ (grub_longjmp): Likewise.
+ * include/grub/powerpc/setjmp.h (grub_setjmp): Likewise..
+ (grub_longjmp): Likewise.
+ * include/grub/sparc64/setjmp.h (grub_setjmp): Likewise..
+ (grub_longjmp): Likewise.
+
+ * include/grub/setjmp.h [!GRUB_UTIL] (grub_setjmp): Removed.
+ [!GRUB_UTIL] (grub_longjmp): Removed.
+
+2006-08-01 Pelletier Vincent <subdino2004@yahoo.fr>
+
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_set_color): IEEE1275
+ "color!" method does not return any value.
+
+2006-07-29 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * include/grub/bitmap.h: New file.
+
+ * include/grub/i386/pc/vbeutil.h: Likewise.
+
+ * video/bitmap.c: Likewise.
+
+ * video/readers/tga.c: Likewise.
+
+ * video/i386/pc/vbeutil.c: Likewise.
+
+ * commands/videotest.c: Code cleanup and updated to reflect to new
+ video API.
+
+ * term/gfxterm.c: Likewise.
+
+ * video/video.c: Likewise.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added tga.mod and bitmap.mod.
+ (vbe_mod_SOURCES): Added video/i386/pc/vbeutil.c.
+ (bitmap_mod_SOURCES): New entry.
+ (bitmap_mod_CFLAGS): Likewise.
+ (bitmap_mod_LDFLAGS): Likewise.
+ (tga_mod_SOURCES): Likewise.
+ (tga_mod_CFLAGS): Likewise.
+ (tga_mod_LDFLAGS): Likewise.
+
+ * include/grub/video.h (grub_video_blit_operators): New enum type.
+ (grub_video_render_target): Changed as forward declaration and moved
+ actual definition to be video driver specific.
+ (grub_video_adapter.blit_bitmap): Added blitting operator.
+ (grub_video_adapter.blit_render_target): Likewise.
+ (grub_video_blit_bitmap): Likewise.
+ (grub_video_blit_render_target): Likewise.
+
+ * include/grub/i386/pc/vbe.h (grub_video_render_target): Added
+ driver specific render target definition.
+ (grub_video_vbe_map_rgba): Added driver internal helper.
+ (grub_video_vbe_unmap_color): Updated to use
+ grub_video_i386_vbeblit_info.
+ (grub_video_vbe_get_video_ptr): Likewise.
+
+ * include/grub/i386/pc/vbeblit.h
+ (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8A8): Updated to use
+ grub_video_i386_vbeblit_info.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8A8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8A8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8A8_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8): Likewise.
+ (grub_video_i386_vbeblit_index_index): Likewise.
+ (grub_video_i386_vbeblit_R8G8B8X8_R8G8B8X8): New blitter function.
+ (grub_video_i386_vbeblit_R8G8B8_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_index_R8G8B8X8): Likewise.
+ (grub_video_i386_vbeblit_blend): Added generic blitter for blend
+ operator.
+ (grub_video_i386_vbeblit_replace): Added generic blitter for replace
+ operator.
+
+ * video/i386/pc/vbeblit.c: Updated to reflect changes on
+ include/grub/i386/pc/vbeblit.h.
+
+ * include/grub/i386/pc/vbefill.h (grub_video_i386_vbefill_R8G8B8A8):
+ Updated to use grub_video_i386_vbeblit_info.
+ (grub_video_i386_vbefill_R8G8B8): Likewise.
+ (grub_video_i386_vbefill_index): Likewise.
+ (grub_video_i386_vbefill): Added generic filler.
+
+ * video/i386/pc/vbefill.c: Updated to reflect changes on
+ include/grub/i386/pc/vbefill.h.
+
+ * video/i386/pc/vbe.c (grub_video_vbe_get_video_ptr): Updated to use
+ grub_video_i386_vbeblit_info.
+ (grub_video_vbe_unmap_color): Likewise.
+ (grub_video_vbe_blit_glyph): Likewise.
+ (grub_video_vbe_scroll): Likewise.
+ (grub_video_vbe_draw_pixel): Removed function.
+ (grub_video_vbe_get_pixel): Likewise.
+ (grub_video_vbe_fill_rect): Moved all blitters to vbefill.c and
+ updated code to use it.
+ (common_blitter): Added common blitter for render target and bitmap.
+ (grub_video_vbe_blit_bitmap): Updated to use common_blitter.
+ (grub_video_vbe_blit_render_target): Likewise.
+
+2006-07-30 Johan Rydberg <jrydberg@gnu.org>
+
+ * kern/efi/efi.c (grub_efi_set_text_mode): Assume console already
+ is in text mode if there is no console control protocol instance
+ available.
+
+2006-07-29 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * include/grub/video.h: Code cleanup.
+
+ * include/grub/i386/pc/vbe.h: Likewise.
+
+ * video/i386/pc/vbe.c: Likewise.
+
+ * video/i386/pc/vbeblit.c: Likewise.
+
+ * video/i386/pc/vbefill.c: Likewise.
+
+ * video/video.c: Likewise. Also added more comments.
+
+2006-07-29 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * disk/i386/pc/biosdisk.c (struct grub_biosdisk_drp): Moved to ...
+ (struct grub_biosdisk_dap): Likewise.
+
+ * include/grub/i386/pc/biosdisk.h: ... to here. Also corrected
+ linkage settings for all functions.
+
+2006-07-12 Marco Gerards <marco@gnu.org>
+
+ * configure.ac (--enable-mm-debug): Fix typo.
+
+ * genkernsyms.sh.in: Use proper quoting for `CC'.
+
+2006-07-02 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * conf/i386-pc.rmk (COMMON_ASFLAGS): Add "-m32".
+ (normal_mod_ASFLAGS): Remove "-m32".
+
+2006-06-14 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/misc.c: Include config.h.
+ [!HAVE_MEMALIGN]: Do not include malloc.h.
+ (grub_memalign): Use posix_memalign, if present. Then, use
+ memalign, if present. Otherwise, emit an error.
+
+ * util/grub-emu.c: Do not include malloc.h.
+
+ * include/grub/util/misc.h: Include unistd.h. This is required for
+ FreeBSD, because off_t is defined in unistd.h. Reported by Harley
+ D. Eades III <hde@foobar-qux.org>.
+
+ * configure.ac (AC_GNU_SOURCE): Added.
+ (AC_CHECK_FUNCS): Check posix_memalign and memalign for the host
+ type.
+
+2006-06-09 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Make sure that
+ ADDR_MAX does not exceed GRUB_LINUX_INITRD_MAX_ADDRESS.
+
+2006-06-07 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * include/grub/types.h (grub_host_addr_t): Rename to
+ grub_target_addr_t.
+ (grub_host_off_t): Rename to grub_target_off_t.
+ (grub_host_size_t): Rename to grub_target_size_t.
+ (grub_host_ssize_t): Rename to grub_target_ssize_t.
+ Refer to GRUB_TARGET_SIZEOF_VOID_P to define those variables.
+
+ * include/grub/kernel.h (struct grub_module_header): Change type
+ of OFFSET to grub_target_off_t and type of SIZE to grub_target_size_t.
+ (grub_module_info): Likewise.
+
+2006-06-05 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): The conditional
+ of checking LINUX_MEM_SIZE was reverse. Reported by Jesus
+ Velazquez <jesus.velazquez@gmail.com>.
+
+2006-06-05 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Count partitions from 1 instead of 0 in the string representation
+ of partitions. Still use 0-based internally.
+
+ * partmap/sun.c (grub_sun_is_valid): A cosmetic change.
+ (sun_partition_map_iterate): Use grub_partition_t instead of
+ struct grub_partition *. Cast DESC->START_CYLINDER to
+ grub_uint64_t after converting the endian.
+ (sun_partition_map_probe): Subtract 1 for PARTNUM.
+ (sun_partition_map_get_name): Add 1 to P->INDEX.
+
+ * partmap/pc.c (grub_partition_parse): Subtract 1 for
+ PCDATA->DOS_PART.
+ (pc_partition_map_get_name): Add 1 into PCDATA->DOS_PART.
+
+ * partmap/gpt.c (gpt_partition_map_iterate): Initialize PARTNO to
+ zero instead of one.
+ (gpt_partition_map_probe): Subtract 1 for PARTNUM.
+ (gpt_partition_map_get_name): Add 1 into P->INDEX.
+
+ * partmap/apple.c (apple_partition_map_iterate): Change the type
+ of POS to unsigned.
+ (apple_partition_map_probe): Subtract 1 for PARTNUM.
+ (apple_partition_map_get_name): Add 1 into P->INDEX.
+
+ * partmap/amiga.c (amiga_partition_map_iterate): Change the type
+ of POS to unsigned.
+ (amiga_partition_map_iterate): Cast NEXT to grub_off_t to
+ calculate the offset of a partition.
+ (amiga_partition_map_probe): Subtract 1 for PARTNUM.
+ (amiga_partition_map_get_name): Add 1 into P->INDEX.
+
+ * partmap/acorn.c (acorn_partition_map_find): Change the type of
+ SECTOR to grub_disk_addr_t.
+ (acorn_partition_map_iterate): Likewise.
+ (acorn_partition_map_probe): Subtract 1 for PARTNUM.
+ Change the type of SECTOR to grub_disk_addr_t. Declare P on the
+ top.
+ (acorn_partition_map_get_name): Add 1 into P->INDEX.
+
+ * kern/i386/pc/init.c (make_install_device): Add 1 into
+ GRUB_INSTALL_DOS_PART.
+
+ * fs/iso9660.c (grub_iso9660_mount): Fixed a reversed
+ conditional.
+
+2006-06-04 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Clean up the code to support 64-bit addressing in disks and
+ files. This change is not enough for filesystems yet.
+
+ * util/i386/pc/grub-setup.c (struct boot_blocklist): Change the
+ type of "start" to grub_uint64_t.
+ (setup): Change the types of KERNEL_SECTOR and FIRST_SECTOR to
+ grub_disk_addr_t * and grub_disk_addr_t. Fix the format string in
+ save_first_sector and save_blocklists. Use grub_le_to_cpu64 to
+ convert addresses.
+
+ * util/i386/pc/biosdisk.c (open_device): Change the type of SECTOR
+ to grub_disk_addr_t.
+
+ * partmap/gpt.c (gpt_partition_map_iterate): Fix the format
+ string.
+
+ * partmap/pc.c (pc_partition_map_iterate): Likewise.
+
+ * partmap/amiga.c (amiga_partition_map_iterate): Cast RDSK.MAGIC
+ to char *.
+
+ * normal/script.c (grub_script_parse): Remove unused MEMFREE.
+
+ * normal/parser.y (YYLTYPE_IS_TRIVIAL): New macro.
+
+ * normal/lexer.c (grub_script_yyerror): Specify unused to LEX.
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_load_elf64): Cast -1
+ to grub_off_t, to detect an error from grub_file_seek.
+ (grub_multiboot_load_elf32): Likewise.
+
+ * kern/misc.c (grub_strtoul): Use grub_strtoull. Return the
+ maximum unsigned long value when an overflow is detected.
+ (grub_strtoull): New function.
+ (grub_divmod64): Likewise.
+ (grub_lltoa): use grub_divmod64.
+
+ * kern/fs.c (struct grub_fs_block): Change the type of "offset" to
+ grub_disk_addr_t.
+ (grub_fs_blocklist_open): Increase P if P is not NULL to advance
+ the pointer to next character. Use grub_strtoull instead of
+ grub_strtoul.
+ (grub_fs_blocklist_read): Change the types of SECTOR, OFFSET and
+ SIZE to grub_disk_addr_t, grub_off_t and grub_size_t,
+ respectively.
+
+ * kern/file.c (grub_file_read): Prevent an overflow of LEN, as the
+ return value is signed.
+ (grub_file_seek): Change the type of OLD to grub_off_t. Do not
+ test if OFFSET is less than zero, as OFFSET is unsigned now.
+
+ * kern/disk.c (struct grub_disk_cache): Change the type of
+ "sector" to grub_disk_addr_t.
+ (grub_disk_cache_get_index): Change the type of SECTOR to
+ grub_disk_addr_t. Calculate the hash with SECTOR casted to
+ unsigned after shifting.
+ (grub_disk_cache_invalidate): Change the type of SECTOR to
+ grub_disk_addr_t.
+ (grub_disk_cache_unlock): Likewise.
+ (grub_disk_cache_store): Likewise.
+ (grub_disk_check_range): Change the types of SECTOR, OFFSET, SIZE,
+ START and LEN to grub_disk_addr_t *, grub_off_t *, grub_size_t,
+ grub_disk_addr_t and grub_uint64_t, respectively.
+ (grub_disk_read): Use an unsigned variable REAL_OFFSET for the
+ body, as the value of OFFSET is tweaked by
+ grub_disk_check_range. Change the types of START_SECTOR, LEN and
+ POS to grub_disk_addr_t, grub_size_t and grub_size_t,
+ respectively.
+ (grub_disk_write): Use an unsigned variable REAL_OFFSET for the
+ body, as the value of OFFSET is tweaked by
+ grub_disk_check_range. Change the types of LEN and N to
+ grub_size_t.
+
+ * io/gzio.c (struct grub_gzio): Change the types of "data_offset"
+ and "saved_offset" to grub_off_t.
+ (test_header): Cast BUF to char *.
+ (get_byte): Cast GZIO->DATA_OFFSET to grub_off_t. Cast GZIO->INBUF
+ to char *.
+ (grub_gzio_read): Change the types of OFFSET and SIZE to
+ grub_off_t and grub_size_t, respectively.
+
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_FORCE_LBA):
+ Removed.
+ (GRUB_BOOT_MACHINE_BOOT_DRIVE): Changed to 0x4c.
+ (GRUB_BOOT_MACHINE_KERNEL_ADDRESS): Changed to 0x40.
+ (GRUB_BOOT_MACHINE_KERNEL_SEGMENT): Changed to 0x42.
+ (GRUB_BOOT_MACHINE_DRIVE_CHECK): Changed to 0x4e.
+ (GRUB_BOOT_MACHINE_LIST_SIZE): Increased to 12.
+
+ * include/grub/types.h (grub_off_t): Unconditionally set to
+ grub_uint64_t.
+ (grub_disk_addr_t): Changed to grub_uint64_t.
+
+ * include/grub/partition.h (struct grub_partition): Change the
+ types of "start", "len" and "offset" to grub_disk_addr_t,
+ grub_uint64_t and grub_disk_addr_t, respectively.
+ (grub_partition_get_start): Return grub_disk_addr_t.
+ (grub_partition_get_len): Return grub_uint64_t.
+
+ * include/grub/misc.h (grub_strtoull): New prototype.
+ (grub_divmod64): Likewise.
+
+ * include/grub/fshelp.h (grub_fshelp_read_file): Change the types
+ of SECTOR, LEN and FILESIZE to grub_disk_addr_t, grub_size_t and
+ grub_off_t, respectively.
+ All callers and references changed.
+
+ * include/grub/fs.h (struct grub_fs): Change the type of LEN to
+ grub_size_t in "read".
+ All callers and references changed.
+
+ * include/grub/file.h (struct grub_file): Change the types of
+ "offset" and "size" to grub_off_t and grub_off_t,
+ respectively. Change the type of SECTOR to grub_disk_addr_t in
+ "read_hook".
+ (grub_file_read): Change the type of LEN to grub_size_t.
+ (grub_file_seek): Return grub_off_t. Change the type of OFFSET to
+ grub_off_t.
+ (grub_file_size): Return grub_off_t.
+ (grub_file_tell): Likewise.
+ All callers and references changed.
+
+ * include/grub/disk.h (struct grub_disk_dev): Change the types of
+ SECTOR and SIZE to grub_disk_addr_t and grub_size_t in "read" and
+ "write".
+ (struct grub_disk): Change the type of "total_sectors" to
+ grub_uint64_t. Change the type of SECTOR to grub_disk_addr_t in
+ "read_hook".
+ (grub_disk_read): Change the types of SECTOR, OFFSET and SIZE to
+ grub_disk_addr_t, grub_off_t and grub_size_t, respectively.
+ (grub_disk_write): Likewise.
+ All callers and references changed.
+
+ * fs/iso9660.c (grub_iso9660_susp_iterate): Cast parameters to
+ char * for grub_strncmp to silence gcc.
+ (grub_iso9660_mount): Likewise.
+ (grub_iso9660_mount): Likewise.
+ (grub_iso9660_read_symlink): Likewise. Also, remove the nonsense
+ return statement.
+ (grub_iso9660_iterate_dir): Likewise.
+ (grub_iso9660_label): Cast DATA->VOLDESC.VOLNAME to char *.
+
+ * fs/hfs.c (grub_hfs_read_file): Change the types of SECTOR and
+ LEN to grub_disk_addr_t and grub_size_t, respectively.
+
+ * fs/hfsplus.c (grub_hfsplus_read_file): Likewise.
+
+ * fs/jfs.c (grub_jfs_read_file): Likewise.
+
+ * fs/minix.c (grub_jfs_read_file): Likewise.
+
+ * fs/sfs.c (grub_jfs_read_file): Likewise.
+
+ * fs/ufs.c (grub_jfs_read_file): Likewise.
+
+ * fs/xfs.c (grub_jfs_read_file): Likewise.
+
+ * fs/fat.c (grub_fat_read_data): Change the types of SECTOR, LEN
+ and SIZE to grub_disk_addr_t, grub_size_t and grub_size_t,
+ respectively.
+
+ * fs/ext2.c (grub_ext2_read_block): When an error happens, set
+ BLKNR to -1 instead of returning GRUB_ERRNO.
+ (grub_ext2_read_file): Change the types of SECTOR and
+ LEN to grub_disk_addr_t and grub_size_t, respectively.
+
+ * fs/affs.c (grub_affs_read_file): Change the types of SECTOR and
+ LEN to grub_disk_addr_t and grub_size_t, respectively.
+
+ * font/manager.c (grub_font_get_glyph): Cast BITMAP to char * for
+ grub_file_read.
+
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_read): Fix the format
+ string. Do not cast SECTOR explicitly.
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_open): Change the type of
+ TOTAL_SECTORS to grub_uint64_t. Do not mask DRP->TOTAL_SECTORS.
+ (grub_biosdisk_rw): Change the types of SECTOR and SIZE to
+ grub_disk_addr_t and grub_size_t, respectively. If the sector is
+ over 2TB and LBA mode is not supported, raise an error.
+ (get_safe_sectors): New function.
+ (grub_biosdisk_read): Use get_safe_sectors.
+ (grub_biosdisk_write): Likewise.
+
+ * disk/efi/efidisk.c (grub_efidisk_read): Fix the format string.
+ (grub_efidisk_write): Likewise.
+
+ * disk/loopback.c (delete_loopback): Cosmetic changes.
+ (grub_cmd_loopback): Likewise. Also, test NEWDEV->FILENAME
+ correctly.
+ (grub_loopback_open): Likewise.
+ (grub_loopback_read): Likewise. Also, change the type of POS to
+ grub_off_t, and fix the usage of grub_memset.
+
+ * commands/i386/pc/play.c: Include grub/machine/time.h.
+
+ * commands/ls.c (grub_ls_list_files): Use "llu" instead of "d" to
+ print FILE->SIZE.
+
+ * commands/configfile.c: Include grub/env.h.
+
+ * commands/cmp.c (grub_cmd_cmp): Do not use ERR, but use
+ GRUB_ERRNO directly instead. Change the type of POS to
+ grub_off_t. Follow the coding standard.
+
+ * commands/blocklist.c: Include grub/partition.h.
+ (grub_cmd_blocklist): Return an error if the underlying device is
+ not a disk. Take the starting sector of a partition into account,
+ if a partition is used.
+
+ * boot/i386/pc/diskboot.S (bootloop): Adapted to the new offset of
+ a length field.
+ (lba_mode): Support 64-bit addresses.
+ (chs_mode): Likewise.
+ (copy_buffer): Adapted to the new offsets of a length field and a
+ segment field.
+ (blocklist_default_start): Allocate 64-bit space.
+
+ * boot/i386/pc/boot.S (force_lba): Removed.
+ (boot_drive): Moved to under KERNEL_SECTOR.
+ (kernel_sector): Moved to under KERNEL_SEGMENT. Allocate 64-bit
+ space.
+ (real_start): Set %si earlier. Remove code for FORCE_LBA, since it
+ is useless.
+ (lba_mode): Refactored to support a 64-bit address. More size
+ optimization.
+ (setup_sectors): Likewise.
+
+2006-06-04 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added include/grub/i386/linux.h. Removed
+ include/grub/i386/pc/linux.h
+
+ * configure.ac (AC_INIT): Bumped to 1.94.
+
+ * config.guess: Updated from gnulib.
+ * config.sub: Likewise.
+ * install-sh: Likewise.
+ * mkinstalldirs: Likewise.
+
+2006-06-02 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * conf/common.rmk (grub_modules_init.lst): Depended on
+ grub_emu_SOURCES, excluding grub_emu_init.c, instead of
+ MODSRCFILES.
+
+ * genmk.rb (PModule::rule): Reverted the previous change.
+
+2006-06-02 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * conf/common.rmk (grub_modules_init.lst): Depends on
+ $(MODSRCFILES). Grep only the files in $(MODSRCFILES). Make sure
+ that the target does not exist before producing.
+ (grub_modules_init.h): Remove the target before generating.
+ (grub_emu_init.c): Likewise.
+
+ * genmk.rb (PModule::rule): Add source files into MODSRCFILES.
+
+2006-05-31 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * configure.ac: Don't set host_m32 for x86_64. Also reset LIBS
+ for the target-specific tests. Make sure that we also have the
+ up-to-date target variables for those tests.
+
+2006-05-31 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * genmk.rb (Image::rule): Prefix CFLAGS or ASFLAGS with TARGET_.
+ (PModule::rule): Likewise.
+
+2006-05-31 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * genmk.rb (Image::rule): Set FLAG to CFLAGS or ASFLAGS instead of
+ TARGET_CFLAGS or TARGET_ASFLAGS. There is no reason why
+ target-specific flags should be prefixed.
+ (PModule::rule): Likewise.
+
+2006-05-30 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac (CMP): Check if cmp is available explicitly.
+
+2006-05-29 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/powerpc/ieee1275/grub-install.in (host_cpu): Removed.
+ (target_cpu): New variable.
+ (pkglibdir): Use target_cpu instead of host_cpu.
+
+ * util/i386/pc/grub-install.in (host_cpu): Removed.
+ (target_cpu): New variable.
+ (pkglibdir): Use target_cpu instead of host_cpu.
+
+ * util/genmoddep.c: Removed.
+
+ * kern/efi/mm.c (filter_memory_map): Use GRUB_CPU_SIZEOF_VOID_P
+ instead of GRUB_HOST_SIZEOF_VOID_P.
+ * kern/dl.c: Likewise.
+
+ * include/grub/i386/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed to
+ ...
+ (GRUB_TARGET_SIZEOF_VOID_P): ... this.
+ (GRUB_HOST_SIZEOF_LONG): Renamed to ...
+ (GRUB_TARGET_SIZEOF_LONG): ... this.
+ (GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
+ (GRUB_TARGET_WORDS_BIGENDIAN): ... this.
+ * include/grub/powerpc/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed
+ to ...
+ (GRUB_TARGET_SIZEOF_VOID_P): ... this.
+ (GRUB_HOST_SIZEOF_LONG): Renamed to ...
+ (GRUB_TARGET_SIZEOF_LONG): ... this.
+ (GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
+ (GRUB_TARGET_WORDS_BIGENDIAN): ... this.
+ * include/grub/sparc64/types.h (GRUB_HOST_SIZEOF_VOID_P): Renamed
+ to ...
+ (GRUB_TARGET_SIZEOF_VOID_P): ... this.
+ (GRUB_HOST_SIZEOF_LONG): Renamed to ...
+ (GRUB_TARGET_SIZEOF_LONG): ... this.
+ (GRUB_HOST_WORDS_BIGENDIAN): Renamed to ...
+ (GRUB_TARGET_WORDS_BIGENDIAN): ... this.
+
+ * include/grub/types.h [!GRUB_UTIL] (GRUB_CPU_SIZEOF_VOID_P): Use
+ GRUB_TARGET_SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P.
+ [!GRUB_UTIL] (GRUB_CPU_SIZEOF_LONG): Use GRUB_TARGET_SIZEOF_LONG
+ instead of GRUB_HOST_SIZEOF_LONG.
+ [!GRUB_UTIL]: Refer to GRUB_TARGET_WORDS_BIGENDIAN instead of
+ GRUB_HOST_WORDS_BIGENDIAN to define or undefine
+ GRUB_CPU_WORDS_BIGENDIAN.
+ Refer to SIZEOF_VOID_P instead of GRUB_HOST_SIZEOF_VOID_P to
+ define grub_host_addr_t, grub_host_off_t, grub_host_size_t and
+ grub_host_ssize_t.
+
+ * conf/i386-efi.rmk (noinst_UTILITIES): Removed.
+ (genmoddep_SOURCES): Likewise.
+ * conf/i386-pc.rmk (noinst_UTILITIES): Likewise.
+ (genmoddep_SOURCES): Likewise.
+ * conf/conf/powerpc-ieee1275.rmk (noinst_UTILITIES): Likewise.
+ (genmoddep_SOURCES): Likewise.
+ * conf/conf/conf/sparc64-ieee1275.rmk (noinst_UTILITIES):
+ Likewise.
+ (genmoddep_SOURCES): Likewise.
+
+ * genmoddep.awk: New file.
+
+ * genmk.rb (Image::rule): Use TARGET_CC, TARGET_CPPFLAGS,
+ TARGET_CFLAGS, TARGET_ASFLAGS and TARGET_LDFLAGS instead of CC,
+ CPPFLAGS, CFLAGS, ASFLAGS and LDFLAGS, respectively.
+ (PModule::rule): Likewise.
+ (Program::rule): Likewise.
+ (Utility::rule): Use CC, CPPFLAGS, CFLAGS and LDFLAGS instead of
+ BUILD_CC, BUILD_CPPFLAGS, BUILD_CFLAGS and BUILD_LDFLAGS,
+ respectively.
+
+ * configure.ac: Rewritten intensively to use host and target
+ instead of build and host, respectively.
+
+ * Makefile.in (pkglibdir): Use target_cpu instead of host_cpu.
+ (host_cpu): Removed.
+ (target_cpu): New variable.
+ (CPPFLAGS): Added @CPPFLAGS@ and -DGRUB_LIBDIR=\"$(pkglibdir)\".
+ (BUILD_CC): Removed.
+ (BUILD_CFLAGS): Likewise.
+ (BUILD_CPPFLAGS): Likewise.
+ (TARGET_CC): New variable.
+ (TARGET_CFLAGS): Likewise.
+ (TARGET_CPPFLAGS): Likewise.
+ (TARGET_LDFLAGS): Likewise.
+ (AWK): Likewise.
+ (include): Use target_cpu instead of host_cpu.
+ (moddep.lst:): Use genmoddep.awk instead of genmoddep.
+
+ * DISTLIST: Added genmoddep.awk. Removed util/genmoddep.c.
+
+2006-05-29 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * include/grub/script.h (grub_script_cmdif): Renamed field 'bool' to
+ 'exec_to_evaluate'. Renamed field 'true' to 'exec_on_true'. Renamed
+ field 'false' to 'exec_on_false'.
+ (grub_script_create_cmdif): Renamed argument names to reflect above
+ changes.
+
+ * normal/execute.c (grub_script_execute_cmdif): Likewise.
+
+ * normal/script.c (grub_script_create_cmdif): Likewise.
+
+2006-05-28 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/hfsplus.c (grub_hfsplus_btree_recoffset): Moved to near the
+ top.
+ (grub_hfsplus_btree_recptr): Likewise.
+ (grub_hfsplus_find_block): Do not take RETRY any longer. Use
+ FILEBLOCK both to pass a block number and store next block
+ number.
+ (grub_hfsplus_read_block): Rewritten heavily to support an extent
+ overflow file correctly. Specify errors appropriately, because
+ fshelp expects that GRUB_ERRNO is set when fails. Reuse
+ grub_hfsplus_btree_recptr to get the pointer to a found key.
+ (grub_hfsplus_btree_search): Return 1 instead of 0 when no match
+ is found.
+
+ * conf/i386-efi.rmk (pkgdata_MODULES): Added _linux.mod and
+ linux.mod.
+ (_linux_mod_SOURCES): New variable.
+ (_linux_mod_CFLAGS): Likewise.
+ (_linux_mod_LDFLAGS): Likewise.
+ (linux_mod_SOURCES): Likewise.
+ (linux_mod_CFLAGS): Likewise.
+ (linux_mod_LDFLAGS): Likewise.
+
+ * DISTLIST: Added loader/i386/efi/linux.c,
+ loader/i386/efi/linux_normal.c and
+ include/grub/i386/efi/loader.h.
+
+ * loader/i386/efi/linux.c: New file.
+ * loader/i386/efi/linux_normal.c: Likewise.
+ * include/grub/i386/efi/loader.h: Likewise.
+
+2006-05-27 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * commands/blocklist.c: New file.
+
+ * DISTLIST: Added commands/blocklist.c.
+
+ * term/efi/console.c (grub_console_highlight_color): Use a lighter
+ color for the background, and a darker color for the foreground.
+ (grub_console_checkkey): Return READ_KEY.
+ (grub_console_cls): Set the background to
+ GRUB_EFI_BACKGROUND_BLACK temporarily to clean out the screen.
+
+ * kern/efi/efi.c (grub_efi_exit_boot_services): New function.
+
+ * include/grub/i386/linux.h (struct linux_kernel_params): Fixed
+ the size of "padding5", "hd0_drive_info" and "hd1_drive_info".
+
+ * include/grub/efi/efi.h (grub_efi_exit_boot_services): New
+ prototype.
+
+ * include/grub/efi/api.h (GRUB_EFI_TEXT_ATTR): Do not shift
+ BG. The spec is wrong again.
+
+ * include/grub/normal.h [GRUB_UTIL] (grub_blocklist_init): New
+ prototype.
+ [GRUB_UTIL] (grub_blocklist_fini): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added
+ commands/blocklist.c.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * conf/common.rmk (pkgdata_MODULES): Added blocklist.mod.
+ (blocklist_mod_SOURCES): New variable.
+ (blocklist_mod_CFLAGS): Likewise.
+ (blocklist_mod_LDFLAGS): Likewise.
+
+2006-05-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * boot/i386/pc/boot.S (real_start): Set %si earlier to eliminate
+ duplication.
+ (lba_mode): Use %eax more intensively to reduce the code size.
+
+2006-05-20 Marco Gerards <marco@gnu.org>
+
+ * normal/lexer.c (grub_script_yylex): Don't filter out newlines.
+
+ * normal/parser.y (commandblock): Defined as <cmd>. A subroutine
+ for `menuentry'.
+ (script): Accept leading newlines.
+ (newlines): New rule to describe 0 or more newlines.
+ (commands): Accept `command' with trailing newline. Fixed the
+ order in which arguments were passed to `grub_script_add_cmd'.
+ Accept commands separated by newlines.
+ (function): Changed to accept newlines.
+ (menuentry) Rewritten.
+
+ * normal/script.c (grub_script_create_cmdmenu): Add new entries in
+ front of the list, instead of to the end.
+
+2006-05-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-install.in (bindir): New variable.
+ (grub_mkimage): Use BINDIR instead of SBINDIR. Reported by Lee
+ Shaver <lbgwjl@gmail.com>.
+
+2006-05-14 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/i386/pc/startup.S: Include grub/cpu/linux.h instead of
+ grub/machine/linux.h
+ * loader/i386/pc/linux.c: Likewise.
+
+ * include/grub/i386/pc/linux.h: Moved to ...
+ * include/grub/i386/linux.h: ... here.
+
+ * include/grub/i386/linux.h (struct linux_kernel_params): New
+ struct.
+
+2006-05-09 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Corrected bounds
+ checking.
+ (grub_video_vbe_blit_glyph): Likewise.
+ (grub_video_vbe_blit_bitmap): Likewise.
+ (grub_video_vbe_blit_render_target): Likewise.
+
+2006-05-09 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac (--with-platform): Properly quote the square
+ brackets.
+
+2006-05-08 Marco Gerards <marco@gnu.org>
+
+ * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Renamed from
+ this...
+ (kernel_elf_HEADERS): ...to this. Updated all users.
+ (grubof_symlist.c): Renamed from this...
+ (kernel_elf_symlist.c): ...to this. Updated all users.
+ (pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'.
+ (grubof_SOURCES): Renamed from this...
+ (kernel_elf_SOURCES): ...to this.
+ (grubof_HEADERS): Renamed from this...
+ (kernel_elf_HEADERS): ...to this.
+ (grubof_CFLAGS): Renamed from this...
+ (kernel_elf_CFLAGS): ...to this.
+ (grubof_ASFLAGS): Renamed from this...
+ (kernel_elf_ASFLAGS): ...to this.
+ (grubof_LDFLAGS): Renamed from this...
+ (kernel_elf_LDFLAGS): ...to this.
+
+ * conf/sparc64-ieee1275.rmk (grubof_HEADERS): Renamed from
+ this...
+ (kernel_elf_HEADERS): ...to this. Updated all users.
+ (grubof_symlist.c): Renamed from this...
+ (kernel_elf_symlist.c): ...to this. Updated all users.
+ (pkgdata_PROGRAMS): Changed `grubof' to `kernel.elf'.
+ (grubof_SOURCES): Renamed from this...
+ (kernel_elf_SOURCES): ...to this.
+ (grubof_HEADERS): Renamed from this...
+ (kernel_elf_HEADERS): ...to this.
+ (grubof_CFLAGS): Renamed from this...
+ (kernel_elf_CFLAGS): ...to this.
+ (grubof_ASFLAGS): Renamed from this...
+ (kernel_elf_ASFLAGS): ...to this.
+ (grubof_LDFLAGS): Renamed from this...
+ (kernel_elf_LDFLAGS): ...to this.
+
+ * util/powerpc/ieee1275/grub-mkimage.c (add_segments): Use
+ `kernel.elf' instead of `grubof'.
+
+2006-05-08 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Add --with-platform to configure. Use pkglibdir instead of
+ pkgdatadir. This is reported by Roger Leigh.
+
+ * util/powerpc/ieee1275/grub-install.in (datadir): Removed.
+ (host_vendor): Likewise.
+ (host_os): Likewise.
+ (pkgdatadir): Likewise.
+ (platform): New variable.
+ (pkglibdir): Likewise.
+ Use PKGLIBDIR instead of PKGDATADIR.
+
+ * util/i386/pc/grub-install.in (datadir): Removed.
+ (host_vendor): Likewise.
+ (host_os): Likewise.
+ (pkgdatadir): Likewise.
+ (platform): New variable.
+ (pkglibdir): Likewise.
+ Use PKGLIBDIR instead of PKGDATADIR.
+
+ * util/powerpc/ieee1275/grub-mkimage.c (usage): Use GRUB_LIBDIR
+ instead of GRUB_DATADIR.
+ (main): Likewise.
+ * util/i386/pc/grub-mkimage.c (usage): Likewise.
+ (main): Likewise.
+ * util/i386/efi/grub-mkimage.c (usage): Likewise.
+ (main): Likewise.
+
+ * configure.ac (--with-platform): New option.
+ Use PLATFORM instead of HOST_VENDOR to specify a platform.
+
+ * Makefile.in: Include a makefile based on PLATFORM instead of
+ HOST_VENDOR.
+ (pkgdatadir): Not appended by the machine type.
+ (pkglibdir): Appended by the machine type.
+ (host_vendor): Removed.
+ (platform): New variable.
+ (BUILD_CPPFLAGS): Specify GRUB_LIBDIR instead of GRUB_DATADIR.
+ (install-local): Use PKGLIBDIR instead of PKGDATADIR.
+ (uninstall): Likewise.
+
+2006-05-07 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Use the environment context in the menu. Remove the commands
+ "default" and "timeout", and use variables instead.
+
+ * normal/menu.c: Include grub/env.h.
+ (print_entry): Cast TITLE to silence gcc.
+ (get_timeout): New function.
+ (set_timeout): Likewise.
+ (get_entry_number): Likewise.
+ (run_menu): Use a default entry, a fallback entry and a timeout
+ in the environment variables "default", "fallback" and
+ "timeout". Also, tweak the default entry if it is not within the
+ current menu entries.
+ (grub_menu_run): Use a fallback entry in the environment variable
+ "fallback".
+
+ * normal/main.c (read_config_file): Do not initialize
+ NEWMENU->DEFAULT_ENTRY, NEWMENU->FALLBACK_ENTRY or
+ NEWMENU->TIMEOUT.
+ (grub_normal_execute): Use a data slot to store the menu.
+
+ * include/grub/normal.h (struct grub_menu): Removed default_entry,
+ fallback_entry and timeout.
+ (struct grub_menu_list): Removed.
+ (grub_menu_list_t): Likewise.
+ (struct grub_context): Likewise.
+ (grub_context_t): Likewise.
+ (grub_context_get): Likewise.
+ (grub_context_get_current_menu): Likewise.
+ (grub_context_push_menu): Likewise.
+ (grub_context_pop_menu): Likewise.
+ (grub_default_init): Likewise.
+ (grub_default_fini): Likewise.
+ (grub_timeout_init): Likewise.
+ (grub_timeout_fini): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (pkgdata_MODULES): Removed default.mod
+ and timeout.mod.
+ (normal_mod_SOURCES): Removed normal/context.c.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Removed
+ commands/default.c, commands/timeout.c and normal/context.c.
+ (normal_mod_SOURCES): Removed normal/context.c.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Removed commands/default.c,
+ commands/timeout.c and normal/context.c.
+ (normal_mod_SOURCES): Removed normal/context.c.
+
+ * conf/i386-efi.rmk (grub_emu_SOURCES): Removed
+ commands/default.c, commands/timeout.c and normal/context.c.
+ (normal_mod_SOURCES): Removed normal/context.c.
+
+ * conf/common.rmk (pkgdata_MODULES): Removed default.mod and
+ timeout.mod.
+ (default_mod_SOURCES): Removed.
+ (default_mod_CFLAGS): Likewise.
+ (default_mod_LDFLAGS): Likewise.
+ (timeout_mod_SOURCES): Removed.
+ (timeout_mod_CFLAGS): Likewise.
+ (timeout_mod_LDFLAGS): Likewise.
+
+ * DISTLIST: Removed commands/default.c, commands/timeout.c and
+ normal/context.c.
+
+ * commands/default.c: Removed.
+ * commands/timeout.c: Likewise.
+ * normal/context.c: Likewise.
+
+2006-05-07 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * kern/i386/pc/startup.S (grub_exit): Added missing .code32 tag.
+
+2006-05-02 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/env.c (struct grub_env_context): Removed "sorted". Renamed
+ "next" to "prev" for readability.
+ (struct grub_env_sorted_var): New struct.
+ (grub_env_context): Renamed to ...
+ (initial_context): ... this.
+ (grub_env_var_context): Renamed to ...
+ (current_context): ... this.
+ (grub_env_find): Look only at CURRENT_CONTEXT.
+ (grub_env_context_open): Rewritten to copy exported variables from
+ previous context.
+ (grub_env_context_close): Rewritten according to the new
+ scheme. Also, add an assertion to prevent the initial context from
+ removed.
+ (grub_env_insert): Removed the code for the sorted list.
+ (grub_env_remove): Likewise.
+ (grub_env_export): Simply mark the variable with
+ GRUB_ENV_VAR_GLOBAL.
+ (grub_env_set): A cosmetic change for naming consistency.
+ (grub_env_get): Likewise.
+ (grub_env_unset): Likewise.
+ (grub_env_iterate): Rewritten to sort variables within this
+ function.
+ (grub_register_variable_hook): Fixed for naming consistency. Call
+ grub_env_find again, only if NAME is not found at the first time.
+ (mangle_data_slot_name): New function.
+ (grub_env_set_data_slot): Likewise.
+ (grub_env_get_data_slot): Likewise.
+ (grub_env_unset_data_slot): Likewise.
+
+ * include/grub/env.h (grub_env_var_type): New enum.
+ (GRUB_ENV_VAR_LOCAL): New constant.
+ (GRUB_ENV_VAR_GLOBAL): Likewise.
+ (GRUB_ENV_VAR_DATA): Likewise.
+ (struct grub_env_var): Removed "sort_next" and "sort_prevp". Added
+ "type".
+ (grub_env_set): Replace VAR with NAME for consistency.
+ (grub_register_variable_hook): Likewise.
+ (grub_env_export): Specify the name of the argument.
+ (grub_env_set_data_slot): New prototype.
+ (grub_env_get_data_slot): Likewise.
+ (grub_env_unset_data_slot): Likewise.
+
+2006-04-30 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Extend the loader so that GRUB can accept a loader which comes
+ back to GRUB when a loaded image exits. Also, this change adds
+ support for a chainloader on EFI.
+
+ * term/efi/console.c: Include grub/misc.h.
+ (grub_console_checkkey): Display a scan code on the top for
+ debugging. This will be removed once the EFI port gets stable.
+ Correct the scan code mapping.
+
+ * kern/efi/mm.c (sort_memory_map): Sort in a descending order to
+ allocate memory from larger regions, in order to reduce the number
+ of allocated regions. Otherwise, the MacOSX loader panics.
+ (filter_memory_map): Avoid less than 1MB for compatibility with
+ other loaders.
+ (add_memory_regions): Allocate from the tail of a region, if
+ possible, to avoid allocating a region near to 1MB, for the MacOSX
+ loader.
+
+ * kern/efi/init.c (grub_efi_set_prefix): Specify
+ GRUB_EFI_IMAGE_HANDLE to grub_efi_get_loaded_image.
+
+ * kern/efi/efi.c (grub_efi_get_loaded_image): Accept a new
+ argument IMAGE_HANDLE and specify it to get a loaded image.
+ (grub_arch_modules_addr): Specify GRUB_EFI_IMAGE_HANDLE to
+ grub_efi_get_loaded_image.
+ (grub_efi_get_filename): Divide the length by the size of
+ grub_efi_char16_t.
+ (grub_efi_get_device_path): New function.
+ (grub_efi_print_device_path): Print End Device Path nodes. Divide
+ the length by the size of grub_efi_char16_t for a file path device
+ path node.
+
+ * kern/loader.c (grub_loader_noreturn): New variable.
+ (grub_loader_set): Accept a new argument NORETURN. Set
+ GRUB_LOADER_NORETURN to NORETURN.
+ All callers changed.
+ (grub_loader_boot): If GRUB_LOADER_NORETURN is false, do not call
+ grub_machine_fini.
+
+ * include/grub/efi/efi.h (grub_efi_get_device_path): New
+ prototype.
+ (grub_efi_get_loaded_image): Take an argument to specify an image
+ handle.
+
+ * include/grub/loader.h (grub_loader_set): Added one more argument
+ NORETURN.
+
+ * disk/efi/efidisk.c (make_devices): Use grub_efi_get_device_path
+ instead of grub_efi_open_protocol.
+ (grub_efidisk_get_device_name): Likewise.
+ (grub_efidisk_close): Print a newline.
+ (grub_efidisk_get_device_handle): Fixed to use
+ GRUB_EFI_DEVICE_PATH_SUBTYPE instead of
+ GRUB_EFI_DEVICE_PATH_TYPE.
+
+ * disk/efi/efidisk.c (device_path_guid): Moved to ...
+ * kern/efi/efi.c (device_path_guid): ... here.
+
+ * conf/i386-efi.rmk (pkgdata_MODULES): Added _chain.mod and
+ chain.mod.
+ (kernel_mod_HEADERS): Added efi/disk.h.
+ (_chain_mod_SOURCES): New variable.
+ (_chain_mod_CFLAGS): Likewise.
+ (_chain_mod_LDFLAGS): Likewise.
+ (chain_mod_SOURCES): Likewise.
+ (chain_mod_CFLAGS): Likewise.
+ (chain_mod_LDFLAGS): Likewise.
+
+ * DISTLIST: Added include/grub/efi/chainloader.h,
+ loader/efi/chainloader.c and loader/efi/chainloader_normal.c.
+
+ * include/grub/efi/chainloader.h: New file.
+ * loader/efi/chainloader.c: Likewise.
+ * loader/efi/chainloader_normal.c: Likewise.
+
+2006-04-30 Marco Gerards <marco@gnu.org>
+
+ * commands/configfile.c (grub_cmd_source): New function.
+ (GRUB_MOD_INIT): Register the commands `source' and `.'.
+ (GRUB_MOD_FINI): De-register the commands `source' and `.'.
+
+2006-04-30 Marco Gerards <marco@gnu.org>
+
+ * normal/execute.c (grub_script_execute_cmd): Change the return
+ type to `grub_err_t'. Correctly return the error.
+ (grub_script_execute_cmdline): In case a command line is not a
+ command or a function, try to interpret it as an assignment.
+
+2006-04-30 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/hfsplus.c (grub_hfsplus_read_block): Fixed a memory leak.
+ (grub_hfsplus_iterate_dir): Reordered to skip unknown nodes. Also,
+ skip a node whose name is obviously invalid as UTF-16,
+ i.e. contains a NUL character. Stop the iteration when the last
+ directory entry is found. Instead of using the return value of
+ grub_hfsplus_btree_iterate_node, store the value in RET and use
+ it, because the iterator can be stopped by the last directory
+ entry.
+
+2006-04-30 Marco Gerards <marco@gnu.org>
+
+ * include/grub/env.h (grub_env_export): New prototype. Reported
+ by Jan C. Kleinsorge <jan.kleinsorge@udo.edu>.
+
+2006-04-30 Marco Gerards <marco@gnu.org>
+
+ * fs/hfsplus.c (grub_hfsplus_iterate_dir): Correctly calculate the
+ size of the extents in a catalog file record.
+
+2006-04-29 Marco Gerards <marco@gnu.org>
+
+ * commands/configfile.c (grub_cmd_configfile): Execute the
+ configfile within its own context.
+
+ * include/grub/env.h (grub_env_context_open): New prototype.
+ (grub_env_context_close): Likewise.
+
+ * kern/env.c (grub_env): Removed.
+ (grub_env_sorted): Likewise.
+ (grub_env_context): New variable.
+ (grub_env_var_context): Likewise.
+ (grub_env_find): Search both the active context and the global
+ context.
+ (grub_env_context_open): New function.
+ (grub_env_context_close): Likewise.
+ (grub_env_insert): Likewise.
+ (grub_env_remove): Likewise.
+ (grub_env_export): Likewise.
+ (grub_env_set): Changed to use helper functions to avoid code
+ duplication.
+ (grub_env_iterate): Rewritten so both the current context and the
+ global context are being used.
+
+ * normal/command.c (export_command): New function.
+ (grub_command_init): Register the `export' function.
+
+2006-04-26 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-mkimage.c (compress_kernel): Cast arguments
+ explicitly to suppress gcc's warnings.
+ * fs/fat.c (grub_fat_find_dir): Likewise.
+ (grub_fat_label): Likewise.
+ * fs/xfs.c (grub_xfs_read_inode): Likewise.
+ (grub_xfs_mount): Likewise.
+ (grub_xfs_label): Likewise.
+ * fs/affs.c (grub_affs_mount): Likewise.
+ (grub_affs_label): Likewise.
+ (grub_affs_iterate_dir): Likewise.
+ * fs/sfs.c (grub_sfs_mount): Likewise.
+ (grub_sfs_iterate_dir): Likewise.
+ * fs/ufs.c (grub_ufs_lookup_symlink): Likewise.
+ * fs/hfs.c (grub_hfs_mount): Likewise.
+ (grub_hfs_cmp_catkeys): Likewise.
+ (grub_hfs_find_dir): Likewise.
+ (grub_hfs_dir): Likewise.
+ (grub_hfs_label): Likewise.
+ * fs/jfs.c (grub_jfs_mount): Likewise.
+ (grub_jfs_opendir): Likewise.
+ (grub_jfs_getent): Likewise.
+ (grub_jfs_lookup_symlink): Likewise.
+ (grub_jfs_label): Likewise.
+ * fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise.
+ (grub_hfsplus_iterate_dir): Likewise.
+ (grub_hfsplus_btree_iterate_node): Made static.
+
+ * util/grub-emu.c (prefix): New variable.
+ (grub_machine_set_prefix): New function.
+ (main): Do not set the environment variable "prefix" here. Only
+ set PREFIX, which is used later by grub_machine_set_prefix.
+
+ * include/grub/video.h: Do not include grub/symbol.h.
+ (grub_video_register): Not exported. This symbol is not defined in
+ the kernel.
+ (grub_video_unregister): Likewise.
+ (grub_video_iterate): Likewise.
+ (grub_video_setup): Likewise.
+ (grub_video_restore): Likewise.
+ (grub_video_get_info): Likewise.
+ (grub_video_get_blit_format): Likewise.
+ (grub_video_set_palette): Likewise.
+ (grub_video_get_palette): Likewise.
+ (grub_video_set_viewport): Likewise.
+ (grub_video_get_viewport): Likewise.
+ (grub_video_map_color): Likewise.
+ (grub_video_map_rgb): Likewise.
+ (grub_video_map_rgba): Likewise.
+ (grub_video_fill_rect): Likewise.
+ (grub_video_blit_glyph): Likewise.
+ (grub_video_blit_bitmap): Likewise.
+ (grub_video_blit_render_target): Likewise.
+ (grub_video_scroll): Likewise.
+ (grub_video_swap_buffers): Likewise.
+ (grub_video_create_render_target): Likewise.
+ (grub_video_delete_render_target): Likewise.
+ (grub_video_set_active_render_target): Likewise.
+
+ * include/grub/symbol.h [GRUB_SYMBOL_GENERATOR] (EXPORT_FUNC):
+ Undefined.
+ [GRUB_SYMBOL_GENERATOR] (EXPORT_VAR): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (grubof_symlist.c): Depended on
+ config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh.
+ (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
+ instead of $(srcdir)/genkernsyms.sh.
+
+ * conf/powerpc-ieee1275.rmk (grubof_symlist.c): Depended on
+ config.h. Use gensymlist.sh instead of $(srcdir)/gensymlist.sh.
+ (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
+ instead of $(srcdir)/genkernsyms.sh.
+
+ * conf/i386-pc.rmk (symlist.c): Depended on config.h. Use
+ gensymlist.sh instead of $(srcdir)/gensymlist.sh.
+ (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
+ instead of $(srcdir)/genkernsyms.sh.
+
+ * conf/i386-efi.rmk (symlist.c): Depended on config.h. Use
+ gensymlist.sh instead of $(srcdir)/gensymlist.sh.
+ (kernel_syms.lst): Depended on config.h. Use genkernsyms.sh
+ instead of $(srcdir)/genkernsyms.sh.
+
+ * configure.ac (AC_CONFIG_FILES): Added gensymlist.sh and
+ genkernsyms.sh.
+
+ * Makefile.in (DISTCLEANFILES): Added gensymlist.sh and
+ genkernsyms.sh.
+ (gensymlist.sh): New target.
+ (genkernsyms.sh): Likewise.
+
+ * DISTLIST: Removed genkernsyms.sh and gensymlist.sh. Added
+ genkernsyms.sh.in and gensymlist.sh.in.
+
+ * genkernsyms.sh: Removed.
+ * gensymlist.sh: Likewise.
+
+ * genkernsyms.sh.in: New file.
+ * gensymlist.sh.in: Likewise.
+
+2006-04-25 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/init.c (grub_machine_set_prefix): Do not
+ clobber "prefix", since we may have already set it manually.
+
+2006-04-25 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/misc.c (abort): New alias for grub_abort.
+
+2006-04-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ A new machine-specific function "grub_machine_set_prefix" is
+ defined. This is called after loading modules, so that a prefix
+ initialization can use modules. Also, this change adds an
+ intensive debugging feature for the memory manager via the
+ configure option "--enable-mm-debug".
+
+ * partmap/gpt.c (gpt_partition_map_iterate): Add one more into
+ PART.LEN.
+
+ * kern/sparc64/ieee1275/init.c (abort): Removed.
+ (grub_stop): Likewise.
+ (grub_exit): New function.
+ (grub_set_prefix): Renamed to ...
+ (grub_machine_set_prefix): ... this.
+ (grub_machine_init): Do not call grub_set_prefix.
+
+ * kern/powerpc/ieee1275/init.c (grub_set_prefix): Renamed to ...
+ (grub_machine_set_prefix): ... this.
+ (grub_machine_init): Do not call grub_set_prefix.
+
+ * kern/i386/pc/init.c (grub_machine_set_prefix): New function.
+ (grub_machine_init): Do not set the prefix here.
+
+ * kern/i386/efi/init.c (grub_machine_set_prefix): New function.
+
+ * kern/efi/init.c: Include grub/mm.h.
+ (grub_efi_set_prefix): New function.
+
+ * kern/efi/efi.c (grub_exit): Call grub_efi_fini.
+ (grub_efi_get_filename): New function.
+ (grub_print_device_path): Renamed to ...
+ (grub_efi_print_device_path): ... this.
+
+ * kern/mm.c [MM_DEBUG] (grub_malloc): Undefined.
+ [MM_DEBUG] (grub_realloc): Likewise.
+ [MM_DEBUG] (grub_free): Likewise.
+ [MM_DEBUG] (grub_memalign): Likewise.
+ [MM_DEBUG] (grub_mm_debug): New variable.
+ [MM_DEBUG] (grub_debug_malloc): New function.
+ [MM_DEBUG] (grub_debug_free): New function.
+ [MM_DEBUG] (grub_debug_realloc): New function.
+ [MM_DEBUG] (grub_debug_memalign): New function.
+
+ * kern/misc.c (grub_abort): Print a newline to distinguish
+ the message.
+
+ * kern/main.c (grub_main): Call grub_machine_set_prefix and
+ grub_set_root_dev after loading modules. This is necessary when
+ setting a prefix depends on modules.
+
+ * include/grub/efi/efi.h (grub_print_device_path): Renamed to ...
+ (grub_efi_print_device_path): ... this.
+ (grub_efi_get_filename): New prototype.
+ (grub_efi_set_prefix): Likewise.
+
+ * include/grub/efi/disk.h: Include grub/efi/api.h, grub/symbol.h
+ and grub/disk.h.
+ (grub_efidisk_get_device_handle): New prototype.
+ (grub_efidisk_get_device_name): Likewise.
+
+ * include/grub/mm.h: Include config.h.
+ (MM_DEBUG): Removed.
+ [MM_DEBUG && !GRUB_UTIL] (grub_mm_debug): New prototype.
+ [MM_DEBUG && !GRUB_UTIL] (grub_malloc): New macro.
+ [MM_DEBUG && !GRUB_UTIL] (grub_realloc): Likewise.
+ [MM_DEBUG && !GRUB_UTIL] (grub_memalign): Likewise.
+ [MM_DEBUG && !GRUB_UTIL] (grub_free): Likewise.
+ [MM_DEBUG && !GRUB_UTIL] (grub_debug_malloc): New prototype.
+ [MM_DEBUG && !GRUB_UTIL] (grub_debug_realloc): New prototype.
+ [MM_DEBUG && !GRUB_UTIL] (grub_debug_memalign): New prototype.
+ [MM_DEBUG && !GRUB_UTIL] (grub_debug_free): New prototype.
+
+ * include/grub/kernel.h (grub_machine_set_prefix): New prototype.
+
+ * disk/efi/efidisk.c: Include grub/partition.h.
+ (iterate_child_devices): New function.
+ (add_device): First, compare only last device path nodes, so that
+ devices are sorted by the types.
+ (grub_efidisk_get_device_handle): New function.
+ (grub_efidisk_get_device_name): Likewise.
+
+ * configure.ac (--enable-mm-debug): New option to enable the
+ memory manager debugging feature. This makes the binary much
+ bigger, so is disabled by default.
+
+2006-04-23 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Use grub_abort instead of grub_stop, and grub_exit must be
+ define in each architecture now. Also, this change adds support
+ for EFI disks.
+
+ * util/i386/pc/grub-probefs.c: Include grub/term.h.
+ (grub_getkey): New function.
+ (grub_term_get_current): Likewise.
+
+ * util/i386/pc/grub-setup.c: Include grub/term.h.
+ (grub_getkey): New function.
+ (grub_term_get_current): Likewise.
+
+ * util/misc.c (grub_stop): Renamed to ...
+ (grub_exit): ... this.
+
+ * kern/powerpc/ieee1275/init.c (abort): Renamed to ...
+ (grub_exit): ... this.
+ (grub_machine_init): Use grub_abort instead of abort.
+ (grub_stop): Removed.
+
+ * kern/powerpc/ieee1275/cmain.c (cmain): Use grub_abort instead of
+ abort.
+
+ * kern/i386/pc/startup.S (grub_exit): New function.
+ (cold_reboot): New label.
+
+ * kern/efi/init.c: Include grub/efi/disk.h and grub/env.h.
+ (grub_efi_init): Call grub_efidisk_init.
+ (grub_efi_fini): Call grub_efidisk_fini.
+
+ * kern/efi/efi.c: Include grub/mm.h.
+ (grub_efi_console_control_guid): Renamed to ...
+ (console_control_guid): ... this.
+ (grub_efi_loaded_image_guid): Renamed to ...
+ (loaded_image_guid): ... this.
+ (grub_efi_locate_handle): New function.
+ (grub_efi_open_protocol): Likewise.
+ (grub_efi_set_text_mode): Use CONSOLE_CONTROL_GUID instead of
+ GRUB_EFI_CONSOLE_CONTROL_GUID.
+ (grub_efi_exit): Removed.
+ (grub_stop): Likewise.
+ (grub_efi_get_loaded_image): Use grub_efi_open_protocol.
+ (grub_exit): New function.
+ (grub_print_device_path): Likewise.
+
+ * kern/rescue.c (grub_rescue_cmd_exit): New function.
+ (grub_enter_rescue_mode): Register "exit".
+
+ * kern/misc.c (grub_real_dprintf): A cosmetic change.
+ (grub_abort): New function.
+
+ * kern/err.c (grub_fatal): Use grub_abort instead of grub_stop.
+
+ * include/grub/sparc64/ieee1275/kernel.h (abort): Removed.
+
+ * include/grub/powerpc/ieee1275/kernel.h (abort): Removed.
+
+ * include/grub/efi/efi.h (grub_efi_exit): Removed.
+ (grub_print_device_path): New prototype.
+ (grub_efi_locate_handle): Likewise.
+ (grub_efi_open_protocol): Likewise.
+
+ * include/grub/efi/disk.h (grub_efidisk_fini): New file.
+ * disk/efi/efidisk.c: Likewise.
+
+ * DISTLIST: Added disk/efi/efidisk.c and include/grub/efi/disk.h.
+
+ * include/grub/efi/console_control.h
+ (GRUB_EFI_CONSOLE_CONTROL_GUID): Use an array for the last 8 bytes.
+
+ * include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): Specify the
+ last 8 bytes as an array.
+ (GRUB_EFI_DISK_IO_GUID): New macro.
+ (GRUB_EFI_BLOCK_IO_GUID): Likewise.
+ (GRUB_EFI_DEVICE_PATH_GUID): Likewise.
+ (grub_efi_ipv6_address_t): Change the type to grub_uint16_t from
+ grub_uint8_t.
+ (struct grub_efi_guid): Use an array to specify the last 8 bytes.
+ (struct grub_efi_device_path): Rename the member "sub_type" to
+ "subtype".
+ (GRUB_EFI_DEVICE_PATH_TYPE): New macro.
+ (GRUB_EFI_DEVICE_PATH_SUBTYPE): Likewise.
+ (GRUB_EFI_DEVICE_PATH_LENGTH): Likewise.
+ (GRUB_EFI_END_DEVICE_PATH_TYPE): Likewise.
+ (GRUB_EFI_END_ENTIRE_DEVICE_PATH_SUBTYPE): Likewise.
+ (GRUB_EFI_END_THIS_DEVICE_PATH_SUBTYPE): Likewise.
+ (GRUB_EFI_END_ENTIRE_DEVICE_PATH): Likewise.
+ (GRUB_EFI_NEXT_DEVICE_PATH): Likewise.
+ (GRUB_EFI_HARDWARE_DEVICE_PATH_TYPE): Likewise.
+ (GRUB_EFI_PCI_DEVICE_PATH_SUBTYPE): Likewise.
+ (struct grub_efi_pci_device_path): New structure.
+ (grub_efi_pci_device_path_t): New type.
+ (GRUB_EFI_PCCARD_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_pccard_device_path): New structure.
+ (grub_efi_pccard_device_path_t): New type.
+ (GRUB_EFI_MEMORY_MAPPED_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_memory_mapped_device_path): New structure.
+ (grub_efi_memory_mapped_device_path_t): New type.
+ (GRUB_EFI_VENDOR_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_vendor_device_path): New structure.
+ (grub_efi_vendor_device_path_t): New type.
+ (GRUB_EFI_CONTROLLER_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_controller_device_path): New structure.
+ (grub_efi_controller_device_path_t): New type.
+ (GRUB_EFI_ACPI_DEVICE_PATH_TYPE): New macro.
+ (GRUB_EFI_ACPI_DEVICE_PATH_SUBTYPE): Likewise.
+ (struct grub_efi_acpi_device_path): New structure.
+ (grub_efi_acpi_device_path_t): New type.
+ (GRUB_EFI_EXPANDED_ACPI_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_expanded_acpi_device_path): New structure.
+ (grub_efi_expanded_acpi_device_path_t): New type.
+ (GRUB_EFI_EXPANDED_ACPI_HIDSTR): New macro.
+ (GRUB_EFI_EXPANDED_ACPI_UIDSTR): Likewise.
+ (GRUB_EFI_EXPANDED_ACPI_CIDSTR): Likewise.
+ (GRUB_EFI_MESSAGING_DEVICE_PATH_TYPE): Likewise.
+ (GRUB_EFI_ATAPI_DEVICE_PATH_SUBTYPE): Likewise.
+ (struct grub_efi_atapi_device_path): New structure.
+ (grub_efi_atapi_device_path_t): New type.
+ (GRUB_EFI_FIBRE_CHANNEL_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_fibre_channel_device_path): New structure.
+ (grub_efi_fibre_channel_device_path_t): New type.
+ (GRUB_EFI_1394_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_1394_device_path): New structure.
+ (grub_efi_1394_device_path_t): New type.
+ (GRUB_EFI_USB_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_usb_device_path): New structure.
+ (grub_efi_usb_device_path_t): New type.
+ (GRUB_EFI_USB_CLASS_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_usb_class_device_path): New structure.
+ (grub_efi_usb_class_device_path_t): New type.
+ (GRUB_EFI_I2O_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_i2o_device_path): New structure.
+ (grub_efi_i2o_device_path_t): New type.
+ (GRUB_EFI_MAC_ADDRESS_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_mac_address_device_path): New structure.
+ (grub_efi_mac_address_device_path_t): New type.
+ (GRUB_EFI_IPV4_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_ipv4_device_path): New structure.
+ (grub_efi_ipv4_device_path_t): New type.
+ (GRUB_EFI_IPV6_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_ipv6_device_path): New structure.
+ (grub_efi_ipv6_device_path_t): New type.
+ (GRUB_EFI_INFINIBAND_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_infiniband_device_path): New structure.
+ (grub_efi_infiniband_device_path_t): New type.
+ (GRUB_EFI_UART_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_uart_device_path): New structure.
+ (grub_efi_uart_device_path_t): New type.
+ (GRUB_EFI_VENDOR_MESSAGING_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_vendor_messaging_device_path): New structure.
+ (grub_efi_vendor_messaging_device_path_t): New type.
+ (GRUB_EFI_MEDIA_DEVICE_PATH_TYPE): New macro.
+ (GRUB_EFI_HARD_DRIVE_DEVICE_PATH_SUBTYPE): Likewise.
+ (struct grub_efi_hard_drive_device_path): New structure.
+ (grub_efi_hard_drive_device_path_t): New type.
+ (GRUB_EFI_CDROM_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_cdrom_device_path): New structure.
+ (grub_efi_cdrom_device_path_t): New type.
+ (GRUB_EFI_VENDOR_MEDIA_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_vendor_media_device_path): New structure.
+ (grub_efi_vendor_media_device_path_t): New type.
+ (GRUB_EFI_FILE_PATH_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_file_path_device_path): New structure.
+ (grub_efi_file_path_device_path_t): New type.
+ (GRUB_EFI_PROTOCOL_DEVICE_PATH_SUBTYPE): New macro.
+ (struct grub_efi_protocol_device_path): New structure.
+ (grub_efi_protocol_device_path_t): New type.
+ (GRUB_EFI_BIOS_DEVICE_PATH_TYPE): New macro.
+ (GRUB_EFI_BIOS_DEVICE_PATH_SUBTYPE): Likewise.
+ (struct grub_efi_bios_device_path): New structure.
+ (grub_efi_bios_device_path_t): New type.
+ (struct grub_efi_disk_io): New structure.
+ (grub_efi_disk_io_t): New type.
+ (struct grub_efi_block_io_media): New structure.
+ (grub_efi_block_io_media_t): New type.
+ (struct grub_efi_block_io): New structure.
+ (grub_efi_block_io_t): New type.
+
+ * include/grub/misc.h (grub_stop): Removed.
+ (grub_exit): New prototype.
+ (grub_abort): Likewise.
+
+ * include/grub/disk.h (enum grub_disk_dev_id): Added
+ GRUB_DISK_DEVICE_EFIDISK_ID.
+
+ * conf/i386-efi.rmk (kernel_mod_SOURCES): Added
+ disk/efi/efidisk.c.
+ (kernel_syms.lst): Remove the target if an error occurs.
+
+2006-04-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/misc.c (grub_lltoa): Rewritten the decimal conversion part,
+ as it was simply too buggy.
+
+2006-04-21 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/misc.c (grub_lltoa): New function.
+ (grub_vsprintf): Added support for the long long suffix,
+ i.e. "ll".
+
+2006-04-20 Hollis Blanchard <hollis@penguinppc.org>
+
+ * Makefile.in (LDFLAGS): Add variable.
+ (LD): Remove variable.
+ * configure.ac: Add -m32 to LDFLAGS.
+ * genmk.rb (PModule#rule): Use $(CC) instead of $(LD).
+ * conf/powerpc-ieee1275.rmk (COMMON_LDFLAGS): Add variable.
+ (grubof_LDFLAGS): Use $(COMMON_LDFLAGS).
+ (_linux_mod_LDFLAGS, linux_mod_LDFLAGS, normal_mod_LDFLAGS,
+ suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS): New
+ variables.
+ * conf/sparc64-ieee1275.rmk (COMMON_LDFLAGS): Add -nostdlib.
+ * conf/i386-pc.rmk (COMMON_LDFLAGS): Add -nostdlib.
+ * conf/i386-efi.rmk (COMMON_LDFLAGS): Add -nostdlib.
+
+2006-04-20 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * term/gfxterm.c (grub_gfxterm_getcharwidth): Fixed character
+ length for unknown glyph.
+
+2006-04-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Add support for pre-loaded modules into the EFI port.
+
+ * util/i386/efi/grub-mkimage.c (make_mods_section): Rewritten
+ completely. Accept one more argument DIR. The caller has changed.
+
+ * kern/i386/efi/init.c (grub_arch_modules_addr): Removed.
+
+ * kern/efi/efi.c: Include grub/efi/pe32.h and grub/kernel.h.
+ (grub_efi_loaded_image_guid): New variable.
+ (grub_efi_get_loaded_image): New function.
+ (grub_arch_modules_addr): Likewise.
+
+ * include/grub/efi/efi.h (grub_efi_get_loaded_image): New
+ prototype.
+
+ * include/grub/efi/api.h (GRUB_EFI_LOADED_IMAGE_GUID): New macro.
+ (struct grub_efi_loaded_image): New structure.
+ (grub_efi_loaded_image_t): New type.
+
+2006-04-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_linux): Compare the file
+ size with GRUB_OS_AREA_SIZE as grub_size_t instead of
+ grub_ssize_t. Reported by Jeff Chua <jeff84@silk.corp.fedex.com>.
+
+2006-04-19 Roger Leigh <rleigh@whinlatter.ukfsn.org>
+
+ * DISTLIST: Added `util/powerpc/ieee1275/grub-install.in'.
+
+2006-04-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added include/grub/efi/console.h,
+ include/grub/efi/time.h, include/grub/i386/efi/kernel.h,
+ kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c.
+
+ * include/grub/efi/console.h: New file.
+ * include/grub/efi/time.h: Likewise.
+ * include/grub/i386/efi/kernel.h: Likewise.
+ * kern/efi/init.c: Likewise.
+ * kern/efi/mm.c: Likewise.
+ * term/efi/console.c: Likewise.
+
+ * kern/i386/efi/init.c: Do not include grub/machine/time.h.
+ (grub_stop): Removed.
+ (grub_get_rtc): Likewise.
+ (grub_machine_init): Simply call grub_efi_init.
+ (grub_machine_fini): Call grub_efi_fini.
+
+ * kern/efi/efi.c: Include grub/machine/time.h and grub/term.h.
+ (grub_efi_output_string): Removed.
+ (grub_efi_stall): New function.
+ (grub_stop): Likewise.
+ (grub_get_rtc): Likewise.
+
+ * include/grub/efi/efi.h (grub_efi_output_string): Removed.
+ (grub_efi_stall): New prototype.
+ (grub_efi_allocate_pages): Likewise.
+ (grub_efi_free_pages): Likewise.
+ (grub_efi_get_memory_map): Likewise.
+ (grub_efi_mm_init): Likewise.
+ (grub_efi_mm_fini): Likewise.
+ (grub_efi_init): Likewise.
+ (grub_efi_fini): Likewise.
+
+ * include/grub/i386/efi/time.h: Do not include
+ grub/symbol.h. Include grub/efi/time.h.
+ (GRUB_TICKS_PER_SECOND): Removed.
+ (grub_get_rtc): Likewise.
+
+ * include/grub/efi/api.h (struct grub_efi_memory_descriptor):
+ Added padding. The EFI spec is buggy.
+ (GRUB_EFI_BLACK): New macro.
+ (GRUB_EFI_BLUE): Likewise.
+ (GRUB_EFI_GREEN): Likewise.
+ (GRUB_EFI_CYAN): Likewise.
+ (GRUB_EFI_RED): Likewise.
+ (GRUB_EFI_MAGENTA): Likewise.
+ (GRUB_EFI_BROWN): Likewise.
+ (GRUB_EFI_LIGHTGRAY): Likewise.
+ (GRUB_EFI_BRIGHT): Likewise.
+ (GRUB_EFI_DARKGRAY): Likewise.
+ (GRUB_EFI_LIGHTBLUE): Likewise.
+ (GRUB_EFI_LIGHTGREEN): Likewise.
+ (GRUB_EFI_LIGHTCYAN): Likewise.
+ (GRUB_EFI_LIGHTRED): Likewise.
+ (GRUB_EFI_LIGHTMAGENTA): Likewise.
+ (GRUB_EFI_YELLOW): Likewise.
+ (GRUB_EFI_WHITE): Likewise.
+ (GRUB_EFI_BACKGROUND_BLACK): Likewise.
+ (GRUB_EFI_BACKGROUND_BLUE): Likewise.
+ (GRUB_EFI_BACKGROUND_GREEN): Likewise.
+ (GRUB_EFI_BACKGROUND_CYAN): Likewise.
+ (GRUB_EFI_BACKGROUND_RED): Likewise.
+ (GRUB_EFI_BACKGROUND_MAGENTA): Likewise.
+ (GRUB_EFI_BACKGROUND_BROWN): Likewise.
+ (GRUB_EFI_BACKGROUND_LIGHTGRAY): Likewise.
+ (GRUB_EFI_TEXT_ATTR): Likewise.
+
+ * conf/i386-efi.rmk (kernel_mod_SOURCES): Added kern/efi/efi.c,
+ kern/efi/init.c, kern/efi/mm.c, and term/efi/console.c.
+ (kernel_mod_HEADERS): Added efi/time.h.
+
+2006-04-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added conf/i386-efi.mk, conf/i386-efi.rmk,
+ include/grub/efi/api.h, include/grub/efi/console_control.h,
+ include/grub/efi/efi.h, include/grub/efi/pe32.h,
+ include/grub/i386/efi/time.h, kern/efi/efi.c,
+ kern/i386/efi/init.c, kern/i386/efi/startup.S,
+ and util/i386/efi/grub-mkimage.c.
+
+ * Makefile.in (RMKFILES): Added i386-efi.rmk.
+
+ * genmk.rb (PModule#rule): Do not export symbols if
+ #{prefix}_EXPORTS is set to "no".
+
+ * conf/i386-efi.mk: New file.
+ * conf/i386-efi.rmk: Likewise.
+ * include/grub/efi/api.h: Likewise.
+ * include/grub/efi/console_control.h: Likewise.
+ * include/grub/efi/efi.h: Likewise.
+ * include/grub/efi/pe32.h: Likewise.
+ * include/grub/i386/efi/time.h: Likewise.
+ * kern/efi/efi.c: Likewise.
+ * kern/i386/efi/init.c: Likewise.
+ * kern/i386/efi/startup.S: Likewise.
+ * util/i386/efi/grub-mkimage.c: Likewise.
+
+2006-04-17 Marco Gerards <marco@gnu.org>
+
+ * include/grub/script.h: Include <grub/parser.h> and
+ "grub_script.tab.h".
+ (struct grub_lexer_param): New struct.
+ (struct grub_parser_param): Likewise.
+ (grub_script_create_arglist): Pass the state in an argument.
+ (grub_script_add_arglist): Likewise.
+ (grub_script_create_cmdline): Likewise.
+ (grub_script_create_cmdblock): Likewise.
+ (grub_script_create_cmdif): Likewise.
+ (grub_script_create_cmdmenu): Likewise.
+ (grub_script_add_cmd): Likewise.
+ (grub_script_arg_add): Likewise.
+ (grub_script_lexer_ref): Likewise.
+ (grub_script_lexer_deref): Likewise.
+ (grub_script_lexer_record_start): Likewise.
+ (grub_script_lexer_record_stop): Likewise.
+ (grub_script_mem_record): Likewise.
+ (grub_script_mem_record_stop): Likewise.
+ (grub_script_malloc): Likewise.
+ (grub_script_yylex): Likewise.
+ (grub_script_yyparse): Likewise.
+ (grub_script_yyerror): Likewise.
+ (grub_script_yylex): Likewise.
+ (grub_script_lexer_init): Return the state.
+
+ * normal/lexer.c (grub_script_lexer_state): Removed variable.
+ (grub_script_lexer_done): Likewise.
+ (grub_script_lexer_getline): Likewise.
+ (grub_script_lexer_refs): Likewise.
+ (script): Likewise.
+ (newscript): Likewise.
+ (record): Likewise.
+ (recording): Likewise.
+ (recordpos): Likewise.
+ (recordlen): Likewise.
+ (grub_script_lexer_init): Return the state instead of setting
+ global variables.
+ (grub_script_lexer_ref): Use the newly added argument for state
+ instead of globals.
+ (grub_script_lexer_deref): Likewise.
+ (grub_script_lexer_record_start): Likewise.
+ (grub_script_lexer_record_stop): Likewise.
+ (recordchar): Likewise.
+ (nextchar): Likewise.
+ (grub_script_yylex2): Likewise.
+ (grub_script_yylex): Likewise.
+ (grub_script_yyerror): Likewise.
+
+ * normal/parser.y (func_mem): Removed variable.
+ (menu_entry): Likewise.
+ (err): Likewise.
+ (%lex-param): New parser option.
+ (%parse-param): Likewise.
+ (script): Always return the AST.
+ (argument): Pass the state around.
+ (arguments): Likewise.
+ (grubcmd): Likewise.
+ (commands): Likewise.
+ (function): Likewise.
+ (menuentry): Likewise.
+ (if_statement): Likewise.
+ (if): Likewise.
+
+ * normal/script.c (grub_script_memused): Removed variable.
+ (grub_script_parsed): Likewise.
+ (grub_script_malloc): Added a state argument. Use that instead of
+ global variables.
+ (grub_script_mem_record): Likewise.
+ (grub_script_mem_record_stop): Likewise.
+ (grub_script_arg_add): Likewise.
+ (grub_script_add_arglist): Likewise.
+ (grub_script_create_cmdline): Likewise.
+ (grub_script_create_cmdif): Likewise.
+ (grub_script_create_cmdmenu): Likewise.
+ (grub_script_add_cmd): Likewise.
+ (grub_script_parse): Setup the state before calling the parser.
+
+2006-04-16 Marco Gerards <marco@gnu.org>
+
+ * normal/command.c (grub_command_init): Remove the title command.
+
+ * normal/lexer.c (grub_script_yylex): Renamed from this...
+ (grub_script_yylex2): ... to this.
+ (grub_script_yylex): New function. Temporary
+ introduced to filter some tokens.
+ (grub_script_yyerror): Print a newline.
+
+ * normal/main.c (read_config_file): Output information about the
+ lines that contain errors. Wait for a key after all lines have
+ been processed. Don't return an empty menu.
+
+ * normal/parser.y (func_mem): Don't initialize.
+ (menu_entry): Likewise.
+ (err): New variable.
+ (script): Don't return anything when an error was encountered.
+ (ws, returns): Removed rules.
+ (argument): Disabled concatenated variable support.
+ (arguments): Remove explicit separators.
+ (grubcmd): Likewise.
+ (function): Likewise.
+ (menuentry): Likewise.
+ (if): Likewise.
+ (commands): Likewise. Add error handling.
+
+ * normal/script.c (grub_script_create_cmdline): If
+ `grub_script_parsed' is 0, assume the parser encountered an error.
+
+2006-04-02 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac: Add support for EFI. Fix the typo
+ BUILD_LDDFLAGS. Restore the LDFLAGS after testing.
+
+2006-04-01 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * util/unifont2pff.rb: Removed unnecessary byte ordering. Now
+ foreign multibyte characters should be shown correctly.
+
+2006-04-01 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * normal/main.c (grub_normal_menu_addentry): Fixed menu size
+ calculation.
+ (read_config_file): Made it to close file before returning.
+
+2006-03-31 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * DISTLIST: Added include/grub/i386/pc/vbeblit.h,
+ include/grub/i386/pc/vbefill.h, video/i386/pc/vbeblit.c,
+ video/i386/pc/vbefill.c.
+
+ * conf/i386-pc.rmk (vbe_mod_SOURCES): Added video/i386/pc/vbeblit.c,
+ video/i386/pc/vbefill.c.
+
+ * include/grub/video.h (grub_video_blit_format): New enum.
+ (grub_video_mode_info): Added new member blit_format.
+ (grub_video_get_blit_format): New function prototype.
+
+ * include/grub/i386/pc/vbe.h (grub_video_vbe_get_video_ptr): New
+ function prototype.
+ (grub_video_vbe_map_rgb): Likewise.
+ (grub_video_vbe_unmap_color): Likewise.
+
+ * include/grub/i386/pc/vbeblit.h: New file.
+
+ * include/grub/i386/pc/vbefill.h: New file.
+
+ * video/video.c (grub_video_get_blit_format): New function.
+ (grub_video_vbe_get_video_ptr): Re-declared as non-static.
+ (grub_video_vbe_map_rgb): Likewise.
+ (grub_video_vbe_unmap_color): Likewise.
+
+ * video/i386/pc/vbe.c (grub_video_vbe_fill_rect): Changed to use more
+ optimized fills.
+ (grub_video_vbe_blit_render_target): Changed to use more optimized
+ blits.
+ (grub_video_vbe_setup): Added detection for optimized settings.
+ (grub_video_vbe_create_render_target): Likewise.
+
+ * video/i386/pc/vbeblit.c: New file.
+
+ * video/i386/pc/vbefill.c: New file.
+
+2006-03-30 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * font/manager.c (grub_font_get_glyph): Removed font fixup from
+ here...
+
+ * util/unifont2pff.rb: ... and moved it to here. Improved argument
+ parsing to support both hex and dec ranges. If filename was missing
+ show usage information.
+
+2006-03-14 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * DISTLIST: Added include/grub/video.h, term/gfxterm.c,
+ video/video.c, commands/videotest.c. Removed term/i386/pc/vesafb.c.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added video.mod,
+ gfxterm.mod, videotest.mod. Removed vga.mod, vesafb.mod.
+ (video_mod_SOURCES): Added.
+ (video_mod_CFLAGS): Likewise.
+ (video_mod_LDFLAGS): Likewise.
+ (gfxterm_mod_SOURCES): Likewise.
+ (gfxterm_mod_CFLAGS): Likewise.
+ (gfxterm_mod_LDFLAGS): Likewise.
+ (videotest_mod_SOURCES): Likewise.
+ (videotest_mod_CFLAGS): Likewise.
+ (videotest_mod_LDFLAGS): Likewise.
+ (vesafb_mod_SOURCES): Removed.
+ (vesafb_mod_CFLAGS): Likewise.
+ (vesafb_mod_LDFLAGS): Likewise.
+ (vga_mod_SOURCES): Likewise.
+ (vga_mod_CFLAGS): Likewise.
+ (vga_mod_LDFLAGS): Likewise.
+
+ * commands/videotest.c: New file.
+
+ * font/manager.c (fill_with_default_glyph): Modified to use
+ grub_font_glyph.
+ (grub_font_get_glyph): Likewise.
+ (fontmanager): Renamed from this...
+ (font_manager): ... to this.
+
+ * include/grub/font.h (grub_font_glyph): Added new structure.
+ (grub_font_get_glyph): Modified to use grub_font_glyph.
+
+ * include/grub/misc.h (grub_abs): Added as inline function.
+
+ * include/grub/video.h: New file.
+
+ * include/grub/i386/pc/vbe.h (GRUB_VBE_STATUS_OK): New macro.
+ (GRUB_VBE_MEMORY_MODEL_PACKED_PIXEL): Likewise.
+ (GRUB_VBE_MEMORY_MODEL_DIRECT_COLOR): Likewise.
+ (grub_vbe_get_controller_info): Renamed from this...
+ (grub_vbe_bios_get_controller_info): ... to this.
+ (grub_vbe_get_mode_info): Renamed from this...
+ (grub_vbe_bios_get_mode_info): ... to this.
+ (grub_vbe_set_mode): Renamed from this...
+ (grub_vbe_bios_set_mode): ... to this.
+ (grub_vbe_get_mode): Renamed from this...
+ (grub_vbe_bios_get_mode): ... to this.
+ (grub_vbe_set_memory_window): Renamed from this...
+ (grub_vbe_bios_set_memory_window): ... to this.
+ (grub_vbe_get_memory_window): Renamed from this...
+ (grub_vbe_bios_get_memory_window): ... to this.
+ (grub_vbe_set_scanline_length): Renamed from this...
+ (grub_vbe_set_scanline_length): ... to this.
+ (grub_vbe_get_scanline_length): Renamed from this...
+ (grub_vbe_bios_get_scanline_length): ... to this.
+ (grub_vbe_set_display_start): Renamed from this...
+ (grub_vbe_bios_set_display_start): ... to this.
+ (grub_vbe_get_display_start): Renamed from this...
+ (grub_vbe_bios_get_display_start): ... to this.
+ (grub_vbe_set_palette_data): Renamed from this...
+ (grub_vbe_bios_set_palette_data): ... to this.
+ (grub_vbe_set_pixel_rgb): Removed.
+ (grub_vbe_set_pixel_index): Likewise.
+
+ * kern/i386/pc/startup.S (grub_vbe_get_controller_info): Renamed
+ from this...
+ (grub_vbe_bios_get_controller_info): ... to this.
+ (grub_vbe_get_mode_info): Renamed from this...
+ (grub_vbe_bios_get_mode_info): ... to this.
+ (grub_vbe_set_mode): Renamed from this...
+ (grub_vbe_bios_set_mode): ... to this.
+ (grub_vbe_get_mode): Renamed from this...
+ (grub_vbe_bios_get_mode): ... to this.
+ (grub_vbe_set_memory_window): Renamed from this...
+ (grub_vbe_bios_set_memory_window): ... to this.
+ (grub_vbe_get_memory_window): Renamed from this...
+ (grub_vbe_bios_get_memory_window): ... to this.
+ (grub_vbe_set_scanline_length): Renamed from this...
+ (grub_vbe_set_scanline_length): ... to this.
+ (grub_vbe_get_scanline_length): Renamed from this...
+ (grub_vbe_bios_get_scanline_length): ... to this.
+ (grub_vbe_set_display_start): Renamed from this...
+ (grub_vbe_bios_set_display_start): ... to this.
+ (grub_vbe_get_display_start): Renamed from this...
+ (grub_vbe_bios_get_display_start): ... to this.
+ (grub_vbe_set_palette_data): Renamed from this...
+ (grub_vbe_bios_set_palette_data): ... to this.
+ (grub_vbe_bios_get_controller_info): Fixed problem with registers
+ getting corrupted after calling it. Added more pushes and pops.
+ (grub_vbe_bios_set_mode): Likewise.
+ (grub_vbe_bios_get_mode): Likewise.
+ (grub_vbe_bios_get_memory_window): Likewise.
+ (grub_vbe_bios_set_scanline_length): Likewise.
+ (grub_vbe_bios_get_scanline_length): Likewise.
+ (grub_vbe_bios_get_display_start): Likewise.
+ (grub_vbe_bios_set_palette_data): Likewise.
+
+ * normal/cmdline.c (cl_set_pos): Refresh the screen.
+ (cl_insert): Likewise.
+ (cl_delete): Likewise.
+
+ * term/gfxterm.c: New file.
+
+ * term/i386/pc/vesafb.c: Removed file.
+
+ * video/video.c: New file.
+
+ * video/i386/pc/vbe.c (real2pm): Added new function.
+ (grub_video_vbe_draw_pixel): Likewise.
+ (grub_video_vbe_get_video_ptr): Likewise.
+ (grub_video_vbe_get_pixel): Likewise
+ (grub_video_vbe_init): Likewise.
+ (grub_video_vbe_fini): Likewise.
+ (grub_video_vbe_setup): Likewise.
+ (grub_video_vbe_get_info): Likewise.
+ (grub_video_vbe_set_palette): Likewise.
+ (grub_video_vbe_get_palette): Likewise.
+ (grub_video_vbe_set_viewport): Likewise.
+ (grub_video_vbe_get_viewport): Likewise.
+ (grub_video_vbe_map_color): Likewise.
+ (grub_video_vbe_map_rgb): Likewise.
+ (grub_video_vbe_map_rgba): Likewise.
+ (grub_video_vbe_unmap_color): Likewise.
+ (grub_video_vbe_fill_rect): Likewise.
+ (grub_video_vbe_blit_glyph): Likewise.
+ (grub_video_vbe_blit_bitmap): Likewise.
+ (grub_video_vbe_blit_render_target): Likewise.
+ (grub_video_vbe_scroll): Likewise.
+ (grub_video_vbe_swap_buffers): Likewise.
+ (grub_video_vbe_create_render_target): Likewise.
+ (grub_video_vbe_delete_render_target): Likewise.
+ (grub_video_vbe_set_active_render_target): Likewise.
+ (grub_vbe_set_pixel_rgb): Remove function.
+ (grub_vbe_set_pixel_index): Likewise.
+ (index_color_mode): Remove static variable.
+ (active_mode): Likewise.
+ (framebuffer): Likewise.
+ (bytes_per_scan_line): Likewise.
+ (grub_video_vbe_adapter): Added new static variable.
+ (framebuffer): Likewise.
+ (render_target): Likewise.
+ (initial_mode): Likewise.
+ (mode_in_use): Likewise.
+ (mode_list): Likewise.
+
+2006-03-10 Marco Gerards <marco@gnu.org>
+
+ * configure.ac (AC_INIT): Bumped to 1.93.
+
+ * DISTLIST: Added `include/grub/hfs.h'.
+
+2006-02-01 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * boot/i386/pc/boot.S (general_error): Before looping, try INT
+ 18H, which might help the BIOS falling back to next boot media.
+
+2006-01-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-install.in: Escape a backslash. Reported by
+ Poe Chen <poe.poechen@gmail.com>.
+
+2006-01-17 Marco Gerards <marco@gnu.org>
+
+ * include/grub/normal.h: Include <grub/script.h>.
+ (grub_command_list): Removed struct.
+ (grub_command_list_t): Removed type.
+ (grub_menu_entry): Remove members `num' and `command_list'. Add
+ members `commands' and `sourcecode'.
+ * include/grub/script.h: Add inclusion guards.
+ (grub_script_cmd_menuentry): New struct.
+ (grub_script_execute_menuentry): New prototype.
+ (grub_script_lexer_record_start): Likewise.
+ (grub_script_lexer_record_stop): Likewise.
+ * normal/execute.c (grub_script_execute_menuentry): New function.
+ * normal/lexer.c (record, recording, recordpos, recordlen): New
+ variables.
+ (grub_script_lexer_record_start): New function.
+ (grub_script_lexer_record_stop): Likewise.
+ (recordchar): Likewise.
+ (nextchar): Likewise.
+ (grub_script_yylex): Use `nextchar' to fetch new characters. Use
+ 2048 as the buffer size. Add the tokens `menuentry' and `@'.
+ * normal/main.c: Include <grub/parser.h> and <grub/script.h>
+ (current_menu): New variable.
+ (free_menu): Mainly rewritten.
+ (grub_normal_menu_addentry): New function.
+ (read_config_file): Rewritten.
+ * normal/menu.c (run_menu_entry): Mainly rewritten.
+ * normal/menu_entry.c (make_screen): Rewritten the code to insert
+ the menu entry.
+ (run): Mainly rewritten.
+ * normal/parser.y (menu_entry): New variable.
+ (GRUB_PARSER_TOKEN_MENUENTRY): New token.
+ (menuentry): New rule.
+ (command): Add `menuentry'.
+ (if_statement): Allow additional returns before `fi'.
+ * normal/script.c (grub_script_create_cmdmenu): New function.
+
+2006-01-03 Marco Gerards <marco@gnu.org>
+
+ * INSTALL: GNU Bison is required.
+ * configure.ac: Rewritten the test to detect Bison.
+ * Makefile.in (YACC): New variable. Reported by Xun Sun
+ <xun.sun.cn@gmail.com>.
+
+2006-01-03 Marco Gerards <marco@gnu.org>
+
+ * fs/hfsplus.c (grub_hfsplus_read_block): Convert the offset of
+ the HFS+ filesystem to filesystem blocks.
+ (grub_hfsplus_iterate_dir): Cast the `fileinfo' assignment so a
+ GCC warning is silenced.
+
+2006-01-03 Marco Gerards <marco@gnu.org>
+
+ * partmap/apple.c (apple_partition_map_iterate): Convert the data
+ read from disk from big endian to host byte order.
+
+2006-01-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * fs/hfs.c: Include <grub/hfs.h>. Added reference to the official
+ documentation.
+ (GRUB_HFS_EMBED_HFSPLUS_SIG): New macro.
+ (grub_hfs_mount): Grammar fix in error. Make sure this is not an
+ embedded HFS+ filesystem.
+ (GRUB_HFS_MAGIC, grub_hfs_extent, grub_hfs_datarecord_t)
+ (grub_hfs_sblock): Move from here...
+ * include/grub/hfs.h: To here... New file.
+ * fs/hfsplus.c: Include <grub/hfs.h>. Added reference to the official
+ documentation.
+ (GRUB_HFSPLUS_MAGIC, GRUB_HFSPLUSX_MAGIC, GRUB_HFSPLUS_SBLOCK):
+ New macros.
+ (grub_hfsplus_volheader): Change type of member `magic' to
+ `grub_uint16_t'.
+ (grub_hfsplus_data): Add new member `embedded_offset'.
+ (grub_hfsplus_read_block): Add the HFS+ wrapper offset to the
+ returned block.
+ (grub_hfsplus_mount): Read the HFS+ wrapper if it exists.
+ Calculate the offset.
+
+2005-12-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRP_ADDR):
+ Removed.
+ (GRUB_BOOT_MACHINE_DRP_SIZE): Likewise.
+
+2005-12-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/env.c (grub_env_set): Check if ENV->VALUE instead of
+ ENV->NAME is NULL after allocating ENV->VALUE.
+
+2005-12-25 Marco Gerards <marco@gnu.org>
+
+ * kern/env.c (grub_env_set): Rewritten the error handling code.
+
+2005-12-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * geninit.sh: Made more robust, and more portable.
+
+2005-12-25 Marco Gerards <marco@gnu.org>
+
+ Add support for Apple HFS+ filesystems.
+
+ * fs/hfsplus.c: New file.
+
+ * DISTLIST: Added `fs/hfsplus.c'.
+
+ * conf/common.rmk (pkgdata_MODULES): Add `hfsplus.mod'.
+ (hfsplus_mod_SOURCES): New variable.
+ (hfsplus_mod_CFLAGS): Likewise.
+ (hfsplus_mod_LDFLAGS): Likewise.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/hfsplus.c'.
+ (grub_setup_SOURCES): Likewise.
+ (grub_mkdevicemap_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+
+ * fs/fshelp.c (grub_fshelp_log2blksize): New function.
+
+ * include/grub/fshelp.h (grub_fshelp_log2blksize): new prototype.
+
+2005-12-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added geninitheader.sh, geninit.sh, commands/test.c,
+ commands/i386/pc/play.c, conf/common.mk, conf/common.rmk,
+ include/grub/parser.h, include/grub/script.h, kern/parser.c,
+ kern/sparc64/cache.S, normal/execute.c, normal/function.c,
+ normal/lexer.c, normal/parser.y, normal/script.c, and
+ partmap/gpt.c.
+ Removed kern/sparc64/cache.c.
+
+ * conf/common.rmk (DISTCLEANFILES): Added grub_script.tab.c,
+ grub_script.tab.h, grub_modules_init.lst, grub_modules_init.h,
+ grub_emu_init.c.
+
+ * configure.ac (AC_INIT): Bumped to 1.92.
+
+2005-12-24 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * kern/err.c (grub_error_push): Added new function to support error
+ stacks.
+ (grub_error_pop): Likewise.
+ (grub_error_stack_items): New local variable to support error stacks.
+ (grub_error_stack_pos): Likewise.
+ (grub_error_stack_assert): Likewise.
+ (GRUB_ERROR_STACK_SIZE): Added new define to configure maximum error
+ stack depth.
+ (grub_print_error): Added support to print errors from error stack.
+
+ * include/grub/err.h (grub_error_push): Added function prototype.
+ (grub_error_pop): Likewise.
+
+2005-12-09 Hollis Blanchard <hollis@penguinppc.org>
+
+ * configure.ac: Accept `powerpc64' as host_cpu.
+ (amd64): Rename to `biarch32'.
+
+ * kern/powerpc/cache.S (grub_arch_sync_caches): Handle
+ non-cacheline-aligned addresses.
+
+ * kern/dl.c (grub_dl_load_core): Add grub_dprintf messages.
+ (grub_dl_flush_cache): Likewise. Only call `grub_arch_sync_caches'
+ if `size' is non-zero.
+
+2005-12-03 Marco Gerards <mgerards@xs4all.nl>
+
+ * conf/common.rmk (grub_modules_init.lst): Use `-printf "%P\n"'
+ and `cd' to make sure the filename is not prefixed with a
+ directory name.
+ (pkgdata_MODULES): Add `gpt.mod'.
+ (gpt_mod_SOURCES): New variable.
+ (gpt_mod_CFLAGS): Likewise.
+ (gpt_mod_LDFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `partmap/gpt.c'.
+
+ * include/grub/pc_partition.h (GRUB_PC_PARTITION_TYPE_GPT_DISK):
+ New macro.
+
+ * partmap/gpt.c: New file.
+
+ * partmap/pc.c (pc_partition_map_iterate): Don't continue when a
+ GPT partition map is detected.
+
+2005-12-03 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * commands/i386/pc/play.c: New file.
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added play.mod.
+ (play_mod_SOURCES, play_mod_CFLAGS, play_mod_LDFLAGS): New
+ macros.
+
+2005-11-27 Marco Gerards <mgerards@xs4all.nl>
+
+ * include/grub/dl.h (GRUB_MOD_INIT): Use `__attribute__
+ ((unused))' to silence gcc warning.
+
+2005-11-26 Hollis Blanchard <hollis@penguinppc.org>
+
+ * configure.ac: Correct `AC_PROG_YACC' test.
+
+2005-11-22 Hollis Blanchard <hollis@penguinppc.org>
+
+ * util/powerpc/ieee1275/grub-install.in: Run the mount point
+ check before installing files.
+
+2005-11-22 Mike Small <smallm@panix.com>
+
+ * util/powerpc/ieee1275/grub-install.in (grubdir): Fixed partition
+ number regex so multidigit numbers are recognized correctly.
+
+2005-11-22 Mike Small <smallm@panix.com>
+
+ * loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Add a
+ debugging message before attempting to claim memory.
+ (grub_rescue_cmd_initrd): Add a claim debugging message and try
+ multiple addresses in case of failure.
+
+2005-11-22 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/tparm.c (get_space): Remove empty `if' statement.
+
+ * fs/ufs.c (grub_ufs_find_file): Remove `grub_le_to_cpu32'.
+
+ * kern/parser.c (check_varstate): Rename `state' to 's'.
+
+2005-11-22 Hollis Blanchard <hollis@penguinppc.org>
+
+ * partmap/acorn.c: Change `unsigned' to `unsigned int'. Move all
+ variable definitions to the beginning of each function. Sort stack
+ variables by size.
+ (find): Rename to `acorn_partition_map_find'. Cast `grub_disk_read'
+ `buf' argument to `char *'.
+
+2005-11-22 Hollis Blanchard <hollis@penguinppc.org>
+
+ * conf/powerpc-ieee1275.rmk: Include conf/common.mk.
+ (pkgdata_MODULES): Removed fshelp.mod, fat.mod, ext2.mod, ufs.mod,
+ minix.mod, hfs.mod, jfs.mod, xfs.mod, affs.mod, sfs.mod,
+ hello.mod, boot.mod, terminal.mod, ls.mod, cmp.mod, cat.mod,
+ help.mod, font.mod, terminfo.mod, amiga.mod, apple.mod, pc.mod,
+ sun.mod, acorn.mod, loopback.mod, default.mod, timeout.mod,
+ configfile.mod, search.mod, gzio.mod and test.mod.
+ (symlist.c, grub_script.tab.c, grub_script.tab.h, kernel_syms.lst)
+ (grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c)
+ (fshelp_mod_SOURCES, fshelp_mod_CFLAGS, fshelp_mod_LDFLAGS)
+ (fat_mod_SOURCES, fat_mod_CFLAGS, fat_mod_LDFLAGS)
+ (ext2_mod_SOURCES, ext2_mod_CFLAGS, ext2_mod_LDFLAGS)
+ (ufs_mod_SOURCES, ufs_mod_CFLAGS, ufs_mod_LDFLAGS)
+ (minix_mod_SOURCES, minix_mod_CFLAGS, minix_mod_LDFLAGS)
+ (hfs_mod_SOURCES, hfs_mod_CFLAGS, hfs_mod_LDFLAGS, jfs_mod_SOURCES)
+ (jfs_mod_CFLAGS, jfs_mod_LDFLAGS, iso9660_mod_SOURCES)
+ (iso9660_mod_CFLAGS, iso9660_mod_LDFLAGS, xfs_mod_SOURCES)
+ (xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES)
+ (affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES)
+ (sfs_mod_CFLAGS, sfs_mod_LDFLAGS, hello_mod_SOURCES)
+ (hello_mod_CFLAGS, hello_mod_LDFLAGS, boot_mod_SOURCES)
+ (boot_mod_CFLAGS, boot_mod_LDFLAGS, terminal_mod_SOURCES)
+ (terminal_mod_CFLAGS, terminal_mod_LDFLAGS, ls_mod_SOURCES)
+ (ls_mod_CFLAGS, ls_mod_LDFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS)
+ (cmp_mod_LDFLAGS, cat_mod_SOURCES, cat_mod_CFLAGS, cat_mod_LDFLAGS)
+ (help_mod_SOURCES, help_mod_CFLAGS, help_mod_LDFLAGS)
+ (font_mod_SOURCES, font_mod_CFLAGS, font_mod_LDFLAGS)
+ (terminfo_mod_SOURCES, terminfo_mod_CFLAGS, terminfo_mod_LDFLAGS)
+ (amiga_mod_SOURCES, amiga_mod_CFLAGS, amiga_mod_LDFLAGS)
+ (apple_mod_SOURCES, apple_mod_CFLAGS, apple_mod_LDFLAG): Removed.
+
+ * conf/common.mk (grub_modules_init.lst): Use `find' instead of
+ `grep --include'.
+ (pkgdata_MODULES): Add test.mod.
+
+2005-11-18 Timothy Baldwin <T.E.Baldwin99@members.leeds.ac.uk>
+
+ * genmk.rb: Fixed list rules moved to Makefile.in. Recognise
+ appending to variables with "+=".
+ (PModule): Use full pathname to generate *.lst filenames.
+
+ * Makefile.in: Fixed list rules moved from genmk.rb.
+ (.DELETE_ON_ERROR): New special target.
+ (RMKFILES): Add common.rmk and sparc64-ieee1275.rmk.
+
+ * conf/i386-pc.rmk: Include conf/common.mk.
+ (pkgdata_MODULES): Removed fshelp.mod, fat.mod, ext2.mod, ufs.mod,
+ minix.mod, hfs.mod, jfs.mod, xfs.mod, affs.mod, sfs.mod,
+ hello.mod, boot.mod, terminal.mod, ls.mod, cmp.mod, cat.mod,
+ help.mod, font.mod, terminfo.mod, amiga.mod, apple.mod, pc.mod,
+ sun.mod, acorn.mod, loopback.mod, default.mod, timeout.mod,
+ configfile.mod, search.mod, gzio.mod and test.mod.
+ (symlist.c, grub_script.tab.c, grub_script.tab.h, kernel_syms.lst)
+ (grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c)
+ (fshelp_mod_SOURCES, fshelp_mod_CFLAGS, fshelp_mod_LDFLAGS)
+ (fat_mod_SOURCES, fat_mod_CFLAGS, fat_mod_LDFLAGS)
+ (ext2_mod_SOURCES, ext2_mod_CFLAGS, ext2_mod_LDFLAGS)
+ (ufs_mod_SOURCES, ufs_mod_CFLAGS, ufs_mod_LDFLAGS)
+ (minix_mod_SOURCES, minix_mod_CFLAGS, minix_mod_LDFLAGS)
+ (hfs_mod_SOURCES, hfs_mod_CFLAGS, hfs_mod_LDFLAGS, jfs_mod_SOURCES)
+ (jfs_mod_CFLAGS, jfs_mod_LDFLAGS, iso9660_mod_SOURCES)
+ (iso9660_mod_CFLAGS, iso9660_mod_LDFLAGS, xfs_mod_SOURCES)
+ (xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES)
+ (affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES)
+ (sfs_mod_CFLAGS, sfs_mod_LDFLAGS, hello_mod_SOURCES)
+ (hello_mod_CFLAGS, hello_mod_LDFLAGS, boot_mod_SOURCES)
+ (boot_mod_CFLAGS, boot_mod_LDFLAGS, terminal_mod_SOURCES)
+ (terminal_mod_CFLAGS, terminal_mod_LDFLAGS, ls_mod_SOURCES)
+ (ls_mod_CFLAGS, ls_mod_LDFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS)
+ (cmp_mod_LDFLAGS, cat_mod_SOURCES, cat_mod_CFLAGS, cat_mod_LDFLAGS)
+ (help_mod_SOURCES, help_mod_CFLAGS, help_mod_LDFLAGS)
+ (font_mod_SOURCES, font_mod_CFLAGS, font_mod_LDFLAGS)
+ (terminfo_mod_SOURCES, terminfo_mod_CFLAGS, terminfo_mod_LDFLAGS)
+ (amiga_mod_SOURCES, amiga_mod_CFLAGS, amiga_mod_LDFLAGS)
+ (apple_mod_SOURCES, apple_mod_CFLAGS, apple_mod_LDFLAG): Move from
+ here...
+ * conf/common.rmk: ... to here. New file.
+
+ * conf/common.mk: New file.
+
+2005-11-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * conf/powerpc-ieee1275.rmk (grub_script.tab.h): Unified to ...
+ (grub_script.tab.c): ... here.
+
+ * conf/sparc64-ieee1275.rmk (grub_script.tab.h): Unified to ...
+ (grub_script.tab.c): ... here.
+
+ * conf/i386-pc.rmk (grub_script.tab.h): Unified to ...
+ (grub_script.tab.c): ... here.
+
+ * normal/command.c (grub_command_find): Fixed a memory leak of
+ MODULE_NAME. Reported by Mike Small <smallm@panix.com>.
+
+2005-11-13 Timothy Baldwin <T.E.Baldwin99@members.leeds.ac.uk>
+
+ * include/grub/symbol.h: (FUNCTION): Use double quotes instead of
+ "@" which marks the start of a comment on ARM.
+ (VARIABLE): Likewise.
+
+2005-11-13 Timothy Baldwin <T.E.Baldwin99@members.leeds.ac.uk>
+
+ Add support for Linux/ADFS partition tables.
+
+ * partmap/acorn.c: New file.
+
+ * include/grub/acorn_filecore.h: Likewise.
+
+ * DISTLIST: Added `partmap/acorn.c' and
+ `include/grub/acorn_filecore.h'.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
+ `partmap/acorn.c'.
+ (pkgdata_MODULES): Add `acorn.mod'.
+ (acorn_mod_SOURCES): New variable.
+ (acorn_mod_CFLAGS): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add
+ `partmap/acorn.c'.
+ (pkgdata_MODULES): Add `acorn.mod'.
+ (acorn_mod_SOURCES): New variable.
+ (acorn_mod_CFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `partmap/acorn.c'.
+ (pkgdata_MODULES): Add `acorn.mod'.
+ (acorn_mod_SOURCES): New variable.
+ (acorn_mod_CFLAGS): Likewise.
+ (acorn_mod_LDFLAGS): Likewise.
+
+ * include/types.h (grub_disk_addr_t): New typedef.
+
+2005-11-13 Marco Gerards <mgerards@xs4all.nl>
+
+ * geninit.sh: New file.
+
+ * geninitheader.sh: Likewise.
+
+ * commands/boot.c (grub_boot_init, grub_boot_fini): Removed.
+ * commands/cat.c (grub_cat_init, grub_cat_fini): Likewise.
+ * commands/cmp.c (grub_cmp_init, grub_cmp_fini): Likewise.
+ * commands/configfile.c (grub_configfile_init)
+ (grub_configfile_fini): Likewise.
+ * commands/default.c (grub_default_init, grub_default_fini):
+ Likewise.
+ * commands/help.c (grub_help_init, grub_help_fini): Likewise.
+ * commands/ls.c (grub_ls_init, grub_ls_fini): Likewise.
+ * commands/search.c (grub_search_init, grub_search_fini): Likewise.
+ * commands/terminal.c (grub_terminal_init, grub_terminal_fini):
+ Likewise.
+ * commands/test.c (grub_test_init, grub_test_fini): Likewise.
+ * commands/timeout.c (grub_timeout_init, grub_timeout_fini):
+ Likewise.
+ * commands/i386/pc/halt.c (grub_halt_init, grub_halt_fini): Likewise.
+ * commands/ieee1275/halt.c (grub_halt_init, grub_halt_fini):
+ Likewise.
+ * commands/i386/pc/reboot.c (grub_reboot_init, grub_reboot_fini):
+ Likewise.
+ * commands/ieee1275/reboot.c (grub_reboot_init, grub_reboot_fini):
+ Likewise.
+ * disk/loopback.c (grub_loop_init, grub_loop_fini): Likewise.
+ * fs/affs.c (grub_affs_init, grub_affs_fini): Likewise.
+ * fs/ext2.c (grub_ext2_init, grub_ext2_fini): Likewise.
+ * fs/fat.c (grub_fat_init, grub_fat_fini): Likewise.
+ * fs/hfs.c (grub_hfs_init, grub_hfs_fini): Likewise.
+ * fs/iso9660.c (grub_iso9660_init, grub_iso9660_fini): Likewise.
+ * fs/jfs.c (grub_jfs_init, grub_jfs_fini): Likewise.
+ * fs/minix.c (grub_minix_init, grub_minix_fini): Likewise.
+ * fs/sfs.c (grub_sfs_init, grub_sfs_fini): Likewise.
+ * fs/ufs.c (grub_ufs_init, grub_ufs_fini): Likewise.
+ * fs/xfs.c (grub_xfs_init, grub_xfs_fini): Likewise.
+ * normal/main.c (grub_normal_init, grub_normal_fini): Likewise.
+ * partmap/amiga.c (grub_amiga_partition_map_init)
+ (grub_amiga_partition_map_fini): Likewise.
+ * partmap/apple.c (grub_apple_partition_map_init)
+ (grub_apple_partition_map_fini): Likewise.
+ * partmap/pc.c (grub_pc_partition_map_init)
+ (grub_pc_partition_map_fini): Likewise.
+ * partmap/sun.c (grub_sun_partition_map_init,
+ grub_sun_partition_map_fini): Likewise.
+ * term/terminfo.c (grub_terminal_init, grub_terminal_fini):
+ Likewise.
+
+ * util/grub-emu.c: Include <grub_modules_init.h>.
+ (main): Don't initialize and de-initialize any modules directly,
+ use `grub_init_all' and `grub_fini_all' instead.
+
+ * term/i386/pc/vesafb.c (grub_vesafb_init): Renamed to
+ `grub_vesafb_mod_init'.
+ (grub_vesafb_fini): Renamed to `grub_vesafb_mod_fini'. Updated
+ all users.
+ * term/i386/pc/vga.c (grub_vga_init): Renamed to
+ `grub_vga_mod_init'. Updated all users.
+ (grub_vga_fini): Renamed to `grub_vga_mod_fini'.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `grub_emu_init.c'.
+ (grub_modules_init.lst, grub_modules_init.h, grub_emu_init.c): New
+ rules.
+
+ * include/grub/dl.h (GRUB_MOD_INIT): Add argument `name'.
+ Generate a function to initialize the module in utilities.
+ Updated all callers.
+ (GRUB_MOD_FINI): Add argument `name'. Generate a function to
+ initialize the module in utilities. Updated all callers.
+
+2005-11-09 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_cls): Use both the ANSI
+ escape sequence and a literal ^L to clear the screen.
+
+ * commands/ieee1275/suspend.c (grub_cmd_suspend): Clear the screen
+ when returning from Open Firmware.
+
+2005-11-09 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_width): New variable.
+ (grub_ofconsole_height): Likewise.
+ (grub_ofconsole_putchar): If `grub_curr_x' exceeds console width,
+ manually insert a '\n'.
+ (grub_ofconsole_getwh): Set and return `grub_ofconsole_width' and
+ `grub_ofconsole_height'. Return early if these are already set.
+
+2005-11-07 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * conf/sparc64-ieee1275.rmk (grub_emu_SOURCES): Add
+ `commands/test.c', `fs/affs.c', `fs/sfs.c', `fs/xfs.c',
+ `normal/execute.c', `normal/lexer.c', `io/gzio.c',
+ `kern/parser.c', `grub_script.tab.c', `normal/function.c'
+ and `normal/script.c'.
+ (normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
+ `grub_script.tab.c', `normal/function.c' and `normal/script.c'.
+ (test_mod_SOURCES): New variable.
+ (test_mod_CFLAGS): Likewise.
+ (test_mod_LDFLAGS): Likewise.
+ (pkgdata_MODULES): Add `test.mod'.
+ (grub_script.tab.c): New rule.
+ (grub_script.tab.h): Likewise.
+
+2005-11-07 Marco Gerards <mgerards@xs4all.nl>
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
+ `commands/test.c', `normal/execute.c', `normal/lexer.c',
+ `grub_script.tab.c', `normal/function.c' and `normal/script.c'.
+ (normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
+ `grub_script.tab.c', `normal/function.c' and `normal/script.c'.
+ (test_mod_SOURCES): New variable.
+ (test_mod_CFLAGS): Likewise.
+ (pkgdata_MODULES): Add `test.mod'.
+ (grub_script.tab.c): New rule.
+ (grub_script.tab.h): Likewise.
+
+2005-11-06 Marco Gerards <mgerards@xs4all.nl>
+
+ Add initial scripting support.
+
+ * commands/test.c: New file.
+ * include/grub/script.h: Likewise.
+ * normal/execute.c: Likewise.
+ * normal/function.c: Likewise.
+ * normal/lexer.c: Likewise.
+ * normal/parser.y: Likewise.
+ * normal/script.c: Likewise.
+
+ * configure.ac: Add `AC_PROG_YACC' test.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/test.c',
+ `normal/execute.c', `normal/lexer.c', `grub_script.tab.c',
+ `normal/function.c' and `normal/script.c'.
+ (normal_mod_SOURCES): `normal/execute.c', `normal/lexer.c',
+ `grub_script.tab.c', `normal/function.c' and `normal/script.c'.
+ (test_mod_SOURCES, test_mod_CFLAGS, test_mod_LDFLAGS): New
+ variables.
+ (pkgdata_MODULES): Add `test.mod'.
+ (grub_script.tab.c): New rule.
+ (grub_script.tab.h): Likewise.
+
+ * include/grub/err.h (grub_err_t): Add `GRUB_ERR_TEST_FAILURE'.
+
+ * include/grub/normal.h (grub_test_init): New prototype.
+ (grub_test_fini): Likewise.
+
+ * normal/command.c: Include <grub/script.h>.
+ (grub_command_execute): Rewritten.
+
+ * util/grub-emu.c (main): Call `grub_test_init' and
+ `grub_test_fini'.
+
+2005-11-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/init.c (grub_get_rtc): Initialize `msecs'
+ to 0.
+ * term/ieee1275/ofconsole.c (grub_ofconsole_checkkey): Return -1 if
+ there are no pending characters.
+
+2005-11-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/openfw.c (grub_ieee1275_get_devname): Use
+ `grub_strndup' to drop device arguments. Replace unnecessary
+ `grub_strndup' with `grub_strdup'.
+
+2005-11-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/term.c (grub_cls): Do not call grub_cur_term->cls() if the
+ `debug' environment variable has been set.
+
+2005-11-02 Hollis Blanchard <hollis@penguinppc.org>
+
+ * Makefile.in (install-local): Use $(DATA).
+ (uninstall): Likewise.
+ * conf/powerpc-ieee1275.rmk (bin_UTILITIES): Move grub-mkimage...
+ (sbin_UTILITIES): ... to here.
+ (sbin_SCRIPTS): New variable.
+ (grub_install_SOURCES): New variable.
+ * util/powerpc/ieee1275/grub-install.in: New file.
+ * util/powerpc/ieee1275/grub-mkimage.c (kernel_path): Remove
+ variable.
+ (add_segments): Call `grub_util_get_path'.
+
+2005-10-28 Yoshinori K. Okuji <okuji@enbug.org>
+
+ From Timothy Baldwin:
+ * commands/ls.c (grub_ls_list_files): Close FILE with
+ grub_file_close.
+ * kern/misc.c (grub_vsprintf): Terminate the string S with NUL.
+
+2005-10-24 Marco Gerards <mgerards@xs4all.nl>
+
+ * include/grub/parser.h: New file.
+
+ * kern/parser.c: Likewise.
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add `kern/parser.c'.
+ (grub_setup_SOURCES): Likewise.
+ (grub_probefs_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ (kernel_img_HEADERS): Add `parser.h'.
+
+ * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Add `parser.h'.
+ (grub_emu_SOURCES): Add `kern/parser.c'.
+ (grubof_SOURCES): Likewise.
+
+ * conf/sparc64-ieee1275.rmk (grubof_HEADERS): Add `parser.h'.
+ (grubof_SOURCES): Add `kern/parser.c'.
+
+ * include/grub/misc.h (grub_split_cmdline): Removed prototype.
+
+ * kern/misc.c (grub_split_cmdline): Removed function.
+
+ * kern/rescue.c: Include <grub/parser.h>.
+ (grub_enter_rescue_mode): Use `grub_parser_split_cmdline' instead
+ of `grub_split_cmdline'.
+
+ * normal/command.c: Include <grub/parser.h>.
+ (grub_command_execute): Use `grub_parser_split_cmdline' instead
+ of `grub_split_cmdline'.
+
+ * normal/completion.c: Include <grub/parser.h>.
+ (cmdline_state): New variable.
+ (iterate_dir): End the filename with a quote depending on the
+ command line state.
+ (get_state): new function.
+ (grub_normal_do_completion): Use `grub_parser_split_cmdline' to
+ split the arguments and determine the current argument. When the
+ argument string is not quoted, escape all spaces.
+
+2005-10-23 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * normal/sparc64/setjmp.S: New file.
+
+2005-10-23 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * include/grub/sparc64/libgcc.h: New file.
+ * conf/sparc64-ieee1275.rmk (COMMON_ASFLAGS): Remove -Av9.
+ (normal_mod_SOURCES): Use normal/sparc64/setjmp.S instead of
+ normal/sparc64/setjmp.c.
+
+2005-10-23 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * kern/sparc64/dl.c: Rewritten for SPARCV9 ELF.
+ * kern/sparc64/cache.S: New file.
+ * kern/sparc64/cache.c: Removed.
+ * conf/sparc64-ieee1275.rmk (COMMON_ASFLAGS): Add -Av9.
+ (COMMON_CFLAGS): Add -mno-app-regs. Remove -mcpu=v9 and
+ -mtune=ultrasparc.
+ (COMMON_LDFLAGS): Add -melf64_sparc.
+ (grubof_HEADERS): Add sparc64/libgcc.h and machine/kernel.h.
+ (grubof_SOURCES): Use cache.S instead of cache.c.
+ (grubof_LDFLAGS): Add -mno-app-regs. Replace "-Xlinker
+ --oformat -Xlinker elf64-sparc" by "-Bstatic,-melf64_sparc".
+ (pkgdata_MODULES): Uncomment. Leave linux.mod and _linux.mod
+ commented though.
+ (normal_mod_SOURCES): Add normal/completion.c and normal/misc.c.
+ (_linux_mod_SOURCES, _linux_mod_CFLAGS, linux_mod_SOURCES)
+ (linux_mod_CFLAGS): Commented out.
+ (_linux_mod_LDFLAGS, linux_mod_LDFLAGS): New macro, commented
+ out because module isn't built.
+ (fshelp_mod_LDFLAGS, fat_mod_LDFLAGS, ext2_mod_LDFLAGS)
+ (ufs_mod_LDFLAGS, minix_mod_LDFLAGS, hfs_mod_LDFLAGS)
+ (jfs_mod_LDFLAGS, iso9660_mod_LDFLAGS, normal_mod_LDFLAGS)
+ (hello_mod_LDFLAGS, boot_mod_LDFLAGS, terminal_mod_LDFLAGS)
+ (ls_mod_LDFLAGS, cmp_mod_LDFLAGS, cat_mod_LDFLAGS)
+ (font_mod_LDFLAGS, amiga_mod_LDFLAGS, apple_mod_LDFLAGS)
+ (pc_mod_LDFLAGS, sun_mod_LDFLAGS, loopback_mod_LDFLAGS)
+ (suspend_mod_LDFLAGS, reboot_mod_LDFLAGS, halt_mod_LDFLAGS)
+ (help_mod_LDFLAGS, default_mod_LDFLAGS, timeout_mod_LDFLAGS)
+ (configfile_mod_LDFLAGS, search_mod_LDFLAGS, xfs_mod_SOURCES)
+ (xfs_mod_CFLAGS, xfs_mod_LDFLAGS, affs_mod_SOURCES)
+ (affs_mod_CFLAGS, affs_mod_LDFLAGS, sfs_mod_SOURCES)
+ (sfs_mod_CFLAGS, sfs_mod_LDFLAGS, gzio_mod_SOURCES)
+ (gzio_mod_CFLAGS, gzio_mod_LDFLAGS): New macro.
+
+2005-10-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-probefs.c (main): Call grub_xfs_init and
+ grub_xfs_fini. Do not call grub_hfs_init or grub_hfs_fini any
+ longer, because HFS should not be used on PC.
+
+2005-10-20 Timothy Baldwin <T.E.Baldwin99@members.leeds.ac.uk>
+
+ * io/gzio.c (grub_gzio_read): Use OFFSET instead of FILE->OFFSET
+ consistently within the loop.
+
+2005-10-15 Marco Gerards <mgerards@xs4all.nl>
+
+ * fs/xfs.c (grub_xfs_iterate_dir): Detect an error if part of a
+ directory can not be read.
+
+2005-10-15 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac (AC_INIT): Increase the version number to 1.91.
+
+ * DISTLIST: Added include/grub/terminfo.h, include/grub/tparm.h,
+ include/grub/i386/pc/serial.h, term/terminfo.c, term/tparm.c and
+ term/i386/pc/serial.c.
+
+2005-10-15 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/file.c (grub_file_seek): Seeking to an offset equal to a
+ file size must be permitted.
+
+ * kern/i386/pc/startup.S (multiboot_trampoline): Fix a mistake
+ between %ah and %al.
+
+2005-10-15 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/xfs.c (grub_xfs_iterate_dir): Change the type of BLK to
+ grub_uint64_t.
+ Call the hook with a NUL-terminated filename.
+ (grub_xfs_mount): Use grub_be_to_cpu32 instead of
+ grub_cpu_to_be32.
+
+ * kern/term.c (cursor_state): New variable.
+ (grub_term_set_current): Reset the cursor state on a new
+ terminal.
+ (grub_setcursor): Rewritten to use CURSOR_STATE.
+ (grub_getcursor): New function.
+
+ * include/grub/term.h (grub_getcursor): New prototype.
+
+ * io/gzio.c (test_header): Align BUF for accessing it as 32-bit
+ integers on ARM. Reported by Timothy Baldwin
+ <T.E.Baldwin99@members.leeds.ac.uk>.
+
+2005-10-11 Marco Gerards <mgerards@xs4all.nl>
+
+ * fs/sfs.c (grub_sfs_open): Don't free `data->label' if it is not
+ allocated.
+ (grub_sfs_dir): Likewise.
+
+2005-10-09 Marco Gerards <mgerards@xs4all.nl>
+
+ Add support for the SFS filesystem.
+
+ * fs/sfs.c: New file.
+
+ * DISTLIST: Added `fs/sfs.c'.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/sfs.c'.
+ (grub_probefs_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add `sfs.mod'.
+ (sfs_mod_SOURCES): New variable.
+ (sfs_mod_CFLAGS): Likewise.
+ (sfs_mod_LDFLAGS): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/sfs.c'.
+ (pkgdata_MODULES): Add `sfs.mod'.
+ (sfs_mod_SOURCES): New variable.
+ (sfs_mod_CFLAGS): Likewise.
+
+ * util/grub-emu.c (main): Call `grub_sfs_init' and
+ `grub_sfs_fini'.
+
+ * include/grub/fs.h (grub_sfs_init): New prototype.
+ (grub_sfs_fini): Likewise.
+
+2005-10-07 Marco Gerards <mgerards@xs4all.nl>
+
+ Add support for the AFFS filesystem.
+
+ * fs/affs.c: New file.
+
+ * DISTLIST: Added `fs/affs.c'.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/affs.c'.
+ (grub_probefs_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add `affs.mod'.
+ (affs_mod_SOURCES): New variable.
+ (affs_mod_CFLAGS): Likewise.
+ (affs_mod_LDFLAGS): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/affs.c'.
+ (pkgdata_MODULES): Add `affs.mod'.
+ (affs_mod_SOURCES): New variable.
+ (affs_mod_CFLAGS): Likewise.
+
+ * util/grub-emu.c (main): Call `grub_affs_init' and
+ `grub_affs_fini'.
+
+ * include/grub/fs.h (grub_affs_init): New prototype.
+ (grub_affs_fini): Likewise.
+
+2005-10-01 Marco Gerards <mgerards@xs4all.nl>
+
+ * fs/xfs.c (grub_xfs_iterate_dir): Add parentheses.
+
+2005-10-01 Marco Gerards <mgerards@xs4all.nl>
+
+ * configure.ac: Accept `x86_64' as host_cpu. In that case add
+ `-m32' to CFLAGS.
+
+ * genmk.rb (class PModule): Always use `$(#{prefix}_LDFLAGS)' when
+ linking.
+
+ * conf/i386-pc.rmk (COMMON_CFLAGS): Add `-m32'.
+ (COMMON_LDFLAGS): New variable.
+ (kernel_img_LDFLAGS): Include `COMMON_FLAGS'.
+ (_chain_mod_LDFLAGS, fshelp_mod_LDFLAGS, fat_mod_LDFLAGS)
+ (ext2_mod_LDFLAGS, ufs_mod_LDFLAGS, minix_mod_LDFLAGS)
+ (hfs_mod_LDFLAGS, jfs_mod_LDFLAGS, iso9660_mod_LDFLAGS)
+ (xfs_mod_LDFLAGS, _linux_mod_LDFLAGS, linux_mod_LDFLAGS)
+ (normal_mod_LDFLAGS, hello_mod_LDFLAGS, boot_mod_LDFLAGS)
+ (terminal_mod_LDFLAGS, ls_mod_LDFLAGS, cmp_mod_LDFLAGS)
+ (cat_mod_LDFLAGS, help_mod_LDFLAGS, reboot_mod_LDFLAGS)
+ (halt_mod_LDFLAGS, vga_mod_LDFLAGS, font_mod_LDFLAGS)
+ (terminfo_mod_LDFLAGS, serial_mod_LDFLAGS, _multiboot_mod_LDFLAGS)
+ (multiboot_mod_LDFLAGS, amiga_mod_LDFLAGS, apple_mod_LDFLAGS)
+ (pc_mod_LDFLAGS, sun_mod_LDFLAGS, loopback_mod_LDFLAGS)
+ (default_mod_LDFLAGS, timeout_mod_LDFLAGS, configfile_mod_LDFLAGS)
+ (vbe_mod_LDFLAGS, vesafb_mod_LDFLAGS, vbeinfo_mod_LDFLAGS)
+ (vbetest_mod_LDFLAGS, search_mod_LDFLAGS, gzio_mod_LDFLAGS): New
+ variables.
+ (normal_mod_ASFLAGS): Add `-m32'.
+
+ * include/grub/types.h (grub_host_addr_t, grub_host_off_t)
+ (grub_host_size_t, grub_host_ssize_t): New types.
+ (grub_addr_t, grub_off_t, grub_size_t, grub_ssize_t): Make type
+ dependent of `GRUB_CPU_SIZEOF_VOID_P' instead on
+ `GRUB_HOST_SIZEOF_VOID_P'.
+
+ * include/grub/kernel.h (struct grub_module_header): Type of
+ member offset changed to `grub_host_off_t'. Type of member size
+ changed to `grub_host_size_t'.
+ (struct grub_module_info): Type of member offset changed to
+ `grub_host_off_t'. Type of member size changed to
+ `grub_host_size_t'.
+
+2005-09-29 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Make GRUB's kernel compliant to Multiboot Specification.
+
+ * kern/i386/pc/startup.S (multiboot_header): New label.
+ (multiboot_entry): Likewise.
+ (multiboot_trampoline): Likewise.
+
+ * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
+ Increased to 0x4A0.
+
+ * fs/xfs.c (grub_xfs_iterate_dir): Fix a syntax error. You may not
+ put parentheses after a question mark.
+ [!GRUB_UTIL] (my_mod): New variable.
+
+ * util/grub-emu.c (main): Call grub_xfs_init and grub_xfs_fini.
+
+2005-09-28 Marco Gerards <mgerards@xs4all.nl>
+
+ Adds support for the XFS filesystem. Btrees are not supported
+ yet.
+
+ * fs/xfs.c: New file.
+
+ * DISTLIST: Added `fs/xfs.c'.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add `fs/xfs.c'.
+ (grub_probefs_SOURCES): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add `xfs.mod'.
+ (xfs_mod_SOURCES): New variable.
+ (xfs_mod_CFLAGS): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add `fs/xfs.c'.
+ (pkgdata_MODULES): Add `xfs.mod'.
+ (xfs_mod_SOURCES): New variable.
+ (xfs_mod_CFLAGS): Likewise.
+
+ * util/grub-emu.c (main): Call `grub_xfs_init' and
+ `grub_xfs_fini'.
+
+ * include/grub/fs.h (grub_xfs_init): New prototype.
+ (grub_xfs_fini): Likewise.
+
+
+2005-09-18 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * video/i386/pc/vbe.c (grub_vbe_set_video_mode): In indexed
+ color modes, allow greater than 16 colors to be configured as
+ a default palette.
+
+2005-09-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/completion.c (complete_arguments): Add the qualifier
+ const into OPTIONS.
+
+ From Omniflux <omniflux+lists@omniflux.com>:
+ * include/grub/terminfo.h: New file.
+ * include/grub/tparm.h: Likewise.
+ * include/grub/i386/pc/serial.h: Likewise.
+ * term/terminfo.c: Likewise.
+ * term/tparm.c: Likewise.
+ * term/i386/pc/serial.c: Likewise.
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added terminfo.mod and
+ serial.mod.
+ (terminfo_mod_SOURCES): New variable.
+ (terminfo_mod_CFLAGS): Likewise.
+ (serial_mod_SOURCES): Likewise.
+ (serial_mod_CFLAGS): Likewise.
+
+2005-08-31 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Replaced boot/powerpc/ieee1275/crt0.S and
+ boot/powerpc/ieee1275/cmain.c with kern/powerpc/ieee1275/crt0.S
+ and kern/powerpc/ieee1275/cmain.c, respectively.
+
+ * boot/powerpc/ieee1275/crt0.S: Moved to ...
+ * kern/powerpc/ieee1275/crt0.S: ... here.
+
+ * boot/powerpc/ieee1275/cmain.c: Moved to ...
+ * kern/powerpc/ieee1275/cmain.c: ... here.
+
+ * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Use
+ kern/powerpc/ieee1275/crt0.S and kern/powerpc/ieee1275/cmain.c
+ instead of boot/powerpc/ieee1275/crt0.S and
+ boot/powerpc/ieee1275/cmain.c, respectively.
+
+ * boot/i386/pc/boot.S (lba_mode): Do not store the total number of
+ sectors. It was not used anyway.
+
+2005-08-30 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_getcharwidth): Fix
+ `unused parameter' warning.
+
+2005-08-30 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/ieee1275/ofconsole.c (grub_ofconsole_getcharwidth): New
+ function.
+ (grub_ofconsole_term): Specify grub_ofconsole_getcharwidth as
+ getcharwidth.
+
+2005-08-28 Marco Gerards <metgerards@student.han.nl>
+
+ * include/grub/normal.h (enum grub_completion_type): Added
+ `GRUB_COMPLETION_TYPE_ARGUMENT'.
+
+ * normal/cmdline.c (print_completion): Handle
+ the `GRUB_COMPLETION_TYPE_ARGUMENT' type.
+ * normal/menu_entry.c (store_completion): Likewise.
+
+ * normal/completion.c (complete_arguments): New function.
+ (grub_normal_do_completion): Call `complete_arguments' when the
+ current words start with a dash.
+
+2005-08-27 Marco Gerards <metgerards@student.han.nl>
+
+ * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Fix typo (use
+ `gzio.mod' instead of `io.mod').
+
+2005-08-22 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * gendistlist.sh (EXTRA_DISTFILES): Added genfslist.sh.
+ (DISTDIRS): Added io and video.
+ Rewrite the search routine to make an output consistently.
+
+ * DISTLIST: Added conf/sparc64-ieee1275.mk,
+ conf/sparc64-ieee1275.rmk, include/grub/gzio.h,
+ include/grub/ieee1275/ieee1275.h, include/grub/ieee1275/ofdisk.h,
+ io/gzio.c, kern/sparc64/cache.c, kern/sparc64/dl.c,
+ kern/sparc64/ieee1275/init.c, kern/sparc64/ieee1275/openfw.c and
+ util/powerpc/ieee1275/misc.c.
+
+ * include/grub/gzio.h: New file.
+ * io/gzio.c: Likewise.
+
+ * kern/file.c (grub_file_close): Call grub_device_close only if
+ FILE->DEVICE is not NULL.
+
+ * include/grub/mm.h [!NULL] (NULL): New macro.
+
+ * include/grub/err.h (GRUB_ERR_BAD_GZIP_DATA): New constant.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added io/gzip.c.
+ (pkgdata_MODULES): Added gzio.mod.
+ (gzio_mod_SOURCES): New variable.
+ (gzio_mod_CFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added io/gzip.c.
+ (pkgdata_MODULES): Added gzio.mod.
+ (gzio_mod_SOURCES): New variable.
+ (gzio_mod_CFLAGS): Likewise.
+
+ * commands/cat.c: Include grub/gzio.h.
+ (grub_cmd_cat): Use grub_gzfile_open instead of
+ grub_file_open.
+
+ * commands/cmp.c: Include grub/gzio.h.
+ (grub_cmd_cmp): Use grub_gzfile_open instead of
+ grub_file_open.
+
+ * loader/i386/pc/multiboot.c: Include grub/gzio.h.
+ (grub_rescue_cmd_multiboot): Use grub_gzfile_open instead of
+ grub_file_open.
+ (grub_rescue_cmd_module): Likewise.
+
+2005-08-21 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * conf/sparc64-ieee1275.rmk (grubof_SOURCES): The first file must be
+ kern/sparc64/ieee1275/init.c because it contains _start.
+ * conf/sparc64-ieee1275.mk: Generated from conf/sparc64-ieee1275.rmk.
+
+2005-08-21 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * configure.ac: Add support for sparc64 host with ieee1275
+ firmware.
+ * configure: Generated from configure.ac.
+ * disk/ieee1275/ofdisk.c (grub_ofdisk_open): Use grub_ssize_t
+ instead of int.
+ (grub_ofdisk_read): Likewise.
+ (grub_ofdisk_open): Use %p to print pointer values, and cast the
+ pointers as (void *) to remove a warning.
+ (grub_ofdisk_close): Likewise.
+ (grub_ofdisk_read): Likewise.
+ * kern/ieee1275/ieee1275.c (grub_ieee1275_exit): This never
+ returns, so make it return void to remove a warning.
+ * include/grub/ieee1275/ieee1275.h (grub_ieee1275_exit):
+ Corresponding prototype change.
+ * kern/mm.c (grub_mm_init_region): Use %p to print pointer
+ values, and cast the pointers as (void *) to remove a warning.
+ (grub_mm_dump): Likewise.
+ * conf/sparc64-ieee1275.mk: New file.
+ * conf/sparc64-ieee1275.rmk: Likewise.
+ * include/grub/sparc64/setjmp.h: Likewise.
+ * include/grub/sparc64/types.h: Likewise.
+ * include/grub/sparc64/ieee1275/console.h: Likewise.
+ * include/grub/sparc64/ieee1275/ieee1275.h: Likewise.
+ * include/grub/sparc64/ieee1275/kernel.h: Likewise.
+ * include/grub/sparc64/ieee1275/time.h: Likewise.
+ * kern/sparc64/cache.c: Likewise.
+ * kern/sparc64/dl.c: Likewise.
+ * kern/sparc64/ieee1275/init.c: Likewise.
+ * kern/sparc64/ieee1275/openfw.c: Likewise.
+
+2005-08-21 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/console.c (grub_ncurses_putchar): If C is greater than
+ 0x7f, set C to a question mark.
+ (grub_ncurses_getcharwidth): New function.
+ (grub_ncurses_term): Specify grub_ncurses_getcharwidth as
+ getcharwidth.
+
+ * normal/menu.c (print_entry): Made aware of Unicode. First,
+ convert TITLE to UCS-4, and predict the cursor position by
+ grub_getcharwidth.
+
+ * include/grub/misc.h (grub_utf8_to_ucs4): Specify the qualifier
+ const to SRC.
+ * kern/misc.c (grub_utf16_to_utf8): Likewise.
+
+2005-08-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Specify
+ the boot file by the option BOOT_IMAGE. Use grub_stpcpy instead of
+ grub_strcat.
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_linux): Specify the boot
+ file by the option BOOT_IMAGE. Use grub_stpcpy instead of
+ grub_strcpy and grub_strlen. Take it into account that a space
+ character is inserted as a delimiter.
+
+2005-08-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * partmap/pc.c (pc_partition_map_iterate): Include the value of an
+ invalid magic in the error.
+
+ * commands/search.c: New file.
+
+ * util/grub-emu.c (main): Call grub_search_init and
+ grub_search_fini.
+
+ * kern/rescue.c (grub_rescue_print_disks): Removed.
+ (grub_rescue_print_devices): New function.
+ (grub_rescue_cmd_ls): Use grub_device_iterate with
+ grub_rescue_print_devices instead of grub_disk_dev_iterate with
+ grub_rescue_print_disks.
+
+ * kern/partition.c (grub_partition_iterate): Return the result of
+ PARTMAP->ITERATE instead of GRUB_ERRNO.
+
+ * kern/device.c: Include grub/partition.h.
+ (grub_device_iterate): New function.
+
+ * include/grub/partition.h (grub_partition_iterate): Return int
+ instead of grub_err_t.
+
+ * include/grub/normal.h [GRUB_UTIL] (grub_search_init): New
+ prototype.
+ [GRUB_UTIL] (grub_search_fini): Likewise.
+
+ * include/grub/device.h (grub_device_iterate): New prototype.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added
+ commands/search.c.
+ (pkgdata_MODULES): Added search.mod.
+ (search_mod_SOURCES): New variable.
+ (search_mod_CFLAGS): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added commands/search.c.
+ (pkgdata_MODULES): Added search.mod.
+ (search_mod_SOURCES): New variable.
+ (search_mod_CFLAGS): Likewise.
+
+ * commands/ls.c (grub_ls_list_disks): Renamed to ...
+ (grub_ls_list_devices): ... this, and use grub_device_iterate.
+ All callers changed.
+
+ * DISTLIST: Added commands/search.c.
+
+2005-08-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/term.c (grub_putchar): Use grub_utf8_to_ucs4 for the
+ conversion.
+ (grub_getcharwidth): New function.
+
+ * kern/misc.c (grub_utf8_to_ucs4): New function.
+
+ * include/grub/term.h (struct grub_term): Added a new member
+ "getcharwidth".
+ (grub_getcharwidth): New prototype.
+
+ * include/grub/misc.h (grub_utf8_to_ucs4): New prototype.
+
+ * term/i386/pc/console.c (map_char): New function. Segregated from
+ grub_console_putchar.
+ (grub_console_putchar): Use map_char.
+ (grub_console_getcharwidth): New function.
+ (grub_console_term): Specified grub_console_getcharwidth as
+ getcharwidth.
+
+ * term/i386/pc/vga.c (grub_vga_getcharwidth): New function.
+ (grub_vga_term): Specified grub_vga_getcharwidth as getcharwidth.
+
+ * term/i386/pc/vesafb.c (grub_virtual_screen_setup): Return
+ GRUB_ERRNO.
+ (grub_vesafb_init): Do not use RC. Instead, use GRUB_ERRNO. Rely
+ on grub_strtoul completely.
+ (write_char): Declare local variables in the beginning of the
+ function.
+ (grub_vesafb_getcharwidth): New function.
+ (grub_vesafb_term): Specified grub_vesafb_getcharwidth as
+ getcharwidth.
+
+2005-08-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Replace commands/i386/pc/vbe_list_modes.c and
+ commands/i386/pc/vbe_test.c with commands/i386/pc/vbeinfo.c and
+ commands/i386/pc/vbetest.c.
+
+ * video/i386/pc/vbe.c (grub_vbe_probe): If INFOBLOCK is not NULL,
+ call grub_vbe_get_controller_info again, because the returned
+ information is volatile.
+ (grub_vbe_set_video_mode): Mostly rewritten.
+ (grub_vbe_get_video_mode): Use grub_vbe_probe and use
+ grub_vbe_status_t correctly.
+ (grub_vbe_get_video_mode_info): Likewise.
+ (grub_vbe_set_pixel_rgb): Use a switch statement rather than
+ several if statements.
+
+ * commands/i386/pc/vbe_list_modes.c: Renamed to ...
+ * commands/i386/pc/vbeinfo.c: ... this.
+
+ * commands/i386/pc/vbe_test.c: Renamed to ...
+ * commands/i386/pc/vbetest.c: ... this.
+
+ * commands/i386/pc/vbeinfo.c (grub_cmd_vbe_list_modes): Renamed to
+ ...
+ (grub_cmd_vbeinfo): ... this. Save video modes before
+ iterating. Skip a video mode, if it is not available, not enough
+ information is given or it is monochrome. Show the memory
+ model. Leave the interpretation of MODEVAR to grub_strtoul
+ completely.
+ (GRUB_MOD_INIT): Rename vbe_list_modes to vbeinfo.
+ (GRUB_MOD_FINI): Likewise.
+
+ * commands/i386/pc/vbetest.c (grub_cmd_vbe_test): Renamed to ...
+ (grub_cmd_vbetest): ... this. Don't print unnecessarily. Use
+ grub_err_t instead of grub_uint32_t. Don't use SPTR. Remove a
+ duplicated grub_env_get. Leave the interpretation of MODEVAR to
+ grub_strtoul completely.
+ (real2pm): Removed.
+ (GRUB_MOD_INIT): Rename vbe_test to vbetest.
+ (GRUB_MOD_FINI): Likewise.
+
+ * normal/misc.c: Include grub/mm.h.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Replaced vbe_test.mod and
+ vbe_list_modes with vbetest.mod and vbeinfo.mod.
+ (vbe_list_modes_mod_SOURCES): Removed.
+ (vbe_list_modes_mod_CFLAGS): Likewise.
+ (vbe_test_mod_SOURCES): Likewise.
+ (vbe_test_mod_CFLAGS): Likewise.
+ (vbeinfo_mod_SOURCES): New variable.
+ (vbeinfo_mod_CFLAGS): Likewise.
+ (vbetest_mod_SOURCES): Likewise.
+ (vbetest_mod_CFLAGS): Likewise.
+
+2005-08-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/misc.c: New file.
+
+ * DISTLIST: Added normal/misc.c.
+
+ * partmap/amiga.c (amiga_partition_map_iterate): Add an argument
+ DISK to HOOK. Call HOOK with DISK.
+ * partmap/apple.c (apple_partition_map_iterate): Likewise.
+ * partmap/pc.c (pc_partition_map_iterate): Likewise.
+ * partmap/sun.c (sun_partition_map_iterate): Likewise.
+
+ * normal/menu_entry.c (struct screen): Added a new member
+ "completion_shown".
+ (completion_buffer): New global variable.
+ (make_screen): Set SCREEN->COMPLETION_SHOWN to zero.
+ (store_completion): New function.
+ (complete): Likewise.
+ (clear_completions): Likewise.
+ (grub_menu_entry_run): If SCREEN->COMPLETION_SHOWN is non-zero,
+ call clear_completions and reset SCREEN->COMPLETION_SHOWN. If C is
+ a tab, call complete.
+
+ * normal/completion.c (disk_dev): Removed.
+ (print_simple_completion): Likewise.
+ (print_partition_completion): Likewise.
+ (print_func): New global variable.
+ (add_completion): Do not take the arguments WHAT or PRINT any
+ longer. Added a new argument TYPE. Instead of printing directly,
+ call PRINT_FUNC if not NULL.
+ All callers changed.
+ (complete_device): Use a local variable DEV instead of
+ DISK_DEV. Do not move CURRENT_WORD to the end of a device name.
+ (grub_normal_do_completion): Take a new argument HOOK. Do not
+ initialize DISK_DEV. Initialize PRINT_FUNC to HOOK. If RET is an
+ empty string, return NULL instead.
+ All callers changed.
+
+ * normal/cmdline.c (print_completion): New function.
+
+ * kern/partition.c (grub_partition_iterate): Add an argument DISK
+ to HOOK.
+ All callers changed.
+
+ * kern/disk.c (grub_print_partinfo): Removed.
+
+ * include/grub/partition.h (struct grub_partition_map): Add a new
+ argument DISK into HOOK of ITERATE.
+ (grub_partition_iterate): Add a new argument DISK to HOOK.
+
+ * include/grub/normal.h (enum grub_completion_type): New enum.
+ (grub_completion_type_t): New type.
+ (GRUB_COMPLETION_TYPE_COMMAND): New constant.
+ (GRUB_COMPLETION_TYPE_DEVICE): Likewise.
+ (GRUB_COMPLETION_TYPE_PARTITION): Likewise.
+ (GRUB_COMPLETION_TYPE_FILE): Likewise.
+ (grub_normal_do_completion): Added a new argument HOOK.
+ (grub_normal_print_device_info): New prototype.
+
+ * include/grub/disk.h (grub_print_partinfo): Removed.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added normal/misc.c.
+ (normal_mod_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * commands/ls.c (grub_ls_list_disks): Use
+ grub_normal_print_device_info instead of grub_print_partinfo. Free
+ PNAME.
+ (grub_ls_list_files): Use grub_normal_print_device_info instead of
+ duplicating the code.
+
+2005-08-16 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * commands/i386/pc/vbe_list_modes.c: Update source formatting to
+ follow GCS more precisely.
+ * commands/i386/pc/vbe_test.c: Likewise.
+ * include/grub/i386/pc/vbe.h: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * video/i386/pc/vbe.c: Likewise.
+
+2005-08-16 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * DISTLIST: Added term/i386/pc/vesafb.c
+ DISTLIST: Added video/i386/pc/vbe.c
+ DISTLIST: Added commands/i386/pc/vbe_list_modes.c.
+ DISTLIST: Added commands/i386/pc/vbe_test.c.
+ * commands/i386/pc/vbe_list_modes.c: New file.
+ * commands/i386/pc/vbe_test.c: Likewise.
+ * term/i386/pc/vesafb.c: Likewise.
+ * video/i386/pc/vbe.c: Likewise.
+ * include/grub/i386/pc/vbe.h (GRUB_VBE_DEFAULT_VIDEO_MODE): Added define.
+ (grub_vbe_probe) Added prototype.
+ (grub_vbe_set_video_mode) Likewise.
+ (grub_vbe_get_video_mode) Likewise.
+ (grub_vbe_get_video_mode_info) Likewise.
+ (grub_vbe_set_pixel_rgb) Likewise.
+ (grub_vbe_set_pixel_index) Likewise.
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added vbe.mod.
+ (pkgdata_MODULES): Added vesafb.mod.
+ (pkgdata_MODULES): Added vbe_list_modes.mod.
+ (pkgdata_MODULES): Added vbe_test.mod.
+ (vbe_mod_SOURCES): Added.
+ (vbe_mod_CFLAGS): Likewise.
+ (vesafb_mod_SOURCES): Likewise.
+ (vesafb_mod_CFLAGS): Likewise.
+ (vbe_list_modes_mod_SOURCES): Likewise.
+ (vbe_list_modes_mod_CFLAGS): Likewise.
+ (vbe_test_mod_SOURCES): Likewise.
+ (vbe_test_mod_CFLAGS): Likewise.
+
+2005-08-14 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/command.c (grub_command_execute): If INTERACTIVE is
+ false and GRUB_COMMAND_FLAG_NO_ECHO is not specified, print
+ CMDLINE. Disable the pager if INTERACTIVE is true.
+ All callers are changed.
+
+ * normal/main.c (grub_normal_execute): Read command.lst and fs.lst
+ before reading a config file.
+ * normal/main.c (read_config_file): Even if a command is not
+ found, register it if it is within an entry.
+
+ * util/grub-emu.c: Include sys/types.h and unistd.h.
+ (options): Added --hold.
+ (struct arguments): Added a new member "hold".
+ (parse_opt): If KEY is 'H', set ARGS->HOLD to ARG or -1 if ARG is
+ missing.
+ (main): Initialize ARGS.HOLD to zero. Wait until ARGS.HOLD is
+ cleared by a debugger, if it is not zero.
+
+ * include/grub/normal.h (grub_command_execute): Add an argument
+ INTERACTIVE.
+
+2005-08-14 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * DISTLIST: Added include/grub/i386/pc/vbe.h.
+
+2005-08-13 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): Replace the test
+ program with another one, because the old one didn't detect a bug
+ in gcc-3.4. Always use regparm 2, because the new test is still
+ not enough for gcc-4.0. Someone must investigate a simple test
+ case which detects a bug in gcc-4.0.
+
+2005-08-12 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added normal/completion.c.
+
+ * normal/completion.c: New file.
+
+ * term/i386/pc/console.c (grub_console_getwh): New function.
+ (grub_console_term): Assign grub_console_getwh to getwh.
+
+ * normal/cmdline.c (grub_tab_complete): Removed. Now the same
+ function is defined in normal/completion.c as
+ grub_normal_do_completion.
+ (grub_cmdline_get): Use grub_normal_do_completion instead of
+ grub_tab_complete.
+
+ * kern/partition.c (grub_partition_map_iterate): Return 1 if HOOK
+ returns non-zero, otherwise return 0.
+ (grub_partition_iterate): First, probe the partition map. Then,
+ call ITERATE only for this partition map.
+
+ * kern/misc.c (grub_strncmp): Rewritten.
+
+ * kern/disk.c (grub_disk_dev_iterate): Return 1 if P->ITERATE
+ returns non-zero. Otherwise return 0.
+
+ * include/grub/partition.h (grub_partition_map_iterate): Return
+ int instead of void.
+
+ * include/grub/normal.h (grub_normal_do_completion): New prototype.
+
+ * include/grub/misc.h (grub_strncmp): Change the type of N to
+ grub_size_t.
+
+ * include/grub/disk.h (grub_disk_dev_iterate): Return int instead
+ of void.
+
+ * normal/menu.c (draw_border): Cast GRUB_TERM_BORDER_WIDTH to
+ unsigned explicitly before comparing it with I.
+
+ * kern/main.c (grub_env_write_root): Add the attribute unused into
+ VAR.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added
+ normal/completion.c.
+ (normal_mod_SOURCES): Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+ * normal/command.c (grub_iterate_commands): If ITERATE returns
+ non-zero, return one immediately.
+
+2005-08-09 Vesa Jaaskelainen <chaac@nic.fi>
+
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vbe.h.
+ * kern/i386/pc/startup.S: Updated Global Descriptor table's
+ descriptions.
+ (grub_vbe_get_controller_info): New function.
+ (grub_vbe_get_mode_info): Likewise.
+ (grub_vbe_set_mode): Likewise.
+ (grub_vbe_get_mode): Likewise.
+ (grub_vbe_set_memory_window): Likewise.
+ (grub_vbe_get_memory_window): Likewise.
+ (grub_vbe_set_scanline_length): Likewise.
+ (grub_vbe_get_scanline_length): Likewise.
+ (grub_vbe_set_display_start): Likewise.
+ (grub_vbe_get_display_start): Likewise.
+ (grub_vbe_set_palette_data): Likewise.
+ * include/grub/i386/pc/vbe.h: New file.
+
+2005-08-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Replaced
+ kern/ieee1275/of.c with kern/ieee1275/ieee1275.c.
+ * DISTLIST: Likewise.
+ * kern/ieee1275/of.c: Moved to ...
+ * kern/ieee1275/ieee1275.c: ... here.
+
+2005-08-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/ieee1275/ofconsole.c: Include <grub/mm.h>.
+ (grub_ofconsole_getwh): Cast -1 to type grub_ieee1275_ihandle_t.
+ Pass 0 as `end' parameter to grub_strtoul().
+
+2005-08-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/powerpc/ieee1275/console.h: Do not include
+ <grub/types.h>. Do not include <grub/symbol.h>. Remove ASM_FILE
+ ifdef.
+ (grub_console_cur_color): Remove i386-specific prototype.
+ (grub_console_real_putchar): Likewise.
+ (grub_console_checkkey): Likewise.
+ (grub_console_getkey): Likewise.
+ (grub_console_getxy): Likewise.
+ (grub_console_gotoxy): Likewise.
+ (grub_console_cls): Likewise.
+ (grub_console_setcursor): Likewise.
+ * kern/powerpc/ieee1275/init.c: Don't include <grub/console.h>.
+ Include <grub/machine/console.h>.
+ * term/ieee1275/ofconsole.c: Likewise.
+
+2005-08-08 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * Makefile.in (LIBLZO): New variable.
+
+ * configure.ac: Check for LZO version 2.
+
+ * util/i386/pc/grub-mkimage.c [HAVE_LZO_LZO1X_H]: Include
+ lzo/lzo1x.h instead of lzo1x.h.
+
+ * conf/i386-pc.rmk (grub_mkimage_LDFLAGS): Use $(LIBLZO) instead
+ of -llzo.
+
+ * util/i386/pc/grub-setup.c (main): Do not free PREFIX
+ twice. Reported by Vladimir Serbinenko <phcoder@gmail.com>.
+
+ * partmap/pc.c (pc_partition_map_probe): Restore P->DATA after
+ copying the data from PARTITION to P.
+
+2005-08-07 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/rescue.c (grub_rescue_cmd_rmmod): If the reference count is
+ negative, unload the module.
+
+ * util/i386/pc/grub-setup.c (setup): The name of the PC partition
+ map is "pc_partition_map" but not "pc".
+ (usage): Fix the description. The options are --boot-image and
+ --core-image but not --boot-file or --core-file.
+ (main): If not specified explicitly, make BOOT_FILE and CORE_FILE
+ based on DEFAULT_BOOT_FILE and DEFAULT_CORE_FILE with DIR or
+ DEFAULT_DIRECTORY.
+
+ * util/i386/pc/grub-install.in: Do not specify --boot-file or
+ --core-file. Specify INSTALL_DEVICE as an argument.
+
+ * util/console.c: Include config.h.
+ [HAVE_NCURSeS_CURSES_H]: Include ncurses/curses.h.
+ [HAVE_NCURSES_H]: Include ncurses.h.
+ [HAVE_CURSES_H]: Include curses.h.
+ [!A_NORMAL] (A_NORMAL): Defined as zero.
+ [!A_STANDOUT] (A_STANDOUT): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_LDFLAGS): Use $(LIBCURSES) instead of
+ -lncurses.
+ * conf/powerpc-ieee1275.rmk (grub_emu_LDFLAGS): Likewise.
+
+ * configure.ac: Check for curses libraries and headers.
+
+ * Makefile.in (LIBCURSES): New variable.
+
+ * genmk.rb (Script::rule): Set the executable bits.
+
+ * util/i386/pc/biosdisk.c (grub_util_biosdisk_get_grub_dev): The
+ name of the PC partition map is "pc_partition_map" but not "pc".
+
+2005-08-07 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-install.in (grub_probefs): New variable.
+ (modules): Likewise.
+ (usage): Added descriptions for --modules and --grub-probefs.
+ Handle --modules and --grub-probefs. Save the arguments in MODULES
+ and GRUB_PROBEFS, respectively.
+ Auto-detect a filesystem module against GRUBDIR. If the result is
+ empty and modules are not specified explicitly, abort the
+ installation. Add the result to MODULES.
+
+ * DISTLIST: Removed boot/powerpc/ieee1275/ieee1275.c,
+ disk/powerpc/ieee1275/ofdisk.c,
+ include/grub/powerpc/ieee1275/init.h and
+ term/powerpc/ieee1275/ofconsole.c.
+ Added disk/ieee1275/ofdisk.c, kern/ieee1275/of.c and
+ term/ieee1275/ofconsole.c.
+
+ * include/grub/powerpc/ieee1275/console.h: Resurrected.
+
+ * COPYING: Upgraded to the latest version. Only the address of the
+ FSF office has changed.
+
+2005-08-07 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Replaced
+ kern/ieee1275.c with kern/ieee1275/of.c.
+
+ * kern/ieee1275.c: Moved to ...
+ * kern/ieee1275/of.c: ... here.
+
+2005-08-06 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Reordered for
+ readability.
+
+ * config.guess: Updated to the latest version from gnulib.
+ * config.sub: Likewise.
+ * install.sh: Likewise.
+ * mkinstalldirs: Likewise.
+
+ * include/grub/console.h: Removed. This file is arch-specific. Do
+ not put this in include/grub.
+
+ * include/grub/i386/pc/console.h: Resurrected.
+
+ * util/console.c: Include grub/machine/console.h instead of
+ grub/console.h.
+ * util/grub-emu.c: Likewise.
+
+2005-08-04 Marco Gerards <metgerards@student.han.nl>
+
+ * kern/term.c (grub_putcode): Use `grub_getwh' instead of
+ hardcoded value.
+
+ From Vincent Pelletier <subdino2004@yahoo.fr>
+ * include/grub/term.h (GRUB_TERM_WIDTH, GRUB_TERM_HEIGHT):
+ Redefined to use grub_getwh.
+ (grub_term): New member named getwh.
+ (grub_getwh): New prototype.
+ * kern/term.c (grub_getwh): New function.
+ * term/i386/pc/console.c (grub_console_getwh): New function.
+ (grub_console_term): New member `getwh'.
+ * term/i386/pc/vga.c (grub_vga_getwh): New function.
+ (grub_vga_term): New member `getwh'.
+ * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Use
+ grub_ssize_t.
+ (grub_ofconsole_getw): New function.
+ (grub_ofconsole_init): Use grub_ssize_t and unsigned char.
+ (grub_ofconsole_term): New field named getwh and new initial
+ value.
+
+2005-08-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/powerpc/ieee1275/ieee1275.h: Move ...
+ * include/grub/ieee1275/ieee1275.h: ... to here. All users updated.
+ Move `abort', `grub_reboot', and `grub_halt' prototypes ...
+ * include/grub/powerpc/ieee1275/kernel.h: ... to here.
+ * commands/ieee1275/halt.c: Include <grub/machine/kernel.h> instead
+ of <grub/machine/ieee1275.h>.
+ * commands/ieee1275/reboot.c: Likewise.
+ * boot/powerpc/ieee1275/ieee1275.c: Move ...
+ * kern/ieee1275.c: ... to here. All users updated. Change all
+ parameter structs to use new type `grub_ieee1275_cell_t'.
+ * term/powerpc/ieee1275/ofconsole.c: Move ...
+ * term/ieee1275/ofconsole.c: ... to here. All users updated.
+ * disk/powerpc/ieee1275/ofdisk.c: Move ...
+ * disk/ieee1275/ofdisk.c: ... to here. All users updated.
+ * boot/powerpc/ieee1275/cmain.c: Change `grub_ieee1275_entry_fn' type
+ to return int.
+ * include/grub/i386/pc/console.h: Move to include/grub/console.h.
+ Remove unused prototypes. All users updated.
+ * include/grub/powerpc/ieee1275/console.h: Removed.
+ * include/grub/powerpc/ieee1275/ieee1275.h: Define
+ `grub_ieee1275_cell_t'.
+ * kern/powerpc/ieee1275/openfw.c: Include <grub/machine/kernel.h>.
+ Cast comparisons with -1 to the correct type.
+ * loader/powerpc/ieee1275/linux.c (kernel_entry_t): Change parameter
+ type to match `grub_ieee1275_entry_fn'.
+
+2005-08-01 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added util/i386/pc/grub-probefs.c.
+
+ * conf/i386-pc.rmk (sbin_UTILITIES): Added grub-probefs.
+ (grub_setup_SOURCES): Removed partmap/amiga.c, partmap/apple.c and
+ partmap/sun.c.
+ (grub_probefs_SOURCES): New variable.
+
+ * util/i386/pc/grub-probefs.c: New file.
+
+ * util/i386/pc/grub-setup.c (main): Call
+ grub_pc_partition_map_init, grub_ufs_init, grub_minix_init,
+ grub_hfs_init and grub_jfs_init to initialize the system. Call
+ grub_ufs_fini, grub_minix_fini, grub_hfs_fini, grub_jfs_init and
+ grub_pc_partition_map_fini to finish the system.
+
+2005-07-31 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * loader/i386/pc/multiboot.c (grub_multiboot_is_elf32): New
+ function.
+ (grub_multiboot_load_elf32): Likewise.
+ (grub_multiboot_is_elf64): Likewise.
+ (grub_multiboot_load_elf64): Likewise.
+ (grub_multiboot_load_elf): Likewise.
+ (grub_rescue_cmd_multiboot): Call grub_multiboot_load_elf to load
+ an ELF32 or ELF64 file.
+ This is based on a patch from Ruslan Nikolaev <nruslan@mail.com>.
+
+ From Serbinenko Vladimir <serbinenko.vova@list.ru>:
+ * kern/disk.c (grub_print_partinfo): Check if FS->LABEL is not
+ NULL before calling FS->LABEL.
+ * fs/fat.c (grub_fat_dir): Initialize DIRNAME to NULL.
+ * commands/ls.c (grub_ls_list_files): Show labels, if possible.
+ (grub_ls_list_disks): Check if FS and FS->LABEL are not NULL
+ before calling FS->LABEL.
+
+2005-07-26 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/grub-install.in (datadir): New variable.
+ (libdir): Removed.
+ (pkgdatadir): New variable.
+ (pkglibdir): Removed.
+
+2005-07-24 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added util/i386/pc/grub-install.in.
+
+ * util/i386/pc/grub-install.in: New file.
+
+ * conf/i386-pc.rmk (sbin_SCRIPTS): New variable.
+ (grub_install_SOURCES): Likewise.
+
+ * genmk.rb: Added support for scripts.
+ (Script): New class.
+ (scripts): New variable.
+
+ * Makefile.in (install-local): Install sbin_SCRIPTS by
+ INSTALL_SCRIPT.
+ (uninstall): Remove sbin_SCRIPTS.
+
+ * util/i386/pc/grub-setup.c (main): If the argument is not a GRUB
+ device, try to get a GRUB device by
+ grub_util_biosdisk_get_grub_dev.
+ Free DEST_DEV.
+
+ * util/i386/pc/grub-mkdevicemap.c (usage): Remove a duplicated
+ description for --device-map.
+
+2005-07-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Change the semantics of variable hooks. They now return strings
+ instead of error values.
+
+ * util/i386/pc/grub-setup.c: Include grub/env.h.
+ (setup): Use grub_device_set_root instead of grub_env_set.
+
+ * kern/rescue.c (grub_rescue_cmd_root): Use grub_env_set and
+ grub_env_get instead of grub_device_set_root and
+ grub_device_get_root, respectively.
+
+ * kern/main.c (grub_env_write_root): New function.
+ (grub_set_root_dev): Register grub_env_write_hook for "root". Use
+ grub_env_set instead of grub_device_set_root.
+
+ * kern/env.c (HASHSZ): Reduced to 13, because GRUB does not need
+ many variables.
+ (grub_env_set): Set ENV->VALUE to the result of ENV->WRITE_HOOK
+ rather than calling ENV->WRITE_HOOK afterwards.
+ (grub_env_get): Return the result of ENV->READ_HOOK rather than
+ passing a pointer of a pointer.
+ (grub_register_variable_hook): Change the types of "read_hook" and
+ "write_hook" to grub_env_read_hook_t and grub_env_write_hook_t,
+ respectively.
+ Allocate the default empty string on the heap, because this string
+ may be freed later.
+
+ * kern/device.c: Include grub/env.h.
+ (grub_device_set_root): Removed.
+ (grub_device_get_root): Likewise.
+ (grub_device_open): Use grub_env_get instead of
+ grub_device_get_root.
+
+ * include/grub/env.h (grub_env_read_hook_t): New type.
+ (grub_env_write_hook_t): Likewise.
+ (grub_env_var): Change the types of "read_hook" and "write_hook"
+ to grub_env_read_hook_t and grub_env_write_hook_t, respectively.
+ (grub_register_variable_hook): Likewise.
+
+ * include/grub/device.h (grub_device_set_root): Removed.
+ (grub_device_set_root): Likewise.
+
+ * fs/fat.c (grub_fat_dir): Make a copy of PATH in DIRNAME, and
+ make sure that DIRNAME terminates with '/', so that
+ grub_fat_find_dir will fail if PATH is not a directory.
+
+ * commands/ls.c (grub_ls_list_files): Remove the qualifier const
+ from DIRNAME.
+ Use the qualifier auto for print_files and print_files_long.
+ If FS->DIR sets GRUB_ERRNO to GRUB_ERR_BAD_FILE_TYPE, try DIRNAME
+ as a regular file.
+ Put a newline only if there is no error.
+ (grub_cmd_ls): Remove grub_ls_print_files, because this is not
+ used.
+
+2005-07-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/partition.c (grub_partition_probe): Initialize PART to
+ NULL. Otherwise, when no partition map is registered, this returns
+ a garbage.
+
+2005-07-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * partmap/apple.c (apple_partition_map_iterate): Check if POS
+ equals GRUB_DISK_SECTOR_SIZE to see if the partition table is
+ valid.
+
+2005-07-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * commands/ls.c (grub_ls_list_disks): Print the filesystem
+ information on each device, if it does not have partitions. Print
+ "Device" instead of "Disk", because this function is not specific
+ to disk devices.
+
+ * normal/main.c (grub_rescue_cmd_normal): Make the variable CONFIG
+ static to ensure that it is put on the memory rather than a
+ register.
+
+2005-07-17 Yoshinori Okuji <okuji@enbug.org>
+
+ * commands/cat.c (GRUB_MOD_INIT): Use better documentation.
+ (grub_cat_init): Likewise.
+ * loader/i386/pc/chainloader_normal.c (GRUB_MOD_INIT): Likewise.
+ (options): Likewise.
+ * commands/configfile.c (GRUB_MOD_INIT): Likewise.
+ (grub_configfile_init): Likewise.
+ * font/manager.c (GRUB_MOD_INIT): Likewise.
+ * commands/help.c (GRUB_MOD_INIT): Likewise.
+ (grub_help_init): Likewise.
+ * normal/command.c (grub_command_init): Likewise.
+ * loader/i386/pc/linux_normal.c (GRUB_MOD_INIT): Likewise.
+ * disk/loopback.c (grub_loop_init): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/ls.c (grub_ls_init): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ (options): Likewise.
+ * commands/boot.c (grub_boot_init): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * loader/i386/pc/multiboot_normal.c (GRUB_MOD_INIT): Likewise.
+ * commands/i386/pc/reboot.c (grub_reboot_init): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+ * commands/cmp.c (grub_cmp_init): Likewise.
+ (GRUB_MOD_INIT): Likewise.
+
+ * normal/arg.c: Use <> instead of "" to include header files.
+ (SHORT_ARG_HELP): New macro.
+ (SHORT_ARG_USAGE): Likewise.
+ (help_options): Specify SHORT_ARG_HELP and SHORT_ARG_USAGE instead
+ of 'h' and 'u' for help and usage, respectively. Use more GNU-like
+ descriptions.
+ (find_short): Check if C is 'h' or 'u' explicitly.
+ (grub_arg_show_help): Use space characters instead of tabs. Treat
+ SHORT_ARG_HELP and SHORT_ARG_USAGE exceptionally so that -h and -u
+ are shown with --help and --usage only if they are not used for
+ the command itself.
+ (parse_option): Use SHORT_ARG_HELP and SHORT_ARG_USAGE instead of
+ 'h' and 'u'.
+
+ * include/grub/arg.h (struct grub_arg_option): Add the qualifier
+ const into "longarg". Change the type of "shortarg" to int.
+
+2005-07-17 Yoshinori Okuji <okuji@enbug.org>
+
+ * boot/i386/pc/boot.S (boot_drive_check): New label.
+
+ * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_DRIVE_CHECK): New
+ macro.
+
+ * util/i386/pc/grub-setup.c (setup): Added a workaround for BIOSes
+ which do not pass a boot drive correctly. Copied from GRUB Legacy.
+
+2005-07-17 Yoshinori Okuji <okuji@enbug.org>
+
+ * kern/i386/pc/startup.S (gate_a20_try_system_control_port_a):
+ When turning off Gate A20, skip the check and return immediately,
+ because this is not fatal usually.
+
+2005-07-17 Yoshinori Okuji <okuji@enbug.org>
+
+ * conf/i386-pc.rmk (pxeboot_img_LDFLAGS): The text address should
+ be 0x7C00 instead of 0x8000.
+
+ * boot/i386/pc/pxeboot.S: Rewritten.
+
+ * kern/i386/pc/startup.S (gate_a20_try_bios): No need to specify
+ EXT_C.
+ (gate_a20_check_state): Read a byte from 0x108000. Invert the
+ result.
+
+2005-07-16 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/i386/pc/startup.S (grub_gate_a20): Rewritten for
+ robustness. This routine now supports a BIOS call and System
+ Control Port A to modify the gate A20.
+
+ * include/grub/i386/pc/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
+ Increased to 0x440.
+
+2005-07-12 Hollis Blanchard <hollis@penguinppc.org>
+
+ * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): dprintf the
+ device path and resulting ihandle.
+ (grub_ofdisk_close): dprintf the ihandle being closed.
+ (grub_ofdisk_read): dprintf function parameters.
+ * kern/mm.c (grub_mm_init_region): Likewise.
+ * loader/powerpc/ieee1275/linux.c: Remove extra whitespace.
+ (grub_linux_boot): dprintf the Linux entry point, initrd address and
+ size, and boot arguments.
+ (grub_rescue_cmd_linux): dprintf each ELF segment's address and size
+ before loading into memory.
+ (grub_rescue_cmd_initrd): dprintf the initrd's address and size
+ before loading into memory.
+
+2005-07-12 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/mm.c: Added much documentation.
+ (GRUB_MM_ALIGN_LOG2): When GRUB_CPU_SIZEOF_VOID_P is
+ 8, set to 5 instead of 8.
+
+2005-07-10 Yoshinori Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added util/i386/pc/grub-mkimage.c.
+
+ * conf/i386-pc.rmk (sbin_UTILITIES): Added grub-mkdevicemap.
+ (grub_mkdevicemap_SOURCES): New variable.
+
+ * util/i386/pc/grub-mkdevicemap.c: New file. Mostly copied from
+ lib/device.c of GRUB Legacy.
+
+2005-07-10 Yoshinori Okuji <okuji@enbug.org>
+
+ * commands/ls.c (grub_ls_list_files): Check if *PATH is NUL
+ instead of PATH is NULL.
+
+2005-07-09 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * commands/cmp.c (BUFFER_SIZE): New macro.
+ (grub_cmd_cmp): Close the right file at the right time. Compare
+ only data just read. Don't report files of different size as
+ identical. Dynamically allocate buffers. Move variable
+ declarations at the beginning of function.
+
+2005-07-09 Yoshinori Okuji <okuji@enbug.org>
+
+ * aclocal.m4 (grub_I386_CHECK_REGPARM_BUG): The return value was
+ reverse.
+
+2004-07-04 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * normal/cmdline.c (grub_cmdline_get): Don't fallback on ctrl-d
+ when backspace is pressed at beginning of line.
+
+2005-07-03 Yoshinori Okuji <okuji@enbug.org>
+
+ * DISTLIST: Added genfslist.sh.
+
+ * normal/main.c (fs_module_list): New variable.
+ (autoload_fs_module): New function.
+ (read_fs_list): Likewise.
+ (grub_normal_execute): Call read_fs_list.
+
+ * kern/fs.c (grub_fs_autoload_hook): New variable.
+ (grub_fs_probe): Added support for auto-loading.
+
+ * include/grub/normal.h (struct grub_fs_module_list): New struct.
+ (grub_fs_module_list_t): New type.
+
+ * include/grub/fs.h (grub_fs_autoload_hook_t): New type.
+ (grub_fs_autoload_hook): New prototype.
+
+ * genfslist.sh: New file.
+
+ * genmk.rb: Added a rule to generate a filesystem list.
+
+2005-06-30 Marco Gerards <metgerards@student.han.nl>
+
+ * configure.ac: Fix the test for cross-compiling.
+
+ * genmk.rb (Program): Use `$(CC)' instead of `$(BUILD_CC)'. Don't
+ define GRUB_UTIL anymore.
+
+ * util/powerpc/ieee1275/grub-mkimage.c (load_note): Endian fixes
+ so this function works on other systems than just big endian.
+ (load_modules): Likewise.
+ (add_segments): Likewise.
+
+2005-06-23 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/misc.c (grub_vsprintf): Add `longfmt'. If format string
+ contains `l' modifier, get a long from va_arg().
+
+2005-06-23 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/mm.c (grub_free): If the next free block which is being
+ merged is the first free block, set the first block to the block
+ being freed.
+ Reported by Vincent Guffens <guffens@inma.ucl.ac.be>.
+
+2005-05-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c (cmain): Initialize
+ `grub_ieee1275_chosen'.
+
+2005-05-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c (module_info): Remove definition.
+ (grub_ieee1275_chosen): New variable.
+ (cmain): Initialize and use `grub_ieee1275_chosen' instead of
+ `chosen'.
+ * boot/powerpc/ieee1275/crt0.S (init_stack): Remove stack space.
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property):
+ Rename first argument to `phandle' for consistency.
+ (grub_ieee1275_get_property_length): Likewise.
+ (grub_ieee1275_next_property): Likewise. Change type of first argument
+ to grub_ieee1275_phandle_t.
+ * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_entry_fn):
+ Move export next to declaration.
+ (grub_ieee1275_chosen): New variable.
+ * include/grub/powerpc/ieee1275/kernel.h (GRUB_IEEE1275_MODULE_BASE):
+ Correct cosmetic typo.
+ * kern/powerpc/ieee1275/init.c (grub_set_prefix): Use
+ `grub_ieee1275_chosen'.
+ * kern/powerpc/ieee1275/openfw.c (grub_map): Likewise.
+ * loader/powerpc/ieee1275/linux.c (grub_linux_boot): Likewise.
+ (grub_rescue_cmd_linux): Set `initrd_addr' to 0.
+ * term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_refresh): Use
+ `grub_ieee1275_chosen'.
+
+2005-05-10 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c (cmain): Remove code to parse
+ /chosen/bootargs.
+ * kern/powerpc/ieee1275/init.c (grub_machine_init): Parse
+ /chosen/bootargs as "variable=value" pairs.
+
+2005-05-08 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * include/grub/misc.h (grub_dprintf): New macro.
+ (grub_real_dprintf): New prototype.
+ (grub_strword): Likewise.
+ (grub_iswordseparator): Likewise.
+ * kern/misc.c (grub_real_dprintf): New function.
+ (grub_strword): Likewise.
+ (grub_iswordseparator): Likewise.
+
+2005-04-30 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c: Don't include grub/machine/init.h.
+ (roundup): Remove macro.
+ (grub_ieee1275_flags): Make static.
+ (grub_ieee1275_realmode): Remove.
+ (grub_ieee1275_test_flag): New function.
+ (grub_ieee1275_set_flag): Likewise.
+ (find_options): Rename to `grub_ieee1275_find_options'; update
+ callers. Set GRUB_IEEE1275_FLAG_REAL_MODE and
+ GRUB_IEEE1275_FLAG_0_BASED_PARTITIONS.
+ (cmain): New prototype.
+ (cmain): Use `grub_ieee1275_set_flag' instead of accessing
+ `grub_ieee1275_flags' directly.
+ * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Remove
+ machine/biosdisk.h.
+ * disk/powerpc/ieee1275/ofdisk.c: Include grub/machine/ofdisk.h.
+ Don't include grub/machine/init.h.
+ (grub_ofdisk_open): Call `grub_ieee1275_test_flag'.
+ * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_flags):
+ Remove prototype.
+ (grub_ieee1275_realmode): Likewise.
+ (grub_ieee1275_flag): New enum.
+ (grub_ieee1275_test_flag): New prototype.
+ (grub_ieee1275_set_flag): New prototype.
+ * include/grub/powerpc/ieee1275/init.h: Remove file.
+ * include/grub/powerpc/ieee1275/ofdisk.h: New file.
+ * kern/powerpc/ieee1275/init.c: Don't include grub/machine/init.h.
+ Include grub/machine/console.h. Include grub/machine/ofdisk.h.
+ (grub_machine_fini): Don't call `grub_ieee1275_release'. Remove
+ comment.
+ * kern/powerpc/ieee1275/openfw.c (grub_claimmap): Call
+ `grub_ieee1275_test_flag'.
+ (grub_ieee1275_encode_devname): Likewise.
+
+2005-04-21 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_encode_devname): New prototype.
+ (grub_ieee1275_get_filename): Likewise.
+ * kern/powerpc/ieee1275/init.c (grub_translate_ieee175_path): New
+ function.
+ (grub_set_prefix): Likewise.
+ (grub_machine_init): Call grub_set_prefix.
+ * kern/powerpc/ieee1275/openfw.c: Fix typos.
+ (grub_parse_type): New enum.
+ (grub_ieee1275_get_devargs): New function.
+ (grub_ieee1275_get_devname): Likewise.
+ (grub_ieee1275_parse_args): Likewise.
+ (grub_ieee1275_get_filename): Likewise.
+ (grub_ieee1275_encode_devname): Likewise.
+
+2005-03-30 Marco Gerards <metgerards@student.han.nl>
+
+ * kern/powerpc/ieee1275/init.c (grub_machine_fini): Don't call
+ `grub_loader_unset'.
+
+2005-03-26 Hollis Blanchard <hollis@penguinppc.org>
+
+ * commands/ieee1275/halt.c (grub_cmd_halt): Call grub_halt
+ instead of grub_ieee1275_interpret.
+ (grub_halt_init): New function.
+ (grub_halt_fini): Likewise.
+ (GRUB_MOD_INIT): Correct message grammar.
+ * commands/ieee1275/reboot.c (grub_cmd_reboot): Call grub_reboot
+ instead of grub_ieee1275_interpret.
+ (grub_reboot_init): New function.
+ (grub_reboot_fini): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Replace
+ commands/i386/pc/halt.c, commands/i386/pc/reboot.c, and
+ util/i386/pc/misc.c with commands/ieee1275/halt.c,
+ commands/ieee1275/reboot.c, and util/powerpc/ieee1275/misc.c.
+ * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_fini): New
+ function.
+ * include/grub/powerpc/ieee1275/console.h (grub_console_fini):
+ Add prototype.
+ * include/grub/powerpc/ieee1275/ieee1275.h (grub_reboot): Add
+ prototype.
+ (grub_halt): Likewise.
+ * include/grub/powerpc/ieee1275/init.h: Remove inaccurate comment.
+ (cmain): Remove __attribute__((unused)).
+ * kern/powerpc/ieee1275/init.c (grub_heap_start): New variable.
+ (grub_heap_len): Likewise.
+ (grub_machine_fini): New function.
+ * kern/powerpc/ieee1275/openfw.c (grub_reboot): New function.
+ (grub_halt): Likewise.
+ * term/powerpc/ieee1275/ofconsole.c (grub_console_fini): New
+ function.
+ * util/powerpc/ieee1275/misc.c: New file.
+
+2005-03-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * DISTLIST: New file.
+ * gendistlist.sh: Likewise.
+
+ * Makefile.in (COMMON_DISTFILES): Removed.
+ (BOOT_DISTFILES): Likewise.
+ (CONF_DISTFILES): Likewise.
+ (DISK_DISTFILES): Likewise.
+ (FS_DISTFILES): Likewise.
+ (INCLUDE_DISTFILES): Likewise.
+ (KERN_DISTFILES): Likewise.
+ (LOADER_DISTFILES): Likewise.
+ (TERM_DISTFILES): Likewise.
+ (UTIL_DISTFILES): Likewise.
+ (DISTFILES): Likewise.
+ (uninstall): Uninstall files in $(pkgdata_DATA).
+ (DISTLIST): New target.
+ (distdir): Use the contents of the file DISTLIST to get a list of
+ distributed files.
+
+2005-03-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * fs/fat.c (grub_fat_mount): Ignore the 3rd bit of a media
+ descriptor. This is ported from GRUB Legacy.
+
+ * gencmdlist.sh: Added an extra semicolon to make it work with
+ old sed versions. Reported by Robert Bihlmeyer
+ <robbe@orcus.priv.at>.
+
+2005-03-08 Yoshinori Okuji <okuji@enbug.org>
+
+ Automatic loading of commands is supported.
+
+ * normal/main.c (read_command_list): New function.
+ (grub_normal_execute): Call read_command_list.
+
+ * normal/command.c (grub_register_command): Return zero or CMD.
+ Allocate CMD->NAME from the heap.
+ Initialize CMD->MODULE_NAME to zero.
+ Find the same name as well. If the same command is found and it is
+ a dummy command, overwrite members. If it is not a dummy command,
+ return zero.
+ (grub_unregister_command): Free Q->NAME and Q->MODULE_NAME.
+ (grub_command_find): If a dummy command is found, load a module
+ and retry to find a command only once.
+
+ * normal/cmdline.c (grub_tab_complete): Call grub_command_find to
+ make sure that each command is loaded.
+
+ * include/grub/normal.h (GRUB_COMMAND_FLAG_NOT_LOADED): New
+ macro.
+ (struct grub_command): Remove const from the member `name'.
+ Add a new member `module_name'.
+ (grub_register_command): Return grub_command_t.
+
+ * commands/help.c (grub_cmd_help): Call grub_command_find to make
+ sure that each command is loaded.
+
+ * genmk.rb (PModule::rule): Specify a module name without the
+ suffix ".mod" to gencmdlist.sh.
+
+2005-03-02 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * gencmdlist.sh: New file.
+
+ * genmk.rb (PModule::rule): Generate a rule for a command list.
+ Clean command.lst.
+ Generate command.lst from $(COMMANDFILES).
+
+ * Makefile.in (COMMON_DISTFILES): Added gencmdlist.sh.
+ (DATA): Added $(pkgdata_DATA).
+ (install-local): Install files in $(pkgdata_DATA).
+
+2005-03-02 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * term/i386/pc/vga.c (debug_command): Removed.
+ (GRUB_MOD_INIT): Do not register the command "debug".
+
+ From Hollis Blanchard:
+ * commands/configfile.c: New file.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added
+ commands/configfile.c.
+ (pkgdata_MODULES): Added configfile.mod.
+ (configfile_mod_SOURCES): New variable.
+ (configfile_mod_CFLAGS): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Added
+ commands/configfile.c.
+ (pkgdata_MODULES): Added configfile.mod.
+ (configfile_mod_SOURCES): New variable.
+ (configfile_mod_CFLAGS): Likewise.
+ * util/grub-emu.c (main): Call grub_configfile_init and
+ grub_configfile_fini.
+ * include/grub/normal.h [GRUB_UTIL] (grub_configfile_init): New
+ prototype.
+ [GRUB_UTIL] (grub_configfile_fini): Likewise.
+
+2005-02-27 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/arg.c (grub_arg_show_help): Do not show the bug report
+ address.
+
+ * commands/help.c (grub_cmd_help): Do not print newlines after
+ the last command in print_command_help.
+
+2005-02-27 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * commands/default.h: New file.
+ * commands/timeout.h: Likewise.
+ * normal/context.c: Likewise.
+
+ * util/misc.c: Do not include sys/times.h.
+ Include sys/time.h and grub/machine/time.h.
+ (grub_get_rtc): Rewritten with gettimeofday.
+
+ * util/grub-emu.c (main): Call grub_default_init and
+ grub_timeout_init before grub_normal_init, and call
+ grub_timeout_fini and grub_default_fini after grub_main.
+
+ * util/console.c (grub_ncurses_checkkey): Return the read
+ character or -1.
+
+ * normal/menu.c (run_menu): Set MENU->TIMEOUT to -1 once it
+ timeouts.
+
+ * normal/main.c (read_config_file): Push MENU. If this fails,
+ print an error and wait for a user input.
+ Print an error only if GRUB_ERRNO is not GRUB_ERR_NONE.
+ If a menu is empty or an error occurs, pop MENU.
+ (grub_normal_execute): Pop and free MENU after grub_menu_run
+ returns.
+
+ * kern/loader.c (grub_loader_boot): Call grub_machine_fini.
+
+ * include/grub/powerpc/ieee1275/time.h [GRUB_UTIL]: Do not
+ include time.h.
+ [GRUB_UTIL] (GRUB_TICKS_PER_SECOND): Use the same definition as
+ without GRUB_UTIL.
+ * include/grub/i386/pc/time.h [GRUB_UTIL]: Do not include
+ time.h.
+ [GRUB_UTIL] (GRUB_TICKS_PER_SECOND): Use the same definition as
+ without GRUB_UTIL.
+
+ * include/grub/normal.h (struct grub_menu_list): New struct.
+ (grub_menu_list_t): New type.
+ (struct grub_context): New struct.
+ (grub_context_t): New type.
+ (grub_register_command): Got rid of EXPORT_FUNC.
+ (grub_unregister_command): Likewise.
+ (grub_context_get): New prototype.
+ (grub_context_get_current_menu): Likewise.
+ (grub_context_push_menu): Likewise.
+ (grub_context_pop_menu): Likewise.
+ [GRUB_UTIL] (grub_default_init): Likewise.
+ [GRUB_UTIL] (grub_default_fini): Likewise.
+ [GRUB_UTIL] (grub_timeout_init): Likewise.
+ [GRUB_UTIL] (grub_timeout_fini): Likewise.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added commands/default.c,
+ commands/timeout.c and normal/context.c.
+ (pkgdata_MODULES): Added default.mod and timeout.mod.
+ (normal_mod_SOURCES): Added normal/context.c.
+ (default_mod_SOURCES): New variable.
+ (default_mod_CFLAGS): Likewise.
+ (timeout_mod_SOURCES): Likewise.
+ (timeout_mod_CFLAGS): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Copied from
+ conf/i386-pc.rmk.
+ (pkgdata_MODULES): Added default.mod and timeout.mod.
+ (normal_mod_SOURCES): Added normal/context.c.
+ (default_mod_SOURCES): New variable.
+ (default_mod_CFLAGS): Likewise.
+ (timeout_mod_SOURCES): Likewise.
+ (timeout_mod_CFLAGS): Likewise.
+
+ * Makefile.in (all-local): Added $(MKFILES).
+
+2005-02-21 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add `partmap/sun.c'.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add `sun.mod'.
+ (sun_mod_SOURCES, sun_mod_CFLAGS): New variables.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
+ `partmap/sun.c'.
+ (pkgdata_MODULES): Add `sun.mod'.
+ (sun_mod_SOURCES, sun_mod_CFLAGS): New variables.
+ * include/grub/partition.h (grub_sun_partition_map_init): New
+ prototype.
+ (grub_sun_partition_map_fini): Likewise.
+ * partmap/sun.c: New file.
+ * util/grub-emu.c (main): Initialize and de-initialize the sun
+ partitionmap support.
+
+2005-02-19 Yoshinori K. Okuji <okuji@enbug.org>
+
+ This implements an Emacs-like menu entry editor.
+
+ * normal/menu_entry.c: New file.
+
+ * util/console.c (grub_ncurses_putchar): Translate some Unicode
+ characters to ASCII.
+ (saved_char): New variable.
+ (grub_ncurses_checkkey): Rewritten completely.
+ (grub_ncurses_getkey): Likewise.
+ (grub_ncurses_init): Call raw instead of cbreak.
+
+ * normal/menu.c (print_entry): Do not put a space.
+ (init_page): Renamed to ...
+ (grub_menu_init_page): ... this. All callers changed.
+ (edit_menu_entry): Removed.
+ (run_menu): Call grub_menu_entry_run instead of edit_menu_entry.
+
+ * normal/cmdline.c (grub_cmdline_run): Call grub_setcursor.
+
+ * kern/misc.c (grub_vprintf): Call grub_refresh.
+
+ * normal/menu.c (DISP_LEFT): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_LEFT): ... this.
+ * normal/menu.c (DISP_UP): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_UP): ... this.
+ * normal/menu.c (DISP_RIGHT): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_RIGHT): ... this.
+ * normal/menu.c (DISP_DOWN): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_DOWN): ... this.
+ * normal/menu.c (DISP_HLINE): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_HLINE): ... this.
+ * normal/menu.c (DISP_VLINE): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_VLINE): ... this.
+ * normal/menu.c (DISP_UL): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_UL): ... this.
+ * normal/menu.c (DISP_UR): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_UR): ... this.
+ * normal/menu.c (DISP_LL): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_LL): ... this.
+ * normal/menu.c (DISP_LR): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_DISP_LR): ... this.
+ * normal/menu.c (TERM_WIDTH): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_WIDTH): ... this.
+ * normal/menu.c (TERM_HEIGHT): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_HEIGHT): ... this.
+ * normal/menu.c (TERM_INFO_HEIGHT): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_INFO_HEIGHT): ... this.
+ * normal/menu.c (TERM_MARGIN): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_MARGIN): ... this.
+ * normal/menu.c (TERM_SCROLL_WIDTH): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_SCROLL_WIDTH): ... this.
+ * normal/menu.c (TERM_TOP_BORDER_Y): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_TOP_BORDER_Y): ... this.
+ * normal/menu.c (TERM_LEFT_BORDER_X): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_LEFT_BORDER_X): ... this.
+ * normal/menu.c (TERM_BORDER_WIDTH): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_BORDER_WIDTH): ... this.
+ * normal/menu.c (TERM_MESSAGE_HEIGHT): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): ... this.
+ * normal/menu.c (TERM_BORDER_HEIGHT): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_BORDER_HEIGHT): ... this.
+ * normal/menu.c (TERM_NUM_ENTRIES): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_NUM_ENTRIES): ... this.
+ * normal/menu.c (TERM_FIRST_ENTRY_Y): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_FIRST_ENTRY_Y): ... this.
+ * normal/menu.c (TERM_ENTRY_WIDTH): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_ENTRY_WIDTH): ... this.
+ * normal/menu.c (TERM_CURSOR_X): Renamed to ...
+ * include/grub/term.h (GRUB_TERM_CURSOR_X): ... this.
+ All callers changed.
+
+ * include/grub/normal.h: New prototype.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added
+ normal/menu_entry.c.
+ (normal_mod_SOURCES): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Likewise.
+ (normal_mod_SOURCES): Likewise.
+
+2005-02-15 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/grub/normal.h (grub_halt_init): New prototype.
+ (grub_halt_fini): Likewise.
+ (grub_reboot_init): Likewise.
+ (grub_reboot_fini): Likewise.
+
+ * util/grub-emu.c: Include signal.h.
+ (main_env): New global variable.
+ (grub_machine_init): Ignore SIGINT. Otherwise grub-emu cannot
+ catch C-c.
+ (grub_machine_fini): New function.
+ (main): Call grub_halt_init and grub_reboot_init before
+ grub_main, and grub_reboot_fini and grub_halt_fini after it.
+ Call setjmp with MAIN_ENV to go back afterwards.
+ Call grub_machine_fini right before return.
+
+ * include/grub/util/misc.h: Include setjmp.h.
+ (main_env): New prototype.
+
+ * include/grub/kernel.h (grub_machine_fini): New prototype.
+ * include/grub/i386/pc/biosdisk.h (grub_biosdisk_fini): Likewise.
+ * include/grub/i386/pc/console.h (grub_console_fini): Likewise.
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_fini): New function.
+ * kern/i386/pc/init.c (grub_machine_fini): Likewise.
+ * term/i386/pc/console.c (grub_console_fini): Likewise.
+
+ * util/i386/pc/misc.c: New file.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Added
+ util/i386/pc/misc.c, commands/i386/pc/halt.c and
+ commands/i386/pc/reboot.c.
+
+2005-02-14 Guillem Jover <guillem@hadrons.org>
+
+ * include/grub/dl.h (grub_dl_check_header): New prototype.
+ (grub_arch_dl_check_header): Change return type to grub_err_t,
+ remove size parameter and export function. Update all callers.
+ * kern/dl.c (grub_dl_check_header): New function.
+ (grub_dl_load_core): Use `grub_dl_check_header' instead of
+ `grub_arch_dl_check_header'. Check ELF type. Check if sections
+ are inside the core.
+ * kern/i386/dl.c (grub_arch_dl_check_header): Remove arch
+ independent ELF header checks.
+ * kern/powerpc/dl.c (grub_arch_dl_check_header): Likewise.
+ * loader/i386/pc/multiboot.c (grub_rescue_cmd_multiboot): Use
+ `grub_dl_check_header' instead of explicit checks. Check for the
+ ELF type.
+ * loader/powerpc/ieee1275/linux.c (grub_rescue_cmd_linux): Use
+ `grub_dl_check_header' instead of explicit checks. Remove arch
+ specific ELF header checks.
+
+ * util/grub-emu.c (grub_arch_dl_check_header): Remove the
+ argument SIZE.
+
+2005-02-13 Hollis Blanchard <hollis@penguinppc.org>
+
+ * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add ls.mod.
+ * include/grub/powerpc/libgcc.h (__mulsf3): New prototype.
+
+2005-02-12 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/partition.c (grub_partition_probe): Clear `grub_errno' and
+ return 0 if `grub_errno' is GRUB_ERR_BAD_PART_TABLE.
+ (part_map_iterate): Clear `grub_errno' and return 0 if
+ `partmap->iterate' returns GRUB_ERR_BAD_PART_TABLE.
+ * partmap/amiga.c (amiga_partition_map_iterate): Return
+ GRUB_ERR_BAD_PART_TABLE if no partition map magic is found.
+ * partmap/apple.c (apple_partition_map_iterate): Likewise.
+
+2005-02-01 Guillem Jover <guillem@hadrons.org>
+
+ * loader/i386/pc/multiboot_normal.c (GRUB_MOD_INIT): Fix module
+ help info.
+
+2005-01-31 Marco Gerards <metgerards@student.han.nl>
+
+ * include/grub/powerpc/ieee1275/loader.h (grub_load_linux):
+ Removed prototype.
+ (grub_rescue_cmd_linux): New prototype.
+ (grub_rescue_cmd_initrd): Likewise.
+ * powerpc/ieee1275/linux.c (grub_linux_boot): Remove struct
+ `bi_rec'.
+ (grub_linux_release_mem): Release the memory for the initrd.
+ (grub_load_linux): Renamed from this...
+ (grub_rescue_cmd_linux): ...To this. Changed all callers.
+ Changed `entry' not to be static. Loop over memory regions to
+ find another one when the default fails.
+ (grub_rescue_cmd_initrd): New function.
+ (grub_linux_init): Remove function.
+ (grub_linux_fini): Likewise.
+ (GRUB_MOD_INIT): Register `initrd'.
+ (GRUB_MOD_FINI): Unregister `initrd'.
+ * powerpc/ieee1275/linux_normal.c (grub_linux_normal_init):
+ Function removed.
+ (grub_linux_normal_fini): Likewise.
+ (GRUB_MOD_INIT): Register `initrd'.
+ (GRUB_MOD_FINI): Unregister `initrd'.
+
+2005-01-31 Marco Gerards <metgerards@student.han.nl>
+
+ * commands/help.c: New file.
+ * normal/arg.c (show_help): Renamed to...
+ (grub_arg_show_help): ... this.
+ * commands/i386/pc/halt.c: New file.
+ * commands/i386/pc/reboot.c: Likewise.
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `commands/help.c'.
+ (pkgdata_MODULES): Add `reboot.mod', `halt.mod' and `help.mod'.
+ (help_mod_SOURCES, help_mod_CFLAGS, reboot_mod_SOURCES)
+ (reboot_mod_CFLAGS, halt_mod_SOURCES, halt_mod_CFLAGS): New
+ variables.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
+ `commands/help.c'.
+ (pkgdata_MODULES): Add `help.mod'.
+ (help_mod_SOURCES, help_mod_CFLAGS): New variables.
+ * grub/i386/pc/init.h (grub_reboot): New prototype.
+ (grub_halt): Likewise.
+ * include/grub/normal.h (grub_arg_show_help): New prototype.
+ (grub_help_init): Likewise.
+ (grub_help_fini): Likewise.
+ * util/grub-emu.c (main): Initialize and deinitialize the help
+ command.
+
+ * normal/cmdline.c (grub_cmdline_get): Doc fix.
+
+ * normal/command.c (grub_command_init): Fixed the description of
+ the `set' and `unset' commands.
+
+2005-01-31 Marco Gerards <metgerards@student.han.nl>
+
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_interpret): New
+ function.
+ * commands/ieee1275/halt.c: New file.
+ * commands/ieee1275/reboot.c: Likewise.
+ * commands/ieee1275/suspend.c (grub_cmd_suspend): Use
+ `__attribute__ ((unused))'. Some GCS related fixed.
+ (grub_suspend_init) [GRUB_UTIL]: Function removed.
+ (grub_suspend_fini): Likewise.
+ * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add `reboot.mod'
+ and `halt.mod'.
+ (reboot_mod_SOURCES, reboot_mod_CFLAGS, halt_mod_SOURCES)
+ (halt_mod_CFLAGS): New variables.
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_interpret): New prototype.
+
+2005-01-29 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/grub/misc.h (memmove): New prototype.
+ (memcpy): Likewise.
+
+2005-01-22 Hollis Blanchard <hollis@penguinppc.org>
+
+ * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): Don't initialize
+ `devpath' to 0. Use `name' instead of `devpath' with `grub_strndup'.
+
+2005-01-22 Marco Gerards <metgerards@student.han.nl>
+
+ * kern/misc.c (grub_strndup): Function rewritten.
+
+2005-01-22 Vincent Pelletier <subdino2004@yahoo.fr>
+
+ * normal/menu.c (TERM_WIDTH): Macro redefined.
+ (TERM_TOP_BORDER_Y): Likewise.
+ (draw_border): Replaced while-loop by a for-loop. Make the number
+ of lines consistent with the number of lines displayed in
+ print_entries. Added a margin below the rectangle.
+ (print_entry): Make the entry fit in the rectangle.
+ (print_entries): Display the scroll arrows next to the right
+ border.
+
+2005-01-21 Marco Gerards <metgerards@student.han.nl>
+
+ * fs/minix.c (grub_minix_find_file): Reserve more space for
+ `fpath' so the \0 can be stored. Use `grub_strcpy' instead of
+ `grub_strncpy' to copy `path' into it.
+
+2005-01-21 Marco Gerards <metgerards@student.han.nl>
+
+ Add the loopback device, a device via which files can be accessed
+ as devices.
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add `disk/loopback.c'.
+ (pkgdata_MODULES): Add loopback.mod.
+ (loopback_mod_SOURCES): New variable.
+ (loopback_mod_CFLAGS): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add
+ `disk/loopback.c'.
+ (pkgdata_MODULES): Add loopback.mod.
+ (loopback_mod_SOURCES): New variable.
+ (loopback_mod_CFLAGS): Likewise.
+ * disk/loopback.c: new file.
+ * include/grub/normal.h (grub_loop_init): New prototype.
+ (grub_loop_fini): New prototype.
+ * util/grub-emu.c (main): Initialize and de-initialize loopback
+ support.
+ * include/grub/disk.h (grub_disk_dev_id): Add
+ `GRUB_DISK_DEVICE_LOOPBACK_ID'.
+
+2005-01-20 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_enter): New
+ function.
+ * conf/powerpc-ieee1275.rmk (pkgdata_MODULES): Add suspend.mod.
+ (suspend_mod_SOURCES): New variable.
+ (suspend_mod_CFLAGS): Likewise.
+ * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_enter):
+ New prototype.
+ * commands/ieee1275/suspend.c: New file.
+
+2005-01-20 Timothy Baldwin <T.E.Baldwin99@members.leeds.ac.uk>
+
+ * include/grub/dl.h (GRUB_MOD_INIT): Changed `__attribute__
+ ((unused))' to `__attribute__ ((used))'.
+ (GRUB_MOD_FINI): Likewise.
+ * kern/dl.c (grub_dl_load_file): Fix null pointer dereference.
+ * genmk.rb (PModule): Assign space to common symbols when linking
+ modules.
+
+2005-01-20 Marco Gerards <metgerards@student.han.nl>
+
+ * include/grub/mm.h (grub_mm_init_region): Change the type of the
+ `unsigned' arguments to `grub_size_t'.
+ (grub_malloc): Likewise.
+ (grub_realloc): Likewise.
+ (grub_memalign): Likewise.
+ * kern/i386/dl.c (grub_arch_dl_check_header): Likewise.
+ * kern/powerpc/dl.c (grub_arch_dl_check_header): Likewise.
+ * util/misc.c (grub_malloc): Likewise.
+ (grub_realloc): Likewise.
+ * kern/mm.c (get_header_from_pointer): Change the casts to
+ `unsigned' into a cast to `grub_size_t'.
+
+ * fs/fshelp.c (grub_fshelp_find_file): The `oldnode' should always
+ point to `currnode' when `currnode' is changed.
+
+ * util/grub-emu.c (main): Initialize `progname'. Reported by Nico
+ Schottelius <nico-linux@schottelius.org>.
+
+2005-01-09 Hollis Blanchard <hollis@penguinppc.org>
+
+ * util/powerpc/ieee1275/grub-mkimage.c: Include <string.h>.
+ (note_path): Remove variable.
+ (GRUB_IEEE1275_NOTE_NAME): New macro.
+ (GRUB_IEEE1275_NOTE_TYPE): Likewise.
+ (grub_ieee1275_note_hdr): New structure.
+ (grub_ieee1275_note_desc): Likewise.
+ (grub_ieee1275_note): Likewise.
+ (load_note): Remove `dir' argument. All callers updated. Remove
+ `note_img' and `path'. Do not load a file from `note_path'.
+ Initialize a struct grub_ieee1275_note and write that to `out'.
+ Use GRUB_IEEE1275_MODULE_BASE instead of MODULE_BASE.
+
+2005-01-05 Marco Gerards <metgerards@student.han.nl>
+
+ * util/misc.c (grub_util_read_image): Revert last change. It
+ called `grub_util_read_at', which seeks from the beginning of the
+ file.
+
+2005-01-04 Hollis Blanchard <hollis@penguinppc.org>
+
+ * TODO: Add note about endianness in grub-mkimage.
+ * boot/powerpc/ieee1275/crt0.S (note): Remove unused .note
+ section.
+ * conf/powerpc-ieee1275.rmk (bin_UTILITIES): Add grub-mkimage.
+ (grub_mkimage_SOURCES): New target.
+ * include/grub/kernel.h (grub_start_addr): Remove variable.
+ (grub_end_addr): Likewise.
+ (grub_total_module_size): Likewise.
+ (grub_kernel_image_size): Likewise.
+ (GRUB_MODULE_MAGIC): New constant.
+ (grub_module_info): New structure.
+ (grub_arch_modules_addr): New prototype.
+ (grub_get_end_addr): Remove prototype.
+ * include/grub/i386/pc/kernel.h (grub_end_addr): New prototype.
+ * include/grub/powerpc/ieee1275/kernel.h: New file.
+ * include/grub/util/misc.h (grub_util_get_fp_size): New
+ prototype.
+ (grub_util_read_at): Likewise.
+ (grub_util_write_image_at): Likewise.
+ * kern/main.c (grub_get_end_addr): Remove function.
+ (grub_load_modules): Call grub_arch_modules_addr instead of using
+ grub_end_addr. Look for a grub_module_info struct in memory. Use
+ the grub_module_info fields instead of calling grub_get_end_addr
+ as loop conditions. Move grub_add_unused_region code here.
+ (grub_add_unused_region): Remove function.
+ * kern/i386/pc/init.c: Include grub/cache.h.
+ (grub_machine_init): Remove call to grub_get_end_addr. Remove
+ one call to add_mem_region.
+ (grub_arch_modules_addr): New function.
+ * kern/powerpc/ieee1275/init.c (grub_end_addr): Remove variable.
+ (grub_total_module_size): Likewise.
+ Include grub/machine/kernel.h.
+ (grub_arch_modules_addr): New function.
+ * util/grub-emu.c (grub_end_addr): Remove variable.
+ (grub_total_module_size): Likewise.
+ (grub_arch_modules_addr): New function.
+ * util/misc.c: Include unistd.h.
+ (grub_util_get_fp_size): New function.
+ (grub_util_read_at): Likewise.
+ (grub_util_write_image_at): Likewise.
+ (grub_util_read_image): Call grub_util_read_at.
+ (grub_util_write_image): Call grub_util_write_image_at.
+ * util/i386/pc/grub-mkimage.c (generate_image): Allocate
+ additional memory in kernel_img for a struct grub_module_info.
+ Fill in that grub_module_info.
+ * util/powerpc/ieee1275/grub-mkimage.c: New file.
+
+2005-01-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_milliseconds):
+ New function.
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_milliseconds): New prototype.
+ * include/grub/powerpc/ieee1275/time.h (GRUB_TICKS_PER_SECOND):
+ Change to 1000.
+ * kern/powerpc/ieee1275/init.c (grub_get_rtc): Call
+ grub_ieee1275_milliseconds.
+
+2005-01-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c (grub_ieee1275_realmode): New
+ variable.
+ (find_options): New function.
+ (cmain): Call find_options.
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_realmode): New extern variable.
+ * kern/powerpc/ieee1275/openfw.c (grub_claimmap): Only call
+ grub_map if grub_ieee1275_realmode is false.
+
+2004-12-29 Marco Gerards <metgerards@student.han.nl>
+
+ * normal/cmdline.c (grub_cmdline_get): Redone logic so no empty
+ lines are inserted and make it work like readline. Reported by
+ Vincent Pelletier <subdino2004@yahoo.fr>.
+
+2004-12-28 Marco Gerards <metgerards@student.han.nl>
+
+ * boot/powerpc/ieee1275/crt0.S (_start): Don't set up the stack.
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCE): Remove
+ `kern/powerpc/cache.S'.
+
+2004-12-27 Marco Gerards <metgerards@student.han.nl>
+
+ * genmk.rb: Handle the `Program' class in the main loop. Written
+ by Johan Rydberg <jrydberg@gnu.org>.
+ (Program): New class.
+ (programs): New variable.
+ * boot/powerpc/ieee1275/cmain.c: Include <grub/machine/ieee1275.h>
+ instead of "grub/machine/ieee1275.h". Include <grub/kernel.h>
+ instead of "grub/kernel.h". Include <grub/machine/init.h>.
+ (help_arch): Function removed.
+ * conf/powerpc-ieee1275.rmk (grubof_HEADERS): Add
+ `powerpc/libgcc.h' and `loader.h'.
+ (pkgdata_PROGRAMS): New variable.
+ (sbin_UTILITIES): Variable removed.
+ (grub_emu_SOURCES): Added kern/powerpc/cache.S.
+ (grubof_SOURCES): Variable re-defined so it only includes the
+ core functionality.
+ (grubof_CFLAGS): Remove `-DGRUBOF'.
+ (pkgdata_MODULES, fshelp_mod_SOURCES, fshelp_mod_CFLAGS,
+ (fat_mod_SOURCES, fat_mod_CFLAGS, ext2_mod_SOURCES)
+ (ext2_mod_CFLAGS, ufs_mod_SOURCES, ufs_mod_CFLAGS)
+ (minix_mod_SOURCES, minix_mod_CFLAGS, hfs_mod_SOURCES)
+ (hfs_mod_CFLAGS, jfs_mod_SOURCES, jfs_mod_CFLAGS)
+ (iso9660_mod_SOURCES, iso9660_mod_CFLAGS, _linux_mod_SOURCES)
+ (_linux_mod_CFLAGS, linux_mod_SOURCES, linux_mod_CFLAGS)
+ (normal_mod_SOURCES, normal_mod_CFLAGS, normal_mod_ASFLAGS)
+ (hello_mod_SOURCES, hello_mod_CFLAGS, boot_mod_SOURCES)
+ (boot_mod_CFLAGS, terminal_mod_SOURCES, terminal_mod_CFLAGS)
+ (ls_mod_SOURCES, ls_mod_CFLAGS, cmp_mod_SOURCES, cmp_mod_CFLAGS)
+ (cat_mod_SOURCES, cat_mod_CFLAGS, font_mod_SOURCES)
+ (font_mod_CFLAGS, amiga_mod_SOURCES, amiga_mod_CFLAGS)
+ (apple_mod_SOURCES, apple_mod_CFLAGS, pc_mod_SOURCES)
+ (pc_mod_CFLAGS): New variables.
+ * disk/powerpc/ieee1275/ofdisk.c: Include <grub/machine/init.h>.
+ (grub_ofdisk_iterate): Add a prototype for `dev_iterate'.
+ * include/grub/dl.h (grub_arch_dl_sync_caches): New prototype.
+ * include/grub/loader.h (grub_os_area_addr, grub_os_area_size):
+ Moved from here...
+ * include/grub/i386/pc/init.h (grub_os_area_addr)
+ (rub_os_area_size): ... to here.
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_entry_fn): Export symbol.
+ * include/grub/powerpc/ieee1275/init.h: New file.
+ * include/grub/powerpc/libgcc.h: Likewise.
+ * include/grub/cache.h: Likewise.
+ * kern/powerpc/cache.S: Likewise. Written by Hollis Blanchard
+ <hollis@penguinppc.org>.
+ * kern/dl.c: Include <grub/cache.h>.
+ (grub_dl_flush_cache): New function.
+ (grub_dl_load_core): Call `grub_dl_flush_cache' to flush the cache
+ for this module.
+ * kern/powerpc/ieee1275/init.c (grub_ofdisk_init)
+ (grub_console_init): Removed prototypes.
+ (grub_machine_init): Don't initialize the modules anymore.
+ * kern/powerpc/ieee1275/openfw.c (grub_map): Make the function
+ static.
+ * include/grub/powerpc/types.h (GRUB_HOST_WORDS_LITTLEENDIAN):
+ Macro undef removed.
+ (GRUB_HOST_WORDS_BIGENDIAN): New macro.
+ * kern/powerpc/dl.c (grub_arch_dl_relocate_symbols): Add
+ relocation `R_PPC_REL32'. Return an error when the relocation is
+ unknown.
+ * Makefile.in (DATA): Add `$(pkgdata_PROGRAMS)'.
+ * kern/i386/pc/init.c (grub_arch_sync_caches): New function.
+ * util/misc.c (grub_arch_sync_caches): Likewise.
+
+2004-12-19 Marco Gerards <metgerards@student.han.nl>
+
+ * conf/powerpc-ieee1275.rmk (MOSTLYCLEANFILES): Remove
+ `symlist.c', add `grubof_symlist.c'.
+ (symlist.c): Variable removed.
+ (grubof_HEADERS): Variable added.
+ (grubof_symlist.c): New target.
+ (kernel_syms.lst): Use `grubof_HEADERS' instead of
+ `kernel_img_HEADERS'.
+ (grubof_SOURCES): Add `kern/powerpc/dl.c' and `grubof_symlist.c'.
+ * kern/powerpc/dl.c: New file.
+ * kern/powerpc/ieee1275/init.c (grub_arch_dl_check_header):
+ Function removed.
+ (grub_arch_dl_relocate_symbols): Likewise.
+ (grub_register_exported_symbols): Likewise.
+
+2004-12-13 Marco Gerards <metgerards@student.han.nl>
+
+ * fs/ext2.c (grub_ext2_open): Don't use data after freeing it.
+ (grub_ext2_dir): Likewise. Don't return in case of an error, jump
+ to fail instead. Reported by Vincent Pelletier
+ <subdino2004@yahoo.fr>.
+
+ * fs/fshelp.c (grub_fshelp_find_file): Don't free `oldnode' when
+ it is not allocated. Reported by Vincent Pelletier
+ <subdino2004@yahoo.fr>.
+
+ * normal/cmdline.c (grub_tab_complete): Add a blank line to the
+ output so the output looks better.
+
+2004-12-04 Marco Gerards <metgerards@student.han.nl>
+
+ Modulize the partition map support and add support for the amiga
+ partition map.
+
+ * commands/ls.c: Include <grub/partition.h> instead of
+ <grub/machine/partition.h>.
+ * kern/disk.c: Likewise.
+ * kern/rescue.c: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * normal/cmdline.c: Likewise.
+ * kern/powerpc/ieee1275/init.c: Likewise.
+ (grub_machine_init): Call `grub_pc_partition_map_init',
+ `grub_amiga_partition_map_init' and
+ `grub_apple_partition_map_init'.
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Remove
+ `disk/i386/pc/partition.c'. Add `kern/partition.c'.
+ (kernel_img_HEADERS): Remove `machine/partition.h'. Add
+ `partition.h' and `pc_partition.h'.
+ (grub_setup_SOURCES): Remove
+ `disk/i386/pc/partition.c'. Add `kern/partition.c',
+ `partmap/amiga.c', `partmap/apple.c' and `partmap/pc.c'.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add `amiga.mod', `apple.mod' and `pc.mod'.
+ (amiga_mod_SOURCES, amiga_mod_CFLAGS, apple_mod_SOURCES)
+ (apple_mod_CFLAGS, pc_mod_SOURCES, pc_mod_CFLAGS): New variables.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove
+ `disk/powerpc/ieee1275/partition.c'. Add `kern/partition.c',
+ `partmap/amiga.c', `partmap/apple.c' and `partmap/pc.c'.
+ (grubof_SOURCES): Likewise.
+ * disk/i386/pc/partition.c: File removed.
+ * disk/powerpc/ieee1275/partition.c: Likewise.
+ * include/grub/powerpc/ieee1275/partition.h: Likewise.
+ * include/grub/i386/pc/partition.h: Likewise.
+ * kern/partition.c: New file.
+ * partmap/amiga.c: Likewise.
+ * partmap/apple.c: Likewise.
+ * partmap/pc.c: Likewise.
+ * include/grub/partition.h: Likewise..
+ * include/grub/pc_partition.h: Likewise.
+ * util/grub-emu.c: Include <grub/partition.h> instead of
+ <grub/machine/partition.h>.
+ (main): Call `grub_pc_partition_map_init',
+ `grub_amiga_partition_map_init' and
+ `grub_apple_partition_map_init' and deinitialize afterwards.
+ * util/i386/pc/biosdisk.c: Include `#include
+ <grub/partition.h>' and `include <grub/pc_partition.h>' instead of
+ `<grub/machine/partition.h>'.
+ * util/i386/pc/grub-setup.c: Likewise.
+ * util/i386/pc/biosdisk.c: Likewise.
+ (grub_util_biosdisk_get_grub_dev): Only access the PC specific
+ partition information in case of a PC partition.
+ * util/i386/pc/grub-setup.c: Include `#include
+ <grub/partition.h>' and `include <grub/pc_partition.h>' instead of
+ `<grub/machine/partition.h>'.
+ (setup): Only access the PC specific partition information in case
+ of a PC partition.
+
+2004-11-17 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/init.c (grub_setjmp): Remove function.
+ (grub_longjmp): Likewise.
+ * include/grub/powerpc/setjmp.h (grub_jmp_buf): Set array size to
+ 20.
+ * normal/powerpc/setjmp.S: New file.
+ * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Add
+ `normal/powerpc/setjmp.S'.
+ (grubof_CFLAGS): Add `-DGRUBOF'.
+ * include/grub/setjmp.h [GRUB_UTIL]: Changed condition to
+ [GRUB_UTIL && !GRUBOF].
+
+2004-11-16 Marco Gerards <metgerards@student.han.nl>
+
+ * kern/powerpc/ieee1275/openfw.c (grub_devalias_iterate): Skip any
+ property named `name'. Correctly handle the error returned by
+ `grub_ieee1275_finddevice' if a device can not be opened.
+
+2004-11-02 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_readkey): Test
+ `actual' for negativity.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Remove
+ kern/fshelp.c.
+
+2004-11-01 Marco Gerards <metgerards@student.han.nl>
+
+ * term/i386/pc/vga.c (VGA_HEIGHT): Changed to 350.
+ (PAGE_OFFSET): New macro.
+ (CRTC_ADDR_PORT): Likewise.
+ (CRTC_DATA_PORT): Likewise.
+ (START_ADDR_HIGH_REGISTER): Likewise.
+ (START_ADDR_LOW_REGISTER): Likewise.
+ (GRAPHICS_ADDR_PORT): Likewise.
+ (GRAPHICS_DATA_PORT): Likewise.
+ (READ_MAP_REGISTER): Likewise.
+ (INPUT_STATUS1_REGISTER): Likewise.
+ (INPUT_STATUS1_VERTR_BIT): Likewise.
+ (page): New variable.
+ (wait_vretrace): New function.
+ (set_read_map): Likewise.
+ (set_start_address): Likewise.
+ (grub_vga_init): Use mode 0x10 instead of mode 0x12. Switch to
+ the right page.
+ (check_vga_mem): Take the page into account.
+ (write_char): Likewise.
+ (write_cursor): Likewise.
+ (scroll_up): Likewise. Copy the page to the page that is not
+ shown and switch between both pages.
+ (grub_vga_putchar): Fix off by one error.
+ (grub_vga_cls): Wait for the vertical retrace. Take the page into
+ account.
+
+2004-11-01 Marco Gerards <metgerards@student.han.nl>
+
+ Add support for iso9660 (including rockridge).
+
+ * conf/i386-pc.rmk (grub_emu_SOURCES): Add fs/iso9660.c.
+ (iso9660_mod_SOURCES): New variable.
+ (iso9660_mod_CFLAGS): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/iso9660.c.
+ * include/grub/fs.h (grub_iso9660_init): New prototype.
+ * util/grub-emu.c (main): Call `grub_iso9660_init'.
+ * fs/iso9660.c: New file.
+
+ * include/grub/misc.h (grub_strncat): New prototype.
+ * kern/misc.c (grub_strncat): New function.
+
+ * fs/hfs.c (grub_hfs_mount): Translate the error
+ `GRUB_ERR_OUT_OF_RANGE' to `GRUB_ERR_BAD_FS'.
+ * fs/jfs.c (grub_jfs_mount): Likewise.
+ * fs/ufs.c (grub_ufs_mount): Likewise.
+
+2004-10-28 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c (cmain): Remove asm statements
+ which initialized BAT registers.
+ * boot/powerpc/ieee1275/ieee1275.c (IEEE1275_CALL_ENTRY_FN,
+ grub_ieee1275_common_hdr, INIT_IEEE1275_COMMON):
+ Move from here...
+ * include/grub/powerpc/ieee1275/ieee1275.h (IEEE1275_CALL_ENTRY_FN,
+ grub_ieee1275_common_hdr, INIT_IEEE1275_COMMON):
+ ... to here.
+ * kern/powerpc/ieee1275/openfw.c (grub_map): New function.
+ (grub_mapclaim): Likewise.
+ * loader/powerpc/ieee1275/linux.c (grub_load_linux): Use
+ grub_mapclaim instead of grub_ieee1275_claim. Assign linux_addr by
+ hand.
+
+2004-10-19 Hollis Blanchard <hollis@penguinppc.org>
+
+ * conf/powerpc-ieee1275.rmk (COMMON_ASFLAGS): Remove -fno-builtin.
+ (COMMON_CFLAGS): Remove -fno-builtin and -D__ASSEMBLY__. Add
+ -ffreestanding and -msoft-float.
+
+2004-10-15 Hollis Blanchard <hollis@penguinppc.org>
+
+ * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_open): Do not
+ append ":0" to devpath if the GRUB_IEEE1275_NO_PARTITION_0 flag is
+ set in grub_ieee1275_flags.
+
+2004-10-14 Hollis Blanchard <hollis@penguinppc.org>
+
+ * include/grub/powerpc/ieee1275/ieee1275.h (abort): Add function
+ prototype.
+ * kern/powerpc/ieee1275/init.c (grub_machine_init): Call
+ grub_console_init first.
+ Change the memory range used for grub_ieee1275_claim and
+ grub_mm_init_region.
+ Print an error message if the claim fails.
+ Include <grub/misc.h>.
+
+2004-10-13 Hollis Blanchard <hollis@penguinppc.org>
+
+ * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_iterate):
+ Call grub_children_iterate for device nodes of type `scsi',
+ `ide', or `ata'.
+ (grub_ofdisk_open): Remove manual device alias resolution.
+ Fix memory leak when device cannot be opened.
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_children_iterate): New prototype.
+ * kern/powerpc/ieee1275/openfw.c (grub_children_iterate):
+ New function.
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property):
+ Return -1 if args.size was -1.
+
+2004-10-11 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/cmain.c (grub_ieee1275_flags): New global.
+ (cmain): Accept 3 parameters. Test for 0xdeadbeef, indicating Old
+ World Macintosh. If Old Wold, set flag in grub_ieee1275_flags; claim
+ Open Firmware's memory for it; claim memory from _start to _end.
+ * boot/powerpc/ieee1275/crt0.S (__bss_start): New extern.
+ (_end): New extern.
+ (_start): Zero BSS from __bss_start to _end.
+ * include/grub/powerpc/ieee1275/ieee1275.h (grub_ieee1275_flags):
+ New extern.
+ (GRUB_IEEE1275_NO_PARTITION_0): New #define.
+
+2004-10-11 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_claim): Return
+ -1 if args.base was -1.
+
+2004-10-08 Hollis Blanchard <hollis@penguinppc.org>
+
+ * term/powerpc/ieee1275/ieee1275.c (grub_ofconsole_cls): Use an ANSI
+ escape sequence instead of a literal ^L. Also call
+ grub_ofconsole_gotoxy.
+
+2004-10-03 Hollis Blanchard <hollis@penguinppc.org>
+
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_claim): change
+ void * arguments to grub_addr_t. All callers updated. Also make
+ the `result' argument optional.
+ (grub_ieee1275_release): change void * arguments to grub_addr_t.
+ All callers updated.
+
+2004-09-22 Hollis Blanchard <hollis@penguinppc.org>
+
+ * commands/ls.c (grub_ls_list_files): Use the string following the
+ initial ')', if present, as the filesystem path.
+ * kern/rescue.c (grub_rescue_cmd_ls): Likewise.
+
+ * conf/powerpc-ieee1275.rmk (grubof_SOURCES): List crt0.S first.
+
+2004-09-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Make the source code of the menu interface more readable.
+
+ * normal/menu.c: Include grub/mm.h.
+ (TERM_WIDTH): New macro.
+ (TERM_HEIGHT): Likewise.
+ (TERM_INFO_HEIGHT): Likewise.
+ (TERM_MARGIN): Likewise.
+ (TERM_SCROLL_WIDTH): Likewise.
+ (TERM_TOP_BORDER_Y): Likewise.
+ (TERM_LEFT_BORDER_X): Likewise.
+ (TERM_BORDER_WIDTH): Likewise.
+ (TERM_MESSAGE_HEIGHT): Likewise.
+ (TERM_BORDER_HEIGHT): Likewise.
+ (TERM_NUM_ENTRIES): Likewise.
+ (TERM_FIRST_ENTRY_Y): Likewise.
+ (TERM_ENTRY_WIDTH): Likewise.
+ (TERM_CURSOR_X): Likewise.
+ (draw_border): Use macros instead of magic numbers.
+ (print_entry): Likewise.
+ (print_entries): Likewise.
+ (run_menu): Likewise. Also, handle the key 'e'.
+ (run_menu_entry): Ignore empty command lines.
+ (print_message): Added a new argument EDIT. If EDIT is true,
+ print a different message.
+ (init_page): Likewise.
+ (edit_menu_entry): New function. Not implemented yet.
+
+2004-09-17 Marco Gerards <metgerards@student.han.nl>
+
+ Add `linux.mod' and `multiboot.mod' so linux and multiboot kernels
+ can be loaded from normal mode.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Add `linux.mod' and
+ `multiboot.mod'.
+ (linux_mod_SOURCES, linux_mod_CFLAGS, multiboot_mod_SOURCES)
+ (multiboot_mod_CFLAGS): New variables.
+ * loader/i386/pc/linux_normal.c: New file.
+ * loader/i386/pc/multiboot_normal.c: Likewise.
+
+ * loader/i386/pc/linux.c (grub_rescue_cmd_initrd): Don't use the
+ attribute `unused'.
+
+ * fs/ext2.c (grub_ext2_iterate_dir): Fix typos in inode type. Use
+ `fdiro' to read the mode information from instead of `diro'.
+
+ * fs/fshelp.c (grub_fshelp_find_file): Set type to foundtype after
+ looking up a symlink.
+
+ * include/grub/normal.h (GRUB_COMMAND_FLAG_NO_ARG_PARSE): New
+ macro.
+ * normal/command.c (grub_command_execute): Don't parse the
+ arguments when `GRUB_COMMAND_FLAG_NO_ARG_PARSE' is set in the
+ flags of the command.
+
+ * normal/menu.c (grub_menu_run): Fix typo.
+
+2004-09-14 Hollis Blanchard <hollis@penguinppc.org>
+
+ * kern/powerpc/ieee1275/init.c (abort): Trap into Open Firmware.
+
+ * term/powerpc/ieee1275/ofconsole.c (grub_ofconsole_gotoxy): Use
+ `y + 1' instead of `y - 1'.
+
+ * conf/powerpc-ieee1275.rmk (grubof_LDFLAGS): Add `-N' and `-S'.
+
+2004-09-14 Yoshinori K. Okuji <okuji@enbug.org>
+
+ From Hollis Blanchard <hollis@penguinppc.org>:
+ * kern/misc.c (memmove): New alias for grub_memmove.
+ (memcmp): New alias for grub_memcmp.
+ (memset): New alias for grub_memset.
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_get_property):
+ Change "int handle" to "grub_ieee1275_phandle_t handle".
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_get_property): Likewise.
+
+2004-09-12 Tomas Ebenlendr <ebik@ucw.cz>
+
+ Added normal mode command `chainloader' as module chain.mod, which
+ depends on normal.mod and _chain.mod.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Add `chain.mod'.
+ (chain_mod_SOURCES, chain_mod_CFLAGS): Variables added.
+ * include/grub/i386/pc/loader.h (grub_rescue_cmd_chainloader):
+ Deleted prototype.
+ * loader/i386/pc/chainloader.c (grub_rescue_cmd_chainloader): All
+ but arguments parsing moved to ...
+ (grub_chainloader_cmd): ... here. New function.
+ * include/grub/i386/pc/chainloader.h: New file.
+ * loader/i386/pc/chainloader_normal.c: Likewise.
+
+2004-09-11 Marco Gerards <metgerards@student.han.nl>
+
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Added kern/fshelp.c.
+ (grub_mkimage_LDFLAGS): Likewise.
+ (grub_emu_SOURCES): Likewise.
+ (kernel_img_HEADERS): Added fshelp.h.
+ * fs/ext2.c: Include <grub/fshelp.h>.
+ (FILETYPE_REG): New macro.
+ (FILETYPE_INO_REG): Likewise.
+ (grub_ext_sblock): Renamed to `grub_ext2_sblock'.
+ Changed all users.
+ (ext2_block_group): Renamed to `grub_ext2_block_group'. Changed
+ all users.
+ (grub_fshelp_node): New struct.
+ (grub_ext2_data): Added member `diropen'. Changed member `inode'
+ to a pointer.
+ (grub_ext2_get_file_block): Removed function.
+ (grub_ext2_read_block): New function.
+ (grub_ext2_read_file): Replaced parameter `data' by `node'.
+ This function was written.
+ (grub_ext2_mount): Read the root inode. Create a diropen struct.
+ (grub_ext2_find_file): Removed function.
+ (grub_ext2_read_symlink): New function.
+ (grub_ext2_iterate_dir): Likewise.
+ (grub_ext2_open): Rewritten.
+ (grub_ext2_dir): Rewritten.
+ * include/grub/fshelp.h: New file.
+ * fs/fshelp.c: Likewise.
+
+2004-09-10 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * normal/menu.c: Include grub/loader.h and grub/machine/time.h.
+ (print_message): Add a missing newline.
+ (run_menu): Added timeout support.
+ (run_menu_entry): New local function.
+ (grub_menu_run): Added support for booting.
+
+ * kern/loader.c (grub_loader_is_loaded): New function.
+
+ * include/grub/powerpc/ieee1275/time.h: Include grub/symbol.h.
+ (grub_get_rtc): Exported.
+
+ * include/grub/i386/pc/time.h: Include grub/symbol.h.
+ (grub_get_rtc): Exported.
+
+ * include/grub/normal.h (struct grub_command_list): Remove
+ constant from the member `command'.
+
+ * include/grub/loader.h (grub_loader_is_loaded): Declared.
+
+ * include/grub/err.h (GRUB_ERR_INVALID_COMMAND): New constant.
+
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/time.h.
+
+2004-08-28 Marco Gerards <metgerards@student.han.nl>
+
+ Add support for the JFS filesystem.
+
+ * fs/jfs.c: New file.
+ * include/grub/fs.h (grub_jfs_init): New prototype.
+ (grub_jfs_fini): New prototype.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/jfs.c.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add jfs.mod.
+ (jfs_mod_SOURCES): New variable.
+ (jfs_mod_CFLAGS): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs.jfs.c.
+ (grubof_SOURCES): Likewise.
+ * util/grub-emu.c (main): Initialize and deinitialize JFS support.
+
+ * fs/fat.c (grub_fat_find_dir): Convert the filename little
+ endian to the host endian.
+ (grub_fat_utf16_to_utf8): Move function from there...
+ * kern/misc.c (grub_utf16_to_utf8): ...to here. Do not convert
+ the endianness of the source string anymore.
+ * include/grub/misc.h (grub_utf16_to_utf8): New prototype.
+
+2004-08-24 Marco Gerards <metgerards@student.han.nl>
+
+ * commands/boot.c (grub_boot_init) [GRUB_UTIL]: Make conditional.
+ (grub_boot_fini) [GRUB_UTIL]: Likewise.
+ (GRUB_MOD_INIT) [!GRUB_UTIL]: Likewise.
+ (GRUB_MOD_FINI) [!GRUB_UTIL]: Likewise.
+
+ * fs/hfs.c (grub_hfs_find_node): Add a prototype for `node_found'.
+ (grub_hfs_iterate_dir): Make the function static. Add prototypes
+ for `node_found' and `it_dir'.
+ (grub_hfs_dir): Add prototype for `dir_hook'.
+
+ * fs/minix.c (grub_minix_get_file_block): Add prototype for
+ `grub_get_indir'. Rename `indir' in two blocks to `indir16'
+ and `indir32' to silence a gcc warning.
+
+ * include/grub/fs.h (grub_hfs_init): New prototype.
+ (grub_hfs_fini): Likewise.
+
+
+2004-08-21 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Each disk device has its own id now. This is useful to make use
+ of multiple disk devices.
+
+ * include/grub/disk.h (grub_disk_dev_id): New enum.
+ (GRUB_DISK_DEVICE_BIOSDISK_ID): New constant.
+ (GRUB_DISK_DEVICE_OFDISK_ID): Likewise.
+
+ * disk/i386/pc/biosdisk.c (grub_biosdisk_dev): Specify
+ GRUB_DISK_DEVICE_BIOSDISK_ID as an id.
+
+ * disk/powerpc/ieee1275/ofdisk.c (grub_ofdisk_dev): Specify
+ GRUB_DISK_DEVICE_OFDISK_ID as an id.
+
+ * util/i386/pc/biosdisk.c (grub_util_biosdisk_dev): Specify
+ GRUB_DISK_DEVICE_BIOSDISK_ID as an id.
+
+ * include/grub/disk.h (struct grub_disk_dev): Added a new member
+ "id" which is used by the cache manager.
+
+ * normal/main.c (grub_normal_init_page): Use "GNU GRUB" instead
+ of just "GRUB".
+
+2004-08-18 Marco Gerards <metgerards@student.han.nl>
+
+ * fs/hfs.c: New file.
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/hfs.c.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add hfs.mod.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/hfs.c.
+ (grubof_SOURCES): Likewise.
+ * util/grub-emu.c (main): Initialize and deinitialize HFS support.
+
+ * include/grub/misc.h (grub_strncasecmp): Add prototype.
+ * kern/misc.c (grub_strncasecmp): Add function.
+
+2004-08-14 Marco Gerards <metgerards@student.han.nl>
+
+ * include/grub/arg.h (GRUB_ARG_OPTION_OPTIONAL): Surround macro
+ with parentheses.
+
+ * fs/ext2.c (FILETYPE_UNKNOWN): New macro.
+ (grub_ext2_dir): In case the directory entry type is unknown, read
+ it from the inode.
+
+2004-08-02 Peter Bruin <pjbruin@dds.nl>
+
+ * loader/powerpc/ieee1275/linux.c (grub_linux_init): Pass
+ grub_load_linux instead of grub_rescue_cmd_linux as second
+ argument of grub_rescue_register_command.
+
+ * Makefile.in (RMKFILES): Add conf/powerpc-ieee1275.rmk.
+
+2004-07-27 Marco Gerards <metgerards@student.han.nl>
+
+ * boot/powerpc/ieee1275/ieee1275.c (grub_ieee1275_release): New
+ function.
+ * commands/boot.c: Remove the check for `GRUB_UTIL'.
+ * conf/powerpc-ieee1275.rmk (grubof_SOURCES): Add
+ `loader/powerpc/ieee1275/linux.c',
+ `loader/powerpc/ieee1275/linux_normal.c' and `commands/boot.c'.
+ * include/grub/powerpc/ieee1275/ieee1275.h
+ (grub_ieee1275_release): New prototype.
+ * include/grub/powerpc/ieee1275/loader.h: Rewritten.
+ * kern/powerpc/ieee1275/init.c (grub_machine_init): Initialize
+ normal, boot, linux and linux_normal.
+ * loader/powerpc/ieee1275/linux.c: New file.
+ * loader/powerpc/ieee1275/linux_normal.c: Likewise.
+
+2004-07-12 Marco Gerards <metgerards@student.han.nl>
+
+ * normal/arg.c (grub_arg_parse): Correct error handling after
+ reallocating the argumentlist (check if `argl' is not null instead
+ of checking if `args' is not null).
+ * kern/mm.c (grub_realloc): Return the same pointer when using the
+ same region, instead of returning the header address.
+
+2004-07-11 Marco Gerards <metgerards@student.han.nl>
+
+ * disk/powerpc/ieee1275/partition.c (grub_partition_iterate): Skip
+ one block instead of two when looking for the initial partition.
+ (grub_partition_probe): Initialize the local variable `p' with 0.
+ Use base 10 for the grub_strtoul call.
+ * kern/misc.c (grub_strncpy): Fix off by one bug. Eliminated the
+ need for one local variable.
+ (grub_strtoul): Don't add the new value to `num', instead of that
+ just assign it.
+
+2004-07-11 Marco Gerards <metgerards@student.han.nl>
+
+ * conf/i386-pc.rmk (pkgdata_IMAGE): Add pxeboot.img.
+ (pxeboot_img_SOURCES): New variable.
+ (pxeboot_img_ASFLAGS): Likewise.
+ (pxeboot_img_LDFLAGS): Likewise.
+ * boot/i386/pc/pxeboot.S: New file. Based on pxeloader.S from
+ GRUB Legacy and boot.S. Adopted for GRUB 2 by lode leroy
+ <lode_leroy@hotmail.com>.
+
+2004-06-27 Tomas Ebenlendr <ebik@ucw.cz>
+
+ * kern/rescue.c (grub_enter_rescue_mode): Don't continue when
+ there was no input.
+
+2004-06-27 Tomas Ebenlendr <ebik@ucw.cz>
+
+ * normal/cmdline.c (grub_set_history): Fix off by one bug. Fixed
+ the history buffer logic.
+
+2004-06-27 Tomas Ebenlendr <ebik@ucw.cz>
+
+ * fs/ext2.c (FILETYPE_INO_MASK, FILETYPE_INO_DIRECTORY)
+ (FILETYPE_INO_SYMLINK): New macros.
+ (grub_ext2_find_file): Check if the node is a directory using the
+ inode stat information instead of using the filetype in the
+ dirent. Exclude the first character of an absolute symlink.
+ (grub_ext2_dir): Mask out the filetype part of the mode member of
+ the inode.
+
+2004-05-24 Marco Gerards <metgerards@student.han.nl>
+
+ Add support for UFS version 1 and 2. Add support for the minix
+ filesystem version 1 and 2, both the variants with 14 and 30 long
+ filenames.
+
+ * conf/i386-pc.rmk (grub_setup_SOURCES): Add fs/ufs.c and
+ fs/minix.c.
+ (grub_emu_SOURCES): Likewise.
+ (pkgdata_MODULES): Add ufs.mod and minix.mod.
+ (ufs_mod_SOURCES): New variable.
+ (ufs_mod_CFLAGS): Likewise.
+ (minix_mod_SOURCES): Likewise.
+ (minix_mod_CFLAGS): Likewise.
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add fs/ufs.c and
+ fs/minix.c.
+ (grubof_SOURCES): Likewise.
+ * fs/ufs.c: New file.
+ * fs/minix.c: New file.
+ * include/grub/fs.h (grub_ufs_init): New prototype.
+ (grub_ufs_fini): Likewise.
+ (grub_minix_init): Likewise.
+ (grub_minix_fini): Likewise.
+ * util/grub-emu.c (main): Initialize and deinitialize UFS and
+ minix fs.
+
+2004-04-30 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * conf/powerpc-ieee1275.rmk (grub_emu_SOURCES): Add normal/arg.c,
+ commands/ls.c, commands/terminal.c, commands/boot.c,
+ commands/cmp.c and commands/cat.c.
+ (grubof_LDFLAGS): Add -nostdlib -static-libgcc -lgcc.
+
+ * kern/powerpc/ieee1275/init.c: Include "grub/env.h" instead of
+ "env.h"
+
+2004-04-04 Yoshinori K. Okuji <okuji@enbug.org>
+
+ All symbols prefixed with PUPA_ and pupa_ are renamed to GRUB_
+ and grub_, respectively. Because the conversion is trivial and
+ mechanical, I omit the details here. Please refer to the CVS
+ if you need more information.
+
+2004-04-04 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/pupa: Renamed to ...
+ * include/grub: ... this.
+ * util/i386/pc/pupa-mkimage.c: Renamed to ...
+ * util/i386/pc/grub-mkimage.c: ... this.
+ * util/i386/pc/pupa-setup.c: Renamed to ...
+ * util/i386/pc/grub-setup.c: ... this.
+ * util/pupa-emu.c: Renamed to ...
+ * util/grub-emu.c: ... this.
+
+2004-03-29 Marco Gerards <metgerards@student.han.nl>
+
+ Add support for the newworld apple macintosh (PPC). This has been
+ tested on the powerbook 2000 only. It only adds support for
+ generic ieee1275 functions, console and disk support. This should
+ be easy to port to other architectures with support for Open
+ Firmware.
+
+ * configure.ac: Accept the powerpc as host_cpu. In the case of
+ the powerpc cpu set the host_vendor to ieee1275. Make sure the i386
+ specific tests are only executed while building for the i386.
+ Inverse test for crosscompile.
+ * genmk.rb (Utility): Allow assembler files.
+ * normal/cmdline.c (pupa_tab_complete): Reset pupa_errno.
+ * conf/powerpc-ieee1275.rmk: New file.
+ * disk/powerpc/ieee1275/ofdisk.c: Likewise.
+ * disk/powerpc/ieee1275/partition.c: Likewise.
+ * include/pupa/powerpc/ieee1275/biosdisk.h: Likewise.
+ * include/pupa/powerpc/ieee1275/console.h: Likewise.
+ * include/pupa/powerpc/ieee1275/partition.h: Likewise.
+ * include/pupa/powerpc/ieee1275/time.h: Likewise.
+ * include/pupa/powerpc/ieee1275/util/biosdisk.h: Likewise.
+ * include/pupa/powerpc/ieee1275/multiboot.h: Likewise.
+ * include/pupa/powerpc/ieee1275/loader.h
+ * include/pupa/powerpc/setjmp.h: Likewise.
+ * include/pupa/powerpc/types.h: Likewise.
+ * kern/powerpc/ieee1275/init.c: Likewise.
+ * kern/powerpc/ieee1275/openfw.c: Likewise.
+ * term/powerpc/ieee1275/ofconsole.c: Likewise.
+
+ These files were written by Johan Rydberg
+ (jrydberg@night.trouble.net) and I only modified them slightly.
+
+ * boot/powerpc/ieee1275/cmain.c: New file.
+ * boot/powerpc/ieee1275/crt0.S: Likewise.
+ * boot/powerpc/ieee1275/ieee1275.c: Likewise.
+ * include/pupa/powerpc/ieee1275/ieee1275.h: Likewise.
+
+2004-03-14 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * Makefile.in: Update copyright.
+ * genmodsrc.sh: Likewise.
+ * gensymlist.sh: Likewise.
+ * term/i386/pc/vga.c: Indent correctly.
+
+ * util/i386/pc/pupa-mkimage.c (usage): Use PACKAGE_BUGREPORT as
+ bugreporting address.
+ * util/i386/pc/pupa-setup.c (usage): Likewise,
+ (main): Call pupa_ext2_init and pupa_ext2_fini.
+
+ * fs/fat.c (log2): Renamed to ...
+ (fat_log2): ... this.
+ All callers changed.
+ * kern/misc.c (memcpy): Alias to pupa_memmove.
+ * loader/i386/pc/multiboot.c (pupa_rescue_cmd_multiboot): Fix
+ lvalue cast.
+ * util/console.c (pupa_ncurses_fini): Return 0.
+
+ * util/i386/pc/biosdisk.c (pupa_util_biosdisk_open)[__linux__]:
+ Move fail label here.
+ [__GNU__]: Don't warn when using stat.
+ (open_device)[!__linux__]: Check if FD < 0 instead of !FD.
+ (pupa_util_biosdisk_get_pupa_dev)[__GNU__]: Change type of N to
+ long int. Use strtol instead of strtoul.
+
+2004-03-14 Marco Gerards <metgerards@student.han.nl>
+
+ * commands/boot.c: New file.
+ * commands/cat.c: Likewise.
+ * commands/cmp.c: Likewise.
+ * commands/ls.c: Likewise.
+ * commands/terminal.c: Likewise.
+ * normal/command.c: Include <pupa/env.h> and <pupa/dl.h>.
+ (pupa_register_command): Changed interface to match the new
+ argument parser.
+ (pupa_command_execute): Changed (almost rewritten) so it uses
+ pupa_split_command. Added support for setting variables using the
+ syntax `foo=bar'.
+ (rescue_command): Changed to work with the new argument parser.
+ (terminal_command): Moved from here to commands/terminal.c.
+ (set_command): New function.
+ (unset_command): New function.
+ (insmod_command): New function.
+ (rmmod_command): New function.
+ (lsmod_command): New function.
+ (pupa_command_init): Don't initialize the command terminal
+ anymore. Initialize the commands set, unset, insmod, rmmod and
+ lsmod.
+ * conf/i386-pc.rmk (kernel_img_SOURCES): Add kern/env.c.
+ (kernel_img_HEADERS): Add arg.h and env.h.
+ (pupa_mkimage_LDFLAGS): Add kern/env.c.
+ (pupa_emu_SOURCES): Add kern/env.c, commands/ls.c,
+ commands/terminal.c commands/boot.c commands/cmp.c commands/cat.c,
+ normal/arg.c.
+ (pkgdata_MODULES): Add ls.mod, boot.mod, cmp.mod, cat.mod and
+ terminal.mod.
+ (normal_mod_SOURCES): Add normal/arg.c and normal/arg.c.
+ (boot_mod_SOURCES): New variable.
+ (terminal_mod_SOURCES): Likewise.
+ (ls_mod_SOURCES): Likewise.
+ (cmp_mod_SOURCES): Likewise.
+ (cat_mod_SOURCES): Likewise.
+
+ * normal/arg.c: New file.
+ * kern/env.c: Likewise.
+ * include/pupa/arg.h: Likewise.
+ * include/pupa/env.h: Likewise.
+ * font/manager.c (font_command): Changed to match argument parsing
+ interface changes.
+ (PUPA_MOD_INIT): Likewise.
+ * hello/hello.c (pupa_cmd_hello): Likewise.
+ (PUPA_MOD_INIT): Likewise.
+ * include/pupa/disk.h: Include <pupa/device.h>.
+ (pupa_print_partinfo): New prototype.
+ * include/pupa/dl.h (pupa_dl_set_prefix): Prototype removed.
+ (pupa_dl_get_prefix): Likewise.
+ * include/pupa/misc.h: Include <pupa/err.h>.
+ (pupa_isgraph): New prototype.
+ (pupa_isdigit): Likewise.
+ (pupa_split_cmdline): Likewise.
+ * include/pupa/normal.h: Include <pupa/arg.h>.
+ (pupa_command): Changed the prototype of the member `func' to
+ match the argument parsing interface. Added member `options'.
+ (pupa_register_command): Updated to match function.
+ (pupa_arg_parse): New prototype.
+ (pupa_hello_init) [PUPA_UTIL]: New prototype.
+ (pupa_hello_fini) [PUPA_UTIL]: Likewise.
+ (pupa_ls_init) [PUPA_UTIL]: Likewise.
+ (pupa_ls_fini) [PUPA_UTIL]: Likewise.
+ (pupa_cat_init) [PUPA_UTIL]: Likewise.
+ (pupa_cat_fini) [PUPA_UTIL]: Likewise.
+ (pupa_boot_init) [PUPA_UTIL]: Likewise.
+ (pupa_boot_fini) [PUPA_UTIL]: Likewise.
+ (pupa_cmp_init) [PUPA_UTIL]: Likewise.
+ (pupa_cmp_fini) [PUPA_UTIL]: Likewise.
+ (pupa_terminal_init) [PUPA_UTIL]: Likewise.
+ (pupa_terminal_fini) [PUPA_UTIL]: Likewise.
+ * kern/disk.c: Include <pupa/file.h>.
+ (pupa_print_partinfo): New function.
+ * kern/dl.c: Include <pupa/env.h>.
+ (pupa_dl_dir): Variable removed.
+ (pupa_dl_load): Use the environment variable `prefix' instead of
+ the variable pupa_dl_dir.
+ (pupa_dl_set_prefix): Function removed.
+ (pupa_dl_get_prefix): Likewise.
+ * kern/i386/pc/init.c: Include <pupa/env.h>.
+ (pupa_machine_init): Use the environment variable `prefix' instead of
+ using pupa_dl_set_prefix to set the prefix.
+ * kern/main.c: Include <pupa/env.h>.
+ (pupa_set_root_dev): Use the environment variable `prefix' instead of
+ using pupa_dl_get_prefix to get the prefix.
+ * kern/misc.c: Include <pupa/env.h>.
+ (pupa_isdigit): New function.
+ (pupa_isgraph): Likewise.
+ (pupa_ftoa): Likewise.
+ (pupa_vsprintf): Added support for printing values of the type
+ `double'. Make it possible to format variable output when using
+ formatting like `%1.2%f'.
+ (pupa_split_cmdline): New function.
+ * kern/rescue.c: Include <pupa/env.h>.
+ (next_word): Removed function.
+ (pupa_rescue_cmd_prefix): Likewise.
+ (pupa_rescue_cmd_set): New function.
+ (pupa_rescue_cmd_unset): New function.
+ (pupa_enter_rescue_mode): Use the `pupa_split_cmdline' function to
+ split the command line instead of splitting it here. Added
+ support for setting variables using the syntax `foo=bar'. Don't
+ initialize the prefix command anymore. Initialized the set and
+ unset commands.
+ * normal/cmdline.c: Include <pupa/env.h>.
+ (pupa_tab_complete): Added prototypes for print_simple_completion,
+ print_partition_completion, add_completion, iterate_commands,
+ iterate_dev, iterate_part and iterate_dir. Moved code to print
+ partition information from here to kern/disk.c.
+ (pupa_cmdline_run): Don't check if the function exists anymore.
+ * normal/main.c: Include <pupa/env.h>.
+ (pupa_rescue_cmd_normal): Use the environment variable `prefix'
+ instead of using pupa_dl_get_prefix to get the prefix.
+ * term/i386/pc/vga.c: Include <pupa/arg.h>.
+ (check_vga_mem): Cast pointers to `void *' to silence a gcc
+ warning.
+ (pupa_vga_putchar) [! DEBUG_VGA]: Removed for this case.
+ (pupa_vga_setcolor): Declare unused variables with `__attribute__
+ ((unused))' to silence a gcc warning.
+ (pupa_vga_setcolor): Likewise.
+ (debug_command): Changed to match argument parsing
+ interface changes.
+ * util/pupa-emu.c: Include <pupa/env.h>.
+ (options): Added 0's for unused fields to silence a gcc warning.
+ (argp): Likewise.
+ (main): Use the environment variable `prefix' instead of using
+ pupa_dl_set_prefix to set the prefix. Initialize the commands ls,
+ boot, cmp, cat and terminal. Finish the commands boot, cmp, cat
+ and terminal.
+
+ * util/i386/pc/getroot.c: Include <pupa/i386/pc/util/biosdisk.h>.
+ * util/misc.c: Include <malloc.h>.
+ (pupa_malloc): Rewritten so errors are correctly reported.
+ (pupa_realloc): Likewise.
+ (pupa_memalign): Likewise.
+ (pupa_mm_init_region): Declare unused variables with
+ `__attribute__ ((unused))' to silence a gcc warning.
+ * normal/i386/setjmp.S: Remove tab at the end of the file to
+ silence a gcc warning.
+ * loader/i386/pc/linux.c (pupa_rescue_cmd_initrd): Declare unused
+ variables with `__attribute__ ((unused))' to silence a gcc
+ warning.
+ * loader/i386/pc/multiboot.c (pupa_multiboot_unload): Make the
+ local variable i unsigned to silence a gcc warning.
+
+ * kern/term.c: Include <pupa/misc.h>.
+ (pupa_more_lines): New variable.
+ (pupa_more): Likewise.
+ (pupa_putcode): When the pager is active pause at the end of every
+ screen.
+ (pupa_set_more): New function.
+ * include/pupa/term.h (pupa_set_more): New prototype.
+
+
+2004-03-07 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Now this project is GRUB 2 rather than PUPA. The location of
+ the CVS repository was moved to GRUB's.
+
+ * configure.ac: Use bug-grub as the reporting address.
+ Use GRUB instead of PUPA.
+ Change the version number to 1.90.
+
+2004-02-24 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * genkernsyms.sh: Updated copyright information.
+ * genmk.rb: Likewise.
+ * genmodsrc.sh: Likewise.
+ * gensymlist.sh: Likewise.
+ * boot/i386/pc/boot.S: Likewise.
+ * boot/i386/pc/diskboot.S: Likewise.
+ * disk/i386/pc/biosdisk.c: Likewise.
+ * disk/i386/pc/partition.c: Likewise.
+ * font/manager.c: Likewise.
+ * fs/ext2.c: Likewise.
+ * fs/fat.c: Likewise.
+ * include/pupa/boot.h: Likewise.
+ * include/pupa/device.h: Likewise.
+ * include/pupa/disk.h: Likewise.
+ * include/pupa/dl.h: Likewise.
+ * include/pupa/elf.h: Likewise.
+ * include/pupa/err.h: Likewise.
+ * include/pupa/file.h: Likewise.
+ * include/pupa/font.h: Likewise.
+ * include/pupa/fs.h: Likewise.
+ * include/pupa/kernel.h: Likewise.
+ * include/pupa/loader.h: Likewise.
+ * include/pupa/misc.h: Likewise.
+ * include/pupa/mm.h: Likewise.
+ * include/pupa/net.h: Likewise.
+ * include/pupa/normal.h: Likewise.
+ * include/pupa/rescue.h: Likewise.
+ * include/pupa/setjmp.h: Likewise.
+ * include/pupa/symbol.h: Likewise.
+ * include/pupa/term.h: Likewise.
+ * include/pupa/types.h: Likewise.
+ * include/pupa/i386/setjmp.h: Likewise.
+ * include/pupa/i386/types.h: Likewise.
+ * include/pupa/i386/pc/biosdisk.h: Likewise.
+ * include/pupa/i386/pc/boot.h: Likewise.
+ * include/pupa/i386/pc/console.h: Likewise.
+ * include/pupa/i386/pc/init.h: Likewise.
+ * include/pupa/i386/pc/kernel.h: Likewise.
+ * include/pupa/i386/pc/linux.h: Likewise.
+ * include/pupa/i386/pc/loader.h: Likewise.
+ * include/pupa/i386/pc/memory.h: Likewise.
+ * include/pupa/i386/pc/multiboot.h: Likewise.
+ * include/pupa/i386/pc/partition.h: Likewise.
+ * include/pupa/i386/pc/time.h: Likewise.
+ * include/pupa/i386/pc/vga.h: Likewise.
+ * include/pupa/i386/pc/util/biosdisk.h: Likewise.
+ * include/pupa/util/getroot.h: Likewise.
+ * include/pupa/util/misc.h: Likewise.
+ * include/pupa/util/resolve.h: Likewise.
+ * kern/device.c: Likewise.
+ * kern/disk.c: Likewise.
+ * kern/dl.c: Likewise.
+ * kern/err.c: Likewise.
+ * kern/file.c: Likewise.
+ * kern/fs.c: Likewise.
+ * kern/loader.c: Likewise.
+ * kern/main.c: Likewise.
+ * kern/misc.c: Likewise.
+ * kern/mm.c: Likewise.
+ * kern/rescue.c: Likewise.
+ * kern/term.c: Likewise.
+ * kern/i386/dl.c: Likewise.
+ * kern/i386/pc/init.c: Likewise.
+ * kern/i386/pc/lzo1x.S: Likewise.
+ * kern/i386/pc/startup.S: Likewise.
+ * loader/i386/pc/chainloader.c: Likewise.
+ * loader/i386/pc/linux.c: Likewise.
+ * loader/i386/pc/multiboot.c: Likewise.
+ * normal/cmdline.c: Likewise.
+ * normal/command.c: Likewise.
+ * normal/main.c: Likewise.
+ * normal/menu.c: Likewise.
+ * normal/i386/setjmp.S: Likewise.
+ * term/i386/pc/console.c: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+ * util/console.c: Likewise.
+ * util/genmoddep.c: Likewise.
+ * util/misc.c: Likewise.
+ * util/pupa-emu.c: Likewise.
+ * util/resolve.c: Likewise.
+ * util/unifont2pff.rb: Likewise.
+ * util/i386/pc/biosdisk.c: Likewise.
+ * util/i386/pc/getroot.c: Likewise.
+ * util/i386/pc/pupa-mkimage.c: Likewise.
+ * util/i386/pc/pupa-setup.c: Likewise.
+
+2004-02-15 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * fs/ext2.c (pupa_ext2_read_file): Correct the value of BLOCKEND
+ when it is EXT2_BLOCK_SIZE (data). New argument READ_HOOK, all
+ callers changed. Set DATA->DISK->READ_HOOK to READ_HOOK before
+ reading and reset it after reading.
+ (pupa_ext2_close): Return PUPA_ERR_NONE.
+
+ * include/pupa/i386/pc/linux.h (PUPA_LINUX_INITRD_MAX_ADDRESS):
+ Correct value.
+ (struct linux_kernel_header): Add kernel_version and
+ initrd_addr_max.
+ * loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Check whether
+ pupa_file_read succeeds.
+ (pupa_rescue_cmd_initrd): Implement.
+
+2003-12-03 Marco Gerards <metgerards@student.han.nl>
+
+ * fs/ext2.c (pupa_ext2_label): New function.
+ (pupa_ext2_fs): Added label.
+ * fs/fat.c (pupa_fat_label): New function.
+ (pupa_fat_fs): Added label.
+ * include/pupa/fs.h (struct pupa_fs): Added prototype label.
+
+ * kern/misc.c (pupa_strndup): New function.
+ * include/pupa/misc.h (pupa_strndup): New prototype.
+
+ * include/pupa/normal.h: Include <pupa/err.h>.
+ (pupa_set_history): New prototype.
+ (pupa_iterate_commands): New prototype.
+ * normal/cmdline.c: Include <pupa/machine/partition.h>,
+ <pupa/disk.h>, <pupa/file.h>.
+ (hist_size): New variable.
+ (hist_lines): Likewise.
+ (hist_end): Likewise.
+ (hist_used): Likewise.
+ (pupa_set_history): New function.
+ (pupa_history_get): Likewise.
+ (pupa_history_add): Likewise.
+ (pupa_history_replace): Likewise.
+ (pupa_tab_complete): Likewise.
+ (pupa_cmdline_run): Added tab completion and history buffer. Tab
+ completion shows partitionnames while completing partitions, this
+ feature was suggested by Jeff Bailey.
+ * normal/command.c (pupa_iterate_commands): New function.
+ * normal/main.c (PUPA_DEFAULT_HISTORY_SIZE): New macro.
+ (pupa_normal_init): Initialize history buffer.
+ (PUPA_MOD_INIT): Likewise.
+ (pupa_normal_fini): Free the history buffer.
+ (PUPA_MOD_FINI): Likewise.
+
+ * util/console.c (pupa_ncurses_getkey): Accept 127 as backspace
+ key.
+
+ * aclocal.m4 (pupa_I386_CHECK_REGPARM_BUG): New DEFUN.
+ * configure.ac [i386]: Check for regparam bug.
+ (NESTED_FUNC_ATTR) [! i386]: Defined.
+
+2003-11-17 Marco Gerards <metgerards@student.han.nl>
+
+ * conf/i386-pc.rmk (sbin_UTILITIES): Added pupa-emu.
+ (pupa_setup_SOURCES): Added util/i386/pc/getroot.c.
+ (pupa_emu_SOURCES): New variable.
+ (pupa_emu_LDFLAGS): Likewise.
+ * include/pupa/fs.h (pupa_ext2_init) [PUPA_UTIL]: New prototype.
+ (pupa_ext2_fini) [PUPA_UTIL]: Likewise.
+ * include/pupa/normal.h (pupa_normal_init) [PUPA_UTIL]: Likewise.
+ (pupa_normal_fini) [PUPA_UTIL]: Likewise.
+ * include/pupa/setjmp.h [PUPA_UTIL]: Include <setjmp.h>.
+ (pupa_jmp_buf): New typedef.
+ (pupa_setjmp) [PUPA_UTIL]: New macro.
+ (pupa_longjmp) [PUPA_UTIL]: Likewise.
+ * include/pupa/term.h (struct pupa_term): New member `refresh'.
+ (pupa_refresh): New prototype.
+ * include/pupa/util/getroot.h: New file.
+ * kern/misc.c (pupa_vsprintf): Refresh the screen after updating
+ it.
+ * kern/rescue.c (pupa_rescue_get_command_line): Likewise.
+ (pupa_rescue_cmd_cat): Likewise.
+ (pupa_rescue_cmd_ls): Likewise.
+ (pupa_rescue_cmd_testload): Likewise.
+ (pupa_rescue_cmd_lsmod): Likewise.
+ * normal/cmdline.c (pupa_cmdline_get): Likewise.
+ * normal/menu.c (run_menu): Likewise.
+ * kern/term.c (pupa_cls): Likewise.
+ (pupa_refresh): New function.
+ * normal/normal.c (pupa_normal_init) [PUPA_UTIL]: New function.
+ (pupa_normal_fini) [PUPA_UTIL]: Likewise.
+ * util/console.c: New file.
+
+ * util/i386/pc/getroot.c: New file.
+ * util/i386/pc/pupa-setup.c: Include <pupa/util/getroot.h>.
+ (pupa_putchar): New function.
+ (pupa_refresh): Likewise.
+ (xgetcwd): Function moved to ...
+ (strip_extra_slashes): Likewise.
+ (get_prefix): Likewise.
+ * util/i386/pc/getroot.c: ... here.
+ (find_root_device): Function moved and renamed to...
+ * util/i386/pc/getroot.c (pupa_find_root_device): ... here.
+ Changed all callers.
+ * util/i386/pc/pupa-setup.c (guess_root_device): Function moved
+ and renamed to...
+ * util/i386/pc/getroot.c (pupa_guess_root_device): ... here.
+ Changed all callers.
+ * util/misc.c (pupa_memalign): New function.
+ (pupa_mm_init_region): Likewise.
+ (pupa_register_exported_symbols): Likewise.
+ (pupa_putchar): Function removed.
+ * util/pupa-emu.c: New file.
+
+2003-11-16 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Add _multiboot.mod.
+ (_multiboot_mod_SOURCES): New variable.
+ (_multiboot_mod_CFLAGS): Likewise.
+ * loader/i386/pc/multiboot.c: New file.
+ * include/pupa/i386/pc/multiboot.h: Likewise.
+ * kern/i386/pc/startup.S: Include pupa/machine/multiboot.h.
+ (pupa_multiboot_real_boot): New function.
+ * include/pupa/i386/pc/loader.h: Include pupa/machine/multiboot.h.
+ (pupa_multiboot_real_boot): New prototype.
+ (pupa_rescue_cmd_multiboot): Likewise
+ (pupa_rescue_cmd_module): Likewise.
+
+ * kern/loader.c (pupa_loader_set): Continue when
+ pupa_loader_unload_func() fails.
+ (pupa_loader_unset): New function.
+ * include/pupa/loader.h (pupa_loader_unset): New prototype.
+
+ * kern/misc.c (pupa_stpcpy): New function.
+ * include/pupa/misc.h (pupa_stpcpy): New prototype.
+
+2003-11-12 Marco Gerards <metgerards@student.han.nl>
+
+ * disk/i386/pc/biosdisk.c (pupa_biosdisk_open): Correctly check
+ for available extensions.
+
+ * include/pupa/i386/pc/time.h: New file.
+ * kern/disk.c: Include <pupa/machine/time.h>.
+ (PUPA_CACHE_TIMEOUT): New macro.
+ (pupa_last_time): New variable.
+ (pupa_disk_open): Flush the cache when there was a timeout.
+ (pupa_disk_close): Reset the timer.
+ * kern/i386/pc/startup.S (pupa_get_rtc): Renamed from
+ pupa_currticks.
+ * util/misc.c: Include <sys/times.h>
+ (pupa_get_rtc): New function.
+
+2003-11-09 Jeroen Dekkers <jeroen@dekkers.cx>
+
+ * fs/ext2.c (struct pupa_ext2_inode): Declare struct datablocks
+ as blocks.
+ (pupa_ext2_get_file_block): Use blocks member.
+
+ * fs/ext2.c (pupa_ext2_read_file): Only set skipfirst for the
+ first block. Return -1 instead of pupa_errno on error.
+
+2003-10-27 Marco Gerards <metgerards@student.han.nl>
+
+ * README: In the pupa-mkimage example use _chain instead of chain
+ and ext2 instead of fat.
+ * TODO: Replace ext2fs with jfs as an example. Add an item for
+ adding journal playback for ext2fs.
+ * conf/i386-pc.rmk (pupa_setup_SOURCES): Added fs/ext2.c.
+ (pkgdata_MODULES): Added ext2.mod.
+ (ext2_mod_SOURCES): New variable.
+ (ext2_mod_CFLAGS): Likewise.
+ * include/pupa/err.h (pupa_err_t): Added PUPA_ERR_SYMLINK_LOOP.
+ * include/pupa/misc.h (pupa_strncpy): New prototype.
+ (pupa_strcat): Likewise.
+ (pupa_strncmp): Likewise.
+ * kern/misc.c (pupa_strcat): Enable function.
+ (pupa_strncpy): New function.
+ (pupa_strncmp): Likewise.
+ * fs/ext2.c: New file.
+
+ * kern/disk.c (pupa_disk_read): Set pupa_errno to PUPA_ERR_NONE
+ when the read failed before retrying.
+ * util/i386/pc/biosdisk.c (_LARGEFILE_SOURCE): Removed.
+ (_FILE_OFFSET_BITS): Likewise.
+ * configure.ac: Added AC_SYS_LARGEFILE.
+
+2003-09-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * genmk.rb (PModule#rule): Make sure to get only symbol names
+ from the output of nm.
+ Reported by Robert Millan <rmh.grub@aybabtu.com>.
+
+2003-09-25 Yoshinori K. Okuji <okuji@enbug.org>
+
+ I forgot to check in these changes for a long time. This adds
+ incomplete support for VGA console, and this is still very
+ buggy. Also, a lot of consideration is required for I18N,
+ UNICODE, and VGA font issues. Therefore, assume that this is
+ such that "better than nothing".
+
+ * font/manager.c: New file.
+ * include/pupa/font.h: Likewise.
+ * include/pupa/i386/pc/vga.h: Likewise.
+ * term/i386/pc/vga.c: Likewise.
+ * util/unifont2pff.rb: Likewise.
+
+ * conf/i386-pc.rmk (kernel_img_HEADERS): Added machine/vga.h.
+ (pkgdata_MODULES): Added vga.mod and font.mod.
+ (vga_mod_SOURCES): New variables.
+ (vga_mod_CFLAGS): Likewise.
+ (font_mod_SOURCES): Likewise.
+ (font_mod_CFLAGS): Likewise.
+
+ * include/pupa/err.h (PUPA_ERR_BAD_FONT): New constant.
+
+ * include/pupa/term.h: Include pupa/err.h.
+ (struct pupa_term): Added init and fini.
+ Changed the argument of putchar to pupa_uint32_t.
+
+ * include/pupa/i386/pc/console.h: Include pupa/symbol.h.
+ (pupa_console_real_putchar): New prototype.
+ (pupa_console_putchar): Removed.
+ (pupa_console_checkkey): Exported.
+ (pupa_console_getkey): Likewise.
+
+ * kern/misc.c (pupa_vsprintf): Add support for UNICODE
+ characters.
+
+ * kern/term.c (pupa_term_set_current): Rewritten.
+ (pupa_putchar): Likewise.
+ (pupa_putcode): New function.
+
+ * kern/i386/pc/startup.S (pupa_console_putchar): Renamed to ...
+ (pupa_console_real_putchar): ... this.
+ (pupa_vga_set_mode): New function.
+ (pupa_vga_get_font): Likewise.
+
+ * normal/command.c: Include pupa/term.h.
+ (terminal_command): New function.
+ (pupa_command_init): Register the command "terminal".
+
+ * normal/menu.c (DISP_LEFT): Changed to a UNICODE value.
+ (DISP_UP): Likewise.
+ (DISP_RIGHT): Likewise.
+ (DISP_DOWN): Likewise.
+ (DISP_HLINE): Likewise.
+ (DISP_VLINE): Likewise.
+ (DISP_UL): Likewise.
+ (DISP_UR): Likewise.
+ (DISP_LL): Likewise.
+ (DISP_LR): Likewise.
+
+ * term/i386/pc/console.c (pupa_console_putchar): New function.
+
+2003-02-08 NIIBE Yutaka <gniibe@m17n.org>
+
+ * util/resolve.c (pupa_util_resolve_dependencies): BUG
+ FIX. Reverse the path_list.
+
+ * include/pupa/normal.h: Export pupa_register_command and
+ pupa_unregister_command.
+
+ * hello/hello.c (pupa_cmd_hello): New module.
+ * conf/i386-pc.rmk: Added hello.mod.
+
+2003-01-31 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/i386/pc/lzo1x.S: New file.
+
+ * util/i386/pc/pupa-mkimage.c: Include lzo1x.h.
+ (compress_kernel): New variable.
+ (generate_image): Heavily modified to support compressing a
+ large part of the core image.
+
+ * util/misc.c (pupa_util_read_image): Fix a file descriptor
+ leak.
+ (pupa_util_load_image): New function.
+
+ * kern/i386/pc/startup.S: Include pupa/machine/kernel.h.
+ (pupa_compressed_size): New variable.
+ (codestart): Enable Gate A20 here.
+ Decompress the compressed part of the core image.
+ Rearrange the code to put functions and variables which are
+ required for initialization in the non-compressed part.
+ Include lzo1x.S.
+
+ * kern/i386/pc/init.c (pupa_machine_init): Don't enable Gate A20
+ here.
+
+ * include/pupa/util/misc.h (pupa_util_write_image): Declared.
+
+ * include/pupa/i386/pc/kernel.h
+ (PUPA_KERNEL_MACHINE_COMPRESSED_SIZE): New macro.
+ (PUPA_KERNEL_MACHINE_INSTALL_DOS_PART): Increased by 4.
+ (PUPA_KERNEL_MACHINE_INSTALL_BSD_PART): Likewise.
+ (PUPA_KERNEL_MACHINE_PREFIX): Likewise.
+ (PUPA_KERNEL_MACHINE_RAW_SIZE): New macro.
+
+ * conf/i386-pc.rmk (pupa_mkimage_LDFLAGS): New variable.
+
+ * genmk.rb (Image#rule): Put LDFLAGS at the end of a line.
+ (Utility#rule): Likewise.
+
+ * configure.ac: Check if LZO is available.
+
+2003-01-20 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/pupa/normal.h: New file.
+ * include/pupa/setjmp.h: Likewise.
+ * include/pupa/i386/setjmp.h: Likewise.
+ * normal/cmdline.c: Likewise.
+ * normal/command.c: Likewise.
+ * normal/main.c: Likewise.
+ * normal/menu.c: Likewise.
+ * normal/i386/setjmp.S: Likewise.
+
+ * loader/i386/pc/linux.c (pupa_rescue_cmd_linux): Made global.
+ (pupa_rescue_cmd_initrd): Likewise.
+
+ * loader/i386/pc/chainloader.c (pupa_rescue_cmd_chainloader):
+ Likewise.
+
+ * kern/i386/pc/startup.S (translation_table): New variable.
+ (translate_keycode): New function.
+ (pupa_console_getkey): Call translate_keycode.
+
+ * kern/rescue.c (attempt_normal_mode): New function.
+ (pupa_enter_rescue_mode): Attempt to execute the normal mode. If
+ it failed, print a message.
+
+ * kern/mm.c (pupa_real_malloc): Print more information when a
+ free magic is broken.
+ (pupa_free): If the first free header is not free actually, set
+ it to P.
+
+ * kern/main.c (pupa_load_normal_mode): Just load the module
+ "normal".
+ (pupa_main): Don't print the message
+ "Entering into rescue mode..." here.
+
+ * include/pupa/i386/pc/loader.h (pupa_rescue_cmd_initrd):
+ Declared.
+ (pupa_rescue_cmd_initrd): Likewise.
+ (pupa_rescue_cmd_initrd): Likewise.
+
+ * include/pupa/symbol.h (FUNCTION): Specify the type.
+ (VARIABLE): Likewise.
+
+ * include/pupa/err.h (pupa_err_t): Added
+ PUPA_ERR_UNKNOWN_COMMAND.
+
+ * include/pupa/dl.h (pupa_dl_set_prefix): Exported.
+ (pupa_dl_get_prefix): Likewise.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added normal.mod.
+ Added _chain.mod and _linux.mod instead of chain.mod and
+ linux.mod.
+ (chain_mod_SOURCES): Renamed to ...
+ (_chain_mod_SOURCES): ... this.
+ (chain_mod_CFLAGS): Renamed to ...
+ (_chain_mod_CFLAGS): ... this.
+ (linux_mod_SOURCES): Renamed to ...
+ (_linux_mod_SOURCES): ... this.
+ (linux_mod_CFLAGS): Renamed to ...
+ (_linux_mod_CFLAGS): ... this.
+ (normal_mod_SOURCES): New variable.
+ (normal_mod_CFLAGS): Likewise.
+ (normal_mod_ASFLAGS): Likewise.
+
+2003-01-18 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/rescue.c (pupa_rescue_cmd_rmmod): Call pupa_dl_unload, if
+ possible.
+
+ * kern/dl.c (pupa_dl_ref): Refer depending modules
+ recursively.
+ (pupa_dl_unref): Unrefer depending modules recursively.
+ Don't call pupa_dl_unload implicitly, because PUPA can crash if
+ a module is unloaded before one depending on that module is
+ unloaded.
+ (pupa_dl_unload): Unload depending modules explicitly,
+ if possible.
+
+2003-01-17 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/pupa/i386/pc/linux.h: New file.
+ * loader/i386/pc/linux.c: Likewise.
+
+ * loader/i386/pc/chainloader.c (pupa_chainloader_boot_sector):
+ Removed.
+ (pupa_chainloader_unload): Return PUPA_ERR_NONE.
+ (pupa_rescue_cmd_chainloader): Read the image to 0x7C00 instead
+ of PUPA_CHAINLOADER_BOOT_SECTOR.
+
+ * kern/i386/pc/startup.S: Include pupa/machine/linux.h.
+ (pupa_linux_prot_size): New variable.
+ (pupa_linux_tmp_addr): Likewise.
+ (pupa_linux_real_addr): Likewise.
+ (pupa_linux_boot_zimage): New function.
+ (pupa_linux_boot_bzimage): Likewise.
+
+ * kern/i386/pc/init.c (struct mem_region): New structure.
+ (MAX_REGIONS): New macro.
+ (mem_regions): New variable.
+ (num_regions): Likewise.
+ (pupa_os_area_addr): Likewise.
+ (pupa_os_area_size): Likewise.
+ (pupa_lower_mem): Likewise.
+ (pupa_upper_mem): Likewise.
+ (add_mem_region): New function.
+ (compact_mem_regions): Likewise.
+ (pupa_machine_init): Set PUPA_LOWER_MEM and PUPA_UPPER_MEM to
+ the size of the conventional memory and that of so-called upper
+ memory (before the first memory hole).
+ Instead of adding each found region to free memory, use
+ add_mem_region and add them after removing overlaps.
+ Also, add only 1/4 of the upper memory to free memory. The rest
+ is used for loading OS images. Maybe this is ad hoc, but this
+ makes it much easier to relocate OS images when booting.
+
+ * kern/rescue.c (pupa_rescue_cmd_module): Removed.
+ (pupa_enter_rescue_mode): Don't register initrd and module.
+
+ * kern/mm.c: Include pupa/dl.h.
+
+ * kern/main.c: Include pupa/file.h and pupa/device.h.
+
+ * kern/loader.c (pupa_loader_load_module_func): Removed.
+ (pupa_loader_load_module): Likewise.
+
+ * kern/dl.c (pupa_dl_load): Use the suffix ``.mod'' instead of
+ ``.o''.
+
+ * include/pupa/i386/pc/loader.h (pupa_linux_prot_size): Declared.
+ (pupa_linux_tmp_addr): Likewise.
+ (pupa_linux_real_addr): Likewise.
+ (pupa_linux_boot_zimage): Likewise.
+ (pupa_linux_boot_bzimage): Likewise.
+
+ * include/pupa/i386/pc/init.h (pupa_lower_mem): Declared.
+ (pupa_upper_mem): Likewise.
+ (pupa_gate_a20): Don't export, because turning off Gate A20 in a
+ module is too dangerous.
+
+ * include/pupa/loader.h (pupa_os_area_addr): Declared.
+ (pupa_os_area_size): Likewise.
+ (pupa_loader_set): Remove the first argument. Loader doesn't
+ manage modules or initrd any longer.
+ (pupa_loader_load_module): Removed.
+
+ * conf/i386-pc.rmk (pkgdata_MODULES): Added linux.mod.
+ (linux_mod_SOURCES): New variable.
+ (linux_mod_CFLAGS): Likewise.
+
+2003-01-07 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/pupa-setup.c (setup): Convert the endianness of
+ the length of a blocklist correctly.
+
+ * util/i386/pc/biosdisk.c (pupa_util_biosdisk_open) [__linux__]:
+ Use ioctl only if the OS file is a block device.
+ (pupa_util_biosdisk_open): Don't use ST.ST_BLOCKS, because it is
+ not very useful for normal files.
+
+ * kern/main.c (pupa_set_root_dev): New function.
+ (pupa_load_normal_mode): Likewise.
+ (pupa_main): Call those above.
+
+ * include/pupa/types.h (pupa_swap_bytes16): Cast the result to
+ pupa_uint16_t.
+
+ * include/pupa/kernel.h (pupa_enter_normal_mode): Removed.
+
+2003-01-06 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/pupa-setup.c: Include pupa/machine/kernel.h.
+ (setup): Configure the installed partition information and the
+ dl prefix.
+
+ * loader/i386/pc/chainloader.c (my_mod): New variable.
+ (pupa_chainloader_unload): New function.
+ (pupa_rescue_cmd_chainloader): Refer itself.
+ (PUPA_MOD_INIT): Save its own module in MY_MOD.
+
+ * kern/i386/pc/startup.S (install_partition): Removed.
+ (version_string): Likewise.
+ (config_file): Likewise.
+ (pupa_install_dos_part): New variable.
+ (pupa_install_bsd_part): Likewise.
+ (pupa_prefix): Likewise.
+ (pupa_chainloader_real_boot): Call pupa_dl_unload_all.
+
+ * kern/i386/pc/init.c: Include pupa/machine/kernel.h, pupa/dl.h
+ and pupa/misc.h.
+ (make_install_device): New function.
+ (pupa_machine_init): Set the dl prefix.
+
+ * kern/rescue.c: Include pupa/rescue.h and pupa/dl.h.
+ (buf): Renamed to ...
+ (linebuf): ... this.
+ (pupa_rescue_cmd_prefix): New function.
+ (pupa_rescue_cmd_insmod): Likewise.
+ (pupa_rescue_cmd_rmmod): Likewise.
+ (pupa_rescue_cmd_lsmod): Likewise.
+ (pupa_enter_rescue_mode): Register new commands: prefix, insmod,
+ rmmod and lsmod.
+
+ * kern/mm.c (pupa_memalign): If failed even after invalidating
+ disk caches, unload unneeded modules and retry.
+
+ * kern/misc.c (pupa_memmove): New function.
+ (pupa_memcpy): Removed.
+ (pupa_strcpy): New function.
+ (pupa_itoa): Made static.
+
+ * kern/dl.c (pupa_dl_iterate): New function.
+ (pupa_dl_ref): Likewise.
+ (pupa_dl_unref): Likewise.
+ (pupa_dl_unload): Return if succeeded or not.
+ (pupa_dl_unload_unneeded): New function.
+ (pupa_dl_unload_all): Likewise.
+ (pupa_dl_init): Renamed to ...
+ (pupa_dl_set_prefix): ... this.
+ (pupa_dl_get_prefix): New function.
+
+ * include/pupa/i386/pc/kernel.h: Include pupa/types.h.
+ (PUPA_KERNEL_MACHINE_INSTALL_DOS_PART): New macro.
+ (PUPA_KERNEL_MACHINE_INSTALL_BSD_PART): Likewise.
+ (PUPA_KERNEL_MACHINE_PREFIX): Likewise.
+ (pupa_install_dos_part): Declared.
+ (pupa_install_bsd_part): Likewise.
+ (pupa_prefix): Likewise.
+ (pupa_boot_drive): Likewise.
+
+ * include/pupa/types.h: Fix a typo.
+
+ * include/pupa/misc.h (pupa_memcpy): New macro. Just an alias to
+ pupa_memmove.
+ (pupa_memmove): Declared.
+ (pupa_strcpy): Likewise.
+
+ * include/pupa/dl.h (PUPA_MOD_INIT): Change the prototype. Now
+ pupa_mod_init takes one argument, its own module.
+ (pupa_dl_unload_unneeded): Declared.
+ (pupa_dl_unload_all): Likewise.
+ (pupa_dl_ref): Likewise.
+ (pupa_dl_unref): Likewise.
+ (pupa_dl_iterate): Likewise.
+ (pupa_dl_init): Renamed to ...
+ (pupa_dl_set_prefix): ... this.
+ (pupa_dl_get_prefix): Declared.
+
+ * fs/fat.c [!PUPA_UTIL] (my_mod): New variable.
+ (pupa_fat_dir) [!PUPA_UTIL]: Prevent the fat module from being
+ unloaded.
+ (pupa_fat_open) [!PUPA_UTIL]: Refer itself if succeeded.
+ (pupa_fat_close) [!PUPA_UTIL]: Unrefer itself.
+
+ * configure.ac (tmp_CFLAGS): Added -Wshadow, -Wpointer-arith,
+ -Wmissing-prototypes, -Wundef and -Wstrict-prototypes.
+
+2003-01-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * util/i386/pc/pupa-setup.c (setup): Define the internal
+ function find_first_partition_start at the top level, because GCC
+ 3.0.x cannot compile internal functions in deeper scopes
+ correctly.
+ (find_root_device): Use lstat instead of stat.
+ Don't follow symbolic links.
+ Fix the path-constructing code.
+
+ * util/i386/pc/biosdisk.c [__linux__] (BLKFLSBUF): New macro.
+ (pupa_util_biosdisk_open) [__linux__]: Get the size of a device
+ by a BLKGETSIZE ioctl first, because block devices don't fill
+ the member st_mode of the structure stat on Linux.
+ [__linux__] (linux_find_partition): Use a temporary buffer
+ REAL_DEV for the working space. Copy it to DEV before returning.
+ (open_device) [__linux__]: Call ioctl with BLKFLSBUF to make the
+ buffer cache consistent.
+ (get_os_disk) [__linux__]: Use the length 5 instead of 4 for
+ strncmp. The previous value was merely wrong.
+ (pupa_util_biosdisk_get_pupa_dev): Use stat instead of lstat.
+
+ * fs/fat.c (pupa_fat_read_data): Shift 4 instead of 12 when the
+ FAT size is 12. The previous value was merely wrong.
+
+ * kern/main.c (pupa_main): Don't split the starting message from
+ newlines.
+
+ * kern/term.c (pupa_putchar): Put CR after LF instead of before
+ LF, because BIOS goes crazy about character attributes in this
+ case.
+
+2003-01-03 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * include/i386/pc/util/biosdisk.h: New file.
+ * util/i386/pc/biosdisk.c: Likewise.
+ * util/i386/pc/pupa-setup.c: Likewise.
+
+ * Makefile.in (INCLUDE_DISTFILES): Added
+ include/pupa/i386/pc/util/biosdisk.h.
+ (UTIL_DISTFILES): Added biosdisk.c and pupa-setup.c under the
+ directory util/i386/pc.
+ (install-local): Added a rule for sbin_UTILITIES.
+ (uninstall): Likewise.
+
+ * util/i386/pc/pupa-mkimage.c (usage): Fix a typo in the doc.
+
+ * util/misc.c (xrealloc): New function.
+ (pupa_malloc): Likewise.
+ (pupa_free): Likewise.
+ (pupa_realloc): Likewise.
+ (pupa_stop): Likewise.
+ (pupa_putchar): Likewise.
+
+ * kern/disk.c (pupa_disk_read): Prevent L from underflowing.
+
+ * include/pupa/util/misc.h (xrealloc): Declared.
+
+ * include/pupa/i386/pc/boot.h (PUPA_BOOT_MACHINE_BPB_START): New
+ macro.
+ (PUPA_BOOT_MACHINE_BPBEND): Renamed to ...
+ (PUPA_BOOT_MACHINE_BPB_END): ... this.
+
+ * include/pupa/fs.h [PUPA_UTIL] (pupa_fat_init): Declared.
+ [PUPA_UTIL] (pupa_fat_fini): Likewise.
+
+ * fs/fat.c [PUPA_UTIL] (pupa_fat_init): Defined. Maybe a better
+ way should be implemented.
+ [PUPA_UTIL] (pupa_fat_fini): Likewise.
+
+ * disk/i386/pc/biosdisk.c (pupa_biosdisk_call_hook): Increase
+ the size of NAME for safety.
+ (pupa_biosdisk_iterate): Search hard disks to 0x90 instead of
+ 0x88.
+
+ * conf/i386-pc.rmk (sbin_UTILITIES): New variable.
+ (pupa_setup_SOURCES): Likewise.
+
+ * genmk.rb (Utility#rule): Add $(BUILD_CFLAGS) into the rules.
+
+2002-12-28 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * kern/i386/pc/startup.S (push_get_mmap_entry): Revert to a
+ bunch of pushl's from pusha, because this destroys the return
+ value.
+
+2002-12-28 Yoshinori K. Okuji <okuji@enbug.org>
+
+ Use -mrtd and -mregparm=3 to reduce the generated code sizes.
+ This means that any missing prototypes could be fatal. Also, you
+ must take care when writing assembly code. See the comments at
+ the beginning of startup.S, for more details.
+
+ * kern/i386/pc/startup.S (pupa_halt): Modified for the new
+ compilation mechanism.
+ (pupa_chainloader_real_boot): Likewise.
+ (pupa_biosdisk_rw_int13_extensions): Likewise.
+ (pupa_biosdisk_rw_standard): Likewise.
+ (pupa_biosdisk_check_int13_extensions): Likewise.
+ (pupa_biosdisk_get_diskinfo_int13_extensions): Likewise.
+ (pupa_biosdisk_get_diskinfo_standard): Likewise.
+ (pupa_get_memsize): Likewise.
+ (pupa_get_mmap_entry): Likewise.
+ (pupa_console_putchar): Likewise.
+ (pupa_console_setcursor): Likewise.
+ (pupa_getrtsecs): Use pushl instead of push.
+
+ * kern/i386/pc/init.c (pupa_machine_init): Use the scratch
+ memory instead of the stack for a mmap entry, because some
+ BIOSes may ignore the maximum size and overflow.
+
+ * conf/i386-pc.rmk (COMMON_CFLAGS): Added -mrtd and -mregparm=3.
+
+ * genmk.rb (PModule#rule): Compile automatically generated
+ sources with module-specific CFLAGS as well as other sources.
+
+2002-12-27 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * configure.ac: Check ld.
+ Replace CFLAGS and CPPFLAGS with BUILD_CFLAGS and BUILD_CPPFLAGS
+ respectively, before checking endianness and sizes.
+
+ * Makefile.in (LD): New variable.
+
+2002-12-27 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * Makefile.in (BUILD_CC): CC -> BUILD_CC.
+
+2002-12-27 Yoshinori K. Okuji <okuji@enbug.org>
+
+ * Changelog: New file.
+