Vladimir 'phcoder' Serbinenko
6c21f5d7a1
* Makefile.util.def (grub-ofpathname): Enable on all platforms.
2012-02-27 22:48:29 +01:00
Colin Watson
cfe456dc03
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 22:31:51 +01:00
Colin Watson
e3c78337c3
* 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 22:25:39 +01:00
Vladimir 'phcoder' Serbinenko
984b973ffc
* util/grub-install.in: Clarify strings.
...
Fix source dir check.
2012-02-27 21:31:58 +01:00
Richard Laager
f122e0d648
* util/getroot.c (grub_find_root_devices_from_mountinfo): Handle
...
"zfs" and "fuse.zfs" as synonyms.
2012-02-27 20:14:26 +01:00
Vladimir 'phcoder' Serbinenko
071114bb3e
* configure.ac: Put platform and target_cpu substitutions back since
...
they are used for directories.
2012-02-27 19:10:02 +01:00
Richard Laager
817e6abcd0
* util/grub.d/10_linux.in: Add ZFS-related arguments.
...
* util/grub.d/20_linux_xen.in: Likewise.
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2012-02-27 19:07:09 +01:00
Richard Laager
897b741978
* util/getroot.c (find_root_devices_from_poolname): Handle vdevs
...
with full paths.
2012-02-27 17:42:48 +01:00
Richard Laager
a414bd1565
* util/getroot.c (grub_find_root_devices_from_mountinfo): Add missing
...
unescape.
2012-02-27 17:40:38 +01:00
Vladimir 'phcoder' Serbinenko
30ac48c452
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 17:37:23 +01:00
Vladimir 'phcoder' Serbinenko
53f13848f1
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 16:46:52 +01:00
Vladimir 'phcoder' Serbinenko
90cb2803d4
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 16:06:18 +01:00
Vladimir 'phcoder' Serbinenko
b913642798
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 14:56:28 +01:00
Vladimir 'phcoder' Serbinenko
c36e5cd162
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 14:24:22 +01:00
Vladimir 'phcoder' Serbinenko
584b2f8a22
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 14:13:24 +01:00
Vladimir 'phcoder' Serbinenko
5a0dc6fb2a
* include/grub/efi/api.h (grub_efi_runtime_services): Add missing
...
const qualifier for vendor_guid.
2012-02-27 14:09:09 +01:00
Vladimir 'phcoder' Serbinenko
786aff6e55
* grub-core/efiemu/runtime/efiemu.c (efiemu_get_variable): Add missing
...
const qualifier.
(efiemu_memequal): Likewise.
(find_variable): Likewise.
2012-02-27 14:07:53 +01:00
Vladimir 'phcoder' Serbinenko
49017b1719
Fix missing console prototype on qemu-mips.
...
* include/grub/mips/qemu_mips/console.h: New file.
2012-02-27 14:06:33 +01:00
Matthew Garrett
c598862958
* 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 12:02:57 +01:00
Matthew Garrett
e33f8d692f
* include/grub/efi/pci.h: New file to define EFI PCI protocols.
2012-02-27 11:42:23 +01:00
Vladimir 'phcoder' Serbinenko
fb312cd9da
* grub-core/disk/diskfilter.c (grub_diskfilter_iterate): Fix off-by-one
...
error.
2012-02-27 11:39:15 +01:00
Vladimir 'phcoder' Serbinenko
7134247cd8
* configure.ac: Remove inappropriate use of program_transform_name
...
on grubdir and bootdir but allow explicit specification of those
variables.
2012-02-27 11:34:31 +01:00
Vladimir 'phcoder' Serbinenko
6a3131243a
* util/grub-mknetdir.in (grub_prefix): Removed.
...
(subdir): Use @bootdirname@ and @grubdirname@.
2012-02-27 11:08:17 +01:00
Vladimir 'phcoder' Serbinenko
2311c5caa9
Replace PACKAGE_TARNAME with PACKAGE in pkglibdir and pkgdatadir.
2012-02-27 11:04:50 +01:00
Vladimir 'phcoder' Serbinenko
7d5d60f7c8
* po/POTFILES.in: Regenerated.
2012-02-27 10:37:03 +01:00
Vladimir 'phcoder' Serbinenko
8151bc82f7
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 10:35:37 +01:00
Vladimir 'phcoder' Serbinenko
b4a6a53310
* grub-core/normal/menu_text.c (grub_print_message_indented_real): Fix a
...
warning.
2012-02-27 10:31:46 +01:00
Vladimir 'phcoder' Serbinenko
668f304f4d
* util/grub-install.in: Use file identifier if no UUID is available
...
or user explicitly prompted for it.
2012-02-27 02:23:14 +01:00
Navdeep Parhar
665f2341f7
* 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 02:02:16 +01:00
Vladimir 'phcoder' Serbinenko
1240a58afb
* conf/Makefile.common (platformdir): Base on pkglibdir and not
...
pkglibrootdir.
2012-02-27 01:44:10 +01:00
Mike Gilbert
e4c498a106
Add configure flag to control libzfs integration.
...
* configure.ac: Add AC_ARG_ENABLE(libzfs ...) and associated logic.
2012-02-27 00:57:48 +01:00
Vladimir 'phcoder' Serbinenko
1e9a9a3faf
* 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-27 00:46:08 +01:00
Vladimir 'phcoder' Serbinenko
036985b8ce
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-27 00:28:45 +01:00
Vladimir 'phcoder' Serbinenko
d5534665ff
Make nand a prefix for nand devices.
...
* grub-core/disk/ieee1275/nand.c (grub_nand_open): Use prefix nand.
2012-02-26 23:59:00 +01:00
Vladimir 'phcoder' Serbinenko
10133b5ff3
* grub-core/kern/misc.c (grub_stpcpy): Move from here ...
...
* include/grub/misc.h (grub_stpcpy): ... to here. Inlined.
2012-02-26 23:55:18 +01:00
Vladimir 'phcoder' Serbinenko
8e307a625d
* 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 23:53:21 +01:00
Vladimir 'phcoder' Serbinenko
a4c65f3441
* grub-core/kern/i386/realmode.S: Remove useless align.
2012-02-26 23:46:34 +01:00
Vladimir 'phcoder' Serbinenko
d87893d5dc
* include/grub/dl.h (grub_dl_load_file): Don't export.
2012-02-26 23:44:39 +01:00
Vladimir 'phcoder' Serbinenko
50159add1e
* grub-core/disk/diskfilter.c (grub_diskfilter_open): Remove useless
...
grub_dprintf.
2012-02-26 23:39:21 +01:00
Vladimir 'phcoder' Serbinenko
b2582b84f2
* 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 23:36:12 +01:00
Vladimir 'phcoder' Serbinenko
e2a833958e
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 23:25:47 +01:00
Vladimir 'phcoder' Serbinenko
e7d2a906b0
* grub-core/genmod.sh.in: Add -R .note.GNU-stack to strip.
2012-02-26 22:57:26 +01:00
Vladimir 'phcoder' Serbinenko
6cf1363b8f
* grub-core/disk/diskfilter.c (insert_array): Remove scanner_name
...
argument since it can be deduced from diskfilter. All users updated.
2012-02-26 22:53:21 +01:00
Vladimir 'phcoder' Serbinenko
eece3349ea
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 22:49:24 +01:00
Vladimir 'phcoder' Serbinenko
94f064b4c9
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 22:10:13 +01:00
Vladimir 'phcoder' Serbinenko
27317084c6
* 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 21:04:45 +01:00
Vladimir 'phcoder' Serbinenko
47b40053e0
* grub-core/commands/probe.c (grub_cmd_probe): Gettextise UUID and label
...
errors.
2012-02-26 20:36:09 +01:00
Vladimir 'phcoder' Serbinenko
2b3431017d
* grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Stop on
...
\0.
(add_length): Likewise.
2012-02-26 20:32:37 +01:00
Vladimir 'phcoder' Serbinenko
4cebfa1a87
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 20:31:03 +01:00
Lubomir Kundrak
ff27c3dd5d
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.
* include/grub/backtrace.h: Likewise.
* include/grub/gdb.h: Likewise.
* include/grub/i386/gdb.h: Likewise.
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2012-02-26 19:17:37 +01:00