Vladimir 'phcoder' Serbinenko
c4c48c541c
* grub-core/Makefile.core.def (lzma_decompress): Use
...
TARGET_IMG_BASE_LDOPT rather than hardcoding -Wl,-Ttext.
2012-02-29 16:28:26 +01:00
Vladimir 'phcoder' Serbinenko
31a12124a0
* grub-core/genmod.sh.in: Rewrite the Apple part.
2012-02-29 16:00:27 +01:00
Vladimir 'phcoder' Serbinenko
4f3aa1af70
* grub-core/loader/machoXX.c (grub_macho_load): Fix signed vs unsigned
...
comparison.
2012-02-29 15:48:57 +01:00
Vladimir 'phcoder' Serbinenko
fb88381212
* 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 15:26:42 +01:00
Vladimir 'phcoder' Serbinenko
a121c9648e
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 15:23:31 +01:00
Vladimir 'phcoder' Serbinenko
c66d641020
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__APPLE__]:
...
Add blocksize retrieval.
2012-02-29 15:17:59 +01:00
Vladimir 'phcoder' Serbinenko
382775d1ac
* grub-core/Makefile.am (MACHO2IMG): Add missing variable.
2012-02-29 15:08:08 +01:00
Vladimir 'phcoder' Serbinenko
6fd4e6e4d0
* grub-core/commands/i386/pc/halt.c (grub_halt): Add noreturn attribute.
...
(grub_cmd_halt): Likewise.
2012-02-29 15:06:39 +01:00
Vladimir 'phcoder' Serbinenko
bea359d657
* 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 15:00:54 +01:00
Vladimir 'phcoder' Serbinenko
32eb6ee157
* grub-core/disk/diskfilter.c (read_segment): Initialise err
...
before loops.
2012-02-29 14:57:59 +01:00
Vladimir 'phcoder' Serbinenko
e837738991
* grub-core/lib/xzembed/xz_dec_stream.c (hash_validate): Use void *
...
for context.
2012-02-29 14:56:51 +01:00
Vladimir 'phcoder' Serbinenko
8cb17de77b
* grub-core/disk/ldm.c (make_vg): Init part.name.
...
(grub_ldm_detect): Silence spurious warning.
(grub_util_is_ldm): Likewise.
2012-02-29 14:55:09 +01:00
Vladimir 'phcoder' Serbinenko
595717e6d4
* grub-core/loader/i386/xnu.c (grub_xnu_boot): Init fsbfreq to
...
sane value to avoid a spurious warning.
2012-02-29 14:53:41 +01:00
Vladimir 'phcoder' Serbinenko
c4b7e58882
* include/grub/dl.h: Switch from APPLE_CC to __APPLE__.
...
(GRUB_MOD_LICENSE) [ASM_FILE]: Make into macro. All users updated.
2012-02-29 14:51:09 +01:00
Vladimir 'phcoder' Serbinenko
5982495738
* 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 14:48:58 +01:00
Vladimir 'phcoder' Serbinenko
70115b995d
* grub-core/gdb/i386/machdep.S: Use VARIABLE and EXT_C instead of
...
hardcoding the relevant info.
2012-02-29 14:44:52 +01:00
Vladimir 'phcoder' Serbinenko
56733740ed
* 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 14:42:20 +01:00
Vladimir 'phcoder' Serbinenko
99ce1597a4
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 13:26:13 +01:00
Vladimir 'phcoder' Serbinenko
ebd17d6f51
* grub-core/disk/pata.c (grub_pata_readwrite): Fix ATAPI protocol error.
2012-02-29 12:45:32 +01:00
Vladimir 'phcoder' Serbinenko
2702b4e4f7
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 12:58:57 +01:00
Vladimir 'phcoder' Serbinenko
cf1adfdff5
* 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 11:50:53 +01:00
Vladimir 'phcoder' Serbinenko
7acd2ae1fb
* grub-core/term/i386/pc/vga_text.c: Add GRUB_MACHINE_MULTIBOOT to
...
grub_vga_text_init/grub_vga_text_fini.
2012-02-28 11:12:32 +01:00
Vladimir 'phcoder' Serbinenko
629e6a3363
* grub-core/loader/i386/xnu.c (grub_xnu_boot): Fix format specification.
2012-02-28 11:02:19 +01:00
Vladimir 'phcoder' Serbinenko
f1b16fa3e3
* grub-core/partmap/msdos.c (message_warn): Clarify messages.
2012-02-28 04:23:58 +01:00
Vladimir 'phcoder' Serbinenko
83ddae2333
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-28 04:04:19 +01:00
Vladimir 'phcoder' Serbinenko
dc693fe67c
* grub-core/efiemu/prepare.c (grub_efiemu_crc): Add missing
...
zeroing of CRC field before computing CRC.
2012-02-28 03:59:08 +01:00
Vladimir 'phcoder' Serbinenko
5a6e39c28f
* grub-core/lib/relocator.c (malloc_in_range): Fix memory leak.
...
Change order of allocations to decrease fragmentation.
2012-02-28 01:32:38 +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
e1e49678b9
* util/grub-install.in: Clarify strings.
...
Fix source dir check.
2012-02-27 21:36:58 +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
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
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
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
b4a6a53310
* grub-core/normal/menu_text.c (grub_print_message_indented_real): Fix a
...
warning.
2012-02-27 10:31:46 +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
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
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