Colin King
463ac55fac
Shrink the pre-partition-table part of boot.img by eight bytes.
...
* boot/i386/pc/boot.S (ERR): New macro.
(chs_mode): Use ERR.
(geometry_error): Likewise.
(hd_probe_error): Remove. This is only used once, so we wrwite
it inline instead.
(read_error): Instead of printing read_error_string, just set up
%si and fall through to ...
(error_message): ... this new function, also used by ERR.
Also-By: Colin Watson <cjwatson@ubuntu.com>
2010-03-14 15:47:05 +00:00
Colin Watson
08e46ededa
Speed up consecutive hostdisk operations on the same device.
...
* util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
(grub_util_biosdisk_open): Initialise disk->data.
(struct linux_partition_cache): New structure.
(linux_find_partition): Cache partition start positions; these are
expensive to compute on every read and write.
(open_device): Cache open file descriptor in disk->data, so that we
don't have to reopen it and flush the buffer cache for consecutive
operations on the same device.
(grub_util_biosdisk_close): New function.
(grub_util_biosdisk_dev): Set `close' member.
* conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
* conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
* conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
2010-03-14 15:39:14 +00:00
Vladimir 'phcoder' Serbinenko
4a6d2d06db
Compile parts of grub-emu as modules.
...
* Makefile.in (TARGET_CPPFLAGS) [emu]: Remove -nostdinc -isystem.
(pkglib_DATA) [emu]: Remove moddep.lst command.lst fs.lst
partmap.lst parttool.lst handler.lst video.lst crypto.lst terminal.lst.
(all-local): Add $(GRUB_EMU).
(install-local): Install $(GRUB_EMU).
(uninstall): Uninstall $(GRUB_EMU).
* commands/parttool.c: Replace GRUB_UTIL with GRUB_NO_MODULES.
* kern/dl.c: Likewise.
* commands/sleep.c: Not include machine/time.h.
* conf/any-emu.rmk (COMMON_LDFLAGS): New variable.
(COMMON_CFLAGS): Likewise.
(sbin_UTILITIES): Remove grub-emu.
(grub_emu_SOURCES): Removed.
(kernel_img_RELOCATABLE): New variable.
(pkglib_PROGRAMS): Add kernel.img.
(kernel_img_SOURCES): New variable
(kernel_img_CFLAGS): Likewise.
(kernel_img_LDFLAGS): Likewise.
(TARGET_NO_STRIP): Likewise.
(TARGET_NO_DYNAMIC_MODULES): Likewise.
(pkglib_MODULES): Add progname.mod, hostfs.mod, host.mod, reboot.mod,
halt.mod, cpuid.mod, usb.mod, sdl.mod and pci.mod.
(grub-emu): New target.
(GRUB_EMU): New variable.
* configure.ac: Whitelist -emu as possible x86_64 architecture.
* efiemu/main.c: Replace GRUB_UTIL with GRUB_MACHINE_EMU.
* loader/xnu.c: Likewise.
* include/grub/pci.h: Likewise.
* genemuinit.sh: New file.
* genemuinitheader.sh: Likewise.
* genmk.rb: Don't strip if TARGET_NO_STRIP is yes.
Support TARGET_NO_DYNAMIC_MODULES.
* include/grub/dl.h (GRUB_NO_MODULES): New variable.
* commands/search.c: Fix GRUB_MOD_INIT and GRUB_MOD_FINI arguments.
* disk/loopback.c: Likewise.
* font/font_cmd.c: Likewise.
* partmap/acorn.c: Likewise.
* partmap/amiga.c: Likewise.
* partmap/apple.c: Likewise.
* partmap/gpt.c: Likewise.
* partmap/msdos.c: Likewise.
* partmap/sun.c: Likewise.
* parttool/msdospart.c: Likewise.
* term/gfxterm.c: Likewise.
* video/bitmap.c: Likewise.
* video/readers/jpeg.c: Likewise.
* video/readers/png.c: Likewise.
* video/readers/tga.c: Likewise.
* video/video.c: Likewise.
* util/grub-emu.c (read_command_list): Removed.
(main): Don't call util_init_nls.
* util/misc.c (grub_err_printf) [!GRUB_UTIL]: Removed.
(grub_util_init_nls) [!GRUB_UTIL]: Likewise.
2010-03-14 16:29:52 +01:00
Vladimir 'phcoder' Serbinenko
dae79b6b05
Merge mainline into emu-mod
2010-03-14 16:27:54 +01:00
Vladimir 'phcoder' Serbinenko
91fdd2ed34
* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add datetime.mod,
...
date.mod, datehook.mod.
(datetime_mod_SOURCES): New variable.
(datetime_mod_CFLAGS): Likewise.
(datetime_mod_LDFLAGS): Likewise.
(date_mod_SOURCES): Likewise.
(date_mod_CFLAGS): Likewise.
(date_mod_LDFLAGS): Likewise.
(datehook_mod_SOURCES): Likewise.
(datehook_mod_CFLAGS): Likewise.
(datehook_mod_LDFLAGS): Likewise.
* conf/sparc64-ieee1275.rmk: Likewise.
* lib/ieee1275/datetime.c: New file.
2010-03-14 15:51:08 +01:00
Vladimir 'phcoder' Serbinenko
8328a81bc4
Merge mainline info ofwclock
2010-03-14 15:49:56 +01:00
Vladimir 'phcoder' Serbinenko
873ccae6c2
2010-03-14 Vladimir Serbinenko <phcoder@gmail.com>
...
* conf/powerpc-ieee1275.rmk (pkglib_MODULES): Add ieee1275_fb.mod.
(ieee1275_fb_mod_SOURCES): New variable.
(ieee1275_fb_mod_CFLAGS): Likewise.
(ieee1275_fb_mod_LDFLAGS): Likewise.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_devices_iterate):
New proto.
* kern/ieee1275/init.c (HEAP_MAX_SIZE): Increased.
(HEAP_MAX_ADDR): Likewise.
* kern/ieee1275/openfw.c (grub_children_iterate): Don't skip empty
type.
Correct stop condition.
(grub_ieee1275_devices_iterate): New function.
* video/ieee1275.c: New file.
2010-03-14 15:49:07 +01:00
Vladimir 'phcoder' Serbinenko
9a1e70432b
Merge mainline into ofwfb
2010-03-14 15:43:22 +01:00
Vladimir 'phcoder' Serbinenko
eb46c85c07
Merge mainline into ofwclock
2010-03-14 15:41:30 +01:00
Vladimir 'phcoder' Serbinenko
601c97c035
Merge sparc grub-mkimage into generic grub-mkimage and a.out support.
...
* boot/sparc64/ieee1275/boot.S (boot_continue): Use SCRATCH_PAD_BOOT
as scratch.
* boot/sparc64/ieee1275/diskboot.S (after_info_block): Use
SCRATCH_PAD_DISKBOOT as scratch.
(bootit): Pass Openfirmware pointer in %o4.
* conf/sparc64-ieee1275.rmk (kernel_img_LDFLAGS): Link at 0x4400 instead
of 0x200000.
(grub_mkimage_SOURCES): Replace util/sparc64/ieee1275/grub-mkimage.c
with util/grub-mkrawimage.c.
* configure.ac: Handle GRUB_MACHINE_SPARC64 and GRUB_MACHINE_MIPS.
* include/grub/aout.h (AOUT_MID_SUN): New definition.
(grub_aout_get_type) [GRUB_UTIL]: Removed.
(grub_aout_load) [GRUB_UTIL]: Likewise.
* include/grub/kernel.h (grub_modules_get_end): New proto.
* include/grub/sparc64/ieee1275/boot.h (SCRATCH_PAD): Removed.
(SCRATCH_PAD_BOOT): New definition.
(SCRATCH_PAD_DISKBOOT): Likewise.
(GRUB_BOOT_MACHINE_IMAGE_ADDRESS): Set to 0x4400.
* include/grub/sparc64/ieee1275/ieee1275.h
(grub_ieee1275_original_stack): New variable
* include/grub/sparc64/ieee1275/kernel.h (GRUB_KERNEL_MACHINE_RAW_SIZE):
New definition
(GRUB_KERNEL_MACHINE_STACK_SIZE): Likewise.
(GRUB_PLATFORM_IMAGE_FORMATS): Likewise.
(GRUB_PLATFORM_IMAGE_DEFAULT_FORMAT): Likewise.
(GRUB_PLATFORM_IMAGE_DEFAULT): Likewise.
(GRUB_PLATFORM_IMAGE_RAW): Likewise.
(GRUB_PLATFORM_IMAGE_AOUT): Likewise.
(grub_platform_image_format_t): New type.
* kern/mips/yeeloong/init.c (grub_modules_get_end): Move from here ...
* kern/main.c (grub_modules_get_end)
[GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_SPARC64]: ... here.
* kern/sparc64/ieee1275/crt0.S: Store firmware entry point in %o0.
(codestart): Switch stacks.
* kern/sparc64/ieee1275/init.c (grub_ieee1275_original_stack): New
variable.
(grub_heap_init): Use grub_modules_get_end.
* loader/sparc64/ieee1275/linux.c (grub_linux_boot): Restore original
stack.
* util/grub-mkrawimage.c (generate_image): Support sparc64.
(main): Likewise.
* util/sparc64/ieee1275/grub-mkimage.c: Removed.
2010-03-14 15:38:17 +01:00
Vladimir 'phcoder' Serbinenko
313df2f552
Merge mainline into sparc-mkimage
2010-03-14 15:21:04 +01:00
Thorsten Glaser
d68b491ee2
* util/grub-mkrescue.in: Base ISO UUID on UTC.
2010-03-14 13:48:55 +01:00
Matt Kraai
4e02ed5014
2010-03-08 Matt Kraai <kraai@ftbfs.org>
...
* util/i386/pc/grub-setup.c (setup): Fix a grammatical error (Debian
bug #559005 ).
2010-03-08 22:20:02 +00:00
Vladimir 'phcoder' Serbinenko
1f15fc1e0a
2010-03-07 Vladimir Serbinenko <phcoder@gmail.com>
...
* genmoddep.awk: Output all missing symbols and not only first.
2010-03-07 23:02:13 +01:00
Vladimir 'phcoder' Serbinenko
fce5d8ff62
2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* NEWS: Put the date of 1.98 release.
2010-03-06 21:49:59 +01:00
Vladimir 'phcoder' Serbinenko
d1e8a02f11
2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* configure.ac: Update CPPFLAGS and not CFLAGS when checking for
ft2build.h.
2010-03-06 21:27:04 +01:00
Vladimir 'phcoder' Serbinenko
696fd607c6
2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* normal/cmdline.c (grub_cmdline_get): Fix gabled line after
completition in the middle of string.
2010-03-06 17:48:15 +01:00
Vladimir 'phcoder' Serbinenko
33e2e6f373
2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* util/grub-mkrescue.in: Use mktemp with explicit template.
2010-03-06 17:28:25 +01:00
Vladimir 'phcoder' Serbinenko
b1f6d291ad
2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* loader/i386/bsd.c (grub_bsd_get_device): Fix a memory leak.
2010-03-06 17:27:28 +01:00
Vladimir 'phcoder' Serbinenko
2ac227c7f4
2010-03-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Free the
right pointer.
2010-03-06 17:25:40 +01:00
Vladimir 'phcoder' Serbinenko
8f9a632b96
2010-03-05 Vladimir Serbinenko <phcoder@gmail.com>
...
Fix FreeBSD compilation.
* Makefile.in (TARGET_CPPFLAGS): Remove -nostdinc -isystem.
* configure.ac: Add -nostdinc -isystem to TARGET_CPPFLAGS if it works.
2010-03-06 17:22:04 +01:00
Vladimir 'phcoder' Serbinenko
60b03859e8
2010-03-05 Vladimir Serbinenko <phcoder@gmail.com>
...
* util/import_gcry.py: Add autogenerated files to MAINTAINER_CLEANFILES.
2010-03-05 15:38:04 +01:00
Vladimir 'phcoder' Serbinenko
48a5a769a2
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* gettext/gettext.c (grub_gettext_init_ext): Fix a memory leak.
2010-03-05 15:30:44 +01:00
Vladimir 'phcoder' Serbinenko
3ab4bd77dd
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* disk/scsi.c (grub_scsi_iterate): Fix a memory leak.
2010-03-05 15:29:28 +01:00
Robert Millan
d116e0d8d1
2010-03-04 Robert Millan <rmh.grub@aybabtu.com>
...
Support relative image path in theme file.
* gfxmenu/gui_image.c (grub_gui_image): New member theme_dir.
(image_set_property): Handle theme_dir and relative path.
2010-03-04 23:16:34 +01:00
Vladimir 'phcoder' Serbinenko
c7ef54aab1
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* configure.ac: Alias amd64 to x86_64.
2010-03-04 22:33:49 +01:00
Vladimir 'phcoder' Serbinenko
fcee14ed5f
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* NEWS: mention multiboot on EFI.
2010-03-04 21:35:36 +01:00
Vladimir 'phcoder' Serbinenko
d078036308
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/main.c (grub_load_modules): Handle errors from init functions of
embeded modules.
2010-03-04 21:32:11 +01:00
Vladimir 'phcoder' Serbinenko
41168ea49c
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* normal/autofs.c (autoload_fs_module): Handle errors.
2010-03-04 21:30:58 +01:00
Vladimir 'phcoder' Serbinenko
b54d93ac1b
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
Disable linux.mod on qemu-mips since it's not functional and leads
to compilation failure.
* conf/mips.rmk (pkglib_MODULES): Remove linux.mod.
* conf/mips-yeeloong.rmk (pkglib_MODULES): Add linux.mod.
* conf/mips.rmk (linux_mod_SOURCES): Move from here ...
* conf/mips-yeeloong.rmk (linux_mod_SOURCES): ... here
* conf/mips.rmk (linux_mod_CFLAGS): Move from here ...
* conf/mips-yeeloong.rmk (linux_mod_CFLAGS): ... here
* conf/mips.rmk (linux_mod_ASFLAGS): Move from here ...
* conf/mips-yeeloong.rmk (linux_mod_ASFLAGS): ... here
* conf/mips.rmk (linux_mod_LDFLAGS): Move from here ...
* conf/mips-yeeloong.rmk (linux_mod_LDFLAGS): ... here
Reported by: BVK Chaitanya
2010-03-04 17:03:43 +01:00
Jordan Uggla
fc8345da98
2010-03-04 Jordan Uggla <jordan.uggla@gmail.com>
...
* INSTALL: Add gettext as a dependency and add qemu to a new section
"Prerequisites for make-check".
2010-03-04 16:28:57 +01:00
Christian Franke
4760f97911
2010-03-04 Christian Franke <franke@computer.org>
...
* util/grub-pe2elf.c: Add missing include "progname.h".
2010-03-04 16:25:26 +01:00
Vladimir 'phcoder' Serbinenko
f209b5b230
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* normal/crypto.c (read_crypto_list): Fix a typo.
Reported by: Seth Goldberg.
2010-03-04 16:13:35 +01:00
Vladimir 'phcoder' Serbinenko
b4b7be98db
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* Makefile.in (DISTCLEANFILES): Add stamp-h1.
2010-03-04 16:08:46 +01:00
Vladimir 'phcoder' Serbinenko
c0ee0385c9
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* Makefile.in (CLEANFILES) [FONT_SOURCE && grub_mkfont]: Add
ascii.bitmaps.
2010-03-04 15:50:57 +01:00
Vladimir 'phcoder' Serbinenko
a8efbf649e
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* genmk.rb: Remove terminal*.lst in make clean.
2010-03-04 15:41:32 +01:00
Vladimir 'phcoder' Serbinenko
08dcd91370
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* util/i386/efi/grub-install.in: Copy gettext files.
2010-03-04 15:12:34 +01:00
Colin Watson
c6293875f9
reopen device when the requested access mode changes
2010-03-03 20:03:50 +00:00
Colin Watson
22d7b6137a
2010-03-03 Colin Watson <cjwatson@ubuntu.com>
...
* util/hostdisk.c (struct grub_util_biosdisk_data): New structure.
(grub_util_biosdisk_open): Initialise disk->data.
(struct linux_partition_cache): New structure.
(linux_find_partition): Cache partition start positions; these are
expensive to compute on every read and write.
(open_device): Cache open file descriptor in disk->data, so that we
don't have to reopen it and flush the buffer cache for consecutive
operations on the same device.
(grub_util_biosdisk_close): New function.
(grub_util_biosdisk_dev): Set `close' member.
* conf/common.rmk (grub_probe_SOURCES): Add kern/list.c.
* conf/i386-efi.rmk (grub_setup_SOURCES): Likewise.
* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
* conf/x86_64-efi.rmk (grub_setup_SOURCES): Likewise.
2010-03-03 10:44:12 +00:00
Vladimir 'phcoder' Serbinenko
14532662ee
merge mainline into sparc-mkimage
2010-03-03 11:24:36 +01:00
Vladimir 'phcoder' Serbinenko
c4d0b332c5
2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
...
* fs/ext2.c (grub_ext2_read_block): Fix an integer overflow.
2010-03-01 21:00:02 +01:00
Vladimir 'phcoder' Serbinenko
c6f2fe52f1
2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
...
Wait for user entry basing on presence of output rather than on errors.
* include/grub/normal.h (grub_normal_get_line_counter): New proto.
(grub_install_newline_hook): Likewise.
* normal/main.c (GRUB_MOD_INIT): Call grub_install_newline_hook.
* normal/menu.c (show_menu): Check line_counter to determine presence
of output.
* normal/term.c (grub_normal_line_counter): New variable.
(grub_normal_get_line_counter): New function.
(grub_install_newline_hook): Likewise.
2010-03-01 20:58:45 +01:00
Vladimir 'phcoder' Serbinenko
5382b1e4a8
2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
...
* commands/cat.c (grub_cmd_cat): Propagate grub_gzfile_open error.
2010-03-01 20:24:34 +01:00
Vladimir 'phcoder' Serbinenko
5519963bf6
2010-03-01 Vladimir Serbinenko <phcoder@gmail.com>
...
* configure.ac: Update version to 1.98.
2010-03-01 19:07:48 +01:00
Vladimir 'phcoder' Serbinenko
72b286313a
2010-02-26 Vladimir Serbinenko <phcoder@gmail.com>
...
* util/grub.d/10_linux.in (linux_entry): Don't default to
gfxpayload=keep if Linux doesn't support video handover.
2010-02-26 14:32:24 +01:00
Vladimir 'phcoder' Serbinenko
c140a18037
2010-02-25 Vladimir Serbinenko <phcoder@gmail.com>
...
Don't compile video modules on yeeloong since video subsystem is part
of kernel.
* conf/common.rmk (pkglib_MODULES) [yeeloong]: Remove video.mod,
video_fb.mod, bitmap.mod, font.mod, gfxterm.mod and bufio.mod
* conf/mips-yeeloong.rmk (kernel_img_HEADERS): Add bitmap.h,
video.h, gfxterm.h, font.h, bitmap_scale.h and bufio.h.
* conf/mips.rmk (kernel_img_HEADERS): Add values instead of overwriting.
* include/grub/bitmap.h: Add EXPORT_FUNC and EXPORT_VAR.
* include/grub/bitmap_scale.h: Likewise.
* include/grub/bufio.h: Likewise.
* include/grub/font.h: Likewise.
* include/grub/gfxterm.h: Likewise.
* include/grub/video.h: Likewise.
* include/grub/vbe.h: Don't include video_fb.h.
* video/i386/pc/vbe.c: Include video_fb.h.
* commands/i386/pc/vbetest.c: Include video.h.
2010-02-25 15:10:18 +01:00
Colin Watson
a0ca21c2d2
2010-02-25 Jordan Uggla <jordan.uggla@gmail.com>
...
* util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable.
* util/grub-mkconfig_lib.in (save_default_entry): Only save a new
default entry if GRUB_SAVEDEFAULT=true. This allows using
GRUB_DEFAULT=saved on its own to let grub-reboot work, without
saving a new default on every boot.
2010-02-25 13:30:50 +00:00
Vladimir 'phcoder' Serbinenko
4a8a763c7b
2010-02-24 Vladimir Serbinenko <phcoder@gmail.com>
...
* normal/crypto.c (read_crypto_list): Fix a memory leak.
* normal/term.c (read_terminal_list): Likewise.
* normal/main.c (grub_normal_init_page): Likewise.
(grub_normal_read_line_real): Likewise.
2010-02-24 15:24:21 +01:00
Vladimir 'phcoder' Serbinenko
607ffde2ca
2010-02-24 Vladimir Serbinenko <phcoder@gmail.com>
...
* loader/i386/multiboot_mbi.c (grub_multiboot_set_bootdev): Fix a
memory leak.
Reported by: Seth Goldberg.
2010-02-24 15:21:36 +01:00
Vladimir 'phcoder' Serbinenko
f17d332e49
Remove trailing spaces in kern/device.c
2010-02-24 11:29:11 +01:00