]> git.proxmox.com Git - grub2.git/log
grub2.git
13 years ago * util/grub-mkpasswd-pbkdf2.c (main): Don't double-close.
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 20:11:42 +0000 (22:11 +0200)]
* util/grub-mkpasswd-pbkdf2.c (main): Don't double-close.
Reported by: David Volgyes <dvolgyes>.

13 years ago * grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 20:02:05 +0000 (22:02 +0200)]
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close
file after stat.
Reported by: David Volgyes <dvolgyes>.

13 years ago * util/raid.c (grub_util_raid_getmembers): Close fd before returning.
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 19:06:50 +0000 (21:06 +0200)]
* util/raid.c (grub_util_raid_getmembers): Close fd before returning.

Reported by: David Volgyes <dvolgyes>.

13 years ago * grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]:
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 18:58:35 +0000 (20:58 +0200)]
* grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]:
Prevent memory leak.

13 years ago * grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak.
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 18:55:36 +0000 (20:55 +0200)]
* grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak.
(main): Close file.

13 years ago * grub-core/loader/i386/xnu.c (grub_cpu_xnu_fill_devprop): Don't attempt
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 18:38:19 +0000 (20:38 +0200)]
* 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>.

13 years ago * grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Avoid NULL-pointer
David Volgyes [Thu, 23 Jun 2011 18:28:04 +0000 (20:28 +0200)]
* grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Avoid NULL-pointer
dereference.

13 years ago Fix spurious warning.
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 18:05:39 +0000 (20:05 +0200)]
Fix spurious warning.

* grub-core/partmap/acorn.c (grub_acorn_boot_block): Make a union.
(acorn_partition_map_find): Use .bin member.

13 years ago * grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 17:50:41 +0000 (19:50 +0200)]
* grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept
/dev/root as a valid device.

13 years ago Avoid NULL deref in grub_device_open.
Jim Meyering [Thu, 23 Jun 2011 16:08:53 +0000 (18:08 +0200)]
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.

13 years ago Support non-512B sectors and agglomerate reads.
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 14:45:52 +0000 (16:45 +0200)]
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.

13 years agoFixed a cache collision bug. Thanks guufy1 for bugreport and test
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 07:39:12 +0000 (09:39 +0200)]
Fixed a cache collision bug. Thanks guufy1 for bugreport and test

13 years agoNew testload grub-fstest command
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 06:45:12 +0000 (08:45 +0200)]
New testload grub-fstest command

13 years agomerge mainline into 4096
Vladimir 'phcoder' Serbinenko [Thu, 23 Jun 2011 02:08:37 +0000 (04:08 +0200)]
merge mainline into 4096

13 years ago2011-06-16 Robert Millan <rmh@gnu.org>
Robert Millan [Thu, 16 Jun 2011 12:33:11 +0000 (14:33 +0200)]
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().

13 years ago* docs/man/grub-mklayout.h2m (DESCRIPTION): Add a reference to the
Colin Watson [Mon, 13 Jun 2011 16:35:50 +0000 (17:35 +0100)]
* docs/man/grub-mklayout.h2m (DESCRIPTION): Add a reference to the
input format.

13 years ago* docs/grub.texi (Obtaining and Building GRUB): Substitute
Colin Watson [Sun, 29 May 2011 21:15:08 +0000 (22:15 +0100)]
* docs/grub.texi (Obtaining and Building GRUB): Substitute
`ftp.gnu.org' for `alpha.gnu.org'.

13 years ago* grub-core/kern/emu/hostdisk.c (linux_find_partition): Handle
Colin Watson [Fri, 27 May 2011 12:57:22 +0000 (13:57 +0100)]
* grub-core/kern/emu/hostdisk.c (linux_find_partition): Handle
partitions under /dev/disk/by-id/.

13 years ago* grub-core/kern/emu/hostdisk.c (linux_find_partition): Give up
Colin Watson [Fri, 27 May 2011 12:52:21 +0000 (13:52 +0100)]
* 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.

13 years ago * grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
Vladimir 'phcoder' Serbinenko [Sat, 21 May 2011 05:05:46 +0000 (07:05 +0200)]
* grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
opening new one.

13 years ago Don't stat devices unless we have to.
Vladimir Serbinenko [Sat, 21 May 2011 05:03:55 +0000 (07:03 +0200)]
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.

Also-By: Colin Watson <cjwatson@ubuntu.com>
13 years ago* util/grub-mkconfig.in: Export GRUB_CMDLINE_LINUX_XEN_REPLACE and
Colin Watson [Fri, 20 May 2011 10:21:36 +0000 (11:21 +0100)]
* util/grub-mkconfig.in: Export GRUB_CMDLINE_LINUX_XEN_REPLACE and
GRUB_CMDLINE_LINUX_XEN_REPLACE_DEFAULT.
Reported by: Pawel Tecza.

13 years ago * grub-core/Makefile.core.def (lsacpi): Fix ia64 mismerge.
Vladimir 'phcoder' Serbinenko [Thu, 19 May 2011 10:13:18 +0000 (12:13 +0200)]
* 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.

13 years ago* Makefile.util.def (grub-ofpathname): Install manual page.
Colin Watson [Wed, 18 May 2011 16:31:50 +0000 (17:31 +0100)]
* Makefile.util.def (grub-ofpathname): Install manual page.

13 years ago * grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE.
Colin Watson [Wed, 18 May 2011 15:16:59 +0000 (17:16 +0200)]
* grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE.

13 years ago* .bzrignore: Add grub-core/modinfo.sh and a number of test files.
Colin Watson [Wed, 18 May 2011 15:10:52 +0000 (16:10 +0100)]
* .bzrignore: Add grub-core/modinfo.sh and a number of test files.

13 years ago * grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 13:37:18 +0000 (15:37 +0200)]
* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf
into dprintf.

13 years ago Use full 64-bit division.
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 13:35:19 +0000 (15:35 +0200)]
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.

13 years ago* util/grub-mkrescue.in: Use portable `.' rather than non-portable
Colin Watson [Wed, 18 May 2011 11:57:59 +0000 (12:57 +0100)]
* util/grub-mkrescue.in: Use portable `.' rather than non-portable
`source'.

13 years ago* grub-core/genmod.sh.in: Use 'set -e' rather than '#! /bin/sh -e',
Colin Watson [Wed, 18 May 2011 11:53:07 +0000 (12:53 +0100)]
* 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.

13 years agoMove gfxmenu color handling to video, so that gfxterm can use it
Colin Watson [Wed, 18 May 2011 11:44:24 +0000 (12:44 +0100)]
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.

13 years ago Patch BPB in ntldr and chainloader --bpb.
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 10:51:05 +0000 (12:51 +0200)]
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.

13 years ago * grub-core/fs/fat.c: Include grub/fat.h.
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 10:48:14 +0000 (12:48 +0200)]
* 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.

13 years agoadd missing file
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 10:41:22 +0000 (12:41 +0200)]
add missing file

13 years ago * grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 10:39:22 +0000 (12:39 +0200)]
* grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275
for cleanness.

13 years ago FreeDOS direct loading support.
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 10:15:16 +0000 (12:15 +0200)]
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.

13 years ago Long Linux command line support.
Vladimir 'phcoder' Serbinenko [Wed, 18 May 2011 07:56:33 +0000 (09:56 +0200)]
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.

13 years ago Improve devmapper support
Vladimir Serbinenko [Wed, 18 May 2011 07:35:47 +0000 (09:35 +0200)]
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.

Also-By: Colin Watson <cjwatson@ubuntu.com>
13 years ago Unify grub-mkrescue (except powerpc) and grrub-mknetdir across platforms
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 23:38:01 +0000 (01:38 +0200)]
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.

13 years ago * grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 22:21:49 +0000 (00:21 +0200)]
* 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.

13 years ago Use mipsel- rather than mips- in directories involving mipsel ports to
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 20:48:20 +0000 (22:48 +0200)]
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.

13 years ago Avoid unnecessary copying on MIPS.
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 19:40:35 +0000 (21:40 +0200)]
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.

13 years ago Reduce memory footprint on SGI by putting modules before the kernel
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 19:15:54 +0000 (21:15 +0200)]
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.

13 years ago Prevent potential loss of memory map by overwrite on qemu-mips.
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 17:32:51 +0000 (19:32 +0200)]
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.

13 years ago* .bzrignore: Remove grub-dumpbios.
Colin Watson [Tue, 17 May 2011 17:13:12 +0000 (18:13 +0100)]
* .bzrignore: Remove grub-dumpbios.

13 years ago* util/grub.d/20_linux_xen.in: Honour GRUB_CMDLINE_LINUX_XEN_REPLACE
Colin Watson [Tue, 17 May 2011 17:10:29 +0000 (18:10 +0100)]
* 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.

13 years ago* util/grub-fstest.c (cmd_cat): New function.
Colin Watson [Tue, 17 May 2011 17:03:59 +0000 (18:03 +0100)]
* util/grub-fstest.c (cmd_cat): New function.
(fstest): Handle CMD_CAT.
(options): Add cat.
(argp_parser): Handle cat.

13 years ago* Makefile.util.def (grub-bin2h): Don't install.
Colin Watson [Tue, 17 May 2011 17:00:31 +0000 (18:00 +0100)]
* Makefile.util.def (grub-bin2h): Don't install.
* docs/man/grub-bin2h.h2m: Remove.

13 years ago * grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 16:39:32 +0000 (18:39 +0200)]
* grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right
place.

13 years ago Reenable qemu-mips port.
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 14:07:17 +0000 (16:07 +0200)]
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.

13 years agomake linux loader work on qemu-mips
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 13:34:40 +0000 (15:34 +0200)]
make linux loader work on qemu-mips

13 years agoenable ATA on qemu-mips
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 12:35:55 +0000 (14:35 +0200)]
enable ATA on qemu-mips

13 years agoFix -O for qemu
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 12:05:52 +0000 (14:05 +0200)]
Fix -O for qemu

13 years agoRevert changes to cache_flush.S
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 12:04:49 +0000 (14:04 +0200)]
Revert changes to cache_flush.S

13 years agomerge mainline and various cleanups
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 12:02:18 +0000 (14:02 +0200)]
merge mainline and various cleanups

13 years agoAdd missing ChngeLog line
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 07:18:53 +0000 (09:18 +0200)]
Add missing ChngeLog line

13 years ago SGI ARCS port.
Vladimir 'phcoder' Serbinenko [Tue, 17 May 2011 07:17:38 +0000 (09:17 +0200)]
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.

13 years agoFix install message
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 19:50:24 +0000 (21:50 +0200)]
Fix install message

13 years agoset id on arc disks
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 19:50:14 +0000 (21:50 +0200)]
set id on arc disks

13 years ago * grub-core/bus/pci.c (grub_memalign_dma32): Always allocate in 64-byte
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 06:51:55 +0000 (08:51 +0200)]
* grub-core/bus/pci.c (grub_memalign_dma32): Always allocate in 64-byte
blocks.

13 years ago * grub-core/bus/usb/usbhub.c (attach_root_port): Wait 10ms
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 06:50:21 +0000 (08:50 +0200)]
* grub-core/bus/usb/usbhub.c (attach_root_port): Wait 10ms
after enabling port.

13 years ago Skip incorrect USB devices.
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 00:39:25 +0000 (02:39 +0200)]
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.

13 years agoadd changelog entry
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 00:35:47 +0000 (02:35 +0200)]
add changelog entry

13 years ago Fuloong video init support.
Vladimir 'phcoder' Serbinenko [Mon, 16 May 2011 00:34:58 +0000 (02:34 +0200)]
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.

13 years ago * grub-core/bus/cs5536.c: Don't include grub/machine/kernel.h on
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 13:41:23 +0000 (15:41 +0200)]
* 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.

13 years ago Fix compilation errors.
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 10:32:37 +0000 (12:32 +0200)]
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.

13 years ago Several FS mtime support.
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 10:23:54 +0000 (12:23 +0200)]
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.

13 years ago ROMFS support.
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 10:01:03 +0000 (12:01 +0200)]
ROMFS support.

* Makefile.util.def (libgrubmods.a): Add romfs.
* grub-core/Makefile.core.def (romfs): New module.
* grub-core/fs/romfs.c: New file.

13 years ago Squashfs v4 support.
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 09:58:22 +0000 (11:58 +0200)]
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.

13 years ago * Makefile.util.def (libgrubmods.a): Add minix3.
Feiran Zheng [Sun, 15 May 2011 09:53:16 +0000 (11:53 +0200)]
* 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.

Also-By: Vladimir Serbinenko <phcoder@gmail.com>
13 years ago IA64 support.
Tristan Gingold [Sun, 15 May 2011 09:22:59 +0000 (11:22 +0200)]
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.

Also-By: Robert Millan <rmh.grub@aybabtu.com>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
13 years ago * grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 08:23:02 +0000 (10:23 +0200)]
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious
warning. Move variables before code while on it.

13 years agomerge mainline into sgi
Vladimir 'phcoder' Serbinenko [Sun, 15 May 2011 00:23:36 +0000 (02:23 +0200)]
merge mainline into sgi

13 years ago Fuloong support.
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 23:43:44 +0000 (01:43 +0200)]
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.

13 years ago * docs/grub.texi (Invoking grub-install): Fix additional outdated claims
Jordan Uggla [Sat, 14 May 2011 20:49:53 +0000 (22:49 +0200)]
* docs/grub.texi (Invoking grub-install): Fix additional outdated claims
and add some clarification.

13 years ago * util/grub.d/10_linux.in: Autoload gzio since it's needed on some
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 20:47:28 +0000 (22:47 +0200)]
* util/grub.d/10_linux.in: Autoload gzio since it's needed on some
platforms if kernel is compressed.

13 years ago * grub-core/kern/mm.c (grub_memalign): Disable auto-unloadding of
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 20:44:53 +0000 (22:44 +0200)]
* 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.

13 years ago * grub-core/kern/dl.c (grub_dl_load_file): Decrease ref counter
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 20:42:28 +0000 (22:42 +0200)]
* grub-core/kern/dl.c (grub_dl_load_file): Decrease ref counter
rather than resetting it to allow modules to reference themselves
in init.

13 years ago * grub-core/kern/dl.c (grub_dl_unload): Don't decrease reference
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 20:35:56 +0000 (22:35 +0200)]
* grub-core/kern/dl.c (grub_dl_unload): Don't decrease reference
counter on dependencies since grub_dl_unref already handles this.

13 years ago * grub-core/font/font_cmd.c (loadfont_command): Set grub_errno
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 20:29:27 +0000 (22:29 +0200)]
* grub-core/font/font_cmd.c (loadfont_command): Set grub_errno
on error if not already done.

13 years ago Fix few potential memory misusage.
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 20:26:52 +0000 (22:26 +0200)]
Fix few potential memory misusage.

* grub-core/font/font.c (load_font_index): Don't free char_index to
avoid double free.

13 years ago * docs/grub.texi (Installation): Fix several outdated claims.
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 15:50:48 +0000 (17:50 +0200)]
* docs/grub.texi (Installation): Fix several outdated claims.

13 years ago Handle module_license on windows.
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 15:47:59 +0000 (17:47 +0200)]
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.

13 years ago * grub-core/commands/menuentry.c (grub_cmd_menuentry): Correctly
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 10:14:00 +0000 (12:14 +0200)]
* grub-core/commands/menuentry.c (grub_cmd_menuentry): Correctly
handle class-free menuentries.
(grub_normal_add_menu_entry): Add a check to be sure.

13 years ago * grub-core/term/at_keyboard.c (set1_e0_mapping): Fix swap between
Vladimir 'phcoder' Serbinenko [Sat, 14 May 2011 10:09:16 +0000 (12:09 +0200)]
* grub-core/term/at_keyboard.c (set1_e0_mapping): Fix swap between
PgUp and PgDown.

13 years ago * configure.ac: Bump version to 1.99.
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 19:50:18 +0000 (21:50 +0200)]
* configure.ac: Bump version to 1.99.

13 years ago Give ATA device a bit more time on first try in order to allow disks
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 19:41:18 +0000 (21:41 +0200)]
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'.

13 years ago * util/grub-mkimage.c (generate_image): Update hash.
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 19:31:00 +0000 (21:31 +0200)]
* util/grub-mkimage.c (generate_image): Update hash.

13 years ago Flush caches on DMA memory.
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 18:56:50 +0000 (20:56 +0200)]
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.

13 years ago * grub-core/boot/mips/yeeloong/fwstart.S: Add explicit set mips3
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 18:23:29 +0000 (20:23 +0200)]
* grub-core/boot/mips/yeeloong/fwstart.S: Add explicit set mips3
to avoid asm treating ld and sd as macros.

13 years agoArc type cleanup
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 16:03:20 +0000 (18:03 +0200)]
Arc type cleanup

13 years agomissing part of previous commits
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 16:02:58 +0000 (18:02 +0200)]
missing part of previous commits

13 years agosgimips grub-install partial support (untested)
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 16:02:36 +0000 (18:02 +0200)]
sgimips grub-install partial support (untested)

13 years agoavoid executing cache opcode on non-4 byte aligned boundaries
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 14:41:26 +0000 (16:41 +0200)]
avoid executing cache opcode on non-4 byte aligned boundaries

13 years agoadd dvh to userspace tools
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 14:39:02 +0000 (16:39 +0200)]
add dvh to userspace tools

13 years agosome additional key sequences for arc
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 14:38:23 +0000 (16:38 +0200)]
some additional key sequences for arc

13 years agosgimips linux loader
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 14:36:41 +0000 (16:36 +0200)]
sgimips linux loader

13 years agosgi support
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 14:36:05 +0000 (16:36 +0200)]
sgi support

13 years agoAdjust mips/dl.c for bigendian
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 13:38:42 +0000 (15:38 +0200)]
Adjust mips/dl.c for bigendian

13 years ago * grub-core/boot/mips/startup_raw.S: Flush cache after loading
Vladimir 'phcoder' Serbinenko [Fri, 13 May 2011 13:35:06 +0000 (15:35 +0200)]
* grub-core/boot/mips/startup_raw.S: Flush cache after loading
decompressor.