blob: 81bdae95767f70476703935ec214b376fe61171a [file] [log] [blame]
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.