Merge mainline.

This commit is contained in:
Manoel Rebelo Abranches 2011-05-05 12:12:22 -03:00
commit 90eb90e24c
263 changed files with 5295 additions and 865 deletions

View file

@ -133,3 +133,5 @@ grub-core/gnulib/wctype.h
grub-core/rs_decoder.S
widthspec.bin
widthspec.h
docs/stamp-1
docs/version-dev.texi

605
ChangeLog
View file

@ -1,3 +1,608 @@
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 Korenberger.
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

View file

@ -147,28 +147,28 @@ linux.init.i386: $(srcdir)/grub-core/tests/boot/linux.init-i386.S
$(TARGET_CC) -o $@ $< -m32 -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\"
multiboot.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S
$(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -DTARGET_MULTIBOOT=1 -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include
$(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -DTARGET_MULTIBOOT=1 -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include
kfreebsd.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S
$(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include
$(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include
kfreebsd.aout: kfreebsd.elf
$(OBJCOPY) -O a.out-i386-linux $< $@ -R .note.gnu.build-id
pc-chainloader.elf: $(srcdir)/grub-core/tests/boot/kernel-8086.S
$(TARGET_CC) -o $@ $< -DTARGET_CHAINLOADER=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,-N -Wl,-Ttext,0x7c00 -m32
$(TARGET_CC) -o $@ $< -DTARGET_CHAINLOADER=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x7c00 -m32
pc-chainloader.bin: pc-chainloader.elf
$(OBJCOPY) -O binary --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .reginfo -R .rel.dyn $< $@;
ntldr.elf: $(srcdir)/grub-core/tests/boot/kernel-8086.S
$(TARGET_CC) -o $@ $< -DTARGET_NTLDR=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,-N -Wl,-Ttext,0 -m32
$(TARGET_CC) -o $@ $< -DTARGET_NTLDR=1 -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0 -m32
ntldr.bin: ntldr.elf
$(OBJCOPY) -O binary --strip-unneeded -R .note -R .comment -R .note.gnu.build-id -R .reginfo -R .rel.dyn $< $@;
multiboot2.elf: $(srcdir)/grub-core/tests/boot/kernel-i386.S
$(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include -DTARGET_MULTIBOOT2=1
$(TARGET_CC) -o $@ $< -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" -ffreestanding -nostdlib -nostdinc -Wl,--build-id=none -Wl,-N -Wl,-Ttext,0x100000 -m32 -I$(srcdir)/include -DTARGET_MULTIBOOT2=1
kfreebsd.init.x86_64: $(srcdir)/grub-core/tests/boot/kfreebsd.init-x86_64.S
$(TARGET_CC) -o $@ $< -m64 -nostdlib -nostdinc -DSUCCESSFUL_BOOT_STRING=\"$(SUCCESSFUL_BOOT_STRING)\" && freebsd-brandelf -t FreeBSD $@

View file

@ -85,6 +85,7 @@ library = {
common = grub-core/lib/LzFind.c;
common = grub-core/lib/LzmaEnc.c;
common = grub-core/lib/pbkdf2.c;
common = grub-core/lib/crc.c;
common = grub-core/normal/datetime.c;
common = grub-core/normal/misc.c;
common = grub-core/partmap/acorn.c;
@ -100,6 +101,7 @@ library = {
common = grub-core/script/main.c;
common = grub-core/script/script.c;
common = grub-core/script/argv.c;
common = grub-core/io/gzio.c;
};
program = {

6
NEWS
View file

@ -29,7 +29,7 @@ New in 1.99:
* New `lsacpi' command.
* Basic btrfs support (detection and UUID).
* Btrfs support.
* New `--boot-directory' option to `grub-install', `grub-reboot', and
`grub-set-default', with clearer semantics than the previous
@ -83,10 +83,6 @@ New in 1.99:
* Extensive updates to the Texinfo documentation.
* Add `grub-probe' support for the btrfs filesystem, permitting / to
reside on btrfs as long as /boot is on a filesystem natively supported
by GRUB.
* Handle symbolic links under /dev/mapper on GNU/Linux.
* Handle installation across multiple partition table types.

View file

@ -2,6 +2,10 @@
set -e
export LC_CTYPE=C
export LC_COLLATE=C
unset LC_ALL
autogen --version >/dev/null || exit 1
echo "Importing unicode..."

View file

@ -2,6 +2,10 @@
CFLAGS_PLATFORM=
export LC_COLLATE := C
export LC_CTYPE := C
unexport LC_ALL
# Platform specific options
if COND_i386_pc
CFLAGS_PLATFORM += -mrtd -mregparm=3

View file

@ -32,7 +32,7 @@ dnl type, so there is no conflict. Variables with the prefix "TARGET_"
dnl (such as TARGET_CC, TARGET_CFLAGS, etc.) are used for the target
dnl type.
AC_INIT([GRUB],[1.99~rc1],[bug-grub@gnu.org])
AC_INIT([GRUB],[1.99~rc2],[bug-grub@gnu.org])
AC_CONFIG_AUX_DIR([build-aux])

View file

@ -1,7 +1,7 @@
AUTOMAKE_OPTIONS = subdir-objects
# AM_MAKEINFOFLAGS = --no-split --no-validate
info_TEXINFOS = grub.texi
info_TEXINFOS = grub.texi grub-dev.texi
grub_TEXINFOS = fdl.texi

BIN
docs/font_char_metrics.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1 @@
Please fill this in.

1533
docs/grub-dev.texi Normal file

File diff suppressed because it is too large Load diff

View file

@ -100,7 +100,6 @@ This edition documents version @value{VERSION}.
* Obtaining and Building GRUB:: How to obtain and build GRUB
* Reporting bugs:: Where you should send a bug report
* Future:: Some future plans on GRUB
* Internals:: Hacking GRUB
* Copying This Manual:: Copying This Manual
* Index::
@end menu
@ -1487,14 +1486,14 @@ reside anywhere on the file system, and may be removed after running
@command{grub-mkimage}.
After the embedded configuration file (if any) is executed, GRUB will load
the @samp{normal} module, which will then read the real configuration file
from @file{$prefix/grub.cfg}. By this point, the @code{root} variable will
also have been set to the root device name. For example, @code{prefix}
might be set to @samp{(hd0,1)/boot/grub}, and @code{root} might be set to
@samp{hd0,1}. Thus, in most cases, the embedded configuration file only
needs to set the @code{prefix} and @code{root} variables, and then drop
through to GRUB's normal processing. A typical example of this might look
like this:
the @samp{normal} module (@pxref{normal}), which will then read the real
configuration file from @file{$prefix/grub.cfg}. By this point, the
@code{root} variable will also have been set to the root device name. For
example, @code{prefix} might be set to @samp{(hd0,1)/boot/grub}, and
@code{root} might be set to @samp{hd0,1}. Thus, in most cases, the embedded
configuration file only needs to set the @code{prefix} and @code{root}
variables, and then drop through to GRUB's normal processing. A typical
example of this might look like this:
@example
@group
@ -2050,6 +2049,44 @@ model-specific. Values known to the GRUB team are:
To take full advantage of this function, install GRUB into the MBR
(@pxref{Installing GRUB using grub-install}).
If you have a laptop which has a similar feature and not in the above list
could you figure your address and contribute?
To discover the address do the following:
@itemize
@item boot normally
@item
@example
sudo modprobe nvram
sudo cat /dev/nvram | xxd > normal_button.txt
@end example
@item boot using vendor button
@item
@example
sudo modprobe nvram
sudo cat /dev/nvram | xxd > normal_vendor.txt
@end example
@end itemize
Then compare these text files and find where a bit was toggled. E.g. in
case of Dell XPS it was:
@example
byte 0x47: 20 --> 28
@end example
It's a bit number 3 as seen from following table:
@multitable @columnfractions .2 .2
@item 0 @tab 01
@item 1 @tab 02
@item 2 @tab 04
@item 3 @tab 08
@item 4 @tab 10
@item 5 @tab 20
@item 6 @tab 40
@item 7 @tab 80
@end multitable
0x47 is decimal 71. Linux nvram implementation cuts first 14 bytes of
CMOS. So the real byte address in CMOS is 71+14=85
So complete address is 85:3
@node Images
@chapter GRUB image files
@ -3052,6 +3089,8 @@ you forget a command, you can run the command @command{help}
* load_env:: Load variables from environment block
* loopback:: Make a device from a filesystem image
* ls:: List devices or files
* normal:: Enter normal mode
* normal_exit:: Exit from normal mode
* parttool:: Modify partition table entries
* password:: Set a clear-text password
* password_pbkdf2:: Set a hashed password
@ -3508,6 +3547,34 @@ name syntax}), then list the contents of that directory.
@end deffn
@node normal
@subsection normal
@deffn Command normal [file]
Enter normal mode and display the GRUB menu.
In normal mode, commands, filesystem modules, and cryptography modules are
automatically loaded, and the full GRUB script parser is available. Other
modules may be explicitly loaded using @command{insmod} (@pxref{insmod}).
If a @var{file} is given, then commands will be read from that file.
Otherwise, they will be read from @file{$prefix/grub.cfg} if it exists.
@command{normal} may be called from within normal mode, creating a nested
environment. It is more usual to use @command{configfile}
(@pxref{configfile}) for this.
@end deffn
@node normal_exit
@subsection normal_exit
@deffn Command normal_exit
Exit normal mode (@pxref{normal}). If this instance of normal mode was not
nested within another one, then return to rescue mode.
@end deffn
@node parttool
@subsection parttool
@ -4045,7 +4112,7 @@ GRUB's normal start-up procedure involves setting the @samp{prefix}
environment variable to a value set in the core image by
@command{grub-install}, setting the @samp{root} variable to match, loading
the @samp{normal} module from the prefix, and running the @samp{normal}
command. This command is responsible for reading
command (@pxref{normal}). This command is responsible for reading
@file{/boot/grub/grub.cfg}, running the menu, and doing all the useful
things GRUB is supposed to do.
@ -4060,6 +4127,8 @@ device), then you can correct this and enter normal mode manually:
@group
# Inspect the current prefix (and other preset variables):
set
# Find out which devices are available:
ls
# Set to the correct value, which might be something like this:
set prefix=(hd0,1)/grub
set root=(hd0,1)
@ -4374,111 +4443,6 @@ If you are interested in the development of GRUB 2, take a look at
@uref{http://www.gnu.org/software/grub/grub.html, the homepage}.
@node Internals
@appendix Hacking GRUB
@menu
* Getting the source code::
* Finding your way around::
@end menu
@node Getting the source code
@section Getting the source code
GRUB is maintained using the @uref{http://bazaar-vcs.org/, Bazaar revision
control system}. To fetch the primary development branch:
@example
bzr get http://bzr.savannah.gnu.org/r/grub/trunk/grub
@end example
The GRUB developers maintain several other branches with work in progress.
Of these, the most interesting is the experimental branch, which is a
staging area for new code which we expect to eventually merge into trunk but
which is not yet ready:
@example
bzr get http://bzr.savannah.gnu.org/r/grub/branches/experimental
@end example
Once you have used @kbd{bzr get} to fetch an initial copy of a branch, you
can use @kbd{bzr pull} to keep it up to date. If you have modified your
local version, you may need to resolve conflicts when pulling.
@node Finding your way around
@section Finding your way around
Here is a brief map of the GRUB code base.
GRUB uses Autoconf, but not (yet) Automake. The top-level build rules are
in @file{configure.ac}, @file{Makefile.in}, and @file{conf/*.rmk}. Each
@file{conf/*.rmk} file represents a particular target configuration, and is
processed into GNU Make rules by @file{genmk.rb} (which you only need to
look at if you are extending the build system). If you are adding a new
module which follows an existing pattern, such as a new command or a new
filesystem implementation, it is usually easiest to grep @file{conf/*.rmk}
for an existing example of that pattern to find out where it should be
added.
Low-level boot code, such as the MBR implementation on PC BIOS systems, is
in the @file{boot/} directory.
The GRUB kernel is in @file{kern/}. This contains core facilities such as
the device, disk, and file frameworks, environment variable handling, list
processing, and so on. The kernel should contain enough to get up to a
rescue prompt. Header files for kernel facilities, among others, are in
@file{include/}.
Terminal implementations are in @file{term/}.
Disk access code is spread across @file{disk/} (for accessing the disk
devices themselves), @file{partmap/} (for interpreting partition table
data), and @file{fs/} (for accessing filesystems). Note that, with the odd
specialised exception, GRUB only contains code to @emph{read} from
filesystems and tries to avoid containing any code to @emph{write} to
filesystems; this lets us confidently assure users that GRUB cannot be
responsible for filesystem corruption.
PCI and USB bus handling is in @file{bus/}.
Video handling code is in @file{video/}. The graphical menu system uses
this heavily, but is in a separate directory, @file{gfxmenu/}.
Most commands are implemented by files in @file{commands/}, with the
following exceptions:
@itemize
@item
A few core commands live in @file{kern/corecmd.c}.
@item
Commands related to normal mode live under @file{normal/}.
@item
Commands that load and boot kernels live under @file{loader/}.
@item
The @samp{loopback} command is really a disk device, and so lives in
@file{disk/loopback.c}.
@item
The @samp{gettext} command lives under @file{gettext/}.
@item
The @samp{loadfont} and @samp{lsfonts} commands live under @file{font/}.
@item
The @samp{serial}, @samp{terminfo}, and @samp{background_image} commands
live under @file{term/}.
@item
The @samp{efiemu_*} commands live under @file{efiemu/}.
@end itemize
There are a few other special-purpose exceptions; grep for them if they
matter to you.

View file

@ -1,2 +1,5 @@
[NAME]
grub-editenv \- edit GRUB environment block
[SEE ALSO]
.BR grub-reboot (8),
.BR grub-set-default (8)

View file

@ -1,2 +1,6 @@
[NAME]
grub-emu \- GRUB emulator
[SEE ALSO]
If you are trying to install GRUB, then you should use
.BR grub-install (8)
rather than this program.

View file

@ -1,2 +1,4 @@
[NAME]
grub-fstest \- debug tool for GRUB filesystem drivers
[SEE ALSO]
.BR grub-probe (8)

View file

@ -1,2 +1,7 @@
[NAME]
grub-install \- install GRUB to a device
[SEE ALSO]
.BR grub-mkconfig (8),
.BR grub-mkimage (1),
.BR grub-setup (8),
.BR grub-mkrescue (1)

View file

@ -1,2 +1,4 @@
[NAME]
grub-macho2img \- convert Mach-O to raw image
[SEE ALSO]
.BR grub-mkimage (1)

View file

@ -1,3 +1,4 @@
[NAME]
grub-menulst2cfg \- transform legacy menu.lst into grub.cfg
[SEE ALSO]
.BR grub-mkconfig (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mkconfig \- generate a GRUB configuration file
[SEE ALSO]
.BR grub-install (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mkdevicemap \- generate a GRUB device map file automatically
[SEE ALSO]
.BR grub-install (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mkfont \- make GRUB font files
[SEE ALSO]
.BR grub-mkconfig (8)

View file

@ -1,2 +1,7 @@
[NAME]
grub-mkimage \- make a bootable image of GRUB
[SEE ALSO]
.BR grub-install (8),
.BR grub-setup (8),
.BR grub-mkrescue (1),
.BR grub-mknetdir (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mklayout \- generate a GRUB keyboard layout file
[SEE ALSO]
.BR grub-mkconfig (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mknetdir \- prepare a GRUB netboot directory.
[SEE ALSO]
.BR grub-mkimage (1)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mkpasswd-pbkdf2 \- generate hashed password for GRUB
[SEE ALSO]
.BR grub-mkconfig (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mkrelpath \- make a system path relative to its root
[SEE ALSO]
.BR grub-probe (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-mkrescue \- make a GRUB rescue image
[SEE ALSO]
.BR grub-mkimage (1)

View file

@ -1,2 +1,4 @@
[NAME]
grub-ofpathname \- find OpenBOOT path for a device
[SEE ALSO]
.BR grub-probe (8)

View file

@ -1,2 +1,4 @@
[NAME]
grub-pe2elf \- convert PE image to ELF
[SEE ALSO]
.BR grub-mkimage (1)

View file

@ -1,2 +1,4 @@
[NAME]
grub-probe \- probe device information for GRUB
[SEE ALSO]
.BR grub-fstest (1)

View file

@ -1,2 +1,5 @@
[NAME]
grub-reboot \- set the default boot entry for GRUB, for the next boot only
[SEE ALSO]
.BR grub-set-default (8),
.BR grub-editenv (1)

View file

@ -1,2 +1,4 @@
[NAME]
grub-script-check \- check grub.cfg for syntax errors
[SEE ALSO]
.BR grub-mkconfig (8)

View file

@ -1,2 +1,5 @@
[NAME]
grub-set-default \- set the saved default boot entry for GRUB
[SEE ALSO]
.BR grub-reboot (8),
.BR grub-editenv (1)

View file

@ -1,2 +1,6 @@
[NAME]
grub-setup \- set up a device to boot using GRUB
[SEE ALSO]
.BR grub-install (8),
.BR grub-mkimage (1),
.BR grub-mkrescue (1)

View file

@ -906,6 +906,7 @@ module = {
module = {
name = btrfs;
common = fs/btrfs.c;
common = lib/crc.c;
};
module = {

View file

@ -120,7 +120,7 @@ __start:
ori $t0, $zero, GRUB_SMBUS_SPD_MEMORY_TYPE_DDR2
lui $a0, %hi(unimplemented_memory_type)
bne $t0, $v0, fatal
addiu $a0, $a0, %hi(unimplemented_memory_type)
addiu $a0, $a0, %lo(unimplemented_memory_type)
/* And here is our goal: DDR2 controller initialisation. */
lui $t0, %hi(GRUB_CPU_LOONGSON_CORECFG)

View file

@ -22,6 +22,10 @@
#include <grub/time.h>
#include <grub/ata.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
int
grub_cs5536_find (grub_pci_device_t *devp)
{

View file

@ -21,6 +21,8 @@
#include <grub/pci.h>
#include <grub/mm.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* FIXME: correctly support 64-bit architectures. */
/* #if GRUB_TARGET_SIZEOF_VOID_P == 4 */
struct grub_pci_dma_chunk *

View file

@ -24,6 +24,8 @@
#include <grub/usb.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
static struct grub_usb_controller_dev usb_controller =
{

View file

@ -29,6 +29,8 @@
#include <grub/cs5536.h>
#include <grub/loader.h>
GRUB_MOD_LICENSE ("GPLv3+");
struct grub_ohci_hcca
{
/* Pointers to Interrupt Endpoint Descriptors. Not used by

View file

@ -18,6 +18,9 @@
#include <grub/serial.h>
#include <grub/usbserial.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
void
grub_usbserial_fini (struct grub_serial_port *port)

View file

@ -24,6 +24,8 @@
#include <grub/usb.h>
#include <grub/usbserial.h>
GRUB_MOD_LICENSE ("GPLv3+");
enum
{
GRUB_FTDI_MODEM_CTRL = 0x01,

View file

@ -24,6 +24,8 @@
#include <grub/usb.h>
#include <grub/usbserial.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Convert speed to divisor. */
static grub_uint32_t
is_speed_supported (unsigned int speed)

View file

@ -26,6 +26,8 @@
#include <grub/i386/io.h>
#include <grub/time.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define GRUB_UHCI_IOMASK (0x7FF << 5)
#define N_QH 256

View file

@ -24,6 +24,8 @@
#include <grub/list.h>
#include <grub/term.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_usb_controller_dev_t grub_usb_list;
static struct grub_usb_attach_desc *attach_hooks;

View file

@ -33,6 +33,8 @@
#include <grub/efi/api.h>
#endif
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] = {
{"exclude", 'x', 0,
N_("Don't load host tables specified by comma-separated list."),

View file

@ -26,6 +26,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_blocklist (grub_command_t cmd __attribute__ ((unused)),
int argc, char **args)

View file

@ -25,6 +25,8 @@
#include <grub/mm.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t (*grub_loader_boot_func) (void);
static grub_err_t (*grub_loader_unload_func) (void);
static int grub_loader_noreturn;

View file

@ -25,6 +25,8 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"dos", -1, 0, N_("Accept DOS-style CR/NL line endings."), 0, 0},

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define BUFFER_SIZE 512
static grub_err_t

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_source (grub_command_t cmd, int argc, char **args)
{

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define GRUB_DATETIME_SET_YEAR 1
#define GRUB_DATETIME_SET_MONTH 2
#define GRUB_DATETIME_SET_DAY 4

View file

@ -23,6 +23,8 @@
#include <grub/i18n.h>
#include <grub/term.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{0, 'n', 0, N_("Do not output the trailing newline."), 0, 0},

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static struct grub_video_patch
{
const char *name;

View file

@ -25,6 +25,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_efi_guid_t acpi_guid = GRUB_EFI_ACPI_TABLE_GUID;
static grub_efi_guid_t acpi2_guid = GRUB_EFI_ACPI_20_TABLE_GUID;
static grub_efi_guid_t smbios_guid = GRUB_EFI_SMBIOS_TABLE_GUID;

View file

@ -23,6 +23,8 @@
#include <grub/efi/efi.h>
#include <grub/command.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define ADD_MEMORY_DESCRIPTOR(desc, size) \
((grub_efi_memory_descriptor_t *) ((char *) (desc) + (size)))

View file

@ -18,12 +18,15 @@
*/
#include <grub/types.h>
#include <grub/mm.h>
#include <grub/dl.h>
#include <grub/misc.h>
#include <grub/normal.h>
#include <grub/charset.h>
#include <grub/efi/api.h>
#include <grub/efi/efi.h>
GRUB_MOD_LICENSE ("GPLv3+");
struct guid_mapping
{
grub_efi_guid_t guid;

View file

@ -23,6 +23,9 @@
#include <grub/charset.h>
#include <grub/efi/api.h>
#include <grub/efi/efi.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
static void
disp_sal (void *table)

View file

@ -22,6 +22,9 @@
#include <grub/misc.h>
#include <grub/extcmd.h>
#include <grub/script_sh.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
grub_err_t
grub_extcmd_dispatcher (struct grub_command *cmd, int argc, char **args,

View file

@ -29,6 +29,8 @@
#include <grub/fs.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Convert a LBA address to a CHS address in the INT 13 format. */
/* Taken from grub1. */
/* XXX: use hardcoded geometry of C = 1024, H = 255, S = 63.

View file

@ -22,6 +22,8 @@
#include <grub/misc.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_halt (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),

View file

@ -26,6 +26,8 @@
#include <grub/normal.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] = {
{"hash", 'h', 0, N_("Specify hash to use."), N_("HASH"), ARG_TYPE_STRING},
{"check", 'c', 0, N_("Check hash list file."), N_("FILE"), ARG_TYPE_STRING},

View file

@ -26,6 +26,8 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] = {
{"apm", 'B', 0, N_("Set Advanced Power Management\n"
"(1=low, ..., 254=high, 255=off)."),

View file

@ -26,6 +26,8 @@
#include <grub/normal.h>
#include <grub/charset.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_help (grub_extcmd_context_t ctxt __attribute__ ((unused)), int argc,
char **args)

View file

@ -25,6 +25,8 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] = {
{"skip", 's', 0, N_("Skip offset bytes from the beginning of file."), 0,
ARG_TYPE_INT},

View file

@ -21,6 +21,8 @@
#include <grub/misc.h>
#include <grub/cmos.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
parse_args (int argc, char *argv[], int *byte, int *bit)
{

View file

@ -27,6 +27,8 @@
#include <grub/i386/cpuid.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define cpuid(num,a,b,c,d) \
asm volatile ("xchgl %%ebx, %1; cpuid; xchgl %%ebx, %1" \
: "=a" (a), "=r" (b), "=c" (c), "=d" (d) \

View file

@ -29,6 +29,7 @@
#include <grub/memory.h>
#include <grub/machine/memory.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* Real mode IVT slot (seg:off far pointer) for interrupt 0x13. */
static grub_uint32_t *const int13slot = UINT_TO_PTR (4 * 0x13);

View file

@ -24,6 +24,8 @@
#include <grub/machine/int.h>
#include <grub/acpi.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"no-apm", 'n', 0, N_("Do not use APM to halt the computer."), 0, 0},

View file

@ -22,6 +22,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
int
grub_apm_get_info (struct grub_apm_info *info)
{

View file

@ -29,6 +29,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
#define BASE_TEMPO (60 * GRUB_TICKS_PER_SECOND)
/* The speaker port. */

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_pxe_unload (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),

View file

@ -27,6 +27,8 @@
#include <grub/cpu/io.h>
#include <grub/loader.h>
GRUB_MOD_LICENSE ("GPLv2+");
static char sendkey[0x20];
/* Length of sendkey. */
static int keylen = 0;

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_suspend (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),

View file

@ -24,6 +24,8 @@
#include <grub/cpu/io.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_extcmd_t cmd_read_byte, cmd_read_word, cmd_read_dword;
static grub_command_t cmd_write_byte, cmd_write_word, cmd_write_dword;

View file

@ -28,6 +28,8 @@
#include <grub/i18n.h>
#include <grub/file.h>
GRUB_MOD_LICENSE ("GPLv3+");
static struct grub_keyboard_layout layout_us = {
.keyboard_map = {
/* Keyboard errors. Handled by driver. */

View file

@ -23,6 +23,8 @@
#include <grub/term.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"shift", 's', 0, N_("Check Shift key."), 0, 0},

View file

@ -33,6 +33,8 @@
#include <grub/disk.h>
#include <grub/partition.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
legacy_file (const char *filename)
{

View file

@ -28,6 +28,8 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"file", 'f', 0, N_("Specify filename."), 0, ARG_TYPE_PATHNAME},

View file

@ -33,6 +33,8 @@
#include <grub/i18n.h>
#include <grub/net.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"long", 'l', 0, N_("Show a long list with more detailed information."), 0, 0},

View file

@ -25,6 +25,8 @@
#include <grub/i18n.h>
#include <grub/dl.h>
GRUB_MOD_LICENSE ("GPLv3+");
static void
print_strn (grub_uint8_t *str, grub_size_t len)
{

View file

@ -22,6 +22,8 @@
#include <grub/i18n.h>
#include <grub/memory.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const char *names[] =
{
[GRUB_MEMORY_AVAILABLE] = "available",

View file

@ -23,6 +23,8 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
struct grub_pci_classname
{
int class;

View file

@ -23,6 +23,8 @@
#include <grub/env.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_extcmd_t cmd_read_byte, cmd_read_word, cmd_read_dword;
static grub_command_t cmd_write_byte, cmd_write_word, cmd_write_dword;

View file

@ -29,6 +29,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* cat FILE */
static grub_err_t
grub_mini_cmd_cat (struct grub_command *cmd __attribute__ ((unused)),

View file

@ -24,6 +24,8 @@
#include <grub/command.h>
#include <grub/cs5536.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_lsspd (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),

View file

@ -31,6 +31,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv2+");
static struct grub_parttool *parts = 0;
static int curhandle = 0;
static grub_dl_t mymod;

View file

@ -26,6 +26,8 @@
#include <grub/dl.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_dl_t my_mod;
static grub_err_t

View file

@ -26,6 +26,8 @@
#include <grub/dl.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_dl_t my_mod;
struct pbkdf2_password

View file

@ -32,9 +32,11 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"set", 's', GRUB_ARG_OPTION_OPTIONAL,
{"set", 's', 0,
N_("Set a variable to return value."), "VAR", ARG_TYPE_STRING},
{"driver", 'd', 0, N_("Determine driver."), 0, 0},
{"partmap", 'p', 0, N_("Determine partition map type."), 0, 0},
@ -150,7 +152,7 @@ static grub_extcmd_t cmd;
GRUB_MOD_INIT (probe)
{
cmd = grub_register_extcmd ("probe", grub_cmd_probe, 0, N_("[DEVICE]"),
cmd = grub_register_extcmd ("probe", grub_cmd_probe, 0, N_("DEVICE"),
N_("Retrieve device info."), options);
}

View file

@ -26,6 +26,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static char *
grub_getline (void)
{

View file

@ -22,6 +22,8 @@
#include <grub/misc.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static grub_err_t
grub_cmd_reboot (grub_command_t cmd __attribute__ ((unused)),
int argc __attribute__ ((unused)),

View file

@ -27,6 +27,8 @@
#include <grub/script_sh.h>
#include <regex.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{ "set", 's', GRUB_ARG_OPTION_REPEATABLE,

View file

@ -31,6 +31,8 @@
#include <grub/disk.h>
#include <grub/partition.h>
GRUB_MOD_LICENSE ("GPLv3+");
void
FUNC_NAME (const char *key, const char *var, int no_floppy,
char **hints, unsigned nhints)

View file

@ -27,6 +27,8 @@
#include <grub/search.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"file", 'f', 0, N_("Search devices by a file."), 0, 0},

View file

@ -25,6 +25,8 @@
#include <grub/mm.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
struct pci_register
{
const char *name;

View file

@ -25,6 +25,8 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
static const struct grub_arg_option options[] =
{
{"verbose", 'v', 0, N_("Verbose countdown."), 0, 0},

View file

@ -23,6 +23,8 @@
#include <grub/i18n.h>
#include <grub/misc.h>
GRUB_MOD_LICENSE ("GPLv3+");
struct grub_term_autoload *grub_term_input_autoload = NULL;
struct grub_term_autoload *grub_term_output_autoload = NULL;

View file

@ -27,6 +27,8 @@
#include <grub/command.h>
#include <grub/i18n.h>
GRUB_MOD_LICENSE ("GPLv3+");
/* A simple implementation for signed numbers. */
static int
grub_strtosl (char *arg, char **end, int base)

Some files were not shown because too many files have changed in this diff Show more