Vladimir 'phcoder' Serbinenko
0ae70393ba
Improve and unify messages.
...
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): Add argument
name. All users updated.
Print filename in error.
(read_device_map): Print filename in error.
* util/getroot.c (grub_guess_root_devices): Print filename in error.
(grub_util_get_os_disk): Likewise.
(grub_util_biosdisk_get_grub_dev): Likewise.
(grub_util_check_block_device): Likewise.
(grub_util_check_char_device): Likewise.
(grub_make_system_path_relative_to_its_root): Likewise.
* util/grub-editenv.c (create_envblk_file): Likewise.
(open_envblk_file): Likewise.
(write_envblk): Likewise.
* util/grub-fstest.c (cmd_cp): Likewise.
(cmd_cat): Likewise.
(cmd_cmp): Likewise.
* util/grub-menulst2cfg.c (main): Likewise.
* util/grub-mkfont.c (write_font_ascii_bitmap): Likewise.
(write_font_width_spec): Likewise.
(write_font_pf2): Likewise.
* util/grub-mkimage.c (generate_image): New argument outname.
All users updated.
Remove unreacheable message.
(options): Unify messages.
(help_filter): Likewise.
* util/grub-mklayout.c (usage): Removed (unused).
(main): Print filename in error.
* util/grub-mkrescue.in: Fix wrong quoting.
* util/grub-setup.c (setup): Print filename in error.
* util/ieee1275/ofpath.c (vendor_is_ATA): Likewise.
(check_sas): Likewise.
* util/misc.c (grub_util_get_fp_size): Removed.
(grub_util_get_image_size): Print filename in error.
(grub_util_read_at): Removed.
(grub_util_read_image): Print filename in error.
(grub_util_load_image): Likewise.
(grub_util_write_image_at): New argument filename. All users updated.
Print filename in error.
(grub_util_write_image): New argument filename. All users updated.
Print filename in error.
* util/raid.c (grub_util_raid_getmembers): Print filename in error.
* util/resolve.c (grub_util_resolve_dependencies): Likewise.
2012-02-05 11:07:33 +01:00
Vladimir 'phcoder' Serbinenko
0a96117de7
* grub-core/Makefile.core.def (pxechain): New module.
...
* grub-core/loader/i386/pc/pxechainloader.c: New file.
* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_get_cached): New
function.
(grub_pc_net_config_real): Use grub_pxe_get_cached.
* include/grub/i386/pc/pxe.h (grub_pxe_get_cached): New proto.
2012-02-05 10:33:52 +01:00
Vladimir 'phcoder' Serbinenko
aca002f7e4
* grub-core/kern/err.c (GRUB_MAX_ERRMSG): Move to ...
...
* include/grub/err.h (GRUB_MAX_ERRMSG): ... here.
* include/grub/err.h (grub_error_saved): New struct.
(grub_errmsg): Make array size explicit.
* include/grub/misc.h (grub_error_save): New function.
(grub_error_load): Likewise.
* grub-core/kern/err.c (grub_error_stack_items): Use grub_error_saved.
(grub_error_push): Update `errno' member name.
(grub_error_pop): Likewise
* grub-core/net/tftp.c (tftp_data): New member save_err.
(tftp_receive): Save error.
(tftp_open): Restore error.
2012-02-05 10:24:53 +01:00
Vladimir 'phcoder' Serbinenko
a51dab1328
* grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move switch
...
to real mode down to execute A20-related code in protected mode as
intended.
2012-02-05 10:12:18 +01:00
Grégoire Sutre
eb6e664936
* grub-core/disk/diskfilter.c (grub_diskfilter_make_raid): Return
...
NULL when the argument `level' has an unexpected value.
2012-02-05 01:22:04 +01:00
Vladimir 'phcoder' Serbinenko
92cd0f6e45
Move platform-dependent files from $prefix to $prefix/$platform.
...
* config.h.in (GRUB_TARGET_CPU): New definition.
(GRUB_PLATFORM): Likewise.
* configure.ac: Define GRUB_TARGET_CPU and GRUB_PLATFORM.
* grub-core/commands/parttool.c (grub_cmd_parttool): Update dir.
* grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
* grub-core/kern/dl.c (grub_dl_load): Likewise.
* grub-core/normal/autofs.c (read_fs_list): Likewise.
* grub-core/normal/crypto.c (read_crypto_list): Likewise.
* grub-core/normal/dyncmd.c (read_command_list): Likewise.
* grub-core/normal/term.c (read_terminal_list): Likewise.
* grub-core/gettext/gettext.c (grub_mofile_open_lang): Use
$prefix/locale.
(grub_gettext_init_ext): Likewise.
* grub-core/normal/main.c (GRUB_MOD_INIT): Define grub_cpu and
grub_platform.
* util/grub-install.in: Update directories.
* util/grub-mknetdir.in: Likewise.
* util/grub-mkrescue.in: Likewise.
2012-02-04 21:47:29 +01:00
Vladimir 'phcoder' Serbinenko
db606889a9
* grub-core/kern/ieee1275/openfw.c (grub_claimmap): Change to
...
grub_error framework. All users updated.
2012-02-04 14:00:23 +01:00
Vladimir 'phcoder' Serbinenko
c39992a436
* grub-core/gettext/gettext.c: Mostly rewritten to avoid using
...
lists (by always binsearching), improve caching (cache strings
used for binsearch, not only results), improve
maintainability (by using more structured binary search) and correct
error handling.
2012-02-04 13:35:17 +01:00
Vladimir 'phcoder' Serbinenko
1e5ec32f2d
* grub-core/script/execute.c (grub_script_return): Fix warning.
2012-02-04 12:21:21 +01:00
Vladimir 'phcoder' Serbinenko
ac576cde1d
* grub-core/script/execute.c (grub_script_return): Fix potential
...
NULL-dereference.
Reported by: Jim Meyering.
2012-02-04 11:52:10 +01:00
Vladimir 'phcoder' Serbinenko
c84ba308b5
* grub-core/kern/mm.c: Add missing include of i18n.h
...
* grub-core/lib/relocator.c: Likewise.
2012-02-03 14:20:31 +01:00
Vladimir 'phcoder' Serbinenko
347998c27f
* grub-core/loader/ia64/efi/linux.c (find_mmap_size): Replace fatal with
...
error.
(allocate_pages): Check return value.
Replace fatal with error.
(grub_linux_boot): Replace printf with dprintf.
Check find_mmap_size return value.
Replace fatal with error.
Don't call grub_machine_fini.
(grub_load_elf64): Replace printf with dprintf.
(grub_cmd_linux): Likewise.
(grub_cmd_initrd): Likewise.
(grub_cmd_payload): Likewise.
2012-02-03 13:53:12 +01:00
Vladimir 'phcoder' Serbinenko
c779226e6c
* grub-core/loader/i386/xnu.c (grub_cmd_devprop_load): Fix error
...
message.
* grub-core/video/radeon_fuloong2e.c
(grub_video_radeon_fuloong2e_setup): Likewise.
* grub-core/video/sis315pro.c (grub_video_sis315pro_setup): Likewise.
* grub-core/video/video.c (grub_video_set_mode): Don't override
standard out of memory message.
2012-02-03 12:47:07 +01:00
Grégoire Sutre
dc87d45a7a
NetBSD disk wedge support.
2012-02-03 12:32:21 +01:00
Vladimir 'phcoder' Serbinenko
4a9f8346c9
* grub-core/commands/ls.c: Gettextize.
...
* grub-core/commands/setpci.c: Likewise.
* grub-core/commands/videotest.c: Likewise.
* grub-core/disk/geli.c: Likewise.
* grub-core/kern/mm.c: Likewise.
* grub-core/lib/relocator.c: Likewise.
* grub-core/loader/efi/appleloader.c: Likewise.
* grub-core/loader/i386/xnu.c: Likewise.
* grub-core/loader/ia64/efi/linux.c: Likewise.
* grub-core/loader/xnu.c: Likewise.
* grub-core/net/dns.c: Likewise.
* grub-core/net/net.c: Likewise.
* grub-core/script/lexer.c: Likewise.
* grub-core/script/parser.y: Likewise.
* grub-core/script/yylex.l: Likewise.
* util/getroot.c: Likewise.
* util/grub-setup.c: Likewise.
2012-02-03 11:56:49 +01:00
Vladimir 'phcoder' Serbinenko
a646a366bb
* grub-core/fs/reiserfs.c (grub_reiserfs_get_item): Use proper error
...
number.
2012-02-03 11:50:18 +01:00
Vladimir 'phcoder' Serbinenko
54e2be2630
* grub-core/disk/ldm.c (grub_util_ldm_embed): Correct error message.
2012-02-03 11:48:42 +01:00
Vladimir 'phcoder' Serbinenko
f7c71e68b5
* grub-core/commands/search_file.c (SEARCH_TARGET): Remove obsolete
...
macro.
* grub-core/commands/search_label.c (SEARCH_TARGET): Likewise.
* grub-core/commands/search_uuid.c (SEARCH_TARGET): Likewise.
2012-02-03 11:46:18 +01:00
Vladimir 'phcoder' Serbinenko
2f53a9ed1f
* grub-core/fs/zfs/zfscrypt.c: Add link to documentation.
2012-02-01 18:30:51 +01:00
Vladimir 'phcoder' Serbinenko
17e1d934c7
* grub-core/commands/videotest.c (grub_cmd_videotest): Fix subset
...
symbol.
Reported by: NODA, Kai <nodakai>.
2012-02-01 17:47:47 +01:00
Vladimir 'phcoder' Serbinenko
d3e3fab52a
Fix ehci on amd64.
...
* grub-core/bus/usb/usbhub.c (grub_usb_hub_add_dev): Use %p to print
pointers.
* grub-core/bus/usb/ehci.c (grub_ehci_pci_iter): Likewise.
(grub_ehci_setup_qh): Likewise.
(grub_ehci_find_qh): Likewise.
(grub_ehci_transaction): Likewise.
(grub_ehci_setup_transfer): Likewise.
(grub_ehci_check_transfer): Likewise.
(grub_ehci_portstatus): Likewise.
(grub_ehci_detect_dev): Likewise.
(grub_ehci_transfer_controller_data): New field td_last_phys.
(grub_ehci_setup_transfer): Fill td_last_phys.
(grub_ehci_check_transfer): Use td_last_phys.
2012-02-01 16:13:17 +01:00
Seth Goldberg
3008675bea
* grub-core/normal/context.c (grub_env_extractor_close): Don't crash
...
if no submenu is present.
2012-02-01 15:35:30 +01:00
Vladimir 'phcoder' Serbinenko
d68538e928
merge mainline into cbi
2012-02-01 14:30:40 +01:00
Vladimir 'phcoder' Serbinenko
08491b6a5a
Fix type errors. Don't stop after first EHCI controller is found.
2012-02-01 14:08:58 +01:00
Vladimir 'phcoder' Serbinenko
cefa01261b
merge mainline into ehci
2012-02-01 13:19:42 +01:00
Vladimir 'phcoder' Serbinenko
b1d51f028b
* grub-core/fs/fat.c (grub_fat_mount) [!MODE_EXFAT]: Remove fstype
...
check as some mkfs implementations omit it.
2012-01-31 23:26:07 +01:00
Vladimir 'phcoder' Serbinenko
6c0920e31b
* grub-core/fs/jfs.c (grub_jfs_sblock): Make volname a char array.
...
Add new member volname2.
(grub_jfs_label): Use volname2 if available.
2012-01-31 22:49:11 +01:00
Vladimir 'phcoder' Serbinenko
d1a46f9abd
* grub-core/fs/nilfs2.c (grub_nilfs2_super_block): Expand volume_name
...
over last_mounted as seen in image generated by mkfs.nilfs2.
(grub_nilfs2_label): Use sizeof for the size of s_volume_name.
2012-01-31 22:43:29 +01:00
Vladimir 'phcoder' Serbinenko
dec8ed14b9
* grub-core/fs/fat.c (grub_fat_dir_entry) [MODE_EXFAT]: Expand label
...
to 15 UTF-16 characters as seen in FS generated by mkexfatfs.
(grub_fat_label) [MODE_EXFAT]: Use macros for size.
2012-01-31 22:38:08 +01:00
Vladimir 'phcoder' Serbinenko
7397c69bb8
* grub-core/fs/romfs.c (grub_romfs_mount): Fix a bug with labels going
...
over the sector.
2012-01-31 22:25:07 +01:00
Vladimir 'phcoder' Serbinenko
b3fe42adb7
* grub-core/fs/zfs/zfs.c (get_filesystem_dnode): Support space in
...
subvolume name (by removing a bogus and useless check).
2012-01-31 22:20:37 +01:00
Vladimir 'phcoder' Serbinenko
10476bb0db
* grub-core/fs/ext2.c (grub_ext2_label): Fix field size. Change to
...
sizeof while on it.
2012-01-31 22:12:57 +01:00
Vladimir 'phcoder' Serbinenko
9c08ad8707
* grub-core/disk/scsi.c (grub_scsi_read_capacity): Renamed to ...
...
(grub_scsi_read_capacity10): ... this.
(grub_scsi_read_capacity16): New function.
(grub_scsi_open): Use read_capacity16 if read_capacity10 returned
0xffffffff.
Fix off-by-one error.
* include/grub/scsi.h (grub_scsi): Rename size to last_block and make it
64-bit unsigned.
* include/grub/scsicmd.h (grub_scsi_read_capacity): Rename to ...
(grub_scsi_read_capacity10): ... this.
(grub_scsi_read_capacity_data): Rename to ...
(grub_scsi_read_capacity10_data): ... this. Rename size to last_block.
(grub_scsi_read_capacity16): New struct.
(grub_scsi_read_capacity16_data): Likewise.
(grub_scsi_cmd_t): Rename grub_scsi_cmd_read_capacity to
grub_scsi_cmd_read_capacity10.
New command grub_scsi_cmd_read_capacity16.
2012-01-30 18:33:11 +01:00
Vladimir 'phcoder' Serbinenko
bc8d0f45a5
SCSI >2TiB support.
...
* grub-core/disk/scsi.c (grub_scsi_read16): New function.
(grub_scsi_write16): Likewise.
(grub_scsi_read): Use read16 when necessary.
(grub_scsi_write): Likewise.
* include/grub/scsicmd.h (grub_scsi_read16): New struct.
(grub_scsi_write16): Likewise.
(grub_scsi_cmd_t): Add READ16 and WRITE16.
2012-01-30 12:47:26 +01:00
Vladimir 'phcoder' Serbinenko
cc774926f1
SCSI write support (for usbms mainly).
...
* grub-core/disk/scsi.c (grub_scsi_write10): Uncomment. Make buffer
a const pointer.
(grub_scsi_write): Implement.
* include/grub/scsi.h (grub_scsi_dev): Make write buffer a const pointer
2012-01-30 12:26:11 +01:00
Vladimir 'phcoder' Serbinenko
67639fd75e
* grub-core/io/lzopio.c (uncompress_block): Fix use of incorrect
...
variable.
2012-01-30 01:18:02 +01:00
Vladimir 'phcoder' Serbinenko
9079d3ed4e
* grub-core/lib/posix_wrap/string.h (memchr): New function.
2012-01-29 23:58:42 +01:00
Vladimir 'phcoder' Serbinenko
ecbf8cd1b7
* grub-core/lib/posix_wrap/assert.h (assert_real): Replace grub_fatal
...
with grub_printf to avoid unnecessary fatal failure.
2012-01-29 23:48:35 +01:00
Vladimir 'phcoder' Serbinenko
0b3b3b38bd
* grub-core/lib/posix_wrap/limits.h (SHRT_MAX): New define.
...
(INT_MAX): Likewise.
* grub-core/lib/posix_wrap/stdio.h (snprintf): New function.
* grub-core/lib/posix_wrap/stdlib.h (abs): Likewise.
* grub-core/lib/posix_wrap/string.h (memcmp): Likewise.
(strcpy): Likewise.
(strstr): Likewise.
(strchr): Likewise.
(strncpy): Likewise.
(strcat): Likewise.
(strncat): Likewise.
(strcoll): Likewise.
* include/grub/types.h (GRUB_SHRT_MAX): New define.
(GRUB_INT_MAX): Likewise.
2012-01-29 23:27:31 +01:00
Vladimir 'phcoder' Serbinenko
db7337a3d3
* grub-core/gnulib/regcomp.c (regerror): Don't use abort on
...
unexpected error.
(optimize_utf8): Likewise.
* grub-core/lib/posix_wrap/stdlib.h (abort): Removed.
2012-01-29 23:22:57 +01:00
Vladimir 'phcoder' Serbinenko
f37c87e1ba
* grub-core/boot/i386/pc/lnxboot.S: Use
...
GRUB_DECOMPRESSOR_MAX_DECOMPRESSOR_SIZE.
* grub-core/boot/i386/pc/startup_raw.S: Ensure about boot_dev
location.
* include/grub/offsets.h (GRUB_DECOMPRESSOR_I386_PC_BOOT_DEVICE): New
definition.
(GRUB_DECOMPRESSOR_I386_PC_MAX_DECOMPRESSOR_SIZE): Likewise.
2012-01-29 23:20:02 +01:00
Vladimir 'phcoder' Serbinenko
63fe43f3c3
* util/getroot.c (grub_util_get_dm_node_linear_info): Fix memory leak.
...
* grub-core/disk/cryptodisk.c (cryptodisk_cleanup): Disable for
now to avoid double free.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_dev): Rename to
hostdisk.
* include/grub/disk.h (grub_disk_dev_id): New id HOSTDISK.
* util/grub-probe.c (escape_of_path): Always return a new copy.
(print_full_name): Escape path.
(probe): Don't call grub_util_devname_to_ofpath on NULL.
Fix hints on abstractions.
2012-01-29 21:49:44 +01:00
Vladimir 'phcoder' Serbinenko
2b5336a24a
* include/grub/ata.h (grub_ata): Add a new element maxbuffer.
...
* grub-core/disk/ata.c (grub_ata_readwrite): Limit to ata->maxbuffer.
* grub-core/disk/pata.c (grub_pata_open): Set ata->maxbuffer.
* grub-core/disk/ahci.c (grub_ahci_open): Likewise.
2012-01-29 19:00:30 +01:00
Vladimir 'phcoder' Serbinenko
f990cbf90e
* grub-core/normal/completion.c (iterate_dev): Close the disk.
2012-01-29 18:20:02 +01:00
Vladimir 'phcoder' Serbinenko
9c6e84b838
Cryptodisk write support.
...
* grub-core/disk/cryptodisk.c (grub_crypto_pcbc_encrypt): New function.
(grub_cryptodisk_decrypt): Moved logic to ...
(grub_cryptodisk_endecrypt): ...this. New argument "encrypt".
(grub_cryptodisk_write): Implement.
* grub-core/kern/emu/hostdisk.c (nwrite): Rename to ...
(grub_util_fd_write): ... this. Make global.
* include/grub/emu/hostdisk.h (grub_util_fd_write): New proto.
2012-01-29 18:16:48 +01:00
Vladimir 'phcoder' Serbinenko
ca8c0baf25
Rename ofconsole to console.
...
* grub-core/commands/terminal.c (handle_command): Handle ofconsole
as sysnonym to console.
* grub-core/term/ieee1275/ofconsole.c: Renamed to ..
* grub-core/term/ieee1275/console.c: ... this. All users updated.
Rename grub_ofconsole_ to grub_console_. All users updated
(grub_console_term_output): Rename "ofconsole" to "console".
* grub-core/term/terminfo.c (grub_cmd_terminfo): Handle "ofconsole"
as "console".
2012-01-29 17:01:27 +01:00
Vladimir 'phcoder' Serbinenko
64c8b8f64c
* grub-core/loader/i386/pc/plan9.c (grub_cmd_plan9): Remove PXE
...
handling.
* include/grub/disk.h (grub_disk_dev_id): Remove obsolete
GRUB_DISK_DEVICE_UUID_ID, GRUB_DISK_DEVICE_PXE_ID and
GRUB_DISK_DEVICE_FILE_ID.
2012-01-29 16:34:39 +01:00
Vladimir 'phcoder' Serbinenko
f6c434d581
* grub-core/kern/partition.c (grub_partition_get_name): Simplify logic
...
and improve performance.
2012-01-29 16:24:07 +01:00
Vladimir 'phcoder' Serbinenko
5858b42d07
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Fix
...
missing ieee1275/ prefix on whole disk.
2012-01-29 16:22:23 +01:00
Vladimir 'phcoder' Serbinenko
df71143ea1
* grub-core/fs/cpio.c (handle_symlink): Fix a bug.
2012-01-29 15:36:06 +01:00
Vladimir 'phcoder' Serbinenko
076e7c0fda
Merge common RAID and LVM logic to an abstract diskfilter.
...
Add LDM support using the same framework.
* Makefile.util.def (libgrubkern): Add grub-core/disk/ldm.c,
grub-core/disk/diskfilter.c and grub-core/partmap/gpt.c.
(libgrubmods): Remove grub-core/disk/raid.c and
grub-core/partmap/gpt.c.
* grub-core/Makefile.core.def (ldm): New module.
(raid): Renamed to diskfilter. All users updated.
* grub-core/disk/raid.c: Moved to ...
* grub-core/disk/diskfilter.c: ... here.
* grub-core/disk/diskfilter.c: Rename grub_raid_ to grub_diskfilter_.
(lv_num): New var.
(find_array): Renamed to ...
(find_lv): ... this. Support multi-LV. Skip nameless LVs
(grub_is_array_readable): Renamed to ...
(grub_is_lv_readable): ... this. Support multinode hierarchy.
(insert_array): New argument id.
(is_node_readable): New function.
(scan_device): Rename to ...
(scan_disk): .. this. Restrict to one disk.
(scan_devices): New function.
(grub_diskfilter_iterate): Support multi-LV.
Skip invisible and nameless LVs.
(grub_diskfilter_memberlist): Support multi-LV.
(grub_diskfilter_read_node): New function.
(grub_raid_read): Most of logic moved to ...
(read_segment): ... here
(read_lv): New function.
(grub_diskfilter_get_vg_by_uuid): New function.
(grub_diskfilter_make_raid): Likewise.
* grub-core/disk/ldm.c: New file.
* grub-core/disk/lvm.c (vg_list): Removed.
(lv_count): Likewise.
(scan_depth): Likewise.
(is_lv_readable): Likewise.
(grub_lvm_getvalue): Advance pointer past the number.
(find_lv): Removed.
(do_lvm_scan): Refactored into ...
(grub_lvm_detect): ... this. Support raid.
(grub_lvm_iterate): Removed.
(grub_lvm_memberlist): Likewise.
(grub_lvm_open): Likewise.
(grub_lvm_close): Likewise.
(read_lv): Likewise.
(read_node): Likewise.
(is_node_readable): Likewise.
(is_lv_readable): Likewise.
(grub_lvm_read): Likewise.
(grub_lvm_write): Likewise.
(grub_lvm_dev): Use diskfilter
(GRUB_MOD_INIT): Likewise.
(GRUB_MOD_FINI): Likewise.
* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Use
new interface.
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Likewise.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
* grub-core/disk/raid5_recover.c (grub_raid5_recover): Use
grub_diskfilter_read_node.
Fix a bug with xor.
* grub-core/disk/raid6_recover.c (grub_raid6_recover): Use
grub_diskfilter_read_node.
Support GRUB_RAID_LAYOUT_MUL_FROM_POS.
* grub-core/kern/disk.c (grub_disk_dev_list): Make global.
(grub_disk_dev_iterate): Move from here...
* include/grub/disk.h (grub_disk_dev_iterate): ... to here. Inlined.
* grub-core/kern/emu/hostdisk.c (grub_hostdisk_find_partition_start):
Make global.
(grub_hostdisk_find_partition_start): Likewise.
(grub_hostdisk_os_dev_to_grub_drive): New function.
(grub_util_biosdisk_get_osdev): Check that disk is biosdisk.
* grub-core/kern/emu/hostdisk.c (make_device_name): Move to ...
* util/getroot.c (make_device_name): ... here.
* grub-core/kern/emu/hostdisk.c (grub_util_get_dm_node_linear_info):
Move to ...
* util/getroot.c (grub_util_get_dm_node_linear_info): ...here.
* grub-core/kern/emu/hostdisk.c
(convert_system_partition_to_system_disk): Move to ...
* util/getroot.c (convert_system_partition_to_system_disk): ...here.
* grub-core/kern/emu/hostdisk.c (device_is_wholedisk): Move to ...
* util/getroot.c (device_is_wholedisk): ... here.
* grub-core/kern/emu/hostdisk.c (find_system_device): Move to ...
* util/getroot.c (find_system_device): ... here.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_present):
Move to ...
* util/getroot.c (grub_util_biosdisk_is_present): ...here.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
Move to ...
* util/getroot.c (grub_util_biosdisk_get_grub_dev): ... here.
Handle LDM.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy):
Move to ...
* util/getroot.c (grub_util_biosdisk_is_floppy): ... here.
* grub-core/partmap/gpt.c (grub_gpt_partition_map_iterate): Made global.
* include/grub/disk.h (grub_disk_dev_id): Replaced RAID and LVM with
DISKFILTER.
* include/grub/raid.h: Renamed to ...
* include/grub/diskfilter.h: ... this.
* include/grub/diskfilter.h: Rename grub_raid_* to grub_diskfilter_*
(GRUB_RAID_LAYOUT_*): Make into array.
(GRUB_RAID_LAYOUT_MUL_FROM_POS): New value.
(grub_diskfilter_vg): New struct.
(grub_diskfilter_pv_id): Likewise.
(grub_raid_member): Removed.
(grub_raid_array): Likewise.
(grub_diskfilter_pv): New struct.
(grub_diskfilter_lv): Likewise.
(grub_diskfilter_segment): Likewise.
(grub_diskfilter_node): Likewise.
(grub_diskfilter_get_vg_by_uuid): New proto.
(grub_raid_register): Inline.
(grub_diskfilter_unregister): Likewise.
(grub_diskfilter_make_raid): New proto.
(grub_diskfilter_vg_register): Likewise.
(grub_diskfilter_read_node): Likewise.
(grub_diskfilter_get_pv_from_disk) [GRUB_UTIL]: Likewise.
* include/grub/emu/hostdisk.h (grub_util_get_ldm): New proto.
(grub_util_is_ldm): Likewise.
(grub_util_ldm_embed) [GRUB_UTIL]: Likewise.
(grub_hostdisk_find_partition_start): Likewise.
(grub_hostdisk_os_dev_to_grub_drive): Likewise.
* include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_LDM):
New definition.
(grub_gpt_partition_map_iterate): New proto.
* include/grub/lvm.h (grub_lvm_vg): Removed.
(grub_lvm_pv): Likewise.
(grub_lvm_lv): Likewise.
(grub_lvm_segment): Likewise.
(grub_lvm_node): Likewise.
* util/getroot.c [...]
* util/grub-probe.c (probe_raid_level): Handle diskfilter.
(probe_abstraction): Likewise.
* util/grub-setup.c (setup): Remove must_embed. Support LDM.
(main): Remove dead logic.
2012-01-29 14:28:01 +01:00
Vladimir 'phcoder' Serbinenko
8a7f9b9c50
Simplify root device discover and don't fail when trying to open
...
incorrect devices.
* grub-core/disk/efi/efidisk.c (get_diskname_from_path_real): New
function.
(get_diskname_from_path): Likewise.
(grub_efidisk_get_device_name): Use get_diskname_from_path instead
of iterating.
2012-01-28 13:26:20 +01:00
Vladimir 'phcoder' Serbinenko
30545b8567
* grub-core/Makefile.core.def (setpci): Enable on all PCI platforms.
2012-01-27 13:52:48 +01:00
Vladimir 'phcoder' Serbinenko
28ea58cf69
* grub-core/fs/zfs/zfs.c (nvlist_find_value): Check that we don't go
...
pastthe end.
2012-01-27 13:50:21 +01:00
Vladimir 'phcoder' Serbinenko
f6e4ea709f
* grub-core/fs/squash4.c (xz_decompress): Fix return value.
...
(direct_read): Use correct compressed size.
(grub_squash_read_data): Likewise.
2012-01-27 13:09:57 +01:00
Vladimir 'phcoder' Serbinenko
7626111087
IEEE1275 disk write support.
...
* grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_write): Make buffer
const void *.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_write): Likewise.
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_read): Move open
and seek loginc to ...
(grub_ofdisk_prepare): ... here.
(grub_ofdisk_write): Implement.
2012-01-25 18:32:08 +01:00
Vladimir 'phcoder' Serbinenko
fc36d6038b
ARC disk write support.
...
* grub-core/disk/arc/arcdisk.c (handle_writable): New var.
(reopen): New argument writable. All users updated.
Handle required access mode.
(grub_arcdisk_write): Implement.
* include/grub/arc/arc.h (grub_arc_file_access): New enum.
(grub_arc_firmware_vector): Make buffer to write a const buffer.
2012-01-25 16:13:34 +01:00
Vladimir 'phcoder' Serbinenko
e06c2e7abc
* grub-core/fs/btrfs.c (grub_btrfs_device): New field size.
...
(read_sblock): Don't attempt to read superblocks outside the disk size.
2012-01-25 15:10:56 +01:00
Vladimir 'phcoder' Serbinenko
ff4479581d
* grub-core/fs/nilfs2.c (grub_nilfs2_load_sb): Use device size from
...
first superblock to find the second one when possible.
2012-01-25 15:09:00 +01:00
Vladimir 'phcoder' Serbinenko
bb26e4ff16
Use static allocation rather than scratch pointer in reed_solomon.
...
It decreases its size significantly and avoids a variable in .text.
* grub-core/lib/reed_solomon.c (scratch): Removed.
(chosenstat): New const or static array.
(sigma): Likewise.
(errpot): Likewise.
(errpos): Likewise.
(sy): Likewise.
(mstat): Likewise.
(errvals): Likewise.
(eqstat): Likewise.
(pol_evaluate): Replace x with log_x argument. All users updated.
(syndroms): Removed.
(gauss_solve): Use statically allocated arrays.
(rs_recover): Likewise.
Calculate syndroms directly.
(decode_block): Use statically allocated arrays.
(grub_reed_solomon_add_redundancy) [TEST]: Fix -DTEST compilation.
(main) [TEST]: Allow -DTEST -DSTANDALONE.
2012-01-24 14:49:31 +01:00
Vladimir 'phcoder' Serbinenko
2e13ede59e
Eliminate fixed limit on reed solomon decoder length.
...
* grub-core/boot/i386/pc/lnxboot.S: Scan for multiboot signature
rather than hardcoding the address.
* grub-core/boot/i386/pc/startup_raw.S: Add new data field
no_reed_solomon_length.
Move gate_a20 to no-reed-solomon part.
Don't force a particular size of no reed-solomon part.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART):
Removed.
(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_LENGTH): New define.
* util/grub-setup.c (setup): Read no_rs_length from the image itself.
2012-01-24 14:39:29 +01:00
Vladimir 'phcoder' Serbinenko
f8a9ab1245
* grub-core/commands/wildcard.c (match_files): Handle filenames
...
without explicit device.
(wildcard_expand): Don't add explicit device if not already present.
* tests/grub_script_echo1.in: Add a new expansion test.
2012-01-24 13:34:36 +01:00
Vladimir 'phcoder' Serbinenko
87edb8940a
Replace single-linked with double-linked lists. It results in more
...
compact and more efficient code.
* grub-core/kern/list.c (grub_list_push): Moved from here ...
* include/grub/list.h (grub_list_push): ... to here. Set prev.
(grub_list_remove): Moved from here ...
* include/grub/list.h (grub_list_remove): ... here. Use and set prev.
(grub_prio_list_insert): Set prev.
* include/grub/list.h (grub_list): Add prev. All users updated.
2012-01-24 13:31:12 +01:00
Seth Goldberg
e555f379be
* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Relax checks as
...
a workaround for intel problem.
2012-01-24 03:01:46 +01:00
Vladimir 'phcoder' Serbinenko
7816a17ed1
* grub-core/normal/crypto.c (grub_crypto_autoload): Prevent
...
infinite recursion using counter.
* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_init): Defer s->crc32
init to skip it if the magic check fails.
(dec_stream_header): Init s->crc32.
2012-01-23 03:39:37 +01:00
Mario Limonciello
d779e9bdac
* configure.ac: Add back in test for limits.h.
2012-01-22 16:43:14 +01:00
Vladimir 'phcoder' Serbinenko
b508af6989
Support 4K-sector NTFS.
...
* include/grub/ntfs.h (GRUB_NTFS_MAX_MFT): Increase to 8.
(grub_ntfs_data): Remove blocksize.
* grub-core/fs/ntfs.c (fixup): Fix size comparison.
Remove data argument. All users updated.
2012-01-20 15:01:35 +01:00
Vladimir 'phcoder' Serbinenko
dad9c8b59e
* grub-core/kern/mips/arc/init.c (grub_total_modules_size): Mark as
...
being in .text to avoid dprel references.
* include/grub/mips/loongson/kernel.h (grub_arch_machine): Likewise.
* include/grub/mips/loongson/memory.h (grub_arch_memsize): Likewise.
(grub_arch_highmemsize): Likewise.
* include/grub/mips/loongson/time.h (grub_arch_busclock): Likewise.
* include/grub/mips/qemu_mips/memory.h (grub_arch_memsize): Likewise.
* include/grub/mips/time.h (grub_arch_cpuclock): Likewise.
2012-01-20 14:48:26 +01:00
Vladimir 'phcoder' Serbinenko
d43a777e45
Support powerpc with GCC that defines __PPC__ but not __powerpc__.
...
* config.h.in (__powerpc__) [__PPC__ && !__powerpc__]: New definition.
* grub-core/lib/setjmp.S: Treat __PPC__ as equivalent to __powerpc__.
2012-01-18 14:04:52 +01:00
Vladimir 'phcoder' Serbinenko
3ec0fc1c3b
Make XZ compression parameters dependent on target and not host CPU.
...
* configure.ac: Define GRUB_TARGET_CPU_XYZ series.
* grub-core/lib/xzembed/xz_config.h: Use GRUB_TARGET_CPU_XYZ.
2012-01-18 13:59:03 +01:00
Vladimir 'phcoder' Serbinenko
22489834b3
* grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): Remove
...
set but not used variable.
2012-01-18 13:54:59 +01:00
Vladimir 'phcoder' Serbinenko
8502fbca04
* grub-core/fs/reiserfs.c (grub_reiserfs_uuid): Reject 0-uuid as
...
created when no uuid support is compiled into mkfs.reiser.
2012-01-14 23:36:21 +01:00
Vladimir 'phcoder' Serbinenko
76df2068c4
* grub-core/fs/hfs.c (macroman_to_utf8): Convert / to :.
...
(utf8_to_macroman): Do the opposite.
* grub-core/fs/hfsplus.c (grub_hfsplus_iterate_dir): Convert / to :.
2012-01-14 23:34:33 +01:00
Vladimir 'phcoder' Serbinenko
9c2710789f
Eliminate grub_min/grub_max prone to overflow usage.
...
* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Eliminate grub_min.
(poll_nonroot_hub): Likewise.
* grub-core/fs/affs.c (grub_affs_iterate_dir): Likewise.
(grub_affs_label): Likewise.
* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Likewise.
* grub-core/fs/hfs.c (grub_hfs_dir): Likewise.
(grub_hfs_label): Likewise.
* grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey): Likewise.
* grub-core/fs/zfs/zfs.c (MIN): Remove.
(zap_leaf_array_equal): Use grub_size. Remove MIN.
(zap_leaf_array_get): Likewise.
(dnode_get_path): Likewise.
* grub-core/io/lzopio.c (grub_lzopio_read): Eliminate grub_min.
* grub-core/io/xzio.c (grub_xzio_read): Likewise.
* grub-core/script/execute.c (grub_script_break): Likewise.
* grub-core/script/lexer.c (grub_script_lexer_record): Eliminate
grub_max.
* grub-core/script/yylex.l (grub_lexer_yyrealloc): Likewise.
* include/grub/misc.h (grub_min): Removed.
(grub_max): Likewise.
2012-01-14 15:44:34 +01:00
Vladimir 'phcoder' Serbinenko
80662dbc5d
* grub-core/fs/ext2.c (grub_ext2_iterate_dir): Ignore entries with
...
direct.inode = 0.
2012-01-14 11:55:20 +01:00
Vladimir 'phcoder' Serbinenko
e6da146746
* grub-core/lib/posix_wrap/wctype.h (CHARCLASS_NAME_MAX): New define.
2012-01-14 11:53:29 +01:00
Vladimir 'phcoder' Serbinenko
b4bf7c3b20
* grub-core/lib/posix_wrap/stdlib.h (MB_CUR_MAX): Moved from here ...
...
* grub-core/lib/posix_wrap/wchar.h (MB_CUR_MAX): ... here. Value fixed.
2012-01-14 11:48:56 +01:00
Vladimir 'phcoder' Serbinenko
8ee1101a97
* grub-core/fs/fshelp.c (grub_fshelp_find_file): Use grub_strcasecmp
...
rather than a hack for grub_strncasemap.
2012-01-14 11:46:13 +01:00
Vladimir 'phcoder' Serbinenko
280d9d3e3e
* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Skip
...
disks with unknown size.
* grub-core/disk/raid.c (scan_devices): Allow disks with unknown sizes.
2012-01-14 11:42:52 +01:00
Vladimir 'phcoder' Serbinenko
4d1e2bc9e3
* grub-core/disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Skip
...
disks with unknown size.
* grub-core/disk/raid.c (scan_devices): Allow disks with unknown sizes.
2012-01-14 11:37:34 +01:00
Vladimir 'phcoder' Serbinenko
75b49ebed9
Remove defines pertaining to arbitrary limits not affecting GRUB
...
anymore.
* grub-core/fs/ext2.c (EXT2_PATH_MAX): Removed.
(EXT2_MAX_SYMLINKCNT): Likewise.
* grub-core/fs/nilfs2.c (NILFS_BTREE_LEVEL_MAX): Likewise.
* grub-core/net/tftp.c (TFTP_MAX_PACKET): Likewise.
* include/grub/i386/pc/pxe.h (GRUB_PXE_MIN_BLKSIZE): Likewise.
(GRUB_PXE_MAX_BLKSIZE): Likewise.
* include/grub/normal.h (GRUB_MAX_CMDLINE): Likewise.
* include/grub/zfs/dnode.h (DN_MAX_INDBLKSHIFT): Likewise.
(DN_MAX_OBJECT_SHIFT): Likewise.
(DN_MAX_OFFSET_SHIFT): Likewise.
(DN_MAX_OBJECT): Likewise.
(DNODES_PER_LEVEL_SHIFT): Likewise.
* include/grub/zfs/spa.h (SPA_MAXBLOCKSHIFT): Likewise.
(SPA_MAXBLOCKSIZE): Likewise.
(SPA_BLOCKSIZES): Likewise.
* include/grub/zfs/zap_impl.h (MZAP_MAX_BLKSHIFT): Likewise.
(MZAP_MAX_BLKSZ): Likewise.
2012-01-14 11:30:43 +01:00
Vladimir 'phcoder' Serbinenko
74a1dce71d
* grub-core/fs/zfs/zfs.c (grub_zfs_read): Remove useless alloc and
...
handle NULL appropriately.
Remove MIN.
2012-01-14 11:23:51 +01:00
Vladimir 'phcoder' Serbinenko
30c7d3ce34
Fix efiemu.
...
* grub-core/efiemu/runtime/efiemu.c: explicitly include right
cpu/types.h.
(efiemu_set_virtual_address_map): Remove UINT_TO_PTR.
* configure.ac: Fix efiemu check.
2012-01-13 15:12:28 +01:00
Vladimir 'phcoder' Serbinenko
3c76ea0c2c
* util/grub.d/30_os-prober.in: Fix occurence of grub-probe instead of
...
grub_probe.
Reported by: adamwill
2012-01-13 13:54:24 +01:00
Seth Goldberg
7e532280bd
* grub-core/lib/arg.c (grub_arg_parse): Fix NULL pointer dereference.
2012-01-12 22:20:29 +01:00
Vladimir 'phcoder' Serbinenko
3049237440
Fix handling of wide characters in gfxterm.
...
* grub-core/term/gfxterm.c (grub_colored_char): Remove width and index.
(clear_char): Likewise.
(paint_char): Skip code == NULL chars.
(grub_gfxterm_putchar): Set code = NULL on "shadowed" positions.
2012-01-12 22:16:07 +01:00
Vladimir 'phcoder' Serbinenko
e70cb72f73
* grub-core/normal/charset.c: Move comment to right place.
2012-01-12 22:13:20 +01:00
Vladimir 'phcoder' Serbinenko
5c827cf971
* grub-core/fs/affs.c (grub_affs_bblock): Revert flags.
...
(GRUB_AFFS_FLAG_FFS): Put back where it was.
(grub_affs_mount): Revert the correct version checking.
2012-01-11 12:53:38 +01:00
Vladimir 'phcoder' Serbinenko
ff094b9b57
* grub-core/fs/squash4.c (squash_mount): Mark endian conversion in
...
case statements as compile-time one.
(direct_read): Prevent spurious warnings.
(grub_squash_read_data): Likewise.
2012-01-11 12:46:50 +01:00
Vladimir 'phcoder' Serbinenko
c029da8a89
Various squash4 fixes and LZO and XZ support.
...
* Makefile.util.def (libgrubmods.a): Add xzembed directory to cppflags.
Add xzembed source files.
* grub-core/Makefile.core.def (squash4): Add xzembed and minilzo flags.
* grub-core/fs/squash4.c (grub_squash_super): New field compression.
(grub_squash_inode): New subtype long_dir.
(SQUASH_TYPE_LONG_DIR): New inode type.
(COMPRESSION): New enum.
(XZBUFSIZ): New const.
(grub_squash_data): New fields blksz, decompress, xzdec, xzbuf.
(read_chunk): Use data->decompress.
(zlib_decompress): New function.
(lzo_decompress): Likewise.
(xz_decompress): Likewise.
(squash_mount): Set new data fields.
(grub_squash_iterate_dir): Handle long dir.
(squash_unmount): Free xzdec and xzbuf.
(grub_squash_open): Check ino type.
(direct_read): Stylistic fixes. Use data->decompress.
(grub_squash_read_data): Likewise.
* grub-core/io/gzio.c (grub_gzio): Remove disk_input.
(get_byte): Likewise.
(grub_zlib_disk_read): Removed.
* grub-core/lib/posix_wrap/sys/types.h (ssize_t): New type.
(GRUB_POSIX_BOOL_DEFINED): New define.
* grub-core/lib/posix_wrap/unistd.h: Include sys/types.h.
* grub-core/lib/xzembed/xz.h: Addmissing includes.
[!GRUB_POSIX_BOOL_DEFINED]: Define bool.
* include/grub/deflate.h (grub_zlib_disk_read): Removed.
2011-12-26 13:18:01 +01:00
Vladimir 'phcoder' Serbinenko
7a45a539db
Don't override more informative errors.
...
* grub-core/commands/acpi.c (grub_cmd_acpi): Don't override errors.
* grub-core/font/font.c (open_section): Likewise.
* grub-core/loader/i386/bsd.c (grub_bsd_load_aout): New argument
filename. Don't override errors.
(grub_cmd_openbsd_ramdisk): Don't override errors.
* grub-core/loader/i386/linux.c (grub_cmd_linux): Likewise.
(grub_cmd_initrd): Likewise.
* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
(grub_cmd_initrd): Likewise.
* grub-core/loader/ia64/efi/linux.c (grub_load_elf64): Likewise.
(grub_cmd_linux): Likewise.
(grub_cmd_initrd): Likewise.
(grub_cmd_payload): Likewise.
* grub-core/loader/mips/linux.c (grub_cmd_initrd): Likewise.
* grub-core/loader/multiboot.c (grub_cmd_multiboot): Likewise.
(grub_cmd_module): Likewise.
* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_initrd): Likewise.
* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_initrd): Likewise.
* grub-core/loader/xnu.c (grub_xnu_load_driver): Likewise.
(grub_cmd_xnu_mkext): Likewise.
(grub_cmd_xnu_ramdisk): Likewise.
(grub_xnu_check_os_bundle_required): Likewise.
(grub_xnu_load_kext_from_dir): Likewise.
(grub_cmd_xnu_kextdir): Likewise.
* grub-core/loader/xnu_resume.c (grub_xnu_resume): Likewise.
2011-12-26 12:58:08 +01:00
Vladimir 'phcoder' Serbinenko
b2d004db18
* grub-core/fs/minix.c (grub_minix_mount) [MODE_MINIX3]: Treat 0xffff
...
as 1024 in block size field. Found on one of my test images.
Small optimisation while on it.
2011-12-25 22:44:42 +01:00
Vladimir 'phcoder' Serbinenko
ec000eaca9
* docs/grub.texi (Filesystems): Mention SFS as Latin1 filesystem.
...
* grub-core/fs/sfs.c (grub_sfs_mount): Fix a memory leak while on it.
(grub_sfs_iterate_dir): Convert Latin1 to UTF8. Stylistic and
performance fixes while on it.
(grub_sfs_close): Fix memory leak while on it.
(grub_sfs_label): Convert Latin1 to UTF-8.
2011-12-25 22:39:56 +01:00
Vladimir 'phcoder' Serbinenko
f50e11653e
* grub-core/fs/hfs.c (grub_hfs_dir): Cap keylen to actually available
...
space to avoid overflows.
(grub_hfs_label): Convert from macroman to UTF-8.
2011-12-25 22:23:05 +01:00
Vladimir 'phcoder' Serbinenko
2ae254de13
* grub-core/fs/affs.c (grub_affs_label): Interpret label as latin1.
2011-12-25 22:07:15 +01:00
Vladimir 'phcoder' Serbinenko
0108f49101
* grub-core/normal/menu.c (menu_init): Don't stop menu init at gfxterm.
2011-12-25 17:41:55 +01:00
Vladimir 'phcoder' Serbinenko
63fa8ef94e
* grub-core/term/gfxterm.c (grub_gfxterm_putchar): Don't set values
...
outside of range.
2011-12-25 16:15:01 +01:00
Vladimir 'phcoder' Serbinenko
4d8c476536
Avoid cutting in the middle of UTF-8 string.
...
* include/grub/charset.h (grub_getend): New function.
* grub-core/script/function.c (grub_script_function_find): Use
grub_getend.
* grub-core/normal/completion.c (add_completion): Likewise.
2011-12-25 16:11:41 +01:00
Vladimir 'phcoder' Serbinenko
f3cb4a4e57
* grub-core/normal/charset.c (grub_ucs4_to_utf8): Small stylistic fix.
...
(grub_bidi_line_logical_to_visual): Skip tags. They are deprecated.
* include/grub/unicode.h (GRUB_UNICODE_TAG_START): New enum value.
(GRUB_UNICODE_TAG_END): Likewise.
(GRUB_UNICODE_LAST_VALID): Likewise.
2011-12-25 16:07:33 +01:00
Vladimir 'phcoder' Serbinenko
5da8dbc5bc
* include/grub/unicode.h (grub_unicode_compact_range): Replace end with
...
len and make it smaller. All users updated.
* util/import_unicode.py: Put length and not end character.
Check length.
2011-12-25 16:03:42 +01:00
Vladimir 'phcoder' Serbinenko
8569f13d8d
Make better Unicode-compliant and unify some UTF-8 code pathes.
...
* grub-core/normal/charset.c (grub_utf8_to_utf16): Don't eat possibly
valid character.
(grub_is_valid_utf8): Use grub_utf8_process.
Check resulting code range.
(grub_utf8_to_ucs4): Use grub_utf8_process.
* include/grub/charset.h (grub_utf16_to_utf8): Don't eat up a possibly
valid character.
2011-12-25 15:57:50 +01:00
Vladimir 'phcoder' Serbinenko
cc4fddf5f5
* grub-core/io/bufio.c (grub_bufio_read): Fix handling of corner cases.
2011-12-25 15:43:15 +01:00
Vladimir 'phcoder' Serbinenko
74bbf0dbae
Make HFS implementation use MacRoman.
...
* grub-core/fs/hfs.c (MAX_UTF8_PER_MAC_ROMAN): New define.
(macroman): New const array.
(macroman_to_utf8): New function.
(utf8_to_macroman): Likewise.
(grub_hfs_find_dir): Use utf8_to_macroman.
(grub_hfs_dir): Use macroman_to_utf8.
Set case_insensitive.
2011-12-24 20:20:41 +01:00
Vladimir 'phcoder' Serbinenko
d3c13cbd62
Integrate hints into autogeneration scripts.
...
* docs/grub.texi (Filesystems): Add a hostdisk example.
* Makefile.util.def (grub-mkdevicemap): Remove ofpath.
(grub-probe): Add ofpath.
* gentpl.py: Remove group nosparc64.
* grub-core/commands/search.c (cache_entry): New struct.
(cache): New var.
(FUNC_NAME): Use and save cache. Fix handling of trailing comma.
* grub-core/commands/search_wrap.c (options): Add platform-specific
hint options.
(grub_cmd_search): Handle platform-specific hints.
(GRUB_MOD_INIT): Declare grub_cmd_search as accept_dash.
* grub-core/kern/emu/hostdisk.c (map): New field device_map.
(grub_util_biosdisk_data): Likewise.
(grub_util_biosdisk_open): Set device_map.
(read_device_map): Handle "" as indication of no map.
Set device_map.
(find_system_device): Add hostdisk/ prefix for autogenerated entries.
(grub_util_biosdisk_get_compatibility_hint): New function.
* grub-core/normal/main.c (features): Add feature_platform_search_hint.
* include/grub/emu/hostdisk.h
(grub_util_biosdisk_get_compatibility_hint): New proto.
* util/grub-install.in: Don't call grub-mkdevicemap.
Add platform-specific hint to load.cfg.
* util/grub-mkconfig.in: Don't call grub-mkdevicemap.
* util/grub-mkconfig_lib.in (prepare_grub_to_access_device): Add
hints. Set root preliminary to compatibility hint, not to OS name.
* util/grub-probe.c (PRINT_*): Add hints.
(print): Make static.
(escape_of_path): New function.
(guess_bios_drive): Likewise.
(guess_efi_drive): Likewise.
(guess_baremetal_drive): Likewise.
(print_full_name): Likewise.
(probe): Handle hints.
(main): Likewise.
* util/ieee1275/devicemap.c: Removed.
* util/ieee1275/ofpath.c (find_obppath): Allow to fail. All users
updated.
(grub_util_devname_to_ofpath): Return NULL on failure.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Fix
resource leak.
* util/getroot.c (grub_util_pull_device): Fix memory leak.
* po/POTFILES.in: Regenerated.
Allow purely long options
* grub-core/lib/arg.c (SHORT_ARG_HELP): Removed.
(SHORT_ARG_USAGE): Likewise.
(grub_arg_show_help): Compare opt with help_options.
(parse_option): Receive opt as argument. If makes big simplificatons.
All users updated
2011-12-24 15:09:26 +01:00
Vladimir 'phcoder' Serbinenko
00ce2df3d4
* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN):
...
Restructure to avoid warning.
2011-12-24 13:12:01 +01:00
Vladimir 'phcoder' Serbinenko
2b5c1a0810
merge mainline into hints
2011-12-24 02:52:43 +01:00
Vladimir 'phcoder' Serbinenko
ce4a999d4d
* grub-core/kern/ieee1275/openfw.c (grub_devalias_iterate): Fix
...
allocation and zero-setting.
(grub_ieee1275_get_devname): Check that alias is complete.
2011-12-24 02:45:17 +01:00
Vladimir 'phcoder' Serbinenko
379586ad7d
* grub-core/kern/disk.c (grub_disk_read): Fix hook calling for
...
unaligned segments.
2011-12-24 02:43:21 +01:00
Vladimir 'phcoder' Serbinenko
9197b0ade5
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_iterate): Add ieee1275/
...
prefix.
(grub_ofdisk_open): Check and discard ieee1275 prefix.
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
Add ieee1275 prefix.
2011-12-24 02:40:18 +01:00
Vladimir 'phcoder' Serbinenko
f4d5a8ce56
search cache
2011-12-23 21:14:34 +01:00
Vladimir 'phcoder' Serbinenko
706c46bdca
Fix *end restoring
2011-12-23 21:14:24 +01:00
Vladimir 'phcoder' Serbinenko
aa68ca1250
simplify lib/arg.c and allow purely long options
2011-12-23 21:13:09 +01:00
Vladimir 'phcoder' Serbinenko
2980502850
Fix few bugs and memory leaks
2011-12-23 19:25:24 +01:00
Vladimir 'phcoder' Serbinenko
17785932df
merge mainline into hints
2011-12-23 18:49:00 +01:00
Vladimir 'phcoder' Serbinenko
ca74c50c0b
merge mainline into hints
2011-12-23 18:46:06 +01:00
Vladimir 'phcoder' Serbinenko
6babad5e59
Initial integration of hints
2011-12-23 18:19:16 +01:00
Vladimir 'phcoder' Serbinenko
a1a8b1b90a
Support odc, newc and bigendian cpio formats.
...
* Makefile.util.def (libgrubmods): Add odc.c, newc.c and cpio_be.c.
* grub-core/Makefile.core.def (newc): New module.
(odc): Likewise.
(cpio_be): Likewise.
* grub-core/fs/cpio.c (ALIGN_CPIO): New macro.
(MAGIC): Likewise.
(MAGIC2): Likewise.
(head) [MODE_ODC]: Adapt for the format.
(head) [MODE_NEWC]: Likewise.
(head) [!MODE_*]: Write fields of interest as arrays.
(MAGIC_USTAR): Removed.
(read_number) [MODE_NEWC]: Change to hex.
(read_number) [!MODE_*]: Parse binary arrays.
(grub_cpio_find_file): Factor out the code for better structure and
always use read_number.
(grub_cpio_mount): Use MAGIC and MAGIC2.
(grub_cpio_dir): Exit on first hook non-0 return.
(grub_cpio_fs) [MODE_ODC]: Set name to odc.
(grub_cpio_fs) [MODE_NEWC]: Set name to newc.
(GRUB_MOD_INIT) [MODE_ODC]: Set name to odc.
(GRUB_MOD_INIT) [MODE_NEWC]: Set name to newc.
(GRUB_MOD_FINI) [MODE_ODC]: Set name to odc.
(GRUB_MOD_FINI) [MODE_NEWC]: Set name to newc.
* grub-core/fs/newc.c: New file.
* grub-core/fs/odc.c: Likewise.
* grub-core/fs/cpio_be.c: Likewise.
2011-12-23 16:15:18 +01:00
Vladimir 'phcoder' Serbinenko
58eba9eec7
Fix handling of tar numbers occupying the whole field.
...
* grub-core/fs/cpio.c (read_number): New function.
(grub_cpio_find_file): Use read_number instead of strtoull.
2011-12-23 14:11:31 +01:00
Vladimir 'phcoder' Serbinenko
a54a0e1270
* grub-core/fs/cpio.c (grub_cpio_find_file): Fix handling of names
...
occupying the whole field size.
2011-12-23 13:38:21 +01:00
Vladimir 'phcoder' Serbinenko
a93964ce11
* grub-core/net/net.c (grub_cmd_delroute): Add missing out condition.
2011-12-23 11:54:08 +01:00
Seth Goldberg
3ea1ca46c1
* grub-core/Makefile.core.def (lzma_decompress): Add missing
...
TARGET_IMG_LDFLAGS.
2011-12-23 11:39:30 +01:00
Vladimir 'phcoder' Serbinenko
31355584f1
* grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy): Add
...
an assert.
* util/grub-setup.c (setup): Likewise.
2011-12-23 10:23:41 +01:00
Vladimir 'phcoder' Serbinenko
1f0b1a7730
* grub-core/boot/i386/pc/startup_raw.S: Add missing argument for
...
_LzmaDecodeA.
2011-12-23 10:21:27 +01:00
Vladimir 'phcoder' Serbinenko
198e150aaf
IPv6, TCP, HTTP, ICMP and DNS support. Several cleanups and bugfixes.
...
* grub-core/Makefile.core.def (net): Add net/dns.c, net/tcp.c,
net/icmp.c and net/icmp6.c.
(http): New module.
(priority_queue): Likewise.
* grub-core/io/bufio.c: Rewritten.
* grub-core/lib/legacy_parse.c (legacy_command): New argument type
TYPE_WITH_CONFIGFILE_OPTION.
(legacy_commands): Add bootp and dhcp.
(is_option): Handle TYPE_WITH_CONFIGFILE_OPTION.
(grub_legacy_parse): Likewise.
* grub-core/lib/priority_queue.c: New file.
* grub-core/net/arp.c: Add missing license header.
(arp_find_entry): Removed.
(arp_find_entry): Likewise.
(grub_net_arp_resolve): Rename to ...
(grub_net_arp_send_request): ...this.
(grub_net_arp_receive): New card argument.
* grub-core/net/bootp.c (parse_dhcp_vendor): Clean up.
Set router and DNS server.
(grub_net_configure_by_dhcp_ack): Handle routing information.
(grub_cmd_bootp): Set checksum.
(grub_bootp_init): Remove net_dhcp.
* grub-core/net/dns.c: New file.
* grub-core/net/drivers/efi/efinet.c (send_card_buffer): Wait for
completion.
(get_card_packet): Handle allocation.
(grub_efinet_findcards): Set mtu.
* grub-core/net/drivers/emu/emunet.c: Add missing license header.
(get_card_packet): Handle allocation.
(emucard): Set mtu.
* grub-core/net/drivers/i386/pc/pxe.c (grub_pxe_recv): Handle allocation
(GRUB_MOD_INIT): Set mtu.
* grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnetcard_data): Remove
mtu.
(get_card_packet): Handle allocation.
(grub_ofnet_findcards): Set mtu.
* grub-core/net/ethernet.c (send_ethernet_packet): Add compile time
assert.
(grub_net_recv_ethernet_packet): Handle IPv6.
* grub-core/net/http.c: New file.
* grub-core/net/icmp.c: Likewise.
* grub-core/net/icmp6.c: Likewise.
* grub-core/net/ip.c (ip6addr): New type.
(ip6hdr): Likewise.
(reassemble): Likewise.
(cmp): New function.
(reassembles): New variable.
(grub_net_ip_chksum): Handle 0xffff sum and unaligned buffers.
(id): New variable.
(send_fragmented): New function.
(grub_net_send_ip_packet): Rename to ...
(grub_net_send_ip4_packet): ... this. Send fragmented if needed.
Handle non-UDP.
(grub_net_recv_ip_packets): Rename to ...
(handle_dgram): ... this. Check checksum. Handle non-UDP.
(free_rsm): New function.
(free_old_fragments): Likewise.
(grub_net_recv_ip4_packets): New function.
(grub_net_send_ip6_packet): Likewise.
(grub_net_send_ip_packet): Likewise.
(grub_net_recv_ip6_packets): Likewise.
(grub_net_recv_ip_packets): Likewise.
* grub-core/net/net.c (grub_net_link_layer_entry): New struct.
(LINK_LAYER_CACHE_SIZE): New const.
(link_layer_find_entry): New function.
(grub_net_link_layer_add_address): Likewise.
(grub_net_link_layer_resolve_check): Likewise.
(grub_net_link_layer_resolve): Likewise.
(grub_net_ipv6_get_slaac): Likewise.
(grub_net_ipv6_get_link_local): Likewise.
(grub_cmd_ipv6_autoconf): Likewise.
(parse_ip): Handle one number representation.
(parse_ip6): New functoion.
(match_net): Handle IPv6.
(grub_net_resolve_address): Handle IPv6 and DNS.
(grub_net_resolve_net_address): Handle IPv6.
(route_cmp): New function.
(grub_net_route_address): Find best route.
(grub_net_addr_to_str): Handle IPv6.
(grub_net_addr_cmp): New function.
(grub_net_add_addr): Register local route.
(print_net_address): Handle net address.
(grub_net_poll_cards): Retransmit TCP.
(grub_net_poll_cards_idle_real): Likewise.
(have_ahead): New function.
(grub_net_seek_real): Use underlying seek.
(GRUB_MOD_INIT): Register net_ipv6_autoconf and init dns.
* grub-core/net/tcp.c: New file.
* grub-core/net/tftp.c (tftp_data): Add priority_queue.
(cmp): New function.
(ack): Likewise.
(tftp_receive): Handle unordered input.
(destroy_pq): New function.
(tftp_close): Close pq.
* grub-core/net/udp.c: Put missing license header.
(grub_net_udp_socket): New function.
(udp_socket_register): Likewise.
(grub_net_udp_close): Likewise.
(grub_net_recv_udp_packet): Check checksum.
* include/grub/efi/api.h (grub_efi_simple_network): Add status.
* include/grub/misc.h (grub_memchr): New function.
* include/grub/net.h (GRUB_NET_*_SIZE): New enum.
(grub_net_card_driver): Return buf in recv.
(grub_net_slaac_mac_list): New struct.
(grub_network_level_protocol_id): Add ipv6.
(grub_net_network_level_addr): Likewise.
(grub_net_network_level_net_addr): Likewise.
(grub_net_app_protocol): Add seek.
(grub_net_socket): Removed.
(grub_net_sockets): Likewise.
(grub_net_socket_register): Likewise.
(grub_net_socket_unregister): Likewise.
(FOR_NET_SOCKETS): Likewise.
(grub_net_add_addr): Add const.
(GRUB_NET_BOOTP_*): New enum.
(grub_net_addr_cmp): New proto.
(GRUB_NET_MAX_STR_ADDR_LEN): Take IPV6 into account.
(GRUB_NET_MAX_STR_HWADDR_LEN): New define.
(grub_net_hwaddr_to_str): NEw proto.
(FOR_NET_NETWORK_LEVEL_INTERFACES): New macro.
(FOR_NET_NETWORK_LEVEL_INTERFACES_SAFE): Handle NULL.
(grub_dns_init): New proto.
(grub_dns_fini): Likewise.
(grub_net_tcp_retransmit): Likewise.
(grub_net_link_layer_add_address): Likewise.
(grub_net_link_layer_resolve_check): Likewise.
(grub_net_link_layer_resolve): Likewise.
(grub_net_dns_lookup): Likewise.
(grub_net_add_dns_server): Likewise.
(grub_net_remove_dns_server): Likewise.
(GRUB_NET_TRIES): New const.
(GRUB_NET_INTERVAL): Likewise.
* include/grub/net/arp.h: Mostly rewritten.
* include/grub/net/ethernet.h (grub_net_ethertype_t): New enum.
* include/grub/net/ip.h: Mostly rewritten.
* include/grub/net/netbuff.h: Indent.
* include/grub/net/tcp.h: New file.
* include/grub/net/udp.h: Mostly rewritten.
* include/grub/priority_queue.h: New file.
* include/grub/types.h (PRIdGRUB_SSIZE): New define.
(grub_swap_bytes64_compile_time): Likewise.
(grub_cpu_to_be16_compile_time): Likewise.
(grub_cpu_to_be32_compile_time): Likewise.
(grub_cpu_to_be64_compile_time): Likewise.
(grub_be_to_cpu64_compile_time): Likewise.
2011-12-20 18:17:07 +01:00
Vladimir 'phcoder' Serbinenko
ec08f14936
merge mainline into net
2011-12-16 18:00:16 +01:00
Vladimir 'phcoder' Serbinenko
215c18008e
* grub-core/commands/i386/pc/drivemap.c (int13slot): Replace
...
UINT_TO_PTR with cast.
2011-12-16 17:46:28 +01:00
Vladimir 'phcoder' Serbinenko
aa7d205236
Retrieve DNS names from DHCP/BOOTP
2011-12-16 17:37:47 +01:00
Vladimir 'phcoder' Serbinenko
f0f4253cd2
Integrate DNS with address parsing
2011-12-16 17:12:01 +01:00
Vladimir 'phcoder' Serbinenko
8d4e4fc0e5
DNS cache support
2011-12-16 15:08:46 +01:00
Vladimir 'phcoder' Serbinenko
3729fcfc1a
support cname
2011-12-16 13:43:31 +01:00
Vladimir 'phcoder' Serbinenko
34feab6f21
Remerge net branch
2011-12-15 20:53:29 +01:00
Vladimir 'phcoder' Serbinenko
bd67ad0f70
merge mainline into net
2011-12-15 20:51:35 +01:00
Vladimir 'phcoder' Serbinenko
078d2b2e68
Add forgotten file
2011-12-15 20:50:21 +01:00
Vladimir 'phcoder' Serbinenko
e5f4d2607a
* grub-core/lib/libgcrypt/cipher/md4.c (transform) [WORDS_BIGENDIAN]:
...
Add missing const attribute.
* grub-core/lib/libgcrypt/cipher/md5.c (transform) [WORDS_BIGENDIAN]:
Likewise.
* grub-core/lib/libgcrypt/cipher/rmd160.c (transform) [WORDS_BIGENDIAN]:
Likewise.
2011-12-15 20:26:17 +01:00
Vladimir 'phcoder' Serbinenko
8e54b4b76a
* grub-core/lib/libgcrypt/cipher/serpent.c (serpent_key_prepare): Fix
...
misaligned access.
(serpent_setkey): Likewise.
(serpent_encrypt_internal): Likewise.
(serpent_decrypt_internal): Likewise.
(serpent_encrypt): Don't put an alignment-increasing cast.
(serpent_decrypt): Likewise.
(serpent_test): Likewise.
2011-12-15 20:20:02 +01:00
Vladimir 'phcoder' Serbinenko
813c0a2be8
* grub-core/loader/multiboot.c (grub_cmd_module): Fix target address.
2011-12-15 20:05:27 +01:00
Vladimir 'phcoder' Serbinenko
3a38c67235
forgotten file for previous commit
2011-12-15 20:04:21 +01:00
Vladimir 'phcoder' Serbinenko
f2b60fbdb8
Replace UINT_TO_PTR and PTR_TO_UINT with explicit grub_addr_t casts.
...
* include/grub/types.h (UINT_TO_PTR): Removed. All users switched to
grub_addr_t casts.
(PTR_TO_UINT64): Likewise.
(PTR_TO_UINT32): Likewise.
2011-12-15 19:59:49 +01:00
Vladimir 'phcoder' Serbinenko
c476e6df16
* grub-core/gfxmenu/gui_label.c (label_paint): Handle the case
...
text_width > available width a bit more gracefully.
2011-12-15 19:35:54 +01:00
Vladimir 'phcoder' Serbinenko
384ad7cc1b
* grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Fix
...
current address calculation.
2011-12-15 19:32:41 +01:00
Vladimir 'phcoder' Serbinenko
96f8caf812
* grub-core/lib/reed_solomon.c (decode_block): Allocate on heap and not
...
stack.
(encode_block): Likewise.
2011-12-15 19:27:01 +01:00
Vladimir 'phcoder' Serbinenko
276b7a8bdd
* grub-core/boot/i386/pc/startup_raw.S: Clear direction flag for
...
certainety.
2011-12-15 19:22:36 +01:00
Vladimir 'phcoder' Serbinenko
e3fd394a10
* grub-core/boot/i386/pc/startup_raw.S: Move realmode routines to
...
non-RS part to avoid RS messing with GDT.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART):
Increase to suit in realmode routines.
2011-12-15 19:20:41 +01:00
Vladimir 'phcoder' Serbinenko
b81d609e4c
* grub-core/kern/i386/realmode.S: Increase alignment.
...
* grub-core/boot/i386/pc/startup_raw.S: Likewise.
2011-12-15 19:17:36 +01:00
Vladimir 'phcoder' Serbinenko
ee9c2e7a97
* grub-core/lib/reed_solomon.c (init_powx): Set gf_powx_inv[0] just to
...
be deterministic.
(syndroms): Compute 0 syndrom.
(rs_recover): Use 0 syndrom.
2011-12-15 02:20:21 +01:00
Vladimir 'phcoder' Serbinenko
ca1b552c02
* grub-core/gfxmenu/widget-box.c (get_left_pad): Take corners into
...
account.
(get_top_pad): Likewise.
(get_right_pad): Likewise.
(get_bottom_pad): Likewise.
2011-12-14 14:20:57 +01:00
Vladimir 'phcoder' Serbinenko
9f59e9fc36
* grub-core/gfxmenu/gui_list.c (draw_menu): Don't use set in if.
2011-12-14 12:05:26 +01:00
Vladimir 'phcoder' Serbinenko
cb8f88ea82
* include/grub/charset.h (grub_utf16_to_utf8): Make src a const pointer.
...
(grub_ucs4_to_utf8_alloc): Likewise.
(grub_ucs4_to_utf8): Likewise.
* grub-core/normal/charset.c (grub_ucs4_to_utf8): Likewise.
(grub_ucs4_to_utf8_alloc): Likewise.
2011-12-14 10:01:24 +01:00
Vladimir 'phcoder' Serbinenko
309e535231
AFFS never uses unicode.
...
* include/grub/charset.h (GRUB_MAX_UTF8_PER_LATIN1): New const.
(grub_latin1_to_utf8): New inline function.
* grub-core/fs/affs.c (grub_affs_iterate_dir): Convert latin1 to UTF8.
2011-12-14 09:52:00 +01:00
Vladimir 'phcoder' Serbinenko
e7987e1b3b
* grub-core/fs/romfs.c (grub_romfs_mount): Fix pointer comparison
...
overflow.
2011-12-13 23:15:56 +01:00
Vladimir 'phcoder' Serbinenko
efc2616ee1
* grub-core/fs/squash4.c (grub_squash_inode): Fix field sizes.
...
(grub_squash_dirent_header): Likewise.
(read_chunk): Don't double swap.
(grub_squash_iterate_dir): Fix swap sizes.
2011-12-13 23:14:25 +01:00
Vladimir 'phcoder' Serbinenko
3c349f5a37
* grub-core/fs/jfs.c (grub_jfs_getent): Handle UTF16 endianness.
2011-12-13 23:11:48 +01:00
Vladimir 'phcoder' Serbinenko
b453412d2f
* grub-core/fs/hfs.c (grub_hfs_find_node): Handle unaligned keys.
...
(grub_hfs_iterate_dir): Likewise.
2011-12-13 23:10:38 +01:00
Vladimir 'phcoder' Serbinenko
12e9d4d152
Fix video on platforms where unaligned access is forbidden.
...
Make several optimisations while on it.
* grub-core/video/fb/fbblit.c (grub_video_fbblit_replace_directN):
Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
(grub_video_fbblit_replace_32bit_1bit): Likewise.
(grub_video_fbblit_replace_24bit_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
Disable.
(grub_video_fbblit_replace_16bit_1bit):
Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
(grub_video_fbblit_replace_8bit_1bit): Likewise.
(grub_video_fbblit_replace_BGRX8888_RGBX8888): Likewise.
(grub_video_fbblit_replace_BGRX8888_RGB888): Likewise.
(grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
(grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
(grub_video_fbblit_replace_BGR888_RGB888): Likewise.
(grub_video_fbblit_replace_RGBX8888_RGB88): Likewise.
(grub_video_fbblit_replace_RGB888_RGBX888): Likewise.
(grub_video_fbblit_replace_RGB888_RGBX8888): Likewise.
(grub_video_fbblit_replace_index_RGBX8888): Likewise.
(grub_video_fbblit_replace_index_RGB888): Likewise.
(grub_video_fbblit_blend_BGRA8888_RGBA8888): Likewise.
(grub_video_fbblit_blend_BGR888_RGBA8888): Likewise.
(grub_video_fbblit_blend_RGBA8888_RGBA8888): Likewise.
(grub_video_fbblit_blend_RGB888_RGBA8888): Likewise.
(grub_video_fbblit_blend_index_RGBA8888): Likewise.
(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
(grub_video_fbblit_blend_XXX888_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
Disable.
(grub_video_fbblit_blend_XXX565_1bit):
Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
* grub-core/video/fb/fbfill.c (grub_video_fbfill_direct32): Likewise.
* grub-core/video/fb/fbutil.c (grub_video_fb_get_video_ptr): Return
void *.
* grub-core/video/fb/video_fb.c (common_blitter)
[!GRUB_HAVE_UNALIGNED_ACCESS]: Skip disabled blitters.
(grub_video_fb_create_render_target_from_pointer)
[!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
* include/grub/fbutil.h (grub_video_fb_get_video_ptr): Return void *.
* include/grub/i386/types.h (GRUB_HAVE_UNALIGNED_ACCESS): New
definition.
* include/grub/x86_64/types.h (GRUB_HAVE_UNALIGNED_ACCESS): Likewise.
2011-12-13 20:07:33 +01:00
Vladimir 'phcoder' Serbinenko
ace96609b6
* grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Support
...
HH22 and HM10 relocations.
2011-12-13 19:56:50 +01:00
Vladimir 'phcoder' Serbinenko
fd261d7300
* grub-core/kern/misc.c (grub_vsnprintf_real): Fix fmt2 parsing.
2011-12-13 19:55:27 +01:00
Vladimir 'phcoder' Serbinenko
e59b7857f8
* grub-core/commands/videotest.c (grub_cmd_videotest): Check that
...
allocation succeeded.
2011-12-13 19:53:57 +01:00
Vladimir 'phcoder' Serbinenko
9b4baaa4ee
* grub-core/fs/iso9660.c (grub_iso9660_convert_string): Make first
...
argument a u8 pointer. All users updated.
Handle unaligned buffers.
2011-12-13 16:35:12 +01:00
Vladimir 'phcoder' Serbinenko
dc71319397
* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Force inlining of
...
add_part to workaround compiler bug.
2011-12-13 16:33:27 +01:00
Vladimir 'phcoder' Serbinenko
0c6087a8c9
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_add_elfsyms):
...
Reserve alignment invariants.
(grub_multiboot_load): Likewise.
(retrieve_video_parameters): Likewise.
(grub_multiboot_make_mbi): Likewise.
2011-12-13 16:22:44 +01:00
Vladimir 'phcoder' Serbinenko
c2e777777b
* grub-core/loader/i386/xnu.c (grub_xnu_devprop_remove_property): Fix
...
incorrect pointer.
2011-12-13 16:20:25 +01:00
Vladimir 'phcoder' Serbinenko
b70b6d1107
* grub-core/disk/pata.c (grub_pata_pio_read): Handle unaligned buffer.
...
(grub_pata_pio_write): Likewise.
2011-12-13 15:55:36 +01:00
Vladimir 'phcoder' Serbinenko
02a2bf8384
Add noreturn attributes and remove unreachable code.
...
* grub-core/bus/cs5536.c (grub_cs5536_smbus_wait): Remove unreachable
code.
* grub-core/commands/halt.c (grub_cmd_halt): Remove unreachable
code. Mark as noreturn.
* grub-core/commands/minicmd.c (grub_mini_cmd_exit): Likewise.
* grub-core/commands/reboot.c (grub_cmd_reboot): Likewise.
* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Remove
unreachable code.
* grub-core/kern/main.c (grub_main): Mark as noreturn.
* grub-core/kern/rescue_reader.c (grub_rescue_run): Likewise.
* grub-core/lib/posix_wrap/stdlib.h (abort): Likewise.
* grub-core/normal/menu.c (run_menu): Remove unreachable code.
* include/grub/kernel.h (grub_main): Mark as noreturn.
* include/grub/reader.h (grub_rescue_run): Likewise.
2011-12-13 15:13:51 +01:00
Vladimir 'phcoder' Serbinenko
6166442083
* grub-core/commands/hdparm.c (le16_to_char): Make src and dest uint16 *
...
to ensure alignment.
(grub_hdparm_print_identify): Make argument uint16 * to ensure
alignment. Ensure tmp alignment.
(grub_cmd_hdparm): Ensure buf alignment.
* grub-core/disk/ata.c (grub_ata_strncpy): Make src and dest uint16 *
to ensure alignment.
(grub_ata_dumpinfo): Ensure text alignment.
(grub_atapi_identify): Preserve alignment invariant.
(grub_ata_identify): Likewise. Use grub_get_unaligned32 when necessary.
2011-12-13 14:57:46 +01:00
Vladimir 'phcoder' Serbinenko
85c85365bb
* grub-core/partmap/dvh.c (grub_dvh_is_valid): Make argument
...
uint32_t * to ensure alignment.
(dvh_partition_map_iterate): Make `block' a union to ensure alignment.
2011-12-13 14:44:38 +01:00
Vladimir 'phcoder' Serbinenko
93018f6400
* grub-core/partmap/sunpc.c (grub_sun_is_valid): Make argument
...
uint16_t * to ensure alignment.
(sun_pc_partition_map_iterate): Make `block' a union to ensure
alignment.
2011-12-13 14:42:41 +01:00
Vladimir 'phcoder' Serbinenko
a23f2cc4d6
* grub-core/partmap/sun.c (grub_sun_is_valid): make argument uint16_t *
...
to ensure alignment.
(sun_partition_map_iterate): Make `block' a union to ensure alignment.
2011-12-13 14:40:41 +01:00
Vladimir 'phcoder' Serbinenko
58acccd645
* grub-core/fs/ntfs.c (u16at): Make into inline function.
...
Handle unaligned pointers.
(u32at): Likewise.
(u64at): Likewise.
(fixup): Use byte access instead of v16at.
(find_attr): Fix imporper usage of v32at.
(read_data): Likewise.
(list_file): Handle byte-swapping and unaligned strings.
(grub_ntfs_label): Likewise.
2011-12-13 14:17:24 +01:00
Vladimir 'phcoder' Serbinenko
9b05cad768
* grub-core/fs/udf.c (grub_udf_partmap): Add packed attribute
...
as it's not necessarily aligned.
2011-12-13 13:58:33 +01:00
Vladimir 'phcoder' Serbinenko
b3950b849f
* grub-core/kern/mips/qemu_mips/init.c (grub_at_keyboard_init): Remove
...
redundant declaration.
(grub_serial_init): Likewise.
(grub_terminfo_init): Likewise.
2011-12-13 11:46:29 +01:00
Vladimir 'phcoder' Serbinenko
fcd232b74e
* grub-core/fs/zfs/zfs.c (DVA_OFFSET_TO_PHYS_SECTOR): Make into inline
...
function.
(ZAP_HASH_IDX): Likewise.
(ZAP_LEAF_HASH_SHIFT): Likewise.
(ZAP_LEAF_HASH_NUMENTRIES): Likewise.
(LEAF_HASH): Likewise.
(ZAP_LEAF_NUMCHUNKS): Likewise.
(ZAP_LEAF_CHUNK): Likewise. Changed pointer arithmetic to preserve
alignment invariants. Return pointer. All users updated.
(ZAP_LEAF_ENTRY): Make into inline function.
(NBBY): Removed.
(xor): LIkewise.
(xor_out): Use grub_crypto_xor.
(dnode_get_path): Use grub_get_unaligned.
(nvlist_find_value): Likewise.
(grub_zfs_nvlist_lookup_uint64): Likewise.
(grub_zfs_nvlist_lookup_string): Likewise.
(get_nvlist_size): Likewise.
(grub_zfs_open): Likewise.
(fill_fs_info): Likewise.
(grub_zfs_dir): Likewise.
* include/grub/zfs/zap_leaf.h (zap_leaf_phys): Adapt to preserve
alignment invariants.
* include/grub/zfs/zio.h (zio_eck_t): Mark as packed as it's not
necessarily aligned.
2011-12-13 11:33:02 +01:00
Vladimir 'phcoder' Serbinenko
f138623a60
* grub-core/net/netbuff.c (grub_netbuff_alloc): Ensure proper alignment.
2011-12-13 02:15:09 +01:00
Vladimir 'phcoder' Serbinenko
564840dc3d
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Change pointer
...
arithmetic to conserve alignment invariants.
2011-12-13 02:13:44 +01:00
Vladimir 'phcoder' Serbinenko
4c5f3056c2
* grub-core/fs/hfsplus.c (grub_hfsplus_btree_recoffset): Handle the
...
case of aunaligned recptr.
(grub_hfsplus_read_block): Declare extoverflow as key to ensure
alignment.
(grub_hfsplus_btree_search): Handle unaligned index.
2011-12-13 02:05:58 +01:00
Vladimir 'phcoder' Serbinenko
728cba91d2
* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Use grub_get_unaligned16
...
to get freetag and skip.
2011-12-13 02:02:38 +01:00
Vladimir 'phcoder' Serbinenko
eb561f3123
* grub-core/fs/nilfs2.c (grub_nilfs2_btree_node): Add zero-size keys
...
array.
(grub_nilfs2_btree_node_dkeys): Ensure return pointer alignment.
(grub_nilfs2_btree_lookup): Ensure buffer alignment.
2011-12-13 02:00:44 +01:00
Vladimir 'phcoder' Serbinenko
812e249302
* grub-core/fs/ext2.c (grub_ext4_find_leaf): MAke buf as pointer to
...
properly aligned memory.
(grub_ext2_read_block): Ensure buffer alignment.
2011-12-13 01:58:35 +01:00
Vladimir 'phcoder' Serbinenko
20993fbb9f
* grub-core/fs/romfs.c (grub_romfs_iterate_dir): Properly align
...
name for checksum and fix allocation algorithm.
2011-12-13 01:57:07 +01:00
Vladimir 'phcoder' Serbinenko
47ae27ec75
* grub-core/normal/datetime.c (grub_weekday_names): Make const.
2011-12-13 01:45:38 +01:00
Vladimir 'phcoder' Serbinenko
78c2cd1c62
* grub-core/fs/udf.c (read_string): Macroify GRUB_MAX_UTF8_PER_UTF16.
...
* grub-core/fs/jfs.c (grub_jfs_diropen): Likewise.
* grub-core/fs/fat.c (grub_fat_iterate_dir): Likewise.
2011-12-13 01:41:16 +01:00
Vladimir 'phcoder' Serbinenko
53072f9b96
* grub-core/term/at_keyboard.c (set_scancodes): Fix preprocessor
...
conditionals.
2011-12-13 01:36:09 +01:00
Vladimir 'phcoder' Serbinenko
055dc23978
* grub-core/kern/emu/main.c (main): Add missing const qualifier.
...
* grub-core/loader/efi/appleloader.c (devdata): Likewise.
2011-12-13 01:32:41 +01:00
Vladimir 'phcoder' Serbinenko
496bd07446
Unify and improve RAID and crypto xor.
...
* grub-core/disk/raid.c (grub_raid_block_xor): Removed. All users
changed to grub_crypto_xor
* grub-core/lib/crypto.c (grub_crypto_xor): Moved from here ...
* include/grub/crypto.h (grub_crypto_xor): ... here. Inlined.
Use bigger types when possible.
2011-12-13 01:26:53 +01:00
Vladimir 'phcoder' Serbinenko
ef6e433586
* grub-core/disk/raid.c (scan_devices): Fix condition.
2011-12-13 01:19:47 +01:00
Vladimir 'phcoder' Serbinenko
5d048bf210
* grub-core/net/drivers/ieee1275/ofnet.c (bootp_response_properties):
...
Make name a const ptr.
2011-12-13 01:07:06 +01:00
Vladimir 'phcoder' Serbinenko
ee533335f5
* grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_finddevice): Make
...
first argument a const pointer.
* grub-core/kern/ieee1275/openfw.c (grub_children_iterate): Likewise.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_finddevice): Update
proto.
(grub_children_iterate): Likewise.
(grub_machine_mmap_iterate): Remove redundant declaration.
2011-12-13 01:00:34 +01:00
Vladimir 'phcoder' Serbinenko
cc8f366887
* grub-core/commands/acpi.c (grub_acpi_create_ebda) [!x86]: Disable.
...
(grub_cmd_acpi) [!x86]: Disable EBDA.
2011-12-13 00:55:00 +01:00
Vladimir 'phcoder' Serbinenko
c5fc563aff
Enable UTF8 in gnulib regexp.
...
* config.h.in (RE_ENABLE_I18N) [!GRUB_UTIL]: New define.
* grub-core/lib/posix_wrap/ctype.h (islower): Use grub_islower.
(isupper): Use grub_isupper.
(isascii): New inline function.
* grub-core/lib/posix_wrap/wchar.h: Replace dummy with real contents.
* grub-core/lib/posix_wrap/wctype.h: Likewise.
* grub-core/normal/charset.c (grub_utf8_process): New function.
(grub_utf8_to_utf16): Use grub_utf8_process.
(grub_encode_utf8_character): New function.
(grub_ucs4_to_utf8): Use grub_encode_utf8_character.
* include/grub/charset.h (grub_utf8_process): New declaration.
(grub_encode_utf8_character): Likewise.
* include/grub/misc.h (grub_islower): New inline function.
(grub_isupper): Likewise.
(grub_strchrsub): Moved down to fix the definitions.
2011-12-13 00:50:49 +01:00
Vladimir 'phcoder' Serbinenko
0af2346fdb
* grub-core/bus/usb/ohci.c (grub_ohci_check_transfer): Add an unsigned
...
specification.
2011-12-13 00:29:42 +01:00
Vladimir 'phcoder' Serbinenko
74dbd24466
* include/grub/loader.h (grub_loader_register_preboot_hook):
...
Use struct preboot * and not void * for handle. All users updated.
(grub_loader_unregister_preboot_hook): Likewise.
2011-12-13 00:28:14 +01:00
Vladimir 'phcoder' Serbinenko
1bc8f60db7
* include/grub/charset.h (GRUB_MAX_UTF8_PER_UTF16): New const.
...
* grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Change to
UTF-16-BE. All users updated.
(grub_hfsplus_cmp_catkey): Fix unicode handling.
(grub_hfsplus_iterate_dir): Likewise.
(grub_hfsplus_label): Likewise.
2011-12-12 22:40:43 +01:00
Vladimir 'phcoder' Serbinenko
48d6e45653
* grub-core/disk/ahci.c (grub_ahci_pciinit): Fix compat condition.
2011-12-12 22:20:14 +01:00
Vladimir 'phcoder' Serbinenko
bf3a385792
Add missing const qualifiers.
...
* grub-core/commands/i386/pc/sendkey.c (keysym): Add missing const.
* grub-core/commands/lspci.c (grub_pci_classname): Likewise.
* grub-core/commands/menuentry.c (hotkey_aliases): Likewise.
* grub-core/disk/lvm.c (grub_lvm_getvalue): Likewise.
(grub_lvm_check_flag): Likewise.
* grub-core/efiemu/i386/coredetect.c
(grub_efiemu_get_default_core_name): Likewise
* grub-core/efiemu/main.c (grub_efiemu_autocore): Likewise.
* grub-core/fs/hfsplus.c (grub_hfsplus_catkey_internal): Likewise.
* grub-core/fs/ntfs.c (fixup): Likewise.
* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Likewise.
* grub-core/fs/zfs/zfs.c (decomp_entry): Likewise.
(fzap_lookup): Likewise.
(zap_lookup): Likewise.
* grub-core/gnulib/regcomp.c (init_dfa): Likewise.
* grub-core/lib/legacy_parse.c (check_option): Likewise.
* grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Likewise.
* grub-core/loader/i386/bsd.c (grub_bsd_add_meta): Likewise.
(grub_freebsd_add_meta_module): Likewise.
(grub_cmd_freebsd_module): Likewise.
* grub-core/loader/i386/xnu.c (tbl_alias): Likewise.
* grub-core/loader/xnu.c (grub_xnu_register_memory): Likewise.
(grub_xnu_writetree_get_size): Likewise.
(grub_xnu_writetree_toheap_real): Likewise.
(grub_xnu_find_key): Likewise.
(grub_xnu_create_key): Likewise.
(grub_xnu_create_value): Likewise.
(grub_xnu_register_memory): Likewise.
(grub_xnu_check_os_bundle_required): Likewise.
(grub_xnu_scan_dir_for_kexts): Likewise.
(grub_xnu_load_kext_from_dir): Likewise.
* grub-core/normal/color.c (color_list): Likewise.
* grub-core/normal/completion.c (current_word): Likewise.
* grub-core/normal/menu_entry.c (insert_string): Likewise.
* grub-core/term/serial.c (grub_serial_find): Likewise.
* grub-core/term/tparm.c (grub_terminfo_tparm): Likewise.
* include/grub/efiemu/efiemu.h (grub_efiemu_get_default_core_name):
Likewise.
* include/grub/i386/bsd.h (grub_bsd_add_meta): Likewise.
(grub_freebsd_add_meta_module): Likewise.
* include/grub/lib/arg.h (grub_arg_option): Likewise.
* include/grub/net.h (grub_net_card_driver): Likewise.
(grub_net_card): Likewise.
(grub_net_app_protocol): Likewise.
* include/grub/parttool.h (grub_parttool_argdesc): Likewise.
* include/grub/serial.h (grub_serial_find): Likewise.
* include/grub/tparm.h (grub_terminfo_tparm): Likewise.
* include/grub/xnu.h (grub_xnu_create_key): Likewise.
(grub_xnu_create_value): Likewise.
(grub_xnu_find_key): Likewise.
(grub_xnu_scan_dir_for_kexts): Likewise.
(grub_xnu_load_kext_from_dir): Likewise.
* include/grub/zfs/zio_checksum.h (zio_checksum_t): Moved from here ...
* grub-core/fs/zfs/zfs.c (zio_checksum_t): ...here.
* include/grub/zfs/zio_checksum.h (zio_checksum_info):
Moved from here ...
* grub-core/fs/zfs/zfs.c (zio_checksum_info): ... here. Added missing const.
2011-11-30 16:20:13 +01:00
Vladimir 'phcoder' Serbinenko
49e891ac9c
* grub-core/fs/zfs/zfs.c (recovery): Fix spelling.
...
(read_device): Fix size calculation.
2011-11-27 02:34:22 +01:00
Vladimir 'phcoder' Serbinenko
adac52113d
* grub-core/fs/cpio.c (grub_cpio_dir): Handle subdirs correctly.
2011-11-25 14:12:05 +01:00
Vladimir 'phcoder' Serbinenko
10b64f1cf4
* grub-core/kern/dl.c (grub_dl_load_segments): Fix alignment handling.
2011-11-16 21:40:50 +01:00
Vladimir 'phcoder' Serbinenko
bb41695449
* grub-core/kern/dl.c (grub_dl_unload): Fix freeing segments.
2011-11-16 21:38:00 +01:00
Vladimir 'phcoder' Serbinenko
bdfe9eeb2c
* grub-core/kern/x86_64/efi/callwrap.S: Fix the comment.
2011-11-16 21:35:40 +01:00
Lubomir Kundrak
66d6a7937b
gdb over serial by Lubomir Kundrak and cleaned-up/updated by me (phcoder)
...
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2011-11-14 22:58:11 +01:00
Vladimir 'phcoder' Serbinenko
ab4378ae61
merge mainline into backtrace
2011-11-14 14:30:14 +01:00
Vladimir 'phcoder' Serbinenko
c1677cfccf
Fix a mismerge
2011-11-14 14:27:52 +01:00
Vladimir 'phcoder' Serbinenko
581ffa8a24
* grub-core/lib/adler32.c: Add missing license specification.
...
* grub-core/lib/crc64.c: Likewise.
* grub-core/loader/i386/pc/plan9.c: Likewise.
* grub-core/partmap/plan.c: Likewise.
2011-11-14 14:25:09 +01:00
Vladimir 'phcoder' Serbinenko
245f4582f9
merge mainline into backtrace
2011-11-14 10:50:24 +01:00
Vladimir 'phcoder' Serbinenko
9ad7edd055
merge mainline into backtrace
2011-11-14 10:49:13 +01:00
Lubomir Kundrak
2536cf6463
Add facility to debug GRUB with gdb under qemu.
...
* grub-core/gdb_grub.in: New file.
* grub-core/gmodule.pl.in: Likewise.
* grub-core/Makefile.core.def (gmodule.pl): New script.
(gdb_grub): Likewise.
2011-11-13 22:59:46 +01:00
Vladimir 'phcoder' Serbinenko
111c17782a
Plan9 support.
...
* Makefile.util.def (libgrubmods): Add
grub-core/partmap/plan.c.
* docs/grub.texi: Notice Plan9 support.
* grub-core/Makefile.core.def (plan9): New module.
(part_plan): Likewise.
* grub-core/loader/i386/pc/plan9.c: New file.
* grub-core/partmap/plan.c: Likewise.
* include/grub/msdos_partition.h (GRUB_PC_PARTITION_TYPE_PLAN9): New
define.
(GRUB_PC_PARTITION_TYPE_LINUX_SWAP): Likewise.
* include/grub/mm.h (grub_extend_alloc): New inline function.
2011-11-13 19:38:08 +01:00
Vladimir 'phcoder' Serbinenko
c30be3b694
Make Reed-Solomon faster by using power of generator representation of
...
GF(256)*.
* grub-core/lib/reed_solomon.c (grub_uint16_t) [TEST]: Removed.
(gf_double_t): Likewise.
(gf_invert): Removed.
(gf_powx): New array.
(gf_powx_inv): Likewise.
(scratch): Move higher.
(gf_reduce): Removed.
(gf_mul): Use powx.
(gf_invert): Likewise.
(init_inverts): Replaced with ...
(init_powx): ...this. All users updated.
(pol_evaluate): Replace multiplications with additions.
(rs_encode): Likewise.
(gauss_eliminate): Call gf_invert.
(grub_reed_solomon_add_redundancy): Call init_powx.
(grub_reed_solomon_recover): Call init_powx unconditionally.
2011-11-13 14:48:19 +01:00
Vladimir 'phcoder' Serbinenko
383ceaf060
Fix a mismerge
2011-11-13 12:52:21 +01:00
Vladimir 'phcoder' Serbinenko
4e01c8c165
Merge mainline into plan9
2011-11-13 12:48:39 +01:00
Vladimir 'phcoder' Serbinenko
fa5aeffcc2
* grub-core/partmap/gpt.c (gpt_partition_map_embed): Fix spelling.
2011-11-13 00:07:08 +01:00
Vladimir 'phcoder' Serbinenko
a346b81c7d
* grub-core/partmap/gpt.c (gpt_partition_map_embed): Restore
...
disk->partiton for safety.
2011-11-13 00:01:06 +01:00
Vladimir 'phcoder' Serbinenko
d89ee4141a
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
...
Fix a memory leak.
(grub_util_biosdisk_get_grub_dev): Add a useful debug info.
2011-11-12 23:46:47 +01:00
Vladimir 'phcoder' Serbinenko
91ee7b6d73
* grub-core/kern/emu/hostdisk.c (find_system_device): Fix a memory leak.
2011-11-12 23:42:49 +01:00
Vladimir 'phcoder' Serbinenko
0cddeb0360
Add copyright year.
2011-11-12 23:16:48 +01:00
Vladimir 'phcoder' Serbinenko
ba102053ce
Support ZFS embedding.
...
* grub-core/fs/zfs/zfs.c (grub_zfs_embed): New function.
(grub_zfs_fs): Register grub_zfs_embed.
2011-11-12 21:46:52 +01:00
Vladimir 'phcoder' Serbinenko
aa94b87027
Fix MIPS compilation.
...
* grub-core/boot/mips/startup_raw.S: Use GRUB_DECOMPRESSOR_*
* include/grub/offsets.h: Rename decompressor fields from
GRUB_KERNEL_* to GRUB_DECOMPRESSOR_*.
* util/grub-mkimage.c (image_targets): Use new names.
2011-11-12 21:38:04 +01:00
Vladimir 'phcoder' Serbinenko
5fbdac149b
Defer multiboot device parsing until we're in compressed part.
...
* grub-core/boot/i386/pc/lnxboot.S: Remove setting dos_part and
bsd_part. setdevice has fallen into disuse.
* grub-core/boot/i386/pc/startup_raw.S (dos_part): Removed.
(bsd_part): Likewise.
(boot_dev): New variable.
(multiboot_trampoline): Don't parse multiboot device.
Pass multiboot device in %edx.
* grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Parse
grub_boot_device.
* grub-core/kern/i386/pc/init.c (grub_machine_get_bootlocation):
Likewise.
* grub-core/kern/i386/pc/startup.S: Save edx.
(grub_boot_drive): Removed.
(grub_install_dos_part): Likewise.
(grub_install_bsd_part): Likewise.
(grub_boot_device): New variable.
* include/grub/i386/pc/kernel.h (grub_install_dos_part): Removed.
(grub_install_bsd_part): Likewise.
(grub_boot_drive): Likewise.
(grub_boot_device): New variable.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_INSTALL_DOS_PART):
Removed.
(GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise.
(GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Moved lower.
(GRUB_KERNEL_MACHINE_INSTALL_BSD_PART): Removed.
(GRUB_KERNEL_MACHINE_INSTALL_DOS_PART): Likewise.
* util/grub-install.in: Remove redundant condition.
2011-11-12 21:12:52 +01:00
Vladimir 'phcoder' Serbinenko
691cbb5816
Fix bug introduced by previous commit.
...
* grub-core/boot/i386/pc/startup_raw.S: Compute RS start correctly.
2011-11-12 20:53:46 +01:00
Vladimir 'phcoder' Serbinenko
60240b8bc1
Use decompressors framework on i386-pc. It increases core size
...
by 46 bytes but improves compatibility and maintainability.
* grub-core/Makefile.core.def (lzma_decompress): New image.
(kernel): Add i386_pc_ldflags.
* grub-core/kern/i386/pc/startup.S: Move intial part to ..
* grub-core/boot/i386/pc/startup_raw.S: ... here. Pass pointers
to real_to_prot, prot_to_real and device info.
* include/grub/offsets.h: Renamed decompressor offsets.
* util/grub-mkimage.c (grub_compression_t): New cmpression lzma.
(image_target_desc): Remove raw_size and rename decompressor fields.
(compress_kernel): Handle lzma.
(generate_image): Handle decompressors on i386-pc.
2011-11-12 19:53:25 +01:00
Vladimir 'phcoder' Serbinenko
2b23074a0c
Move assembly code to C by using intwrap. It increases core size
...
by 88 bytes but improves compatibility and maintainability.
* grub-core/kern/i386/pc/startup.S (grub_console_putchar): Moved to ...
* grub-core/term/i386/pc/console.c (grub_console_putchar_real):
... here. Translated to C.
* grub-core/kern/i386/pc/startup.S (grub_console_getkey): Moved to ...
* grub-core/term/i386/pc/console.c (grub_console_getkey):
... here. Translated to C.
* grub-core/kern/i386/pc/startup.S (grub_console_getxy): Moved to ...
* grub-core/term/i386/pc/console.c (grub_console_getxy):
... here. Translated to C.
* grub-core/kern/i386/pc/startup.S (grub_console_gotoxy): Moved to ...
* grub-core/term/i386/pc/console.c (grub_console_gotoxy):
... here. Translated to C.
* grub-core/kern/i386/pc/startup.S (grub_console_cls): Moved to ...
* grub-core/term/i386/pc/console.c (grub_console_cls):
... here. Translated to C.
* grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Moved to ..
* grub-core/term/i386/pc/console.c (grub_console_setcursor):
... here. Translated to C.
* grub-core/kern/i386/pc/startup.S (grub_get_rtc): Moved to ..
* grub-core/kern/i386/pc/init.c (grub_get_rtc): ... here.
Translated to C.
* grub-core/term/i386/pc/console.c (int10_9): New function.
(grub_console_putchar): Likewise.
* include/grub/i386/pc/console.h: Removed the not anymore shared
functions.
2011-11-12 16:29:04 +01:00
Vladimir 'phcoder' Serbinenko
678f4b6713
Move grub_chainloader_real_boot out of the kernel.
...
* grub-core/Makefile.am: Remove machine/loader.h.
* grub-core/kern/i386/pc/startup.S (grub_chainloader_real_boot):
Removed.
* grub-core/lib/i386/relocator.c (grub_relocator16_esi): New extern
variable.
(grub_relocator16_keep_a20_enabled): Likewise.
(grub_relocator16_boot): Fill new variables.
* grub-core/lib/i386/relocator16.S: Add gate a20 handling.
* grub-core/loader/i386/pc/chainloader.c (grub_chainloader_boot): Use
relocator.
(grub_chainloader_unload): Likewise.
(grub_chainloader_cmd): Likewise.
* include/grub/i386/pc/loader.h: Removed.
* include/grub/i386/relocator.h (grub_relocator16_state): Add a20
and esi. All initialisers updated.
2011-11-12 15:46:50 +01:00
Vladimir 'phcoder' Serbinenko
10f0117bf9
* grub-core/commands/efi/fixvideo.c: Gettextize.
...
* grub-core/commands/hashsum.c: Likewise.
* grub-core/commands/i386/cmostest.c: Likewise.
* grub-core/commands/i386/pc/drivemap.c: Likewise.
* grub-core/commands/i386/pc/lsapm.c: Likewise.
* grub-core/commands/i386/pc/sendkey.c: Likewise.
* grub-core/commands/lsmmap.c: Likewise.
* grub-core/commands/menuentry.c: Likewise.
* grub-core/commands/mips/loongson/lsspd.c: Likewise.
* grub-core/commands/setpci.c: Likewise.
* grub-core/loader/i386/bsd.c: Likewise.
* grub-core/loader/i386/linux.c: Likewise.
* util/getroot.c: Likewise.
* util/grub-editenv.c: Likewise.
* util/grub-fstest.c: Likewise.
* util/grub-mkfont.c: Likewise.
* util/grub-mkimage.c: Likewise.
* util/grub-mkpasswd-pbkdf2.c: Likewise.
* util/grub-pe2elf.c: Likewise.
* util/grub-probe.c: Likewise.
* util/grub-setup.c: Likewise.
* util/ieee1275/ofpath.c: Likewise.
* util/misc.c: Likewise.
* util/raid.c: Likewise.
2011-11-12 00:34:14 +01:00
Vladimir 'phcoder' Serbinenko
119d11c885
Replace grub_fatal with normal errors in i386 linux loader.
...
* grub-core/loader/i386/linux.c (find_efi_mmap_size): Return 0 on error.
(allocate_pages): Check find_efi_mmap_size return value.
(grub_e820_add_region): Return error.
(grub_linux_boot): Check mmap return value.
2011-11-11 22:35:09 +01:00
Vladimir 'phcoder' Serbinenko
6e0632e28c
* grub-core/commands/acpihalt.c: Gettextized.
...
* grub-core/commands/cacheinfo.c: Likewise.
* grub-core/commands/cmp.c: Likewise.
* grub-core/commands/efi/loadbios.c: Likewise.
* grub-core/commands/gptsync.c: Likewise.
* grub-core/commands/ieee1275/suspend.c: Likewise.
* grub-core/commands/legacycfg.c: Likewise.
* grub-core/commands/memrw.c: Likewise.
* grub-core/commands/minicmd.c: Likewise.
* grub-core/commands/parttool.c: Likewise.
* grub-core/commands/time.c: Likewise.
* grub-core/commands/videoinfo.c: Likewise.
* grub-core/disk/geli.c: Likewise.
* grub-core/disk/i386/pc/biosdisk.c: Likewise.
* grub-core/disk/luks.c: Likewise.
* grub-core/disk/lvm.c: Likewise.
* grub-core/font/font_cmd.c: Likewise.
* grub-core/fs/zfs/zfscrypt.c: Likewise.
* grub-core/fs/zfs/zfsinfo.c: Likewise.
* grub-core/gfxmenu/view.c: Likewise.
* grub-core/kern/emu/hostdisk.c: Likewise.
* grub-core/kern/emu/main.c: Likewise.
* grub-core/kern/emu/misc.c: Likewise.
* grub-core/kern/emu/mm.c: Likewise.
* grub-core/kern/mips/arc/init.c: Likewise.
* grub-core/kern/mips/loongson/init.c: Likewise.
* grub-core/kern/partition.c: Likewise.
* grub-core/lib/i386/halt.c: Likewise.
* grub-core/lib/mips/arc/reboot.c: Likewise.
* grub-core/lib/mips/loongson/reboot.c: Likewise.
* grub-core/loader/i386/pc/chainloader.c: Likewise.
* grub-core/loader/i386/xnu.c: Likewise.
* grub-core/loader/multiboot.c: Likewise.
* grub-core/net/bootp.c: Likewise.
* grub-core/net/net.c: Likewise.
* grub-core/normal/term.c: Likewise.
* grub-core/partmap/bsdlabel.c: Likewise.
* grub-core/parttool/msdospart.c: Likewise.
* grub-core/term/gfxterm.c: Likewise.
* grub-core/term/terminfo.c: Likewise.
* grub-core/video/i386/pc/vbe.c: Likewise.
* util/grub-menulst2cfg.c: Likewise.
* util/grub-mkdevicemap.c: Likewise.
* util/grub-mklayout.c: Likewise.
* util/grub-mkrelpath.c: Likewise.
* util/grub-script-check.c: Likewise.
* util/ieee1275/grub-ofpathname.c: Likewise.
* util/resolve.c: Likewise.
2011-11-11 21:44:56 +01:00
Vladimir 'phcoder' Serbinenko
12d4f965cd
Support %1$d syntax.
...
* tests/printf_unit_test.c: New file.
* Makefile.util.def (printf_test): New test.
* grub-core/kern/misc.c (grub_vsnprintf_real): Support %1$d syntax.
2011-11-11 21:14:41 +01:00
Vladimir 'phcoder' Serbinenko
c76b541762
* grub-core/hook/datehook.c (grub_read_hook_datetime): Small stylistic
...
fix.
2011-11-11 21:03:49 +01:00
Vladimir 'phcoder' Serbinenko
df067ad13a
* grub-core/efiemu/mm.c (grub_efiemu_mmap_fill): Change printf into
...
dprintf.
* grub-core/font/font.c (grub_font_load): Likewise.
2011-11-11 20:59:25 +01:00
Vladimir 'phcoder' Serbinenko
5b289bc5f6
* util/grub-macho2img.c: Add comment concerning gettext.
...
* grub-core/lib/legacy_parse.c: Likewise.
2011-11-11 20:52:41 +01:00
Vladimir 'phcoder' Serbinenko
c1860f878b
* grub-core/kern/misc.c (grub_vprintf): Add missing va_end.
...
(grub_xvasprintf): Likewise.
2011-11-11 20:45:31 +01:00
Vladimir 'phcoder' Serbinenko
d35d0d3753
Add const keyword to grub_env_get and gettextize week days.
...
* grub-core/hook/datehook.c (grub_datetime_names): Make const.
(grub_read_hook_datetime): Return const char *.
* grub-core/kern/env.c (grub_env_get): Return const char *. All users
updated.
* grub-core/normal/datetime.c (grub_weekday_names): Make const.
Mark for gettext.
(grub_get_weekday_name): Return const char *. Call gettext.
* grub-core/script/argv.c (grub_script_argv_append): Receive const
char * and len as the argument. All users updated.
(grub_script_argv_split_append): Receive const char *.
* include/grub/datetime.h (grub_get_weekday_name): Update proto.
* include/grub/env.h (grub_env_get): Likewise.
(grub_env_read_hook_t): Return const char *.
* include/grub/script_sh.h (grub_script_argv_append): Update proto.
(grub_script_argv_split_append): Likewise.
2011-11-11 20:34:37 +01:00
Vladimir 'phcoder' Serbinenko
9aed8a7178
* grub-core/normal/main.c (grub_normal_execute): Remove leftover call.
2011-11-11 20:09:14 +01:00
Vladimir 'phcoder' Serbinenko
067fdf0055
* grub-core/kern/misc.c (grub_strstr): Moved from here ...
...
* include/grub/misc.h (grub_strstr): ... here. Make static and inline.
2011-11-11 20:02:51 +01:00
Vladimir 'phcoder' Serbinenko
f7ce5bafb5
Fix mips compilation.
...
* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec): Restrict hash_id to
normal decoder.
(hashes): Use in embed decoder as well (for sizes).
(dec_stream_header): Fix embed decompressor logic.
(dec_stream_footer): Likewise.
2011-11-11 18:30:34 +01:00
Vladimir 'phcoder' Serbinenko
9bb182f371
* grub-core/kern/x86_64/dl.c (grub_arch_dl_relocate_symbols): Issue
...
an error and not a fatal on unrecognised relocation types.
2011-11-11 18:05:16 +01:00
Vladimir 'phcoder' Serbinenko
63a9e6f6a0
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args):
...
Issue error rather than printf on unknown arguments.
2011-11-11 17:44:47 +01:00
Vladimir 'phcoder' Serbinenko
4c458569a7
* grub-core/kern/ieee1275/ieee1275.c (grub_ieee1275_set_property):
...
Make buf a const.
2011-11-11 17:34:38 +01:00
Vladimir 'phcoder' Serbinenko
e2d22baf41
* grub-core/fs/zfs/zfscrypt.c (GRUB_MOD_INIT), (GRUB_MOD_FINI):
...
Fix module name.
2011-11-11 17:21:33 +01:00
Vladimir 'phcoder' Serbinenko
53dc859065
* grub-core/fs/ntfs.c (grub_ntfs_read_symlink): Stylistic fix. Remove
...
leftover debug printf.
2011-11-11 17:18:34 +01:00
Vladimir 'phcoder' Serbinenko
6c1892942d
* grub-core/fs/btrfs.c (grub_btrfs_embed): Spelling fix.
2011-11-11 17:13:23 +01:00
Vladimir 'phcoder' Serbinenko
f768836950
* grub-core/efiemu/main.c (grub_efiemu_register_configuration_table):
...
A stylistic fix.
2011-11-11 17:10:50 +01:00
Vladimir 'phcoder' Serbinenko
11a775a3ad
* grub-core/commands/probe.c (grub_cmd_probe): Fix error message.
2011-11-11 17:08:29 +01:00
Shea Levy
33f784e881
Allow all modules to perform serial IO
...
* grub-core/term-serial.c (grub_serial_find): Remove static qualifier
* include/grub/serial.h (grub_serial_port_configure): New inline
function.
(grub_serial_port_fetch): Likewise.
(grub_serial_port_put): Likewise.
(grub_serial_port_fini): Likewise.
(grub_serial_find): New proto.
2011-11-10 09:41:07 +01:00
Vladimir 'phcoder' Serbinenko
f627652531
Put symlink at the end of the node and fix a potential
...
memory corruption.
* grub-core/fs/iso9660.c (grub_fshelp_node): New field have_symlink.
Make symlink into an array.
(set_rockridge): Set have_symlink and alloc_dirents.
(grub_iso9660_read_symlink): Use new layout.
(grub_iso9660_iterate_dir): Fix memory corruption.
Use new layout.
(grub_iso9660_dir): Set have_symlink.
(grub_iso9660_open): Likewise.
2011-11-10 09:31:06 +01:00
Vladimir 'phcoder' Serbinenko
cb544caa2e
* grub-core/fs/zfs/zfs.c (zfs_mount): Fix spurious warning.
2011-11-10 08:43:08 +01:00
Vladimir 'phcoder' Serbinenko
45bd824d2e
Fix ZFS memory and resource leaks.
...
* grub-core/fs/zfs/zfs.c (fill_vdev_info_real): New paramter inserted.
All users updated.
Free type on exit.
(fill_vdev_info): New parameter inserted. All users updated.
(check_pool_label): Likewise.
(scan_disk): Likewise.
(scan_devices): Close non-inserted disks.
(fzap_iterate): Free l.
(unmount_device): Free children descripto memory.
2011-11-10 08:38:06 +01:00
Vladimir 'phcoder' Serbinenko
ad9a2f44b4
* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Fix grub_strncat
...
argument (access out of bounds).
2011-11-10 08:16:27 +01:00
Vladimir 'phcoder' Serbinenko
6b68db81fc
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Fix RAID10 logic for
...
>= 6 drives.
2011-11-10 08:09:33 +01:00
Vladimir 'phcoder' Serbinenko
8a5a3a5b5a
Fix several memory leaks.
...
* grub-core/fs/btrfs.c (grub_btrfs_dir): Fix memory leak.
* grub-core/fs/cpio.c (grub_cpio_find_file): Likewise.
(grub_cpio_dir): Likewise.
* grub-core/fs/fat.c (grub_fat_label): Likewise.
* grub-core/fs/jfs.c (grub_jfs_label): Likewise.
* grub-core/fs/romfs.c (grub_romfs_close): Likewise.
(grub_romfs_label): Likewise.
* grub-core/fs/squash4.c (squash_mount): Use zalloc for safety.
(squash_unmount): New function.
(grub_squash_dir): Fix memory leak.
(grub_squash_open): Likewise.
(grub_squash_read): Likewise.
(grub_squash_mtime): Likewise.
* grub-core/fs/xfs.c (grub_xfs_open): Likewise.
* grub-core/fs/zfs/zfs.c (check_pool_label): Likewise.
* util/grub-fstest.c (fstest): Likewise.
2011-11-09 15:01:58 +01:00
Vladimir 'phcoder' Serbinenko
52b656c037
Several AFFS fixes.
...
* grub-core/fs/affs.c (grub_affs_bblock): Replace flags with version.
(GRUB_AFFS_FLAG_FFS): Removed.
(GRUB_AFFS_SYMLINK_SIZE): Likewise.
(GRUB_AFFS_FILETYPE_DIR): Make positive and unsigned.
(GRUB_AFFS_FILETYPE_DIR), (GRUB_AFFS_FILETYPE_REG): Fix a mix-up.
(grub_fshelp_node): Make block 32-bit.
Add block_cache and last_block_cache.
(grub_affs_read_block): Fill and use block cache.
(grub_affs_read_file): Removed.
(grub_affs_mount): Zero-fill node. Fix version check. Don't reread
boot block.
(grub_affs_read_symlink): Fix symlink size. Add a \0 at the end for
safety.
(grub_affs_iterate_dir): Use more appropriate types. Zero-fill allocated
space.
(grub_affs_close): Free block cache.
(grub_affs_read): Use grub_fshelp_read_file directly.
2011-11-09 11:43:39 +01:00
Vladimir 'phcoder' Serbinenko
438a746a3f
* grub-core/fs/zfs/zfs.c (read_dva): Issue an error if read failed
...
with no error set.
2011-11-08 20:03:06 +01:00
Vladimir 'phcoder' Serbinenko
49a45021c1
* grub-core/lib/LzmaEnc.c (LzmaEnc_CodeOneBlock): Remove set but not
...
used variable.
* grub-core/kern/ia64/dl_helper.c (grub_ia64_dl_get_tramp_got_size):
Likewise.
2011-11-08 19:46:41 +01:00
Vladimir 'phcoder' Serbinenko
3ae17eb83c
Fix potential problem with calling zfs_to_cpu and cpu_to_be in a row.
...
* grub-core/fs/zfs/zfscrypt.c (grub_zfs_decrypt_real): Use explicit
byteswap when needed.
2011-11-08 19:44:18 +01:00
Vladimir 'phcoder' Serbinenko
27610c3836
Fix FreeBSD compilation.
...
* grub-core/disk/geli.c (GRUB_MD_SHA256) [GRUB_UTIL]: Redefine in a way
to avoid circular dependency.
(GRUB_MD_SHA512) [GRUB_UTIL]: Likewise.
* util/getroot.c (grub_util_follow_gpart_up): Move from here...
* grub-core/kern/emu/hostdisk.c (+grub_util_follow_gpart_up): ... here.
2011-11-08 19:34:19 +01:00
Vladimir 'phcoder' Serbinenko
4a19b6017d
Fix ZFS crypto error types.
...
* grub-core/fs/zfs/zfscrypt.c (grub_ccm_decrypt): Fix return type.
(grub_gcm_decrypt): Likewise.
(grub_zfs_load_key_real): Fix error code type. Handle possible error
from PBKDF2.
2011-11-08 16:07:27 +01:00
Vladimir 'phcoder' Serbinenko
958ee22168
Illumos support.
...
* Makefile.util.def (10_illumos): New script.
* configure.ac: Set COND_HOST_ILLUMOS.
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors) [__sun__]:
Support Illumos calls.
(find_partition_start) [__sun__]: Likewise.
(convert_system_partition_to_system_disk) [__sun__]: Likewise.
(device_is_wholedisk) [__sun__]: Handle Illumos naming scheme.
(grub_util_biosdisk_get_grub_dev) [__sun__]: Handle Illumos.
* util/getroot.c (find_root_device_from_libzfs) [__sun__]: Return raw
device.
* util/grub-probe.c (probe) [__sun__]: Do character check.
* util/grub.d/10_illumos.in: New file.
2011-11-08 12:38:30 +01:00
Vladimir 'phcoder' Serbinenko
cac14fb663
Support escaped commas in hostdisk.
...
* grub-core/kern/emu/hostdisk.c (unescape_cmp): New function.
(find_grub_drive): Use unescape_cmp.
(make_device_name): Escape commas.
2011-11-08 12:15:57 +01:00
Vladimir 'phcoder' Serbinenko
9f421dd1f0
* grub-core/fs/zfs/zfs.c (zap_iterate): Remove set but not used
...
variable.
2011-11-08 11:32:19 +01:00
Vladimir 'phcoder' Serbinenko
ed64e9e279
Support trampoline jumps on powerpc.
...
* grub-core/kern/dl.c (grub_dl_load_segments) [__powerpc__]: Follow
__ia64__ path.
(grub_dl_load_segments): Set mod->sz.
(grub_dl_flush_cache): Flush whole space occupied by module, not just
segments.
* grub-core/kern/ia64/dl.c (nopm): Make const while on it.
(jump): Likewise.
* grub-core/kern/powerpc/dl.c (grub_arch_dl_get_tramp_got_size): New
function.
(trampoline): New struct.
(trampoline_template): New const.
(grub_arch_dl_relocate_symbols): Create trampolines on overflow.
* include/grub/dl.h (grub_dl): Add sz element.
[__powerpc__]: Follow __ia64__.
(GRUB_ARCH_DL_TRAMP_ALIGN): Define on ppc.
(GRUB_ARCH_DL_GOT_ALIGN): Likewise.
(GRUB_ARCH_DL_TRAMP_SIZE): Likewise.
(grub_arch_dl_get_tramp_got_size) [__powerpc__]: New proto.
2011-11-08 11:23:56 +01:00
Vladimir 'phcoder' Serbinenko
3084ede4c7
ZFS crypto support.
...
* Makefile.util.def (libgrubmods): Add grub-core/fs/zfs/zfscrypt.c.
* grub-core/Makefile.core.def (zfscrypt): New module.
* grub-core/fs/zfs/zfs.c (subvolume): New structure.
(grub_zfs_data): Replace mdn with subvol. Put case_insensitivity inside
it. All users updated.
(grub_zfs_decrypt): New var.
(grub_zfs_load_key): Likewise.
(zio_checksum_functions): Add SHA256+MAC.
(zio_checksum_verify): Handle incomplete comparison due to MAC.
(zio_read): Handle encrypted blocks.
(zap_verify): Remove incorrect check.
(fzap_iterate): Handle non-standard fzap.
(zap_iterate): Likewise.
(zap_iterate_u64): New function.
(dnode_get_fullpath): Load keys.
* grub-core/fs/zfs/zfscrypt.c: New file.
* grub-core/lib/crypto.c (grub_crypto_cipher_close): Removed.
(grub_crypto_ecb_encrypt): Make input const.
* include/grub/crypto.h (grub_crypto_cipher_close): Inline.
(grub_crypto_ecb_encrypt): Make input const.
(GRUB_CIPHER_AES): New macro.
* include/grub/zfs/dmu.h (dmu_object_type): Add DMU_OT_DSL_KEYCHAIN.
* include/grub/zfs/dsl_dir.h (dsl_dir_phys): Add keychain.
* include/grub/zfs/spa.h (grub_zfs_endian): Moved from here ...
* include/grub/zfs/zfs.h (grub_zfs_endian): ... here. Added GURB_ZFS_
prefix. All users updated.
(grub_zfs_add_key): New proto.
(grub_zfs_decrypt): Likewise.
(grub_zfs_load_key): Likewise.
* include/grub/zfs/zio.h (zio_checksum): Add SHA256+MAC.
* util/grub-fstest.c (options): Add -K option.
(argp_parser): Likewise.
2011-11-06 21:44:48 +01:00
Vladimir 'phcoder' Serbinenko
ae9a20d973
Small cleanup
2011-11-06 21:08:32 +01:00
Vladimir 'phcoder' Serbinenko
bc1de0bc26
GCM support
2011-11-06 21:05:25 +01:00
Vladimir 'phcoder' Serbinenko
d99b3726e5
Support ZFS subvolumes with multiple keys
2011-11-06 17:13:38 +01:00
Vladimir 'phcoder' Serbinenko
ed746949af
ZFS passphrase support
2011-11-06 16:30:52 +01:00
Vladimir 'phcoder' Serbinenko
f003a8c5e7
Move ZFS crypto to separate module
2011-11-06 15:18:25 +01:00
Vladimir 'phcoder' Serbinenko
2cdc899567
ZFS crypto key adding
2011-11-06 14:44:29 +01:00
Vladimir 'phcoder' Serbinenko
1bc7cc1b4d
First part of zfs-crypto. CCM support with 0-filled keys
2011-11-06 13:18:27 +01:00
Vladimir 'phcoder' Serbinenko
b632b404e0
Support zle compression on ZFS.
...
* grub-core/fs/zfs/zfs.c (zle_decompress): New function.
(decomp_table): Add zle.
* include/grub/zfs/zio.h (zio_compress): Add zle.
2011-11-05 14:50:53 +01:00
Vladimir 'phcoder' Serbinenko
c7ba4f6984
Support BtrFS embedding.
...
* grub-core/fs/btrfs.c (grub_btrfs_embed) [GRUB_UTIL]: New function.
(grub_btrfs_fs) [GRUB_UTIL]: Set embed.
* include/grub/fs.h (grub_fs) [GRUB_UTIL]: New field embed.
* util/grub-setup.c (setup): Use fs embedding if available.
Add additional sanity check.
2011-11-05 14:47:25 +01:00
Vladimir 'phcoder' Serbinenko
c2fd16cacb
Support third redundancy strip on raidz3.
...
* grub-core/fs/zfs/zfs.c (recovery): Add Gauss for general case.
Return error on singularity. All users updated.
(read_device): Don't stop on 3rd failure on raidz3.
2011-11-04 15:19:23 +01:00
Vladimir 'phcoder' Serbinenko
8622923b66
Support case-insensitive ZFS subvolumes.
...
* grub-core/fs/zfs/zfs.c (mzap_lookup): New parameter case_insensitive.
All users updated.
(zap_hash): Likewise.
(name_cmp): New function.
(zap_leaf_array_equal): New parameter case_insensitive.
All users updated.
(zap_leaf_lookup): Likewise.
(fzap_lookup): Likewise.
(zap_lookup): Likewise.
(dnode_get_path): New parameter case_insensitive. Retrieve case
sensitiviness of a volume. All users updated.
(dnode_get_fullpath): New parameter case_insensitive.
All users updated.
(grub_zfs_dir): Set info.case_insensitiveness.
2011-11-04 13:44:56 +01:00
Vladimir 'phcoder' Serbinenko
95f2e86095
Support second redundancy strip on raidz(2,3).
...
* grub-core/fs/zfs/zfs.c (powx): New array.
(powx_inv): Likewise.
(poly): New const.
(xor_out): New function.
(gf_mul): Likewise.
(recovery): Likewise.
(read_device): Use second redundancy strip.
2011-11-04 13:36:08 +01:00
Vladimir 'phcoder' Serbinenko
11ee4389e2
Use a power of generator representation of GF(256) multiplication group
...
to save space time and complexity.
* grub-core/disk/raid6_recover.c (raid6_table1): Removed.
(raid6_table2): Likewise.
(powx): New array.
(powx_inv): Likewise.
(poly): New const.
(grub_raid_block_mul): Replace with ...
(grub_raid_block_mulx): ...this.
(grub_raid6_init_table): Rewritten.
(grub_raid6_recover): Use power of generator representation.
2011-11-04 13:27:50 +01:00
Vladimir 'phcoder' Serbinenko
09e2763fb1
* grub-core/disk/raid6_recover.c (grub_raid6_recover): Get start_sector
...
for the right device.
2011-11-04 13:22:38 +01:00
Vladimir 'phcoder' Serbinenko
dbd3a32e43
* grub-core/disk/raid.c (scan_devices): Don't derference NULL on whole
...
disk.
* grub-core/disk/lvm.c (do_lvm_scan): Likewise.
2011-11-04 13:15:29 +01:00
Vladimir 'phcoder' Serbinenko
1e51cabd7b
* grub-core/gettext/gettext.c (grub_gettext_init_ext): Exit if local is
...
NULL.
2011-11-03 16:04:26 +01:00
Vladimir 'phcoder' Serbinenko
158dc1ea26
XZ CRC64 and SHA256 support.
...
* Makefile.util.def (libgrubmods): Add crc64.c.
* grub-core/Makefile.core.def (crc64): New module.
* grub-core/lib/crc64.c: New file.
* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_hash)
[!GRUB_EMBED_DECOMPRESSOR]: Rename crc32_context to hash_context.
Fix the type.
(MAX_HASH_SIZE): New define.
(xz_dec) [!GRUB_EMBED_DECOMPRESSOR]: Add generic hash fields.
(dec_block) [!GRUB_EMBED_DECOMPRESSOR]: Handle non-crc32 hashes.
(index_update) [!GRUB_EMBED_DECOMPRESSOR]: Likewise.
(dec_index) [!GRUB_EMBED_DECOMPRESSOR]: Likewise.
(crc32_validate) [!GRUB_EMBED_DECOMPRESSOR]: Rename to ...
(hash_validate) [!GRUB_EMBED_DECOMPRESSOR]: ... this.
Handle non-crc32 hashes.
(hashes) [!GRUB_EMBED_DECOMPRESSOR]: New variable.
(dec_stream_header): Handle non-crc32 hashes.
(dec_stream_footer): Likewise.
(dec_block_header): Likewise.
(dec_main): Likewise.
(xz_dec_init): Likewise.
(xz_dec_reset): Likewise.
(xz_dec_end): Likewise.
* util/import_gcry.py: Add CRC64 line.
2011-11-03 15:13:30 +01:00
Vladimir 'phcoder' Serbinenko
9d9b3d2f02
* grub-core/fs/ufs.c (grub_ufs_mtime) [MODE_UFS2]: Check mtime field
...
as well.
2011-11-03 15:00:45 +01:00
Vladimir 'phcoder' Serbinenko
7d0ac93163
Make reiserfs label retrieval similar to other *_label functions.
...
* grub-core/fs/reiserfs.c (grub_reiserfs_superblock): New field label.
(REISERFS_MAX_LABEL_LENGTH): Removed.
(REISERFS_LABEL_OFFSET): Likewise.
(grub_reiserfs_label): Rewritten.
2011-11-03 14:57:34 +01:00
Vladimir 'phcoder' Serbinenko
f92ece7d45
* grub-core/fs/nilfs2.c (grub_nilfs2_mtime): Use correct superblock
...
field.
2011-11-03 14:52:59 +01:00
Vladimir 'phcoder' Serbinenko
cf5ba824ea
* grub-core/fs/zfs/zfs.c (read_device): Support raidz3.
2011-11-03 07:29:35 +01:00
Vladimir 'phcoder' Serbinenko
177440046d
* grub-core/fs/zfs/zfs.c (read_device): Add ability to sustain a single
...
drive failure on both raidz and raidz2.
2011-11-02 23:28:25 +01:00
Vladimir 'phcoder' Serbinenko
aca5aefc7c
Fix RAIDZ(2) for >= 5 devices.
...
* grub-core/fs/zfs/zfs.c (read_device): Fix length formula. Remove
asize argument. All users updated.
2011-11-02 20:48:04 +01:00
Vladimir 'phcoder' Serbinenko
ce8ca56ed9
Fix RAIDZ(2).
...
* grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New member ashift.
(fill_vdev_info_real): Set ashift.
(read_device): Rewrite RAIDZ part based on reverse engineering.
2011-11-01 20:05:28 +01:00
Vladimir 'phcoder' Serbinenko
7c01e783dc
* grub-core/fs/btrfs.c (grub_btrfs_extent_read): Add sanity check and
...
don't report potentially unavialiable fields in debug output.
(find_path): Fix double-free and memory leak.
2011-10-31 13:56:52 +01:00
Vladimir 'phcoder' Serbinenko
ce109e843c
Read label on UFS1.
...
* grub-core/fs/ufs.c (grub_ufs_label): Remove MODE_UFS2 condition.
(grub_ufs_fs): Always set .label.
2011-10-31 10:52:39 +01:00
Vladimir 'phcoder' Serbinenko
87661123b2
Use shifts in UFS.
...
* grub-core/fs/ufs.c (UFS_LOG_BLKSZ): New macro.
(grub_ufs_data): New field log2_blksz.
(grub_ufs_read_file): Use shifts.
(grub_ufs_mount): Check block size and logarithm it.
2011-10-31 10:50:43 +01:00
Vladimir 'phcoder' Serbinenko
46bc1dc244
* grub-core/fs/ufs.c (grub_ufs_lookup_symlink): Fix handling of
...
long symlinks.
2011-10-31 10:40:30 +01:00
Vladimir 'phcoder' Serbinenko
19ee298767
Handle symlinks and long names on tar and cpio.
...
* grub-core/fs/cpio.c (ATTR_TYPE): New definition.
(ATTR_FILE): Likewise.
(ATTR_DIR): Likewise.
(ATTR_LNK): Likewise.
(grub_cpio_data) [MODE_USTAR]: New fields linkname and linkname_alloc.
(grub_cpio_find_file): Fill mode, handle linkname field as well as
L and K entries.
(grub_cpio_mount): Zero-fill data.
(handle_symlink): New function.
2011-10-30 23:06:25 +01:00
Vladimir 'phcoder' Serbinenko
c83a08d84a
Fix iso9660 filename limitations and fix memory leaks.
...
* grub-core/fs/iso9660.c (set_rockridge): Free sua at the end.
(grub_iso9660_iterate_dir): Fix slash handling in symlinks.
2011-10-30 20:23:05 +01:00
Vladimir 'phcoder' Serbinenko
45cdd3ea37
Fix JFS file name length limitations.
...
* grub-core/fs/jfs.c (grub_jfs_inode): Fix in-place symlink length.
(grub_jfs_diropen): Fix maximum filename length.
(grub_jfs_getent): Fix filename length.
(grub_jfs_lookup_symlink): Fix size checks.
2011-10-30 20:14:57 +01:00
Vladimir 'phcoder' Serbinenko
94ef05c265
* grub-core/loader/mips/linux.c (loongson_machtypes): Fix fuloong type
...
string.
2011-10-30 19:30:04 +01:00
Vladimir 'phcoder' Serbinenko
eb0b6b45f3
Leverage BFS implementation to read AFS.
...
* Makefile.util.def (libgrubmods): Add afs.c.
* grub-core/Makefile.core.def (afs): New module
* grub-core/fs/afs.c: New file.
* grub-core/fs/bfs.c [MODE_AFS]: Adapt for AFS.
2011-10-30 16:10:18 +01:00
Vladimir 'phcoder' Serbinenko
80f9f81424
Fix a mistake in previous commit
2011-10-30 14:25:53 +01:00
Vladimir 'phcoder' Serbinenko
785ab8c760
* grub-core/fs/bfs.c: MAcroify and add some necessary sanity checks.
2011-10-30 14:17:44 +01:00
Vladimir 'phcoder' Serbinenko
c4a1628f67
* grub-core/fs/bfs.c: Run indent.
2011-10-30 13:27:53 +01:00
Vladimir 'phcoder' Serbinenko
5825b3794b
BFS implementation based on the specification.
...
* grub-core/fs/bfs.c: New file.
* Makefile.util.def (libgrubmods): Add bfs.c.
* grub-core/Makefile.core.def (bfs): New module.
2011-10-30 13:25:51 +01:00
Yves Blusseau
93f87ec28d
* grub-core/net/tcp.c (grub_net_ip_transport_checksum): Silence spurious
...
warning.
2011-10-30 10:50:26 +01:00
Vladimir 'phcoder' Serbinenko
faba3d163a
Remove afs and befs because of copyright problem.
...
* grub-core/fs/afs.c: Removed.
* grub-core/fs/afs_be.c: Removed.
* grub-core/fs/befs.c: Removed.
* grub-core/fs/befs_be.c: Removed.
* Makefile.util.def (libgrubkern): Remove afs, afs_be, befs and befs_be.
* grub-core/Makefile.core.def (afs): Removed.
(afs_be): Likewise.
(befs): Likewise.
(befs_be): Likewise.
2011-10-29 11:29:34 +02:00
Vladimir 'phcoder' Serbinenko
c39224b052
Prefer rockridge over Joliet.
...
* grub-core/fs/iso9660.c (grub_iso9660_mount): Move rockridge detection
to ...
(set_rockridge): ... here.
(grub_iso9660_mount): Check rockridge on the primary label when
discovering. Ignore Joliet if Rockridge is present.
2011-10-28 16:26:17 +02:00
Vladimir 'phcoder' Serbinenko
e551115a26
Use shifts in nilfs2.
...
* grub-core/fs/nilfs2.c (LOG_INODE_SIZE): New definition.
(LOG_NILFS_DAT_ENTRY_SIZE): Likewise.
(grub_nilfs2_palloc_entries_per_group): Replace with ...
(grub_nilfs2_log_palloc_entries_per_group): ... this.
(grub_nilfs2_palloc_group): Use shifts and bitmasks.
(grub_nilfs2_entries_per_block): Replaced with ...
(grub_nilfs2_log_entries_per_block_log): ... this.
(grub_nilfs2_blocks_per_group): Replaced with ...
(grub_nilfs2_blocks_per_group_log): ... this.
(grub_nilfs2_blocks_per_desc_block): Replaced with ...
(grub_nilfs2_blocks_per_desc_block_log): ... this.
(grub_nilfs2_palloc_desc_block_offset): Replaced with ...
(grub_nilfs2_palloc_desc_block_offset_log): ... this.
(grub_nilfs2_palloc_entry_offset): Replaced ...
(grub_nilfs2_palloc_entry_offset_log): ... this. Use shifts.
(grub_nilfs2_dat_translate): Use shifts.
(grub_nilfs2_read_inode): Likewise.
(GRUB_MOD_INIT): Ensure that logs are correct.
2011-10-28 16:21:18 +02:00
Vladimir 'phcoder' Serbinenko
564dd58c2a
Use shifts in minix filesystem.
...
* grub-core/fs/minix.c (GRUB_MINIX_ZONESZ): Use log_block_size.
(GRUB_MINIX_ZONE2SECT): Likewise.
(grub_minix_data): Replace block_size with log_block_size.
(grub_minix_read_file): Use shifts.
(grub_minix_mount): Check block size and take a logarithm.
2011-10-28 16:09:20 +02:00
Vladimir 'phcoder' Serbinenko
ed9ba06dd0
Use shifts in squash4.
...
* grub-core/fs/squash4.c (grub_squash_data): New field log2_blksz.
(squash_mount): Check block size and take logarithm.
(direct_read): Use shifts.
2011-10-28 16:05:16 +02:00
Vladimir 'phcoder' Serbinenko
ad03fe768e
Correct befs block counting logic.
...
* grub-core/fs/afs.c (GRUB_AFS_BLOCKS_PER_DI_RUN): Replaced with...
(GRUB_AFS_LOG_BLOCKS_PER_DI_RUN): ... this.
(GRUB_AFS_BLOCKRUN_LOG_SIZE): New definition.
(grub_afs_read_inode): Use block_shift.
(RANGE_SHIFT): New definition.
(grub_afs_read_block): Account for RANGE_SHIFT, emit errors on
unexpected conditions, use shifts and appropriate types.
(GRUB_MOD_INIT): Check the value of GRUB_AFS_BLOCKRUN_LOG_SIZE.
2011-10-28 15:59:47 +02:00
Vladimir 'phcoder' Serbinenko
6563f63dfd
* grub-core/disk/raid.c (scan_devices): Check partition.
...
* grub-core/disk/lvm.c (do_lvm_scan): Likewise.
2011-10-28 15:52:15 +02:00
Vladimir 'phcoder' Serbinenko
5b1ae25f06
Support BFS (befs) UUID.
...
* grub-core/fs/afs.c (grub_afs_inode): Make small_data zero-size.
(grub_afs_small_data_element_header): New struct.
(grub_afs_read_inode): Read complete inode. Fix ino type while on it.
(grub_afs_read_attribute) [MODE_BFS]: New function.
(grub_afs_iterate_dir): Allocate for complete inode.
(grub_afs_mount): Likewise.
(grub_afs_uuid) [MODE_BFS]: New function.
(grub_afs_fs) [MODE_BFS]: Add .uuid.
2011-10-27 20:58:52 +02:00
Vladimir 'phcoder' Serbinenko
f8d82408d9
* grub-core/fs/zfs/zfs.c (read_device): Silence spurious warning.
...
(zfs_unmount): Fix memory leak.
2011-10-27 20:55:09 +02:00
Vladimir 'phcoder' Serbinenko
5773fb6410
Support NTFS reparse points.
...
* grub-core/fs/ntfs.c (list_file): Set symlink type when appropriate.
(symlink_descriptor): New struct.
(grub_ntfs_read_symlink): New function.
(grub_ntfs_iterate_dir): Use grub_ntfs_read_symlink.
(grub_ntfs_open): Likewise.
2011-10-27 03:04:27 +02:00
Vladimir 'phcoder' Serbinenko
91c3fdde0d
* include/grub/ntfs.h: Add GRUB_NTFS_ prefix. All users updated.
2011-10-27 02:59:45 +02:00
Vladimir 'phcoder' Serbinenko
8e32442e80
* grub-core/commands/xnu_uuid.c (grub_cmd_xnu_uuid): Support
...
-l argument. Add newline at the end if printing.
(GRUB_MOD_INIT): Document -l.
2011-10-27 02:55:07 +02:00
Vladimir 'phcoder' Serbinenko
52a050751b
* grub-core/fs/nilfs2.c (grub_nilfs2_uuid): Add missing field length.
2011-10-27 02:52:54 +02:00
Vladimir 'phcoder' Serbinenko
1869edb5bc
ZFS multi-device and version 33 support.
...
* Makefile.util.def (libgrubkern): Add grub-core/fs/zfs/zfsinfo.c.
* grub-core/fs/zfs/zfs.c (grub_zfs_device_desc): New struct.
(grub_zfs_data): Add multidev-ice-related fields.
(zio_checksum_verify): Zero-pad printed values. Print checksum name.
(dva_get_offset): Make dva const.
(zfs_fetch_nvlist): New function.
(fill_vdev_info_real): Likewise.
(fill_vdev_info): Likewise.
(check_pool_label): Likewise.
(scan_disk): Likewise.
(scan_devices): Likewise.
(read_device): Likewise.
(read_dva): Likewise.
(zio_read_gang): Use read_dva.
(zio_read_data): Likewise.
(zap_leaf_lookup): Add missing endian conversion.
(zap_verify): Add missing endian conversion. All users updated.
(fzap_lookup): Likewise.
(fzap_iterate): Likewise.
(dnode_get_path): Handle SA bonus.
(nvlist_find_value): Make input const. All users updated.
(unmount_device): New function.
(zfs_unmount): Use unmount_device.
(zfs_mount): Use scan_disk.
(zfs_mtime): New function.
(grub_zfs_open): Handle system attributes.
(fill_fs_info): Likewise.
(grub_zfs_dir): Likewise.
(grub_zfs_fs): Add mtime.
* grub-core/fs/zfs/zfsinfo.c (print_vdev_info): Add missing return.
* include/grub/zfs/sa_impl.h (SA_TYPE_OFFSET): New definition.
(SA_MTIME_OFFSET): Likewise.
(SA_SYMLINK_OFFSET): Likewise.
* include/grub/zfs/zfs.h (SPA_VERSION): Increase to 33.
* util/grub-fstest.c (CMD_ZFSINFO): New enum value.
(fstest): Support zfsinfo.
(argp_parser): Likewise.
2011-10-27 02:49:50 +02:00
Vladimir 'phcoder' Serbinenko
8563e2a670
Small multidevice fix
2011-10-27 02:36:10 +02:00
Vladimir 'phcoder' Serbinenko
34c5965451
Support version 33 including symlinks
2011-10-27 02:04:04 +02:00
Vladimir 'phcoder' Serbinenko
11e50e923a
merge mainline into zfs
2011-10-26 19:26:24 +02:00
Vladimir 'phcoder' Serbinenko
5587329c91
ZFS fixes.
...
* grub-core/fs/zfs/zfs.c (fzap_iterate): Fix handling of indexes
sharing the same block. Iterate over correct number of indices.
(dnode_get_path): Handle symlinks correctly.
2011-10-26 17:32:21 +02:00
Vladimir 'phcoder' Serbinenko
c0584900ee
* grub-core/fs/jfs.c (grub_jfs_sblock): Fix offset to volname.
2011-10-26 00:35:41 +02:00
Vladimir 'phcoder' Serbinenko
67e2bd718e
Read label on HFS+.
...
* grub-core/fs/hfsplus.c (grub_hfsplus_cmp_catkey_id): New function.
(grub_hfsplus_btree_search): Fix types.
(grub_hfsplus_label): Implement.
2011-10-26 00:32:17 +02:00
Vladimir 'phcoder' Serbinenko
e9cc6b7b0e
* grub-core/fs/ntfs.c (grub_ntfs_uuid): Fix a memory leak.
2011-10-26 00:29:46 +02:00
Vladimir 'phcoder' Serbinenko
19832ddb37
* grub-core/fs/fat.c (grub_fat_uuid): Make uppercase to match Linux.
2011-10-25 21:53:57 +02:00
Vladimir 'phcoder' Serbinenko
66b4085033
Fix symlink handling on iso9660.
...
* grub-core/fs/iso9660.c (grub_fshelp_node): Remove dir_off. Add symlink
All users updated.
(grub_iso9660_susp_iterate): Accept zero-size iterate.
(grub_iso9660_read_symlink): Moved most of code ...
(grub_iso9660_iterate_dir): ... here. Fill node->symlink.
2011-10-25 21:52:48 +02:00
Vladimir 'phcoder' Serbinenko
db82136381
* grub-core/loader/i386/bsd.c (grub_netbsd_add_boot_disk_and_wedge):
...
Use union to avoid breaking strict-aliasing rules.
2011-10-25 18:20:39 +02:00
Vladimir 'phcoder' Serbinenko
e12119495d
Support multi-extent iso files.
...
* grub-core/fs/iso9660.c (grub_iso9660_data): Remove first_sector.
Add node.
(grub_fshelp_node): Revamp. All users updated.
(FLAG_*): New enum.
(read_node): New function.
(grub_iso9660_susp_iterate): Use read_node. Receive a node as argument.
All users updated.
(grub_iso9660_mount): Don't attempt to read sua when there is none.
(get_node_size): New function.
(grub_iso9660_iterate_dir): Use read_node. Agglomerate multi-extent
entries.
Fix memory leak on . and ..
(grub_iso9660_read): Use read_node.
(grub_iso9660_close): Free node.
2011-10-25 18:18:58 +02:00
Vladimir 'phcoder' Serbinenko
d4888031f2
Fix tar 4G limit and handle paths containing dot.
...
* grub-core/fs/cpio.c (grub_cpio_data): Use grub_off_t for offsets.
(canonicalize): New function.
(grub_cpio_find_file): Use canonicalize. Store offs in
grub_disk_addr_t.
(grub_cpio_dir): Use grub_disk_addr_t.
(grub_cpio_open): Likewise.
2011-10-25 18:12:36 +02:00
Vladimir 'phcoder' Serbinenko
9f12e664cc
Fix handling of uncompressed blocks on squashfs and break 4G limit.
...
* grub-core/fs/squash4.c (grub_squash_super): Add block_size. Remove
unused flags.
(grub_squash_inode): Add long_file and block_size.
(grub_squash_cache_inode): New struct.
(grub_squash_dirent): Make types into enum.
(SQUASH_TYPE_LONG_REGULAR): New type.
(grub_squash_frag_desc): Add field size.
(SQUASH_BLOCK_FLAGS): New enum.
(grub_squash_data): Use grub_squash_cache_inode.
(grub_fshelp_node): Make ino_chunk 64-bit.
(read_chunk): Minor argument change. All users updated.
(squash_mount): Use correct le_to_cpu.
(grub_squash_open): Handle LONG_REGULAR.
(direct_read): New function.
(grub_squash_read_data): Handle blocks correctly.
2011-10-25 18:09:00 +02:00
Vladimir 'phcoder' Serbinenko
9f326fba96
* grub-core/kern/disk.c (grub_disk_read_small): Fix memory leak.
2011-10-25 18:01:57 +02:00
Vladimir 'phcoder' Serbinenko
f4d9b64bba
* grub-core/fs/romfs.c (grub_romfs_open): Add missing return.
2011-10-25 17:38:22 +02:00
Vladimir 'phcoder' Serbinenko
5bbd28b8ce
Fix 2G limit on ZFS.
...
* grub-core/fs/zfs/zfs.c (zio_checksum_verify): Use more appropriate
types.
(uberblock_verify): Likewise.
(dmu_read): Likewise.
(grub_zfs_read): Likewise. Remove invalid cast.
2011-10-24 21:33:35 +02:00
Vladimir 'phcoder' Serbinenko
68c72069d9
* grub-core/fs/jfs.c (grub_jfs_blkno): Use more appropriate types.
...
(grub_jfs_blkno): Fix incorrect shift.
(grub_jfs_read_file): Use more appropriate types.
2011-10-24 17:02:02 +02:00
Vladimir 'phcoder' Serbinenko
6e536dc8ad
Support triple indirect on minix2 and minix3.
...
* grub-core/fs/minix.c (grub_minix_inode) [MODE_MINIX2 || MODE_MINIX3]:
Declare triple_indir_zone.
(grub_minix_get_file_block) [MODE_MINIX2 || MODE_MINIX3]: Handle triple
indirect.
2011-10-24 16:16:28 +02:00
Vladimir 'phcoder' Serbinenko
e0864e7ab7
Minix FS fixes.
...
* grub-core/fs/minix.c (GRUB_MINIX_INODE_SIZE): Size is always 32-bit.
(grub_minix_inode) [!MODE_MINIX2 && !MODE_MINIX3]: Make size 32-bit.
Rename ctime to mtime. All users updated.
(grub_minix_get_file_block): Fix types and double indirect computations.
2011-10-24 10:45:47 +02:00
Vladimir 'phcoder' Serbinenko
89481cabbd
* grub-core/fs/fat.c (grub_fat_label) [MODE_EXFAT]: Set *label to 0
...
if no label is found.
(grub_fat_iterate_dir): Fix file size type.
(grub_fat_iterate_dir): Likewise.
2011-10-24 01:31:06 +02:00
Vladimir 'phcoder' Serbinenko
f646e14309
* grub-core/lib/reed_solomon.c (gf_invert): Declare as const and
...
save some space.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_RAW_SIZE): Decrease.
(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): Likewise.
2011-10-23 23:55:38 +02:00
Vladimir 'phcoder' Serbinenko
3471ecdfd9
* grub-core/lib/setjmp.S [__ia64__]: Include ./ia64/longjmp.S.
2011-10-23 23:34:30 +02:00
Vladimir 'phcoder' Serbinenko
124df5f6ca
Fine grainely disable warnings on lexer. Remove Wno-error on it.
...
* grub-core/Makefile.core.def (normal): Remove -Wno-error.
* grub-core/script/lexer.c: Declare yytext_ptr to avoid having
yylex_strncpy.
* grub-core/script/yylex.l: Add fine-grained #pragma.
2011-10-23 23:32:06 +02:00
Vladimir 'phcoder' Serbinenko
4defb8d59b
* grub-core/lib/posix_wrap/string.h (memcpy) [GRUB_UTIL]:
...
New inline function.
* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (memcpy) [GRUB_UTIL]:
Likewise.
(memset) [GRUB_UTIL]: Likewise.
(memcmp) [GRUB_UTIL]: Likewise.
2011-10-23 23:28:23 +02:00
Vladimir 'phcoder' Serbinenko
3ce69fc90f
* grub-core/kern/i386/pc/startup.S (grub_exit): Add missing zeroing-out.
...
* grub-core/lib/i386/reboot_trampoline.S (grub_reboot_start):
Likewise.
2011-10-23 23:04:57 +02:00
Vladimir 'phcoder' Serbinenko
d1e293bbfa
* grub-core/io/lzopio.c (test_header): Fix incorrect memcmp instead of
...
grub_memcmp usage.
2011-10-23 22:55:32 +02:00
Vladimir 'phcoder' Serbinenko
db1326f5fb
Move chainloader_real_boot out of the kernel
2011-10-21 00:16:59 +02:00
Vladimir 'phcoder' Serbinenko
766f7d0809
Remove redundant grub_kernel_image_size.
...
* grub-core/kern/i386/coreboot/init.c (grub_machine_init): Use
_edata and _start.
* grub-core/kern/i386/coreboot/startup.S: Move multiboot header after
the small code. It moves it only by few bytes but simplifies the code.
* grub-core/kern/i386/pc/init.c (grub_machine_init): Use _edata and
_start.
* grub-core/kern/i386/pc/startup.S: Use _edata and _start.
(grub_kernel_image_size): Removed.
* grub-core/kern/i386/qemu/startup.S: Use _edata and _start.
(grub_kernel_image_size): Removed.
[APPLE_CC]: Remove apple compiler support. i386-qemu port can't be
compiled with Apple toolchain.
* grub-core/kern/sparc64/ieee1275/crt0.S: Remove leftover fields.
* include/grub/i386/pc/kernel.h (grub_kernel_image_size): Removed.
* include/grub/i386/qemu/kernel.h (grub_kernel_image_size): Removed.
(grub_total_module_size): Likewise.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_KERNEL_IMAGE_SIZE):
Removed.
(GRUB_KERNEL_I386_PC_COMPRESSED_SIZE): Put it lower.
(GRUB_KERNEL_I386_PC_INSTALL_DOS_PART): Likewise.
(GRUB_KERNEL_I386_PC_INSTALL_BSD_PART): Likewise.
(GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY): Likewise.
(GRUB_KERNEL_I386_QEMU_KERNEL_IMAGE_SIZE): Removed.
(GRUB_KERNEL_SPARC64_IEEE1275_KERNEL_IMAGE_SIZE): Likewise.
(GRUB_KERNEL_SPARC64_IEEE1275_COMPRESSED_SIZE): Likewise.
* include/grub/sparc64/ieee1275/kernel.h (grub_kernel_image_size):
Removed.
(grub_total_module_size): Removed.
* util/grub-mkimage.c (image_target_desc): Remove image_size.
(image_targets): Likewise.
Set .compressed_size to no field on sparc.
(generate_image): Remove kernel_image_size handling.
2011-10-20 08:13:00 +02:00
Szymon Janc
fcf1d67219
* grub-core/bus/usb/uhci.c (grub_uhci_setup_transfer): Fix possible
...
NULL pointer dereference.
2011-10-19 23:11:48 +02:00
Vladimir 'phcoder' Serbinenko
de9c615e5c
Removed unused GRUB_BOOT_VERSION. Check for kernel version is better
...
done with a dedicated section.
* grub-core/boot/sparc64/ieee1275/boot.S: Remove GRUB_BOOT_VERSION.
Ensure the correct position of boot_path.
* grub-core/kern/i386/efi/startup.S: Remove GRUB_BOOT_VERSION.
* grub-core/kern/i386/pc/startup.S: Likewise. Ensure correct position of
other fields.
* grub-core/kern/x86_64/efi/startup.S: Remove GRUB_BOOT_VERSION.
* include/grub/boot.h: Removed. All references removed.
* include/grub/sparc64/ieee1275/boot.h (GRUB_BOOT_MACHINE_VER_MAJ):
Removed.
(GRUB_BOOT_MACHINE_BOOT_DEVPATH): Make it lower.
2011-10-19 23:01:44 +02:00
Vladimir 'phcoder' Serbinenko
36dd20ad0b
* grub-core/kern/main.c (grub_set_prefix_and_root): Init prefix.
2011-10-19 20:30:06 +02:00
Vladimir 'phcoder' Serbinenko
f8f72eb890
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_encode_devname):
...
Don't add the bogus brackets.
2011-10-19 20:28:09 +02:00
Vladimir 'phcoder' Serbinenko
a374751b16
ExFAT support.
...
* Makefile.util.def (libgrubmods.a): Add grub-core/fs/exfat.c.
* grub-core/Makefile.core.def (exfat): New module.
* grub-core/fs/exfat.c: New file.
* grub-core/fs/fat.c (GRUB_FAT_DIR_ENTRY_SIZE): Removed.
(GRUB_FAT_ATTR_*): Make into an enum.
(GRUB_FAT_ATTR_LONG_NAME) [MODE_EXFAT]: Removed.
(GRUB_FAT_ATTR_VALID) [MODE_EXFAT]: Remove GRUB_FAT_ATTR_VOLUME_ID.
(GRUB_FAT_ATTR_VOLUME_ID) [MODE_EXFAT]: Removed.
(GRUB_FAT_MAXFILE): Removed.
(grub_exfat_bpb) [MODE_EXFAT]: New struct.
(grub_current_fat_bpb_t): New type.
(grub_fat_dir_entry) [MODE_EXFAT]: New struct.
(grub_fat_dir_node) [MODE_EXFAT]: New struct.
(grub_fat_dir_node_t): New type.
(grub_fat_data) [MODE_EXFAT]: Remove root_sector and num_root_sectors.
(fat_log2) [MODE_EXFAT]: Removed.
(grub_fat_mount): Use grub_current_fat_bpb_t. Add some sanity checks.
(grub_fat_mount) [MODE_EXFAT]: Handle ExFAT.
(grub_fat_iterate_dir) [MODE_EXFAT]: New function.
(grub_fat_find_dir) [MODE_EXFAT]: Handle ExFAT.
(grub_fat_label) [MODE_EXFAT]: New function.
(grub_fat_fs) [MODE_EXFAT]: Set name to "exfat" and
reserved_first_sector to 0.
2011-10-19 20:19:25 +02:00
Vladimir 'phcoder' Serbinenko
544c24876e
Move grub_reboot out of the kernel.
...
* grub-core/Makefile.core.def (reboot): Add platform-specific files.
* grub-core/kern/efi/efi.c (grub_reboot): Moved to ...
* grub-core/lib/efi/reboot.c: ... here.
* grub-core/kern/i386/efi/startup.S: Remove including of realmode.S.
* grub-core/kern/i386/ieee1275/startup.S: Likewise.
* grub-core/kern/i386/pc/startup.S (grub_exit): Inline cold_reboot.
* grub-core/kern/i386/realmode.S (grub_reboot): Moved to...
* grub-core/lib/i386/reboot_trampoline.S: ... here.
* grub-core/kern/ieee1275/openfw.c (grub_reboot): Moved to...
* grub-core/lib/ieee1275/reboot.c: ... here.
* grub-core/kern/mips/arc/init.c (grub_reboot): Moved to...
* grub-core/lib/mips/arc/reboot.c: ... here.
* grub-core/kern/mips/loongson/init.c (grub_reboot): Moved to...
* grub-core/lib/mips/loongson/reboot.c: ...here.
* grub-core/kern/mips/qemu_mips/init.c (grub_reboot): Moved to...
* grub-core/lib/mips/qemu_mips/reboot.c: ... here.
* include/grub/emu/misc.h (grub_reboot): New function declaration.
* include/grub/i386/reboot.h: New file.
* include/grub/mips/loongson/ec.h: Fix includes.
* include/grub/mips/qemu_mips/kernel.h (grub_reboot): Removed.
* include/grub/misc.h (grub_reboot): Don't mark as kernel function.
* grub-core/lib/i386/reboot.c: New file.
2011-10-19 16:53:18 +02:00
Vladimir 'phcoder' Serbinenko
a97501d238
Make grub_prefix into module to fix the arbitrary limit and save
...
some space.
* grub-core/kern/emu/main.c (grub_prefix): Removed.
* grub-core/kern/i386/coreboot/startup.S (grub_prefix): Likewise.
* grub-core/kern/i386/efi/startup.S (grub_prefix): Likewise.
* grub-core/kern/i386/ieee1275/startup.S (grub_prefix): Likewise.
* grub-core/kern/i386/pc/startup.S (grub_prefix): Likewise.
* grub-core/kern/i386/qemu/startup.S (grub_prefix): Likewise.
* grub-core/kern/ia64/efi/startup.S (grub_prefix): Likewise.
* grub-core/kern/mips/startup.S (grub_prefix): Likewise.
* grub-core/kern/powerpc/ieee1275/startup.S (grub_prefix): Likewise.
* grub-core/kern/sparc64/ieee1275/crt0.S (grub_prefix): Likewise.
* grub-core/kern/x86_64/efi/startup.S (grub_prefix): Likewise.
* include/grub/ia64/efi/kernel.h: Removed.
* include/grub/kernel.h: New module type OBJ_TYPE_PREFIX.
(grub_prefix): Removed.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_PREFIX): Removed.
(GRUB_KERNEL_I386_PC_PREFIX_END): Likewise.
(GRUB_KERNEL_I386_QEMU_PREFIX): Likewise.
(GRUB_KERNEL_I386_QEMU_PREFIX_END): Likewise.
(GRUB_KERNEL_SPARC64_IEEE1275_PREFIX): Likewise.
(GRUB_KERNEL_SPARC64_IEEE1275_PREFIX_END): Likewise.
(GRUB_KERNEL_POWERPC_IEEE1275_PREFIX): Likewise.
(GRUB_KERNEL_POWERPC_IEEE1275_PREFIX_END): Likewise.
(GRUB_KERNEL_MIPS_LOONGSON_PREFIX): Likewise.
(GRUB_KERNEL_MIPS_LOONGSON_PREFIX_END): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX): Likewise.
(GRUB_KERNEL_MIPS_QEMU_MIPS_PREFIX_END): Likewise.
(GRUB_KERNEL_MIPS_ARC_PREFIX): Likewise.
(GRUB_KERNEL_MIPS_ARC_PREFIX_END): Likewise.
(GRUB_KERNEL_I386_EFI_PREFIX): Likewise.
(GRUB_KERNEL_I386_EFI_PREFIX_END): Likewise.
(GRUB_KERNEL_IA64_EFI_PREFIX): Likewise.
(GRUB_KERNEL_IA64_EFI_PREFIX_END): Likewise.
(GRUB_KERNEL_X86_64_EFI_PREFIX): Likewise.
(GRUB_KERNEL_X86_64_EFI_PREFIX_END): Likewise.
(GRUB_KERNEL_I386_COREBOOT_PREFIX): Likewise.
(GRUB_KERNEL_I386_COREBOOT_PREFIX_END): Likewise.
(GRUB_KERNEL_I386_MULTIBOOT_PREFIX): Likewise.
(GRUB_KERNEL_I386_MULTIBOOT_PREFIX_END): Likewise.
(GRUB_KERNEL_I386_IEEE1275_PREFIX): Likewise.
(GRUB_KERNEL_I386_IEEE1275_PREFIX_END): Likewise.
(GRUB_KERNEL_MACHINE_PREFIX): Likewise.
(GRUB_KERNEL_MACHINE_PREFIX_END): Likewise.
* grub-core/kern/main.c (grub_set_prefix_and_root): Retrieve grub_prefix
from module.
* util/grub-mkimage.c (image_target_desc): Removed prefix and
prefix_end.
(image_targets): Likewise.
(generate_image): Put prefix as a module.
2011-10-18 15:21:51 +02:00
Vladimir 'phcoder' Serbinenko
39705fadd7
Replace grub_module_iterate with FOR_MODULES.
...
* grub-core/disk/memdisk.c (GRUB_MOD_INIT): Switched to new interface.
* grub-core/kern/efi/efi.c (grub_arch_modules_addr): Renamed to...
(grub_efi_modules_addr): ...this.
* grub-core/kern/efi/init.c (grub_modbase): New variable.
(grub_efi_init): Set grub_modbase.
* grub-core/kern/emu/main.c (grub_arch_modules_addr): Removed.
(grub_modbase): New variable.
* grub-core/kern/i386/coreboot/init.c (grub_arch_modules_addr): Removed.
(grub_modbase): New variable.
(grub_machine_init): Set grub_modbase.
* grub-core/kern/i386/pc/init.c (grub_arch_modules_addr): Removed.
(grub_modbase): New variable.
(grub_machine_init): Set grub_modbase.
* grub-core/kern/ieee1275/init.c (grub_arch_modules_addr): Removed.
(grub_modbase): New variable.
(grub_machine_init): Set grub_modbase.
* grub-core/kern/main.c (grub_module_iterate): Remove.
(grub_modules_get_end): Use grub_modbase.
(grub_load_modules): Use FOR_MODULES.
(grub_load_config): Likewise.
* grub-core/kern/mips/arc/init.c (grub_arch_modules_addr): Removed.
(grub_modbase): New variable.
(grub_machine_init): Set grub_modbase.
* grub-core/kern/mips/loongson/init.c (grub_arch_modules_addr): Removed.
(grub_modbase): New variable.
(grub_machine_init): Set grub_modbase.
* grub-core/kern/mips/qemu_mips/init.c (grub_arch_modules_addr):
Removed.
(grub_modbase): New variable.
(grub_machine_init): Set grub_modbase.
* include/grub/efi/efi.h (grub_efi_modules_addr): New declaration.
* include/grub/kernel.h (grub_arch_modules_addr): Removed.
(grub_module_iterate): Likewise.
(grub_modbase): New variable declaration.
(FOR_MODULES): New macro.
2011-10-16 15:23:29 +02:00
Vladimir 'phcoder' Serbinenko
366e34fa5a
Fix few obvious type discrepancies.
...
* grub-core/fs/affs.c (grub_affs_read_file): Use grub_off_t for offset.
* grub-core/fs/afs.c (grub_afs_read_file): Likewise.
* grub-core/fs/fshelp.c (grub_fshelp_find_file): Remove leftover
variable.
* grub-core/fs/hfs.c (grub_hfs_read_file): Use grub_off_t for offset
and connected types.
* grub-core/fs/nilfs2.c (grub_nilfs2_read_file): Use grub_off_t for
offset.
(grub_nilfs2_iterate_dir): Use grub_off_t for fpos.
* grub-core/fs/sfs.c (grub_sfs_read_file): Use grub_off_t for offset.
* grub-core/fs/ufs.c (grub_ufs_read_file): Use grub_off_t for offset
and connected types.
2011-10-16 11:57:48 +02:00
Vladimir 'phcoder' Serbinenko
3b619ae116
* grub-core/fs/xfs.c (grub_xfs_inode): New field fork_offset.
...
(GRUB_XFS_INO_AGBITS): Make into inline function.
(GRUB_XFS_INO_INOINAG): Likewise.
(GRUB_XFS_INO_AG): Likewise.
(GRUB_XFS_FSB_TO_BLOCK): Likewise.
(GRUB_XFS_EXTENT_OFFSET): Likewise.
(GRUB_XFS_EXTENT_BLOCK): Likewise.
(GRUB_XFS_EXTENT_SIZE): Likewise.
(GRUB_XFS_ROUND_TO_DIRENT): Likewise.
(GRUB_XFS_NEXT_DIRENT): Likewise.
(grub_xfs_read_block): Rewrite the btree parsing. Fixes invalid BMAP.
(grub_xfs_read_file): Fix offset type.
2011-10-16 11:48:54 +02:00
Vladimir 'phcoder' Serbinenko
d891955241
Fix overflow with >2GiB file on HFS+. >4GiB wasn't tested.
...
* grub-core/fs/hfsplus.c (grub_hfsplus_btree): Use more appropriate
types.
(grub_hfsplus_btree_recoffset): Likewise.
(grub_hfsplus_btree_recptr): Likewise.
(grub_hfsplus_find_block): Likewise.
(grub_hfsplus_btree_search): Likewise.
(grub_hfsplus_read_block): Likewise.
(grub_hfsplus_read_file): Likewise.
(grub_hfsplus_mount): Likewise.
(grub_hfsplus_btree_iterate_node): Likewise.
(grub_hfsplus_btree_search): Likewise.
(grub_hfsplus_iterate_dir): Likewise.
(grub_hfsplus_read): A small code simplification.
2011-10-14 22:41:21 +02:00
Vladimir 'phcoder' Serbinenko
038ec56a31
nslookup implementation
2011-10-14 19:21:59 +02:00
Vladimir 'phcoder' Serbinenko
c81296b65f
* grub-core/kern/emu/hostdisk.c
...
(convert_system_partition_to_system_disk): Don't assume that children
of mapper nodes are mapper nodes.
2011-10-14 19:20:44 +02:00
Vladimir 'phcoder' Serbinenko
0eb8ffb1f5
* grub-core/lib/posix_wrap/ctype.h (isxdigit): Use grub_isxdigit.
...
* include/grub/misc.h (grub_isxdigit): New function.
* grub-core/video/colors.c (my_isxdigit): Removed. All users
switched to grub_isxdigit.
* grub-core/term/serial.c (grub_serial_find): Fix in case of port
number starting with a letter.
2011-10-14 19:16:37 +02:00
Vladimir 'phcoder' Serbinenko
0cb9503b70
support routed pings
2011-10-13 20:53:22 +02:00
Vladimir 'phcoder' Serbinenko
bd40efbf0b
several net bugfixes and improvements and fix some memory leaks
2011-10-13 18:31:53 +02:00
Vladimir 'phcoder' Serbinenko
da1b289afc
IPv6. Apparently working. At least I could retrieve a file with http6
2011-10-13 01:22:56 +02:00
Vladimir 'phcoder' Serbinenko
7c006811f8
more ipv6 code. Now ipv6 ping succeeds
2011-10-12 23:15:02 +02:00
Vladimir 'phcoder' Serbinenko
a53cf6534d
some more ipv6 code
2011-10-12 10:20:55 +02:00
Szymon Janc
a664449575
merge trunk
2011-10-06 19:00:10 +02:00
Vladimir 'phcoder' Serbinenko
d5e60b1ba0
Add license statement to the emunet
2011-10-05 23:50:43 +02:00
Vladimir 'phcoder' Serbinenko
eb6a7b9788
Hopefully fix EFI problem. Not tested
2011-10-05 23:33:36 +02:00
Vladimir 'phcoder' Serbinenko
140674be60
Remove leftover variabel
2011-10-05 23:18:44 +02:00
Vladimir 'phcoder' Serbinenko
faba379c96
put license on priority_queue
2011-10-05 23:18:22 +02:00
Vladimir 'phcoder' Serbinenko
9aad3cd91d
IPv6 support. Several fixes and unifications
2011-10-05 22:15:30 +02:00
Vladimir 'phcoder' Serbinenko
96bd62413f
Don't set RST in response to empty packets
2011-10-05 17:50:52 +02:00
Vladimir 'phcoder' Serbinenko
4f71e077b9
HTTP seek support. Various bugfixes.
2011-10-05 17:39:13 +02:00
Vladimir 'phcoder' Serbinenko
aa6b91afe9
merge mainline into net
2011-10-05 13:32:40 +02:00
Vladimir 'phcoder' Serbinenko
fe942b7dbb
* grub-core/Makefile.core.def: Eliminate rarely used emu_condition. This
...
in perspective decreases the complexity of build system and fixes
compilation right now.
2011-10-05 11:53:36 +02:00
Vladimir 'phcoder' Serbinenko
5c62099a8f
Fix warning on i386-pc
2011-10-05 10:22:23 +02:00
Vladimir 'phcoder' Serbinenko
805448e987
Add network functions for grub-menulst2cfg
2011-10-05 10:21:32 +02:00
Szymon Janc
bc4d3f4809
* grub-core/io/lzopio.c (calculate_uncompressed_size): Fix return code.
2011-10-04 21:10:21 +02:00
Szymon Janc
709e61a55f
merge trunk
2011-10-04 20:21:12 +02:00
Szymon Janc
b871e8ebcc
* grub-core/Makefile.core.def (btrfs): Remove minilzo.c from common.
2011-10-03 23:01:14 +02:00
Szymon Janc
0e2b7e39f2
* grub-core/fs/btrfs.c: Include <minilzo.h> instead of "minilzo.h".
...
* grub-core/io/lzopio.c: Likewise.
2011-10-03 22:25:06 +02:00
Szymon Janc
c5ed9266fc
* grub-core/io/lzopio.c: Improve crypt context alignment.
2011-10-03 22:06:10 +02:00
Szymon Janc
139d67a82f
* grub-core/fs/btrfs.c: Fix code style regressions.
2011-10-03 21:50:32 +02:00
Vladimir 'phcoder' Serbinenko
9305dd1a82
Some CS5536 code
2011-10-01 22:51:12 +02:00
Vladimir 'phcoder' Serbinenko
1333929060
Disable SMI on OS ownership failure
2011-10-01 22:01:31 +02:00
Vladimir 'phcoder' Serbinenko
81dbdc1d0a
Several small fixes
2011-10-01 21:53:43 +02:00
Vladimir 'phcoder' Serbinenko
2d523c70e5
Use map range
2011-10-01 21:42:44 +02:00
Vladimir 'phcoder' Serbinenko
0a213f4cdb
Move p2v and v2p to pci.h
2011-10-01 21:37:02 +02:00
Vladimir 'phcoder' Serbinenko
e5c0534f0b
Fix p2v and v2p
2011-10-01 21:31:53 +02:00
starous
ce79cc99d5
@Rock changes - fixed coreboot problem
2011-10-01 21:27:29 +02:00
Vladimir 'phcoder' Serbinenko
4fbface043
Remove packed attribute.
2011-10-01 21:14:03 +02:00
Vladimir 'phcoder' Serbinenko
2877805fb0
Fix link_td to use grub_uint32_t and not the pointer type
2011-10-01 21:13:29 +02:00
Vladimir 'phcoder' Serbinenko
0e7ebb0569
run indent on ehci.c
2011-10-01 21:04:17 +02:00
Vladimir 'phcoder' Serbinenko
679cbb4020
Replace #define with enum
2011-10-01 21:03:03 +02:00
Aleš Nesrsta
2f82ea948d
EHCI implementation by Aleš Nesrsta.
2011-10-01 20:18:47 +02:00
Mads Kiilerich
fc5efcc083
* grub-core/Makefile.core.def (kernel): Add kern/i386/int.S to
...
extra_dist.
2011-09-29 10:50:25 +02:00
Mario Limonciello
c05de0329b
* grub-core/kern/emu/misc.c (canonicalize_file_name) [__MINGW32__]: Use
...
_fullpath.
2011-09-29 10:36:55 +02:00
Grégoire Sutre
e0b0dc837b
Make knetbsd pass bootinfo bootdisk and bootwedge.
2011-09-28 23:45:57 +02:00
Thomas Haller
91a1a164d6
* grub-core/loader/multiboot_elfxx.c (Elf_Shdr): Set according to
...
loader.
2011-09-28 16:43:00 +02:00
Vladimir 'phcoder' Serbinenko
6991503094
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy):
...
Return 0 if disk isn't biosdisk.
2011-09-28 14:07:53 +02:00
Grégoire Sutre
1a7d7db97f
Get sector size from disk label for NetBSD.
2011-09-17 23:01:48 +02:00
Szymon Janc
9c4f9ca010
* grub-core/io/lzopio.c (test_header): Some cleanups.
2011-09-06 21:21:13 +02:00
Szymon Janc
579c12fbb4
* grub-core/fs/btrfs.c: Some minor cleanups.
2011-08-24 11:24:10 +02:00
Szymon Janc
00b98c9b2e
* grub-core/fs/btrfs.c (grub_btrfs_lzo_decompress): Random fixes and some
...
cleanup.
2011-08-23 19:49:01 +02:00
Vladimir 'phcoder' Serbinenko
ca51c4a04f
* grub-core/kern/mips/loongson/init.c (grub_machine_init): Handle the
...
case of less than 256 MiB of RAM.
2011-08-23 11:20:56 +02:00
Vladimir 'phcoder' Serbinenko
ab80f326f4
* grub-core/commands/wildcard.c (make_regex): Handle @.
2011-08-23 11:19:26 +02:00
Szymon Janc
90b0a05579
Various bug fixes and improvements in lzopio. Should properly handle more
...
files now. Also added support for lzop checksums verification.
2011-08-21 18:48:19 +02:00
Szymon Janc
6401c37058
Return correct adler32 value in read() call.
2011-08-21 14:49:07 +02:00
Szymon Janc
9a8d32a24f
Add support for adler32 checksuming.
...
* grub-core/lib/adler32.c: New file.
* Makefile.util.def (library): Add grub-core/lib/adler32.c to common.
* util/import_gcry.py (cryptolist): Add adler32.
2011-08-20 18:24:54 +02:00
Szymon Janc
b3e9c48799
merge trunk
2011-08-20 12:02:35 +02:00
Szymon Janc
fe8d4a7bc2
* grub-core/loader/i386/linux.c (grub_linux_setup_video): Add
...
GRUB_VIDEO_DRIVER_RADEON_FULOONG2E to switch case statement.
2011-08-20 11:58:41 +02:00
Szymon Janc
a5219af189
* grub-core/io/gzio.c (grub_gzio_open): Always return original io if
...
file type was not recognized correctly (not gzip or corrupted).
2011-08-20 11:48:46 +02:00
Szymon Janc
540c000f0d
merge trunk
2011-08-20 09:49:15 +02:00
Szymon Janc
4334690fbf
More work on LZO for btrfs support. Some fixes and code refactoring.
2011-08-20 02:05:08 +02:00
Vladimir 'phcoder' Serbinenko
f87abff538
* grub-core/kern/mips/loongson/init.c (grub_reboot): Reboot Fuloong.
...
* include/grub/cs5536.h (GRUB_CS5536_MSR_DIVIL_RESET): New definition.
2011-08-19 23:11:09 +02:00
Vladimir 'phcoder' Serbinenko
d94497eaca
* grub-core/Makefile.core.def (kernel): Add video/radeon_fuloong2e.c on
...
loongson.
* grub-core/kern/mips/loongson/init.c (grub_machine_init): Init
video_radeon_fuloong2e.
* grub-core/video/radeon_fuloong2e.c: New file.
* include/grub/video.h (grub_video_id_t): Add new ID
GRUB_VIDEO_DRIVER_RADEON_FULOONG2E.
2011-08-19 23:08:36 +02:00
Vladimir 'phcoder' Serbinenko
0d1fd0113b
* include/grub/mips/loongson.h (GRUB_CPU_LOONGSON_COP0_PRID): New
...
define.
* grub-core/kern/mips/loongson/init.c (grub_machine_init): Check
that PRID matches the detected subplatform and reset the subplatform
if it doesn't.
2011-08-19 23:04:18 +02:00
Vladimir 'phcoder' Serbinenko
84beb0eeb9
* grub-core/kern/misc.c (grub_vprintf): Fix a bug on malloc failure.
2011-08-19 22:59:24 +02:00
Vladimir 'phcoder' Serbinenko
1227c13390
Fix PCI iterating on functions >= 4.
...
* grub-core/bus/pci.c (grub_pci_iterate): Remove useless ghost skipping.
* include/grub/mips/loongson/pci.h (GRUB_LOONGSON_OHCI_GHOST_FUNCTION):
Removed.
(GRUB_LOONGSON_EHCI_GHOST_FUNCTION): Likewise.
(grub_pci_read): Fix bitmask.
(grub_pci_read_word): Likewise.
(grub_pci_read_byte): Likewise.
(grub_pci_write): Likewise.
(grub_pci_write_word): Likewise.
(grub_pci_write_byte): Likewise.
2011-08-19 22:56:49 +02:00
Vladimir 'phcoder' Serbinenko
14a2562cf7
Rename Fuloong into Fuloong 2F. Add new ID for Fuloong2E.
...
* grub-core/Makefile.core.def (fwstart_fuloong): Rename fwstart_fuloong
into fwstart_fuloong2f. Use boot/mips/loongson/fuloong2f.S.
* grub-core/boot/mips/loongson/fuloong.S: Rename to ...
* grub-core/boot/mips/loongson/fuloong2f.S: ... this.
(FULOONG): Rename to ...
(FULOONG2F): ... this. All users updated.
* grub-core/boot/mips/startup_raw.S (machtype_fuloong_str): Rename to
(machtype_fuloong2f_str): ... this.
(machtype_fuloong2e_str): New string.
Check for machtype_fuloong2e_str.
* grub-core/loader/mips/linux.c (loongson_machtypes)
[GRUB_MACHINE_MIPS_LOONGSON]: Add GRUB_ARCH_MACHINE_FULOONG2E.
* grub-core/term/serial.c (loongson_defserial)
[GRUB_MACHINE_MIPS_LOONGSON]: New array.
(grub_serial_register) [GRUB_MACHINE_MIPS_LOONGSON]: Use
loongson_defserial.
* include/grub/mips/loongson/kernel.h (GRUB_ARCH_MACHINE_FULOONG):
Rename to ...
(GRUB_ARCH_MACHINE_FULOONG2F): ... this.
(GRUB_ARCH_MACHINE_FULOONG2E): New const.
* util/grub-mkimage.c (image_target_desc): Rename IMAGE_FULOONG_FLASH
to IMAGE_FULOONG2F_FLASH. All users updated.
(image_targets): Rename images.
* util/grub-mkstandalone.in: Accept fuloong2f and fuloong2e.
2011-08-19 22:46:11 +02:00
Szymon Janc
b526cbb6fa
Make enable of disk cache statistics code configurable.
...
* configure.ac: --enable-cache-stats added.
* config.h.in (DISK_CACHE_STATS): New define.
* grub-core/Makefile.core.def (cacheinfo): New command.
* include/grub/disk.h(grub_disk_cache_get_performance): New function.
* grub-core/commands/cacheinfo.c: New file.
* grub-core/commands/minicmd.c (grub_rescue_cmd_info): Updated and
moved to cacheinfo.c.
* grub-core/kern/disk.c: Use DISK_CACHE_STATS to disable disk cache
debug code.
* include/grub/disk.h: Likewise.
2011-08-19 21:28:09 +02:00
Szymon Janc
fb739ccd79
* Makefile.am (AUTOMAKE_OPTIONS): = Added -Wno-portability flag.
...
* grub-core/Makefile.am: Likewise.
2011-08-19 20:06:42 +02:00
Szymon Janc
d6beefcfc9
Add initial support for lzop files decompression.
...
* grub-core/Makefile.core.def (lzopio): New module.
* grub-core/io/lzopio.c: New file.
* include/grub/file.h (grub_file_filter_id): New compression filter
GRUB_FILE_FILTER_LZOPIO.
2011-08-17 19:40:25 +02:00
Vladimir 'phcoder' Serbinenko
2bba8cfd55
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_iterate): Skip with
...
non-zero pull.
2011-08-16 23:12:20 +02:00
Vladimir 'phcoder' Serbinenko
43526629e5
* grub-core/fs/jfs.c (grub_jfs_read_file): New parameter ino.
...
All users updated.
(grub_jfs_lookup_symlink): Use correct starting inode.
2011-08-16 23:10:38 +02:00
Vladimir 'phcoder' Serbinenko
b1257f6533
Don't accept text modes on EFI when booting Linux.
...
* grub-core/loader/i386/linux.c (ACCEPTS_PURE_TEXT): New define.
(grub_linux_boot) [!ACCEPTS_PURE_TEXT]: Restrict to graphics modes.
2011-08-16 16:11:10 +02:00
Szymon Janc
095f077e6d
Add support for LZO compression in btrfs.
...
* Makefile.util.def (libgrubmods.a): Add minilzo.c and add required flags
to cflags in cppflags.
* Makefile.core.def (btrfs): Likewise.
* grub-core/fs/btrfs.c: Include minilzo.h.
(grub_btrfs_superblock): Add sectorsize, nodesize, leafsize, stripsize and
dummy5 field.
(GRUB_BTRFS_COMPRESSION_LZO): New define.
(grub_btrfs_extent_read): Add support for LZO compression type.
2011-08-14 11:46:05 +02:00
Szymon Janc
b6085f3236
* grub-core/fs/btrfs.c: Some code style fixes.
2011-08-14 11:42:53 +02:00
Szymon Janc
1f1a380be9
Import minilzo library for LZO decompression support.
...
* grub-core/lib/minilzo/lzoconf.h: New file.
* grub-core/lib/minilzo/lzodefs.h: Likewise.
* grub-core/lib/minilzo/minilzo.c: Likewise.
* grub-core/lib/minilzo/minilzo.h: Likewise.
* include/grub/types.h (GRUB_UCHAR_MAX): New define.
(GRUB_USHRT_MAX): Likewise.
(GRUB_UINT_MAX): Likewise.
* grub-core/lib/posix_wrap/limits.h (USHRT_MAX): New define.
(UINT_MAX): Likewise.
(CHAR_BIT): Likewise.
* grub-core/lib/posix_wrap/sys/types.h (ULONG_MAX): Moved to
grub-core/lib/posix_wrap/limits.h
(UCHAR_MAX): Likewise.
2011-08-14 11:39:31 +02:00
Szymon Janc
99cecb4fc7
merge trunk
2011-08-13 15:00:48 +02:00
Vladimir 'phcoder' Serbinenko
6795300e7f
Support ATA disks with 4K sectors.
...
* include/grub/ata.h (grub_ata): New member log_sector_size.
* grub-core/disk/ata.c (grub_ata_dumpinfo): Show sector size.
(grub_ata_identify): Read sector size.
(grub_ata_readwrite): Use log_sector_size rather than hardcoded value.
2011-07-25 08:14:34 +02:00
Vladimir 'phcoder' Serbinenko
b70e4cb08d
* grub-core/normal/menu.c (grub_menu_execute_entry): Fix NULL
...
dereference.
2011-07-25 07:48:19 +02:00
Vladimir 'phcoder' Serbinenko
583168a216
* grub-core/disk/pata.c (grub_pata_readwrite): Add missing wait.
2011-07-23 18:18:14 +02:00
Vladimir 'phcoder' Serbinenko
bf66054fb3
* grub-core/kern/mips/cache_flush.S [GRUB_MACHINE_MIPS_LOONGSON]: Flush
...
all four ways.
2011-07-23 16:44:40 +02:00
Vladimir 'phcoder' Serbinenko
80e722366d
First attempt at http
2011-07-23 03:49:02 +02:00
Vladimir 'phcoder' Serbinenko
440694e3d3
Fix TCP retransmission
2011-07-23 03:48:10 +02:00
Vladimir 'phcoder' Serbinenko
4ebb4c616f
Remove useless include in tftp
2011-07-23 03:47:10 +02:00
Colin Watson
8fc4fa45c5
Preferred resolution detection for VBE.
...
* grub-core/video/video.c (grub_video_edid_checksum): New function.
(grub_video_edid_preferred_mode): Likewise. Try EDID followed by
the Flat Panel extension, in line with the X.org VESA driver.
* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info):
New function.
(grub_vbe_bios_get_ddc_capabilities): Likewise.
(grub_vbe_bios_read_edid): Likewise.
(grub_vbe_get_preferred_mode): Likewise.
(grub_video_vbe_setup): When the mode is "auto", try to get the
preferred mode from VBE, and use the largest mode that is no larger
than the preferred mode (some BIOSes expose a preferred mode that is
not in their mode list!). If this fails, fall back to 640x480 as a
safe conservative choice.
(grub_video_vbe_get_edid): New function.
(grub_video_vbe_adapter): Add get_edid.
* include/grub/video.h (struct grub_vbe_edid_info): New structure.
(struct grub_video_adapter): Add get_edid.
(grub_video_edid_checksum): Add prototype.
(grub_video_edid_preferred_mode): Likewise.
* include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
structure.
* grub-core/commands/videoinfo.c (print_edid): New function.
(grub_cmd_videoinfo): Print EDID if available.
* util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto". This
is more appropriate on a wider range of platforms than 640x480.
* docs/grub.texi (Simple configuration): Update GRUB_GFXMODE
documentation.
2011-07-21 19:46:44 +01:00
Vladimir 'phcoder' Serbinenko
c410299b05
TCP listening support
2011-07-10 23:37:28 +02:00
Vladimir 'phcoder' Serbinenko
c4edd54832
* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Fix
...
incorrect memory usage.
2011-07-10 15:33:57 +02:00
Vladimir 'phcoder' Serbinenko
f4e6e2909b
TCP fragmentation
2011-07-10 11:26:34 +02:00
Vladimir 'phcoder' Serbinenko
bfca152e5a
Fix a memory leak
2011-07-10 09:53:29 +02:00
Vladimir 'phcoder' Serbinenko
3a2e860334
TCP improvements
2011-07-10 09:52:08 +02:00
Vladimir 'phcoder' Serbinenko
3a7af37260
basic tcp implementation
2011-07-10 08:46:48 +02:00
Vladimir 'phcoder' Serbinenko
92bb3cfc17
Use priority queue to reassemble TFTP packets
2011-07-09 01:28:47 +02:00
Vladimir 'phcoder' Serbinenko
fecdbd6b17
support ip fragmentation
2011-07-09 00:27:27 +02:00
Vladimir 'phcoder' Serbinenko
e2955971a3
move packet allocation to recv code to allow bigger buffers
2011-07-08 20:38:12 +02:00
Vladimir 'phcoder' Serbinenko
6a1af81a97
add mtu information
2011-07-08 18:49:35 +02:00
Vladimir 'phcoder' Serbinenko
5438143da6
improve robustness of IPv4 receiving code
2011-07-08 15:43:34 +02:00
Vladimir 'phcoder' Serbinenko
1367c143dd
several cleanups. Ping reply support
2011-07-08 14:41:52 +02:00
Vladimir 'phcoder' Serbinenko
6e706342c3
merge mainline into net
2011-07-08 13:34:37 +02:00
Vladimir 'phcoder' Serbinenko
2e418de646
Remove getroot.c from core on emu platform.
...
* grub-core/Makefile.core.def (kernel): Remove kern/emu/getroot.c and
kern/emu/raid.c.
* grub-core/kern/emu/main.c (main): Don't try to guess root device. It's
useless.
* grub-core/kern/emu/misc.c (get_win32_path): Moved from here...
* util/getroot.c (get_win32_path): ... here.
* grub-core/kern/emu/misc.c (fini_libzfs): Moved from here...
* util/getroot.c (fini_libzfs): ... here.
* grub-core/kern/emu/misc.c (grub_get_libzfs_handle): Moved from here...
* util/getroot.c (grub_get_libzfs_handle): ... here.
* grub-core/kern/emu/misc.c (grub_find_zpool_from_dir):
Moved from here...
* util/getroot.c (grub_find_zpool_from_dir): ... here.
* grub-core/kern/emu/misc.c
(grub_make_system_path_relative_to_its_root): Moved from here...
* util/getroot.c (grub_make_system_path_relative_to_its_root): ... here.
* grub-core/kern/emu/getroot.c: Moved from here ...
* util/getroot.c: ... here. All users updated.
* grub-core/kern/emu/raid.c: Moved from here ...
* util/raid.c: ... here. All users updated.
2011-07-08 13:33:12 +02:00
Vladimir 'phcoder' Serbinenko
4db3461696
Priority queue implementation
2011-07-08 04:07:15 +02:00
Vladimir 'phcoder' Serbinenko
cd8fe79a59
Fix compilation on GNU/Linux.
...
* grub-core/kern/emu/getroot.c (grub_util_pull_device) [!FreeBSD]:
Disable geli.
(grub_util_get_grub_dev) [!FreeBSD]: Likewise.
(grub_util_pull_device) [HAVE_DEVICE_MAPPER]: Fix const and func name.
* grub-core/disk/cryptodisk.c (grub_cryptodisk_open): Fix proto.
2011-07-08 03:59:05 +02:00
Vladimir Serbinenko
a251b71915
LUKS and GELI support.
...
* Makefile.util.def (libgrubkern.a): Add grub-core/lib/crypto.c,
grub-core/disk/luks.c, grub-core/disk/geli.c,
grub-core/disk/cryptodisk.c, grub-core/disk/AFSplitter.c,
grub-core/lib/pbkdf2.c, grub-core/commands/extcmd.c,
grub-core/lib/arg.c.
(libgrubmods.a): Remove gcrypts cflags and cppflags.
Remove grub-core/commands/extcmd.c, grub-core/lib/arg.c,
grub-core/lib/crypto.c, grub-core/lib/libgcrypt-grub/cipher/sha512.c,
grub-core/lib/libgcrypt-grub/cipher/crc.c and grub-core/lib/pbkdf2.c.
(grub-bin2h): Add libgcry.a.
(grub-mkimage): Likewise.
(grub-mkrelpath): Likewise.
(grub-script-check): Likewise.
(grub-editenv): Likewise.
(grub-mkpasswd-pbkdf2): Likewise.
(grub-pe2elf): Likewise.
(grub-fstest): Likewise.
(grub-mkfont): Likewise.
(grub-mkdevicemap): Likewise.
(grub-probe): Likewise.
(grub-ofpath): Likewise.
(grub-mklayout): Likewise.
(example_unit_test): Likewise.
(grub-menulst2cfg): Likewise.
* autogen.sh (UTIL_DEFS): Add Makefile.utilgcry.def.
* grub-core/Makefile.core.def (cryptodisk): New module.
(luks): Likewise.
(geli): Likewise.
* grub-core/disk/AFSplitter.c: New file.
* grub-core/disk/cryptodisk.c: Likewise.
* grub-core/disk/geli.c: Likewise.
* grub-core/disk/luks.c: Likewise.
* grub-core/kern/emu/getroot.c (get_dm_uuid): New function based on
grub_util_is_lvm.
(grub_util_get_dm_abstraction): New function.
(grub_util_follow_gpart_up): Likewise.
(grub_util_get_geom_abstraction): Likewise.
(grub_util_get_dev_abstraction): Use new functions.
(grub_util_pull_device): Pull GELI and LUKS.
(grub_util_get_grub_dev): Handle LUKS and GELI.
* grub-core/kern/emu/hostdisk.c (grub_util_get_fd_sectors): New function.
(grub_util_biosdisk_open): Use grub_util_get_fd_sectors.
(follow_geom_up): Removed.
(grub_util_fd_seek): New function.
(open_device): Use grub_util_fd_seek.
(nread): Rename to ..
(grub_util_fd_read): ... this. All users updated.
* grub-core/lib/crypto.c (grub_crypto_ecb_decrypt): A better prototype.
(grub_crypto_cbc_decrypt): Likewise.
(grub_crypto_hmac_write): Likewise.
(grub_crypto_hmac_buffer): Likewise.
(grub_password_get): Extend to util.
* include/grub/crypto.h (gcry_cipher_spec) [GRUB_UTIL]:
New member modname.
(gcry_md_spec) [GRUB_UTIL]: Likewise.
* include/grub/cryptodisk.h: New file.
* include/grub/disk.h (grub_disk_dev_id): Rename LUKS to CRYPTODISK.
* include/grub/emu/getroot.h (grub_dev_abstraction_types): Add
LUKS and GELI.
(grub_util_follow_gpart_up): New proto.
* include/grub/emu/hostdisk.h (grub_util_fd_seek): Likewise.
(grub_util_fd_read): Likewise.
(grub_cryptodisk_cheat_mount): Likewise.
(grub_util_cryptodisk_print_uuid): Likewise.
(grub_util_get_fd_sectors): Likewise.
* util/grub-fstest.c (mount_crypt): New var.
(fstest): Mount crypto if requested.
(options): New option -C.
(argp_parser): Parse -C.
(main): Init and fini gcry.
* util/grub-install.in: Support cryptodisk install.
* util/grub-mkconfig.in: Export GRUB_ENABLE_CRYPTODISK.
* util/grub-mkconfig_lib.in (is_path_readable_by_grub): Support
cryptodisk.
(prepare_grub_to_access_device): Likewise.
* util/grub-mkpasswd-pbkdf2.c (main): Use grub_password_get.
* util/grub-probe.c (probe_partmap): Support cryptodisk UUID probe.
(probe_cryptodisk_uuid): New function.
(probe_abstraction): Likewise.
(probe): Use new functions.
* util/import_gcry.py: Create Makefile.utilgcry.def.
Add modname member.
Also-By: Michael Gorven <michael@gorven.za.net>
Also-By: Clemens Fruhwirth <clemens@endorphin.org>
2011-07-07 23:52:58 +02:00
Vladimir 'phcoder' Serbinenko
9bfdcbbc7d
Lazy device scanning.
...
* Makefile.util.def (libgrubkern.a): Add grub-core/kern/emu/raid.c.
(grub-setup): Remove util/raid.c.
* grub-core/Makefile.core.def (kernel): Add kern/emu/raid.c on emu.
* grub-core/disk/lvm.c (scan_depth): New variable.
(grub_lvm_iterate): Rescan if necessary.
(find_lv): New function based on grub_lvm_open.
(grub_lvm_open): Use find_lv. Rescan on error.
(is_node_readable): New function.
(is_lv_readable): Likewise.
(grub_lvm_scan_device): Skip already found disks.
(do_lvm_scan): New function. Move grub_lvm_scan_device inside of it.
Stop if searched device is found and readable.
* grub-core/disk/raid.c (inscnt): New variable.
(scan_depth): Likewise.
(scan_devices): New function based on grub_raid_register. Abort if
looked for device is found.
(grub_raid_iterate): Rescan if needed.
(find_array): NEw function based on -grub_raid_open.
(grub_raid_open): Use find_array and rescan.
(insert_array): Set became_readable_at.
* grub-core/kern/disk.c (grub_disk_dev_iterate): Iterate though "pull.
* grub-core/kern/emu/getroot.c (grub_util_open_dm) [HAVE_DEVICE_MAPPER]:
New function.
(grub_util_is_lvm) [HAVE_DEVICE_MAPPER]: Use grub_util_open_dm.
(grub_util_pull_device): New function.
(grub_util_get_grub_dev): Call grub_util_pull_device.
* util/raid.c: Moved to ..
* grub-core/kern/emu/raid.c: ... here.
(grub_util_raid_getmembers): New parameter "bootable".
All users updated. Support 1.x.
* include/grub/ata.h (grub_ata_dev): Change iterate prototype.
All users updated.
* include/grub/disk.h (grub_disk_pull_t): New enum.
(grub_disk_dev): Change iterate prototype.
All users updated.
* include/grub/emu/getroot.h (grub_util_raid_getmembers) [__linux__]:
New proto.
* include/grub/emu/hostdisk.h (grub_util_pull_device): Likewise.
* include/grub/lvm.h (grub_lvm_lv): New members fullname and compatname.
* include/grub/raid.h (grub_raid_array): New member became_readable_at.
* include/grub/scsi.h (grub_scsi_dev): Change iterate prototype.
All users updated.
* include/grub/util/raid.h: Removed.
2011-07-07 23:21:59 +02:00
Vladimir 'phcoder' Serbinenko
0044d1db2e
Simplify disk opening
2011-07-07 21:46:25 +02:00
Vladimir 'phcoder' Serbinenko
00542307eb
merge mainline into lazy
2011-07-07 12:21:53 +02:00
Vladimir 'phcoder' Serbinenko
abee94edf9
Unify sparc init with other ieee1275.
...
* grub-core/Makefile.core.def (kernel): Use kern/ieee1275/init.c
instead of kern/sparc64/ieee1275/init.c.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options)
[__sparc__]: Set GRUB_IEEE1275_FLAG_NO_PARTITION_0.
* grub-core/kern/ieee1275/init.c [__sparc__]: Include
grub/machine/kernel.h.
(grub_ieee1275_original_stack) [__sparc__]: New variable.
(grub_claim_heap) [__sparc__]: Use sparc version.
(grub_machine_init): Moved args parsing to
(grub_parse_cmdline): ...this.
* grub-core/kern/sparc64/ieee1275/init.c: Removed.
* include/grub/offsets.h (GRUB_KERNEL_SPARC64_IEEE1275_MOD_GAP):
New definition.
(GRUB_KERNEL_SPARC64_IEEE1275_MOD_ALIGN): Likewise.
Move BOOTP to separate file.
* grub-core/Makefile.core.def (net): Add net/bootp.c.
* grub-core/net/net.c: Move all BOOTP functions to
* grub-core/net/bootp.c: ... here.
Use frame interface on PXE.
* grub-core/Makefile.core.def (pxecmd): Removed.
(pxe): Use net/drivers/i386/pc/pxe.c rather than net/i386/pc/pxe.c.
* grub-core/commands/i386/pc/pxecmd.c: Removed.
* grub-core/i386/pc/pxe.c: Moved from here ...
* grub-core/net/i386/pc/pxe.c: ... here. Rewritten.
* grub-core/net/net.c (grub_net_open_real): Handle old pxe syntax.
* include/grub/i386/pc/pxe.h (grub_pxe_unload): Removed.
EFI network support.
* grub-core/Makefile.core.def (efinet): New module.
* grub-core/disk/efi/efidisk.c (compare_device_paths): Moved from
here...
* grub-core/kern/efi/efi.c (grub_efi_compare_device_paths): ... here.
All users updated.
* grub-core/kern/efi/init.c (grub_efi_net_config): New variable.
(grub_machine_get_bootlocation): Call grub_efi_net_config if needed.
* grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_7): New function.
* grub-core/net/drivers/efi/efinet.c: New file.
* include/grub/efi/efi.h (grub_efi_compare_device_paths): New proto.
(grub_efi_net_config): New extern var.
Various cleanups and bugfixes.
* grub-core/disk/efi/efidisk.c (grub_efidisk_open): Fix off-by-one
error.
(grub_efidisk_get_device_name): Unify similar codepaths. Accept whole
disk declared as partition.
* grub-core/disk/ieee1275/ofdisk.c (grub_ofdisk_open): Fix memory
leak on failure.
* grub-core/kern/dl.c (grub_dl_load_file): Fix memory leak.
* grub-core/kern/mm.c (grub_debug_malloc): Don't use unsupported %zx.
(grub_debug_zalloc): Likewise.
(grub_debug_realloc): Likewise.
(grub_debug_memalign): Likewise.
* grub-core/net/arp.c (grub_net_arp_receive): IPv4 is 4-byte wide.
Check that target is IPv4.
* grub-core/net/drivers/ieee1275/ofnet.c (grub_ofnet_findcards): Use
local-mac-address as fallback.
* grub-core/net/ethernet.c (grub_net_recv_ethernet_packet): Prevent
memory leak.
* grub-core/net/ip.c (ipchksum): Rename to ...
(grub_net_ip_chksum): ... this. All users updated.
(grub_net_recv_ip_packets): Special handling for DHCP.
* util/grub-mkimage.c (generate_image): Zero-out aout header.
Unify prefix handling
* grub-core/kern/efi/init.c (grub_efi_set_prefix): Revamped into ...
(grub_machine_get_bootlocation): ... this.
* grub-core/kern/emu/main.c (grub_machine_set_prefix): Revamped into ...
(grub_machine_get_bootlocation): ... this.
(grub_prefix): New variable.
(prefix): Removed.
(root_dev): New variable.
(dir): Likewise.
(main): Use new variables.
* grub-core/kern/i386/coreboot/init.c (grub_machine_set_prefix):
Revamped into ...
(grub_machine_get_bootlocation): ... this.
* grub-core/kern/i386/efi/init.c (grub_machine_set_prefix): Removed.
* grub-core/kern/i386/pc/init.c (make_install_device): Revamped into ...
(grub_machine_get_bootlocation): ... this.
(grub_machine_set_prefix): Removed.
* grub-core/kern/ia64/efi/init.c (grub_machine_set_prefix): Removed.
* grub-core/kern/ieee1275/init.c (grub_machine_set_prefix):
Revamped into ...
(grub_machine_get_bootlocation): ... this.
* grub-core/kern/main.c (grub_set_root_dev): Revamped into ...
(grub_set_prefix_and_root): ... this. All users updated.
* grub-core/kern/mips/init.c (grub_machine_set_prefix):
Revamped into ...
(grub_machine_get_bootlocation): ... this.
* include/grub/kernel.h (grub_machine_set_prefix): Removed.
(grub_machine_get_bootlocation): New proto.
* include/grub/i386/pc/kernel.h (grub_pc_net_config): New var.
Less intrusive and more reliable seek on network implementation.
* grub-core/kern/file.c (grub_file_net_seek): Removed.
(grub_file_seek): Don't call grub_file_net_seek.
* grub-core/net/net.c (grub_net_fs_read): Renamed to ...
(grub_net_fs_read_real): .. this.
(grub_net_seek_real): Use net->offset.
(grub_net_fs_read): Seek if necessary.
Unify IEEE1275 netwotk config with the other platforms.
* grub-core/kern/ieee1275/init.c (grub_ieee1275_net_config):
New variable.
(grub_machine_get_bootlocation): Support network.
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args):
Support type and device parsing.
(grub_ieee1275_get_device_type): New function.
* grub-core/net/drivers/ieee1275/ofnet.c (grub_getbootp_real): Revamped
into ...
(grub_ieee1275_net_config_real): ... this.
(grub_ofnet_probecards): Removed.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Remove ofnet.h.
* include/grub/ieee1275/ofnet.h: Removed.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_net_config): NEw
extern var.
(grub_ieee1275_get_device_type): New function.
Unify network device closing across platforms and make more robust.
* grub-core/kern/ieee1275/init.c (grub_machine_fini): Don't call
grub_grubnet_fini.
* grub-core/net/ethernet.c (send_ethernet_packet): Open card if it isn't
already.
* grub-core/net/net.c (grub_net_network_level_interface_register):
Update num_ifaces.
(grub_net_card_unregister): Close all interfaces.
(receive_packets): Don't poll if no iterfaces are registered.
Open if necessary.
(grub_net_fini_hw): New function.
(grub_net_restore_hw): Likewise.
(fini_hnd): New variable.
(GRUB_MOD_INIT): Register preboot hook.
(GRUB_MOD_FINI): Run and unregister preboot hook.
Poll network cards when idle.
* grub-core/kern/term.c (grub_net_poll_cards_idle): New variable.
(grub_checkkey): Call grub_net_poll_cards_idle if it's not NULL.
* grub-core/net/net.c (receive_packets): Save last poll time.
(grub_net_poll_cards_idle_real): New function.
(GRUB_MOD_INIT): Register grub_net_poll_cards_idle.
(GRUB_MOD_FINI): Unregister grub_net_poll_cards_idle.
* include/grub/kernel.h (grub_poll_cards_idle): New extern variable.
Rename ofnet interfaces.
* grub-core/net/drivers/ieee1275/ofnet.c (find_alias): New function.
(grub_ofnet_findcards): Use ofnet_%s names.
* util/grub-mknetdir.in: Support for EFI and IEEE1275.
Cleanup socket opening.
* grub-core/net/net.c (grub_net_fs_open): Rewritten.
(grub_net_fs_close): Likewise.
(grub_net_fs_read_real): Use eof member.
* include/grub/net/udp.h (+grub_net_udp_open): New proto.
(+grub_net_udp_close): New inline function.
* include/grub/net/tftp.h: Moved to the top of ...
* grub-core/net/tftp.c: ... here.
* include/grub/net/ip.h: Moved mostly to the top of ...
* grub-core/net/ip.c: ... here.
* include/grub/net/ethernet.h: Moved mostly to the top of ...
* grub-core/net/ethernet.c: ... here.
* grub-core/kern/device.c (grub_device_close): Free device->net->server.
* grub-core/commands/probe.c (grub_cmd_probe): Use protocol name for
FS name.
* include/grub/net/ip.h (ipv4_ini): Removed.
(ipv4_fini): Likewise.
* include/grub/net/ip.h (grub_net_recv_ip_packets): New proto.
(grub_net_send_ip_packets): Likewise.
2011-07-06 20:05:26 +02:00
Vladimir 'phcoder' Serbinenko
697ffdc55b
Fix a memory leak
2011-07-06 18:21:24 +02:00
Vladimir 'phcoder' Serbinenko
d1831ca48a
Limit idle polling frequency
2011-07-06 18:21:07 +02:00
Vladimir 'phcoder' Serbinenko
c3bf5267b0
Fix a memory leak
2011-07-06 17:41:49 +02:00
Vladimir 'phcoder' Serbinenko
e1a0e1b428
Fix the usage of unsupported %zx
2011-07-06 17:41:19 +02:00
Vladimir 'phcoder' Serbinenko
f872d4744e
Fix compilation error
2011-07-06 17:40:56 +02:00
Vladimir 'phcoder' Serbinenko
c2aa00f059
Fix a memory leak
2011-07-06 17:40:36 +02:00
Vladimir 'phcoder' Serbinenko
c97dbbf2f2
Fix a memory leak
2011-07-06 17:40:24 +02:00
Vladimir 'phcoder' Serbinenko
6cf88dfd7a
add missing file
2011-07-06 15:02:19 +02:00
Vladimir 'phcoder' Serbinenko
138eeb3625
Move bootp into a separate file
2011-07-06 13:52:35 +02:00
Vladimir 'phcoder' Serbinenko
228ccedb5e
poll cards when idle
2011-07-06 13:37:33 +02:00
Vladimir 'phcoder' Serbinenko
1c3fcdee15
buffer network files. Fix incorrect net_fini_hw and unregister calls
2011-07-06 13:13:45 +02:00
Vladimir 'phcoder' Serbinenko
b975df6348
Send TFTP_ERROR on tftp premature close. Several cleanups
2011-07-06 12:53:37 +02:00
Vladimir 'phcoder' Serbinenko
cf1337aa02
* grub-core/kern/i386/qemu/mmap.c (grub_machine_mmap_init): Use new
...
grub_read_cmos prototype.
2011-07-06 02:50:35 +02:00
Vladimir 'phcoder' Serbinenko
72b9ad936a
fix declarations in pxe
2011-07-06 02:49:04 +02:00
Vladimir 'phcoder' Serbinenko
d53bf34924
merge mainline into net
2011-07-06 01:35:41 +02:00
Vladimir 'phcoder' Serbinenko
93c06ff9c6
VGA text support in qemu-mips
...
* grub-core/Makefile.core.def (kernel): Add term/i386/pc/vga_text.c,
term/i386/vga_common.c and kern/vga_init.c on qemu-mips.
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init vga
text.
* grub-core/kern/i386/qemu/init.c: Renamed to ...
* grub-core/kern/vga_init.c: ... this.
* grub-core/kern/vga_init.c (VGA_ADDR) [__mips__]: Adjust.
(grub_qemu_init_cirrus) [__mips__]: Skip PCI and adjust the I/O base.
* grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN) [__mips__]:
Adjust.
* include/grub/vga.h [GRUB_MACHINE_MIPS_QEMU_MIPS]: Declare
GRUB_MACHINE_PCI_IO_BASE.
2011-07-05 23:46:15 +02:00
Vladimir 'phcoder' Serbinenko
748ccabea1
MIPS qemu flash support.
...
* grub-core/boot/mips/startup_raw.S [GRUB_MACHINE_MIPS_QEMU_MIPS]: Check
magic.
* grub-core/kern/mips/qemu_mips/init.c (probe_mem): New function.
(grub_machine_init): Probe memory if its size isn't known.
* util/grub-mkimage.c (image_targets): Add flash targets.
(generate_image): Handle flash targets.
2011-07-05 21:42:36 +02:00
Vladimir 'phcoder' Serbinenko
d734599439
MIPS qemu at_keyboard support.
...
* gentpl.py (videoinkernel): Add qemu-mips.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add necessary headers.
* grub-core/Makefile.core.def (kernel): Add at_keyboard and layout.
* grub-core/kern/mips/qemu_mips/init.c (grub_machine_init): Init new
modules.
* grub-core/term/at_keyboard.c (grub_keyboard_controller_init)
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Don't consider original set.
* grub-core/term/serial.c (grub_serial_register)
[GRUB_MACHINE_MIPS_QEMU_MIPS]: Make com0 explicitly active.
2011-07-05 21:00:01 +02:00
Vladimir 'phcoder' Serbinenko
145c7b4661
merge mainline into net
2011-07-05 20:40:39 +02:00
Vladimir 'phcoder' Serbinenko
a07a81b335
CMOS support on sparc.
...
* gentpl.py (cmos): Add powerpc and sparc.
* grub-core/Makefile.core.def (datetime): Add lib/ieee1275/cmos.c on
powerpc and sparc.
* grub-core/lib/cmos_datetime.c (grub_get_datetime)
[__powerpc__ || __sparc__]: Rename to grub_get_datetime_cmos.
(grub_set_datetime) [__powerpc__ || __sparc__]: Likewise to
grub_set_datetime_cmos.
* grub-core/lib/ieee1275/cmos.c: New file.
* grub-core/lib/ieee1275/datetime.c (no_ieee1275_rtc): New vaiable.
(find_rtc): Set no_ieee1275_rtc on error.
(grub_get_datetime): Call grub_get_datetime_cmos on error.
(grub_set_datetime): Call grub_set_datetime_cmos on error.
* include/grub/cmos.h (grub_cmos_read): Return grub_err_t since it may
fail. Move value to argument. All users updated
(grub_cmos_write): Likewise.
(grub_cmos_read) [__powerpc__ || __sparc__]: Rewritten.
(grub_cmos_write) [__powerpc__ || __sparc__]: Likewise.
* include/grub/datetime.h [__powerpc__ || __sparc__]: Declare
grub_get_datetime_cmos and grub_set_datetime_cmos.
2011-07-05 20:24:20 +02:00
Vladimir 'phcoder' Serbinenko
0bc2cd0f82
Reintroduce open/close of net cards. Clean up ofnet.
2011-07-05 16:37:14 +02:00
Vladimir 'phcoder' Serbinenko
671a78acb0
cleanup pxe and efi network release
2011-07-05 14:34:10 +02:00
Vladimir 'phcoder' Serbinenko
7e0c2d162a
Restructurisations, cleanups and few bugfixes
2011-07-02 22:13:33 +02:00
Vladimir 'phcoder' Serbinenko
c4d038f632
Don't react to adressed bootp packets unless in bootp transaction
2011-07-02 20:11:29 +02:00
Vladimir 'phcoder' Serbinenko
03a0046581
merge mainline into net
2011-07-02 18:52:50 +02:00
Vladimir 'phcoder' Serbinenko
cbe20661f6
minor stylistic cleanup
2011-07-02 18:05:40 +02:00
Vladimir 'phcoder' Serbinenko
6708faafde
Fix broken blksize negotiation, fix broken seek and change a way net device is filled n i386-pc
2011-07-02 17:58:23 +02:00
Vladimir 'phcoder' Serbinenko
cae730b452
Automatically determine prefix when netbooted on EFI
2011-07-02 16:56:35 +02:00
Vladimir 'phcoder' Serbinenko
574618a2e9
unify prefix handling across platforms
2011-07-02 14:09:36 +02:00
Colin Watson
548947916b
* grub-core/term/gfxterm.c (grub_virtual_screen_setup): Use
...
default_bg_color rather than black.
(grub_gfxterm_fullscreen): Likewise.
(grub_gfxterm_background_color_cmd): Save new background color in
default_bg_color.
2011-06-28 17:05:41 +01:00
Vladimir 'phcoder' Serbinenko
8d5d8444bd
* grub-core/Makefile.core.def (chain): Fix coreboot filename.
2011-06-27 19:30:16 +02:00
Vladimir 'phcoder' Serbinenko
5afeb5bdd6
* grub-core/disk/pata.c (grub_pata_initialize) [QEMU_MIPS]: Fix a
...
mismerge.
2011-06-27 19:26:52 +02:00
Vladimir 'phcoder' Serbinenko
ba7df45ee6
Chainloading on coreboot support.
...
* grub-core/Makefile.core.def (chain): Add coreboot.
* grub-core/loader/i386/coreboot/chainloader.c: New file.
2011-06-27 14:14:11 +02:00
Vladimir 'phcoder' Serbinenko
d0b526b277
* grub-core/loader/i386/bsd.c (grub_bsd_load): Handle relocator failure
...
if it happens.
2011-06-27 13:57:03 +02:00
Vladimir 'phcoder' Serbinenko
5ff1d945ed
Implement time command.
...
* grub-core/Makefile.core.def (time): New module.
* grub-core/commands/time.c: New file.
* grub-core/script/parser.y: Remove "time" keyword.
* grub-core/script/yylex.l: Likewise.
2011-06-27 12:31:37 +02:00
Vladimir 'phcoder' Serbinenko
bdea379833
* grub-core/lib/relocator.c (malloc_in_range): Fix a memory corruption
...
when handling leftovers.
2011-06-27 12:18:44 +02:00
Vladimir 'phcoder' Serbinenko
b6f945dccb
* grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer) Use right
...
type in pointers on sparc64.
(get_card_packet): Likewise.
2011-06-27 12:13:21 +02:00
Colin Watson
f9b75e8a67
* grub-core/commands/videoinfo.c (hook): Indicate current video mode
...
with `*'.
(grub_cmd_videoinfo): Fetch current video mode.
2011-06-27 10:47:02 +01:00
Vladimir 'phcoder' Serbinenko
1e3d9b8612
* grub-core/disk/scsi.c (grub_scsi_read): Limit SCSI reads to 32K
...
because of underlying system restrictions.
2011-06-27 10:12:35 +02:00
Vladimir 'phcoder' Serbinenko
9fc9ce3795
Coreboot video support.
...
* grub-core/Makefile.core.def (vga): Extend to coreboot and multiboot.
(vbe): Likewise.
* grub-core/kern/i386/coreboot/startup.S: Include int.S.
* grub-core/kern/i386/pc/startup.S (grub_bios_interrupt): Moved from
here ...
* grub-core/kern/i386/int.S: ... here.
* grub-core/video/i386/pc/vbe.c: Updated includes.
* grub-core/video/i386/pc/vga.c: Likewise.
* include/grub/i386/coreboot/memory.h
(GRUB_MEMORY_MACHINE_SCRATCH_ADDR): New definition.
(GRUB_MEMORY_MACHINE_SCRATCH_SEG): Likewise.
(GRUB_MEMORY_MACHINE_SCRATCH_SIZE): Likewise.
* include/grub/i386/pc/int.h (GRUB_CPU_INT_FLAGS_DEFAULT) [!PCBIOS]:
Disable interrupts.
* include/grub/i386/pc/vga.h: Removed. All users updated.
2011-06-27 08:54:55 +02:00
Vladimir 'phcoder' Serbinenko
41bec7fec9
* grub-core/disk/ahci.c (grub_ahci_readwrite_real): Use proper
...
definitions for dprintf.
* grub-core/disk/pata.c (grub_pata_readwrite): Likewise.
2011-06-27 08:43:13 +02:00
Vladimir 'phcoder' Serbinenko
ca80309d32
* grub-core/net/drivers/ieee1275/ofnet.c (send_card_buffer): Fix
...
prototype.
(get_card_packet): Likewise.
2011-06-27 08:40:17 +02:00
Vladimir 'phcoder' Serbinenko
59b455fcea
Fix incorrect ISR PXE calls
2011-06-27 06:31:25 +02:00
Vladimir 'phcoder' Serbinenko
9d22909b85
efinet support
2011-06-26 22:42:04 +02:00
Vladimir 'phcoder' Serbinenko
f8614119a0
Few ofnet cleanups
2011-06-26 22:38:43 +02:00
Vladimir 'phcoder' Serbinenko
14f0752dcf
Print MAC address when listing cards
2011-06-26 22:37:49 +02:00
Vladimir 'phcoder' Serbinenko
d36f20db46
Don't do unaligned access when parsing DHCP packet
2011-06-26 22:37:19 +02:00
Yves Blusseau
9e322ce8de
Display the path of the file when file is not found
...
* grub-core/fs/fat.c: Display the filename when file is not found.
* grub-core/fs/fshelp.c: Likewise.
* grub-core/fs/hfs.c: Likewise.
* grub-core/fs/jfs.c: Likewise.
* grub-core/fs/minix.c: Likewise.
* grub-core/fs/ufs.c: Likewise.
* grub-core/fs/btrfs.c: Likewise.
* grub-core/commands/i386/pc/play.c: Likewise.
2011-06-26 21:48:52 +02:00
Vladimir 'phcoder' Serbinenko
a8fae12c5b
minor cleanups
2011-06-26 17:18:53 +02:00
Szymon Janc
cbf597afb1
* grub-core/commands/cmp.c (grub_cmd_cmp): Remove unnecessary NULL
...
pointer checks before calling grub_free().
* grub-core/commands/wildcard.c (match_devices): Likewise.
* grub-core/commands/wildcard.c (match_files): Likewise.
* grub-core/fs/cpio.c (grub_cpio_dir): Likewise.
* grub-core/fs/cpio.c (grub_cpio_open): Likewise.
* grub-core/fs/udf.c (grub_udf_read_block): Likewise.
* grub-core/fs/xfs.c (grub_xfs_read_block): Likewise.
* grub-core/loader/efi/chainloader.c (grub_cmd_chainloader): Likewise.
* grub-core/normal/cmdline.c (grub_cmdline_get): Likewise.
* grub-core/script/yylex.l (grub_lexer_unput): Likewise.
* grub-core/video/readers/jpeg.c (grub_video_reader_jpeg): Likewise.
* grub-core/video/readers/png.c (grub_png_output_byte): Likewise.
2011-06-26 17:17:41 +02:00
Vladimir 'phcoder' Serbinenko
80ca250565
Add backward compatibiulity with old (pxe) syntax. Several cleanups
2011-06-26 17:06:18 +02:00
Vladimir 'phcoder' Serbinenko
bf651f7907
Fix incorrect memset
2011-06-26 14:47:38 +02:00
Vladimir 'phcoder' Serbinenko
8e60fc8f85
Send network packets on PXE
2011-06-26 04:19:12 +02:00
Vladimir 'phcoder' Serbinenko
cc4bfec8fa
Fix a memory leak
2011-06-26 04:18:45 +02:00
Patrick
6295b32f79
* grub-core/kern/main.c (grub_load_normal_mode): Correct the comment.
2011-06-25 01:09:32 +02:00
Vladimir 'phcoder' Serbinenko
77c0840ba6
* grub-core/net/i386/pc/pxe.c (grub_pxe_recv): Fix declaration.
...
(grub_pxe_send): Likewise.
(GRUB_MOD_INIT): Fix types.
2011-06-25 00:18:36 +02:00
Szymon Janc
40ea05dee4
* grub-core/io/xzio.c: Fix code style issues
2011-06-24 22:37:17 +02:00
Vladimir 'phcoder' Serbinenko
8f72becdef
merge mainline into net
2011-06-24 22:20:50 +02:00
Manoel Rebelo Abranches
90162423e9
Network infrastructure.
...
The ARP protocol was made by Paulo Pinatti <ppinatti@br.ibm.com>
* include/grub/net/arp.h: New file.
* include/grub/net/device.h: Likewise.
* include/grub/net/ethernet.h: Likewise.
* include/grub/net/ip.h: Likewise.
* include/grub/net/netbuff.h: Likewise.
* include/grub/net/tftp.h: Likewise.
* include/grub/net/udp.h: Likewise.
* include/grub/ieee1275/ofnet.h: Likewise.
* include/grub/emu/export.h: Likewise.
* include/grub/net.h: Likewise.
* grub-core/net/arp.c: Likewise.
* grub-core/net/ethernet.c: Likewise.
* grub-core/net/ip.c: Likewise.
* grub-core/net/udp.c: Likewise.
* grub-core/net/tftp.c: Likewise.
* grub-core/net/netbuff.c: Likewise.
* grub-core/net/net.c: Likewise.
* grub-core/net/drivers/emu/emunet.c: Likewise.
* grub-core/net/drivers/ieee1275/ofnet.c: Likewise.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add net.h, ofnet.h and
export.h.
* grub-core/Makefile.core.def (net): New module.
(tftp): Likewise.
(ofnet): Likewise.
(emunet): Likewise.
* grub-core/commands/ls.c (grub_ls_list_devices) [!GRUB_UTIL]: List
network protocols.
* grub-core/kern/device.c (grub_net_open) : New variable.
(grub_device_open): Handle network device.
(grub_device_close): Likewise.
* grub-core/kern/file.c (grub_file_net_seek) : New variable.
(grub_grubnet_fini): Likewise.
(grub_file_seek): Seek in network device.
* grub-core/kern/fs.c (grub_fs_probe): Handle network devices.
* grub-core/kern/ieee1275/init.c (grub_machine_set_prefix): Handle
network root.
(grub_machine_fini): Call grub_grubnet_fini.
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_parse_args): Handle
network.
(grub_ieee1275_get_aliasdevname): New function.
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
Add unofficial Solaris network info.
(grub_multiboot_make_mbi): Likewise.
* grub-core/fs/i386/pc/pxe.c: Moved from here ...
* grub-core/net/i386/pc/pxe.c: ...here. Adapted for new design.
* include/grub/device.h (grub_fs): Removed.
* include/grub/err.h (grub_err_t): Add network-related values.
* include/grub/i386/pc/pxe.h: Removed bootp parts.
* include/grub/ieee1275/ieee1275.h (grub_ofnetcard_data): New struct.
(grub_ieee1275_get_aliasdevname): New proto.
* include/grub/net.h: Rewritten.
Also-By: Paulo Pinatti <ppinatti@br.ibm.com>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2011-06-24 22:16:05 +02:00
Vladimir 'phcoder' Serbinenko
a057797f18
merge mine and abranches' branches. Fix several issues
2011-06-24 21:51:57 +02:00
Vladimir 'phcoder' Serbinenko
8b51fd98b9
bootp support
2011-06-24 20:35:25 +02:00
Vladimir 'phcoder' Serbinenko
031f22a01f
* grub-core/disk/raid.c (insert_array): Ensure uniqueness of readable
...
names.
2011-06-24 18:26:20 +02:00
Vladimir 'phcoder' Serbinenko
4388ca7224
* grub-core/commands/wildcard.c (match_files): Add a useful dprintf.
...
(wildcard_expand): Don't stop on nonregexp parts after regexp ones since
it truncates the output.
Reported by: Ximin Luo.
2011-06-24 13:43:10 +02:00
Vladimir 'phcoder' Serbinenko
98e2f50661
* grub-core/fs/iso9660.c (grub_iso9660_iterate_dir): Skip . and ..
2011-06-24 13:02:49 +02:00
Vladimir 'phcoder' Serbinenko
bc09e1a238
* grub-core/kern/emu/getroot.c (grub_guess_root_device): Revert to
...
old method if mountinfo would return /dev/root and /dev/root doesn't
exist.
2011-06-24 04:32:54 +02:00
Vladimir 'phcoder' Serbinenko
290766fb77
ZFS zlib support
...
* grub-core/fs/zfs/zfs.c (zlib_decompress): New function.
(decomp_table): Add zlib entries.
(zio_read): USe 8 bits for compression function rather than 3.
* include/grub/zfs/zio.h (zio_compress): Add zlib values.
2011-06-24 00:31:29 +02:00
Vladimir 'phcoder' Serbinenko
005dd67cb6
* grub-core/disk/ahci.c: Add missing license statements.
...
* grub-core/fs/romfs.c: Likewise.
* grub-core/lib/ia64/setjmp.S: Likewise.
* grub-core/loader/i386/pc/freedos.c: Likewise.
* grub-core/loader/ia64/efi/linux.c: Likewise.
* grub-core/video/colors.c: Likewise.
* include/grub/dl.h (GRUB_MOD_DEP): New macro.
2011-06-24 00:29:21 +02:00
Vladimir 'phcoder' Serbinenko
5ab3f48a92
AHCI support.
...
* grub-core/Makefile.core.def (ata_pthru): Removed.
(ahci): New module.
(pata): Likewise.
* grub-core/bus/usb/ohci.c (GRUB_MOD_FINI): Unregister preboot hook
on unload.
* grub-core/commands/hdparm.c (grub_hdparm_do_ata_cmd): Use ATA
readwrite.
(grub_hdparm_do_check_powermode_cmd): Likewise.
(grub_hdparm_do_smart_cmd): Likewise.
(grub_hdparm_set_val_cmd): Likewise.
(grub_cmd_hdparm): Likewise. Check thta we have an ATA device.
* grub-core/disk/ahci.c: New file.
* grub-core/disk/ata.c: Factor out the low-level part into ...
* grub-core/disk/pata.c: ... here.
* grub-core/disk/ata_pthru.c: Contents moved to ...
* grub-core/disk/pata.c: ... here.
* grub-core/disk/scsi.c (grub_scsi_names): New array.
(grub_scsi_iterate): Use grub_scsi_names.
(grub_scsi_open): Likewise.
* grub-core/kern/disk.c (grub_disk_ata_pass_through): Removed.
* include/grub/ata.h (grub_ata_commands): Add DMA commands.
(grub_ata_regs_t): New struct.
(grub_disk_ata_pass_through_parms): Likewise.
(grub_ata_device): Renamed to ...
(grub_ata): ... this.
(grub_ata_dev): New struct.
Removed all low-level inline functions.
* include/grub/scsi.h: Add PATA and AHCI subsystems.
(grub_scsi_dev): Removed 'name' and 'id'. Added 'id' parameter to
iterate hooks and open. All users updated.
* util/grub-install.in: Handle AHCI disk module.
2011-06-24 00:07:55 +02:00
Szymon Janc
c31dc5f5e4
Add support for DRI and RSTn markers in JPEG files.
...
* grub-core/video/readers/jpeg.c (JPEG_MARKER_DRI): New define.
(JPEG_MARKER_RST0): Likewise.
(JPEG_MARKER_RST1): Likewise.
(JPEG_MARKER_RST2): Likewise.
(JPEG_MARKER_RST3): Likewise.
(JPEG_MARKER_RST4): Likewise.
(JPEG_MARKER_RST5): Likewise.
(JPEG_MARKER_RST6): Likewise.
(JPEG_MARKER_RST7): Likewise.
(grub_jpeg_data): New fields dri, r1, bitmap_ptr.
(grub_jpeg_decode_dri): New function.
(grub_jpeg_decode_sos): Move image data related part into
grub_jpeg_decode_data function.
(grub_jpeg_decode_data): New function.
(grub_jpeg_reset): New function.
(grub_jpeg_decode_jpeg): Handle new markers.
2011-06-23 23:13:20 +02:00
Vladimir 'phcoder' Serbinenko
cad3237fb5
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Close
...
file after stat.
Reported by: David Volgyes <dvolgyes>.
2011-06-23 22:02:05 +02:00
Vladimir 'phcoder' Serbinenko
e061a1b537
* grub-core/lib/reed_solomon.c (rs_recover) [STANDALONE]:
...
Prevent memory leak.
2011-06-23 20:58:35 +02:00
Vladimir 'phcoder' Serbinenko
1abe47dc99
* grub-core/lib/reed_solomon.c (rs_recover): Prevent memory leak.
...
(main): Close file.
2011-06-23 20:55:36 +02:00
Vladimir 'phcoder' Serbinenko
fbc626665f
* 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>.
2011-06-23 20:38:19 +02:00
David Volgyes
e98c83e910
* grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Avoid NULL-pointer
...
dereference.
2011-06-23 20:28:04 +02:00
Vladimir 'phcoder' Serbinenko
a199a8cd1a
Fix spurious warning.
...
* grub-core/partmap/acorn.c (grub_acorn_boot_block): Make a union.
(acorn_partition_map_find): Use .bin member.
2011-06-23 20:05:39 +02:00
Vladimir 'phcoder' Serbinenko
e2d1dba0ae
* grub-core/kern/emu/getroot.c (grub_guess_root_device): Don't accept
...
/dev/root as a valid device.
2011-06-23 19:50:41 +02:00
Jim Meyering
8a5d6919e1
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.
2011-06-23 18:08:53 +02:00
Vladimir 'phcoder' Serbinenko
2df2e89fee
Fixed a cache collision bug. Thanks guufy1 for bugreport and test
2011-06-23 09:39:12 +02:00
Vladimir 'phcoder' Serbinenko
a5edbcb3a1
merge mainline into 4096
2011-06-23 04:08:37 +02:00
Manoel R. Abranches
d855fbcf37
Add error verification in netbuff operations.
2011-06-18 20:20:53 -03:00
Manoel R. Abranches
d6d205568f
Close cards before boot.
2011-06-18 20:18:25 -03:00
Manoel R. Abranches
e23bc603f8
Prevent crash when detecting fs.
2011-06-15 15:11:26 -03:00
Manoel Rebelo Abranches
4700d08bb4
Run indent on files.
2011-06-07 21:59:53 -03:00
Manoel Rebelo Abranches
423a1849ef
Write ChangeLog.
2011-06-07 11:47:31 -03:00
Manoel R. Abranches
4f24b12e1f
Fix compilation in x86
2011-06-02 15:13:33 -03:00
Colin Watson
6b4e643081
* grub-core/kern/emu/hostdisk.c (linux_find_partition): Handle
...
partitions under /dev/disk/by-id/.
2011-05-27 13:57:22 +01:00
Colin Watson
c64db050f7
* 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 .
2011-05-27 13:52:21 +01:00
Manoel R. Abranches
85fd555441
Merge Mainline.
2011-05-27 00:23:33 -03:00
Manoel R. Abranches
7dd64f1236
Use a net fs struct to handle open, reand and close in file.
2011-05-27 00:22:35 -03:00
Vladimir 'phcoder' Serbinenko
245f4aba48
* grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
...
opening new one.
2011-05-21 07:05:46 +02:00
Vladimir Serbinenko
f767c929f2
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>
2011-05-21 07:03:55 +02:00
Vladimir 'phcoder' Serbinenko
eea841440d
fix several bugs
2011-05-19 15:39:34 +02:00
Vladimir 'phcoder' Serbinenko
9a79fcf2c9
* 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.
2011-05-19 12:13:18 +02:00
Colin Watson
e806ce60ee
merge trunk
2011-05-18 16:53:36 +01:00
Colin Watson
09728256a8
* grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE.
2011-05-18 17:16:59 +02:00
Vladimir 'phcoder' Serbinenko
e775d8edfe
* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Downgrade a printf
...
into dprintf.
2011-05-18 15:37:18 +02:00
Vladimir 'phcoder' Serbinenko
bf947d36e3
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.
2011-05-18 15:35:19 +02:00
Colin Watson
5626056ffb
* 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.
2011-05-18 12:53:07 +01:00
Colin Watson
e2965f4a32
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.
2011-05-18 12:44:24 +01:00
Vladimir 'phcoder' Serbinenko
1e4b43901a
* 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.
2011-05-18 12:48:14 +02:00
Vladimir 'phcoder' Serbinenko
cf02731e48
* grub-core/Makefile.core.def (ieee1275_fb): Use enable=powerpc_ieee1275
...
for cleanness.
2011-05-18 12:39:22 +02:00
Vladimir 'phcoder' Serbinenko
548937c6d6
merge mainline into ahci
2011-05-18 12:36:26 +02:00
Vladimir 'phcoder' Serbinenko
e3a1073fd2
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.
2011-05-18 12:15:16 +02:00
Vladimir 'phcoder' Serbinenko
05caa461e8
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.
2011-05-18 09:56:33 +02:00
Vladimir Serbinenko
a2491e235c
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>
2011-05-18 09:35:47 +02:00
Vladimir 'phcoder' Serbinenko
6ad6223e92
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.
2011-05-18 01:38:01 +02:00
Vladimir 'phcoder' Serbinenko
543a8f6ef9
* 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.
2011-05-18 00:21:49 +02:00
Vladimir 'phcoder' Serbinenko
35341bbc96
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.
2011-05-17 21:40:35 +02:00
Vladimir 'phcoder' Serbinenko
b772baedcd
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.
2011-05-17 21:15:54 +02:00
Vladimir 'phcoder' Serbinenko
566a191715
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.
2011-05-17 19:32:51 +02:00
Vladimir 'phcoder' Serbinenko
90f7ac192f
* grub-core/kern/mips/startup.S (grub_arch_cpuclock): Move to the right
...
place.
2011-05-17 18:39:32 +02:00
Vladimir 'phcoder' Serbinenko
dc16af0369
make linux loader work on qemu-mips
2011-05-17 15:34:40 +02:00
Vladimir 'phcoder' Serbinenko
a228ec103a
enable ATA on qemu-mips
2011-05-17 14:35:55 +02:00
Vladimir 'phcoder' Serbinenko
1b6656d360
Revert changes to cache_flush.S
2011-05-17 14:04:49 +02:00
Vladimir 'phcoder' Serbinenko
3666d5f636
merge mainline and various cleanups
2011-05-17 14:02:18 +02:00
Vladimir 'phcoder' Serbinenko
400b93718f
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.
2011-05-17 09:17:38 +02:00
Vladimir 'phcoder' Serbinenko
8e29b2ffe3
set id on arc disks
2011-05-16 21:50:14 +02:00
Vladimir 'phcoder' Serbinenko
0670a9751b
merge mainline into ahci
2011-05-16 17:17:04 +02:00
Vladimir 'phcoder' Serbinenko
c8ecc840d7
* grub-core/bus/pci.c (grub_memalign_dma32): Always allocate in 64-byte
...
blocks.
2011-05-16 08:51:55 +02:00
Vladimir 'phcoder' Serbinenko
153a4b552d
* grub-core/bus/usb/usbhub.c (attach_root_port): Wait 10ms
...
after enabling port.
2011-05-16 08:50:21 +02:00
Vladimir 'phcoder' Serbinenko
ff44d107ad
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.
2011-05-16 02:39:25 +02:00
Vladimir 'phcoder' Serbinenko
736e0ade54
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.
2011-05-16 02:34:58 +02:00
Vladimir 'phcoder' Serbinenko
c3fc520c0d
* 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.
2011-05-15 15:41:23 +02:00
Vladimir 'phcoder' Serbinenko
67b1e5c907
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.
2011-05-15 12:32:37 +02:00
Vladimir 'phcoder' Serbinenko
b756f75f07
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.
2011-05-15 12:23:54 +02:00
Vladimir 'phcoder' Serbinenko
5470225d58
ROMFS support.
...
* Makefile.util.def (libgrubmods.a): Add romfs.
* grub-core/Makefile.core.def (romfs): New module.
* grub-core/fs/romfs.c: New file.
2011-05-15 12:01:03 +02:00
Vladimir 'phcoder' Serbinenko
d4680a3556
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.
2011-05-15 11:58:22 +02:00
Feiran Zheng
bcb18e748f
* 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>
2011-05-15 11:53:16 +02:00
Tristan Gingold
32297d5ff7
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>
2011-05-15 11:22:59 +02:00
Vladimir 'phcoder' Serbinenko
983b414d77
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Silence spurious
...
warning. Move variables before code while on it.
2011-05-15 10:23:02 +02:00
Vladimir 'phcoder' Serbinenko
bee1aeb9a1
merge mainline into sgi
2011-05-15 02:23:36 +02:00
Vladimir 'phcoder' Serbinenko
5d063cdc10
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.
2011-05-15 01:43:44 +02:00
Vladimir 'phcoder' Serbinenko
de04eecfa9
* 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.
2011-05-14 22:44:53 +02:00
Vladimir 'phcoder' Serbinenko
576881217f
* grub-core/kern/dl.c (grub_dl_load_file): Decrease ref counter
...
rather than resetting it to allow modules to reference themselves
in init.
2011-05-14 22:42:28 +02:00
Vladimir 'phcoder' Serbinenko
3d2c7e3591
* grub-core/kern/dl.c (grub_dl_unload): Don't decrease reference
...
counter on dependencies since grub_dl_unref already handles this.
2011-05-14 22:35:56 +02:00
Vladimir 'phcoder' Serbinenko
b25db21885
* grub-core/font/font_cmd.c (loadfont_command): Set grub_errno
...
on error if not already done.
2011-05-14 22:29:27 +02:00
Vladimir 'phcoder' Serbinenko
25a4533875
Fix few potential memory misusage.
...
* grub-core/font/font.c (load_font_index): Don't free char_index to
avoid double free.
2011-05-14 22:26:52 +02:00
Vladimir 'phcoder' Serbinenko
d4de6b01e8
* grub-core/commands/menuentry.c (grub_cmd_menuentry): Correctly
...
handle class-free menuentries.
(grub_normal_add_menu_entry): Add a check to be sure.
2011-05-14 12:14:00 +02:00
Vladimir 'phcoder' Serbinenko
4c2a3b438e
* grub-core/term/at_keyboard.c (set1_e0_mapping): Fix swap between
...
PgUp and PgDown.
2011-05-14 12:09:16 +02:00
Vladimir 'phcoder' Serbinenko
36084912c0
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'.
2011-05-13 21:41:18 +02:00
Vladimir 'phcoder' Serbinenko
19e1c41bbf
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.
2011-05-13 20:56:50 +02:00
Vladimir 'phcoder' Serbinenko
91bbcc0cb6
* grub-core/boot/mips/yeeloong/fwstart.S: Add explicit set mips3
...
to avoid asm treating ld and sd as macros.
2011-05-13 20:23:29 +02:00
Vladimir 'phcoder' Serbinenko
96a29d188b
Arc type cleanup
2011-05-13 18:03:20 +02:00
Vladimir 'phcoder' Serbinenko
cdcfe2a95f
missing part of previous commits
2011-05-13 18:02:58 +02:00
Vladimir 'phcoder' Serbinenko
214af04cf5
avoid executing cache opcode on non-4 byte aligned boundaries
2011-05-13 16:41:26 +02:00
Vladimir 'phcoder' Serbinenko
ae6a81f0bb
some additional key sequences for arc
2011-05-13 16:38:23 +02:00
Vladimir 'phcoder' Serbinenko
12ce749d86
sgimips linux loader
2011-05-13 16:36:41 +02:00
Vladimir 'phcoder' Serbinenko
8906c3dd40
sgi support
2011-05-13 16:36:05 +02:00
Vladimir 'phcoder' Serbinenko
11d86592b7
Adjust mips/dl.c for bigendian
2011-05-13 15:38:42 +02:00
Vladimir 'phcoder' Serbinenko
60ddfad3da
* grub-core/boot/mips/startup_raw.S: Flush cache after loading
...
decompressor.
2011-05-13 15:35:06 +02:00
Vladimir 'phcoder' Serbinenko
a298aa046c
* grub-core/boot/mips/startup_raw.S: Use jalr rather than bal to call
...
grub_decompress_core since later would fail if grub_decompress_core
is too far.
2011-05-13 15:20:16 +02:00
Vladimir 'phcoder' Serbinenko
9b44fecaa6
* grub-core/kern/mips/dl.c (grub_arch_dl_relocate_symbols): Handle
...
R_MIPS_JALR since it's used by newer compiler.
2011-05-13 15:17:02 +02:00
Manoel R. Abranches
48ac061ab6
Prevent "incompatible license" error.
2011-05-12 15:40:54 -03:00
Manoel R. Abranches
d8123bfb54
Correct some compile erros.
2011-05-12 13:20:43 -03:00
Manoel Rebelo Abranches
31b5172bbd
Implement close in TFTP
2011-05-10 14:07:54 -03:00
Manoel Rebelo Abranches
0696f08f92
Prevente error in broken cards by limiting data size.
2011-05-10 14:07:20 -03:00
Manoel Rebelo Abranches
36e2782dba
Only setup network in the card we booted from.
2011-05-10 09:55:20 -03:00
Manoel Rebelo Abranches
70c52f3e24
Remove cards with no associated driver.
2011-05-10 09:54:32 -03:00
Manoel Rebelo Abranches
0f231af8ae
Implement timeout when receiving packets.
2011-05-10 09:50:18 -03:00
Manoel Rebelo Abranches
a5184d629a
Prevente a bootp packet to be sent on open.
2011-05-10 09:45:57 -03:00
Manoel Rebelo Abranches
4d6374ba78
Implement file close in network tranference.
...
Stop receiving packets from card on error.
2011-05-10 09:32:38 -03:00
Manoel Rebelo Abranches
1893017d44
Mark file as not easily seekable on net open.
2011-05-10 09:30:26 -03:00
Manoel Rebelo Abranches
4f7386025b
Correct expected argument numbers in del addr command.
2011-05-10 09:28:45 -03:00
Vladimir 'phcoder' Serbinenko
52856af262
* grub-core/loader/efi/chainloader.c (grub_chainloader_unload): Set
...
file_path to 0 for surety.
(grub_chainloader_boot): Set exit_data to NULL.
Unset the loader once done.
(grub_cmd_chainloader): Fix confusing error message if file is empty.
2011-05-10 09:14:41 +02:00
Vladimir 'phcoder' Serbinenko
9c9bfc6de9
* grub-core/term/at_keyboard.c (fetch_key): Make a printf on
...
unknown key into a dprintf.
2011-05-09 19:33:03 +02:00
Vladimir 'phcoder' Serbinenko
dd94a3df9d
* grub-core/kern/emu/hostdisk.c (linux_find_partition): Don't abort
...
on first non-existant partition.
2011-05-09 18:59:35 +02:00
Vladimir 'phcoder' Serbinenko
fa68d99c45
* grub-core/kern/emu/hostdisk.c (open_device): Set data->fd to -1 if
...
openning fails.
Reported by: Mark Korenberg.
2011-05-09 18:48:50 +02:00
Vladimir 'phcoder' Serbinenko
157effb745
* grub-core/kern/emu/hostdisk.c (linux_find_partition): Prevent possible
...
overflow.
2011-05-09 18:46:51 +02:00
Vladimir 'phcoder' Serbinenko
7b58e65f24
track function symbols
2011-05-08 18:29:37 +02:00
Vladimir 'phcoder' Serbinenko
5a0baa09f2
Remove now useless LD script
2011-05-08 18:28:25 +02:00
Vladimir 'phcoder' Serbinenko
2679b7249b
Fix LTOFF relocation to functions (needed for trampolines)
2011-05-08 17:07:40 +02:00
Vladimir 'phcoder' Serbinenko
44748f71c0
Add explicit byt 0 to workaround a problem with assembler
2011-05-08 17:06:56 +02:00
Vladimir 'phcoder' Serbinenko
fa610088ba
Add missing time installation
2011-05-08 17:06:28 +02:00
Vladimir 'phcoder' Serbinenko
7216a1bff3
Set EFI ticks to 1000Hz simplifying much of the code and avoiding cotsly division
2011-05-08 17:05:47 +02:00
Vladimir 'phcoder' Serbinenko
ad6e5cf25f
add missing file
2011-05-08 12:42:08 +02:00
Vladimir 'phcoder' Serbinenko
5452733f35
more or less functional ia64 grub-mkimage
2011-05-08 12:39:08 +02:00
Manoel Rebelo Abranches
90eb90e24c
Merge mainline.
2011-05-05 12:12:22 -03:00
Vladimir 'phcoder' Serbinenko
072b5d315a
* grub-core/loader/efi/appleloader.c (MAKE_PIWG_PATH): New macro.
...
(devpath_1): Use MAKE_PIWG_PATH.
(devpath_2): Likewise.
(devpath_3): Likewise.
(devpath_4): Likewise.
(devpath_5): Likewise.
(devpath_6): Likewise.
The appleldr.mod was checked that to be binary identical to previous
version.
2011-05-05 13:34:03 +02:00
Zach
7fae005102
Support 2010 Macbooks.
...
* grub-core/loader/efi/appleloader.c (devpath_6): New variable.
(devs): Add devpath_6.
2011-05-05 12:18:00 +02:00
Vladimir 'phcoder' Serbinenko
ee5614b7f8
* grub-core/lib/legacy_parse.c (grub_legacy_parse): Correctly handle
...
hexadecimal.
2011-05-05 01:27:54 +02:00
Vladimir 'phcoder' Serbinenko
664889a69c
* grub-core/efiemu/main.c (grub_efiemu_load_file): Return grub_errno
...
and not 0 on failure.
2011-05-05 01:26:16 +02:00
Colin Watson
bd405bbc55
* grub-core/fs/i386/pc/pxe.c (grub_pxefs_dir): Return
...
GRUB_ERR_BAD_FS rather than GRUB_ERR_IO if the disk is not a pxe
disk; otherwise grub_fs_probe will not fall back to the next
filesystem.
(grub_pxefs_open): Likewise, for consistency.
Reported and tested by: Ezekiel Grave.
2011-05-03 18:03:05 +01:00
Vladimir 'phcoder' Serbinenko
8c767fd198
merge mainline into luks
2011-04-25 17:04:27 +02:00
Vladimir 'phcoder' Serbinenko
3c62402d08
* grub-core/loader/i386/linux.c (grub_linux_boot): Supply target rather
...
than source address for efi mmap buffer.
2011-04-25 16:58:25 +02:00
Vladimir 'phcoder' Serbinenko
723f63f2f8
* grub-core/partmap/amiga.c (amiga_partition_map_iterate): Fix a
...
wrong action on non-detecting the magic.
2011-04-25 15:36:08 +02:00
Vladimir 'phcoder' Serbinenko
68797f9230
* grub-core/gnulib/regex.c: Remove GRUB_MOD_LICENSE since it's
...
already supplied by another part of the module (fixes compilation on
FreeBSD).
2011-04-25 15:29:41 +02:00
Vladimir 'phcoder' Serbinenko
6be8715dfc
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Make mdraid UUID
...
match the one used by mdadm.
2011-04-25 15:23:37 +02:00
Vladimir 'phcoder' Serbinenko
20a409405b
Integrate geli into autoconfiguration system
2011-04-25 14:52:07 +02:00
Vladimir 'phcoder' Serbinenko
f718594e32
update fixme
2011-04-24 21:41:49 +02:00
Vladimir 'phcoder' Serbinenko
8358d7f221
Skip one-time volumes and add option for skipping non-boot volumes
2011-04-24 21:40:13 +02:00
Vladimir 'phcoder' Serbinenko
23432f6542
support UUID for geli
2011-04-24 21:11:14 +02:00
Vladimir 'phcoder' Serbinenko
7efb5c9eea
Use hardcoded reference to sha512 and sha256 in geli rather than runtime lookup since they are always used
2011-04-24 20:37:56 +02:00
Vladimir 'phcoder' Serbinenko
371a8f1183
Fix a potential buffer overflow
2011-04-24 17:50:22 +02:00
Vladimir 'phcoder' Serbinenko
171e2be183
geli xts support
2011-04-24 17:41:50 +02:00
Vladimir 'phcoder' Serbinenko
574d268020
Add few FIXME comments
2011-04-24 17:18:18 +02:00
Vladimir 'phcoder' Serbinenko
88ac3146d6
geli v5 (including rekeying support)
2011-04-24 17:15:55 +02:00
Vladimir 'phcoder' Serbinenko
3e90811d88
support non-512B sectors for geli
2011-04-24 14:59:38 +02:00
Vladimir 'phcoder' Serbinenko
ae13460ee1
merge 4096 into luks
2011-04-24 14:53:13 +02:00
Vladimir 'phcoder' Serbinenko
0c512b092c
Fix a cache retrieving bug
2011-04-24 14:52:00 +02:00
Vladimir 'phcoder' Serbinenko
572e3ea650
merge 4096 into luks
2011-04-24 03:12:06 +02:00
Vladimir 'phcoder' Serbinenko
b094f07c23
Don't set was_readable for new array
2011-04-24 02:39:21 +02:00
Vladimir 'phcoder' Serbinenko
848c83e75c
add few necessarry const qualifiers for pointers
2011-04-24 02:38:42 +02:00
Vladimir 'phcoder' Serbinenko
b6b4ea5fd1
Add IDs for more ciphers
2011-04-24 02:37:23 +02:00
Vladimir 'phcoder' Serbinenko
972d86df5f
accept version 2 geli
2011-04-24 02:36:50 +02:00
Vladimir 'phcoder' Serbinenko
7ede8f8b5b
support niter == 0
2011-04-24 02:36:04 +02:00
Vladimir 'phcoder' Serbinenko
b44cd9e710
zero-fill hash context for safety
2011-04-24 02:34:32 +02:00
Vladimir 'phcoder' Serbinenko
1a1f408f20
geli support
2011-04-24 00:00:29 +02:00
Vladimir 'phcoder' Serbinenko
8585e54bec
factor cryptodisk part out
2011-04-23 18:00:42 +02:00
Vladimir 'phcoder' Serbinenko
fcf3bfb6ff
small readability improvement
2011-04-23 16:45:00 +02:00
Vladimir 'phcoder' Serbinenko
b896ae82db
small readability improvement
2011-04-23 16:43:55 +02:00
Vladimir 'phcoder' Serbinenko
6f33a8eebc
optimize LRW
2011-04-23 16:41:43 +02:00
Vladimir 'phcoder' Serbinenko
6fd80b9ac4
factor luks_set_key out
2011-04-23 12:40:43 +02:00
Vladimir 'phcoder' Serbinenko
2f179c3236
LRW support
2011-04-23 04:51:53 +02:00
Vladimir 'phcoder' Serbinenko
4b35060f6f
Fix benbi
2011-04-23 03:18:07 +02:00
Vladimir 'phcoder' Serbinenko
ed38c849f4
pcbc support
2011-04-23 02:27:45 +02:00
Vladimir 'phcoder' Serbinenko
95172af9fa
Better IV modes support
2011-04-23 02:04:40 +02:00
Vladimir 'phcoder' Serbinenko
9d647e4e18
New -t luks_uuid
2011-04-22 23:51:16 +02:00
Vladimir 'phcoder' Serbinenko
50ad7d9cae
luks grub-probe support
2011-04-22 23:39:36 +02:00
Vladimir 'phcoder' Serbinenko
fe32915a5e
XTS support
2011-04-22 21:48:32 +02:00
Vladimir 'phcoder' Serbinenko
2cb55e6f73
make grub_password_get work in userland
2011-04-22 21:46:00 +02:00
Vladimir 'phcoder' Serbinenko
84a411c0c3
small argument revamp
2011-04-22 19:51:06 +02:00
Vladimir 'phcoder' Serbinenko
4169260830
grub-fstest luks support
2011-04-22 19:44:41 +02:00
Vladimir 'phcoder' Serbinenko
24089d19e2
Add cheatmounting
2011-04-22 19:20:46 +02:00
Vladimir 'phcoder' Serbinenko
f3470f4eb5
restructure prior to adding cheatmounts
2011-04-22 16:32:27 +02:00
Vladimir 'phcoder' Serbinenko
0aaa85f1a0
merge lazy into luks
2011-04-22 15:13:12 +02:00
Vladimir 'phcoder' Serbinenko
716aa45e40
Fix LVM listing
2011-04-22 14:58:12 +02:00
Vladimir 'phcoder' Serbinenko
4defebbec8
automatic raid members addition
2011-04-22 13:55:30 +02:00
Vladimir 'phcoder' Serbinenko
65b4742cd7
Add lost lvm/ prefix. Autoadd lvm subdevices.
2011-04-22 02:46:36 +02:00
Vladimir 'phcoder' Serbinenko
c0c837c10b
merge devmapper into lazy
2011-04-22 01:21:26 +02:00
Vladimir 'phcoder' Serbinenko
5dad99b730
more linux-like name for LVM volumes
2011-04-22 01:10:24 +02:00
Vladimir 'phcoder' Serbinenko
24b905a11c
Lazy LVM and RAID assembly
2011-04-22 00:09:07 +02:00
Vladimir 'phcoder' Serbinenko
a10e7a5a89
Support grub-probe -t drive
2011-04-21 12:39:31 +02:00
Vladimir 'phcoder' Serbinenko
64516e9df6
Fix couple of UUID problems
2011-04-21 12:39:14 +02:00
Colin Watson
1eb44ae37e
merge trunk
2011-04-21 11:07:10 +01:00
Vladimir 'phcoder' Serbinenko
0c910e9626
merge devmapper into luks
2011-04-21 11:59:51 +02:00
Vladimir 'phcoder' Serbinenko
79cde98f5d
Support luksuuid specification
2011-04-21 11:58:06 +02:00
Vladimir 'phcoder' Serbinenko
a89c3dd3f7
Don't mount the same LUKS volume twice
2011-04-21 11:38:51 +02:00
Colin Watson
cff5e5e58d
grub-core/fs/squash4.c: Add missing GRUB_MOD_LICENSE.
2011-04-21 10:37:45 +01:00
Colin Watson
2e0fbe00d2
merge trunk
2011-04-21 10:36:09 +01:00
Colin Watson
92051871b7
* grub-core/kern/emu/getroot.c
...
(grub_find_root_device_from_mountinfo): Remove non-virtual-device
test that was incorrectly reintroduced in r3214.
Reported by: Ian Dall. Fixes Savannah bug #33133 .
2011-04-21 10:26:29 +01:00
Vladimir 'phcoder' Serbinenko
5709ed126d
small cleanup
2011-04-21 11:17:01 +02:00
Michael Gorven
7217f315d3
LUKS support based on work of Michael Gorven with some code from Clemens Fruhwirth and heavily cleaned up by me (phcoder)
...
Also-By: Clemens Fruhwirth <clemens@endorphin.org>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2011-04-21 11:14:29 +02:00
Colin Watson
b13f79a427
Fix stack pointer handling in 16-bit relocator.
...
* grub-core/lib/i386/relocator16.S (grub_relocator16_start): Move
grub_relocator16_sp to %esp rather than %ss, and zero-extend it.
Fixes Ubuntu bug #683904 .
2011-04-21 00:07:22 +01:00
Vladimir 'phcoder' Serbinenko
d97e7b5935
* include/grub/dl.h [ASM_FILE]: Adapt for assembly.
...
* grub-core/lib/i386/setjmp.S: Add missing GRUB_MOD_LICENSE.
* grub-core/lib/x86_64/setjmp.S: Likewise.
* grub-core/lib/mips/setjmp.S: Likewise.
* grub-core/lib/powerpc/setjmp.S: Likewise.
* grub-core/lib/sparc64/setjmp.S: Likewise.
2011-04-20 01:37:48 +02:00
Vladimir 'phcoder' Serbinenko
0624551c22
* grub-core/lib/efi/datetime.c: Add missing GRUB_MOD_LICENSE.
...
* grub-core/lib/efi/datetime.c: Likewise.
2011-04-20 01:32:21 +02:00
Vladimir 'phcoder' Serbinenko
e8f28d4c0e
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_flush):
...
New function.
(grub_util_biosdisk_close): Use grub_util_biosdisk_flush.
* include/grub/emu/hostdisk.h (grub_util_biosdisk_flush): New proto.
* util/grub-setup.c (setup): Use grub_util_biosdisk_flush.
2011-04-19 22:39:14 +02:00
Vladimir 'phcoder' Serbinenko
bba79a1502
* grub-core/term/gfxterm.c (grub_gfxterm_fullscreen): Preserve previous
...
bitmap.
(grub_gfxterm_term_init): Likewise.
2011-04-19 22:31:50 +02:00
Vladimir 'phcoder' Serbinenko
abc474ef4b
Take into account the decorations the computing menu entry width.
...
* grub-core/gfxmenu/widget-box.c (get_border_width): New function.
(grub_gfxmenu_create_box): Register get_border_width.
* grub-core/gfxmenu/gui_list.c (draw_menu): Use get_border_width
if available.
* include/grub/gfxwidgets.h (grub_gfxmenu_box): New member
get_border_width.
2011-04-19 00:44:53 +02:00
Endres Puschner
e74b3947af
* grub-core/gfxmenu/icon_manager.c (grub_gfxmenu_icon_manager_get_icon):
...
Don't skip first class.
2011-04-18 23:24:41 +02:00
Vladimir 'phcoder' Serbinenko
34faa5955a
* grub-core/fs/btrfs.c (grub_btrfs_read_logical): Support huge
...
chunks.
* include/grub/err.h (grub_err_t): New enum value GRUB_ERR_BUG.
2011-04-18 23:10:19 +02:00
Vladimir 'phcoder' Serbinenko
93a777e388
Complete 64-bit division support.
...
* grub-core/kern/misc.c (grub_divmod64): Rename to ...
(grub_divmod64_full): ... this. Support 64-bit divisor and reminder.
* include/grub/misc.h (grub_divmod64): Rename to ...
(grub_divmod64_full): ... this.
(grub_divmod64): New inline function.
2011-04-18 23:03:52 +02:00
Vladimir 'phcoder' Serbinenko
50d2cc5ae5
Identify RAID by its UUID rather than (guessed) name.
...
* grub-core/disk/raid.c (ascii2hex): New function.
(grub_raid_open): Accept mduuid/%s specification.
* grub-core/kern/emu/getroot.c (get_mdadm_name): Revamped into ...
(get_mdadm_uuid): ... this.
(grub_util_get_grub_dev): Use mduuid/%s if UUID is available.
2011-04-16 15:27:35 +02:00
Vladimir 'phcoder' Serbinenko
e03f7bea45
* grub-core/gfxmenu/gui_image.c (rescale_image): Don't attempt to scale
...
to negative size.
2011-04-16 09:16:44 +02:00
Vladimir 'phcoder' Serbinenko
d8a2bcf564
contiguous read
2011-04-15 21:42:29 +02:00
Vladimir 'phcoder' Serbinenko
bd671cc4fe
Use Block IO on EFI
2011-04-15 18:15:06 +02:00
Colin Watson
78fa584f67
Rewrite /proc/self/mountinfo handling to cope with bind-mounts and
...
move-mounts appearing out of order. Fixes Ubuntu bug #738345 .
* grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo):
Build a list of relevant visible mounts using the mnt_id and
parent_mnt_id fields, and then scan that list at the end.
2011-04-13 12:36:04 +01:00
Vladimir 'phcoder' Serbinenko
fe6b2cbaa6
BtrFS support. Written by me (Vladimir) with important bugfixes and
...
even more important testing by Colin.
* Makefile.util.def (libgrubmods.a): Add crc.c and gzio.c
* grub-core/Makefile.core.def (btrfs): Add crc.c.
* grub-core/fs/btrfs.c: Stub replaced with real implementation.
* grub-core/io/gzio.c (grub_gzio): New fields mem_input_size,
mem_input_off and mem_input. All users updated to accept in-RAM input.
(gzio_seek): New function.
(test_zlib_header): Likewise.
(grub_gzio_read): Likewise.
(grub_zlib_decompress): Likewise.
* grub-core/kern/emu/getroot.c (grub_find_root_device_from_mountinfo):
Accept partial and non-virtual mounts.
(grub_guess_root_device): Do rescanning after device_from_mountinfo to
avoid receiving /dev/dm-X as device.
* grub-core/kern/emu/misc.c (grub_make_system_path_relative_to_its_root):
Handle bind and partial mounts.
* grub-core/lib/crc.c: New file.
* include/grub/deflate.h: Likewise.
* include/grub/emu/misc.h (grub_find_root_device_from_mountinfo): New
proto.
* include/grub/lib/crc.h: New file.
2011-04-11 23:26:41 +02:00
Vladimir 'phcoder' Serbinenko
e745cf0ca6
Implement automatic module license checking according to new GNU
...
guidelines.
* grub-core/kern/dl.c (grub_dl_check_license): New function.
(grub_dl_load_core): Use grub_dl_check_license.
* include/grub/dl.h (GRUB_MOD_SECTION): New macro.
(GRUB_MOD_LICENSE): Likewise.
(GRUB_MOD_DUAL_LICENSE): Likewise.
All modules updated.
2011-04-11 23:01:51 +02:00
Vladimir 'phcoder' Serbinenko
b6929f5ef5
Transform exfat printfs into dprintfs
2011-04-11 20:38:08 +02:00
Vladimir 'phcoder' Serbinenko
48fe18dcf2
exfat reader
2011-04-11 18:13:00 +02:00
Colin Watson
2a9bc0169e
* grub-core/fs/btrfs.c (grub_btrfs_fs) [GRUB_UTIL]: Set
...
reserved_first_sector to 1. btrfs reserves plenty of space for boot
loaders.
Reported by: Gene Cumm. Fixes Ubuntu bug #757446 .
2011-04-11 16:06:37 +01:00
Vladimir 'phcoder' Serbinenko
8fc88523dd
Add minix3 to util filesystems
2011-04-11 14:09:02 +02:00
Vladimir 'phcoder' Serbinenko
65f01628e1
unify minix3 and minix2 inode declarations
2011-04-11 08:56:42 +02:00
Vladimir 'phcoder' Serbinenko
58ee1408a8
Fix an error in minix inode declaration
2011-04-11 08:53:28 +02:00
Feiran Zheng
3dd3dd335f
minix3fs support
2011-04-11 08:16:13 +02:00
Vladimir 'phcoder' Serbinenko
c7ba1ba62e
merge mainline into butter
2011-04-11 07:56:31 +02:00
Vladimir 'phcoder' Serbinenko
6a01f54aff
use actually filled extent size if available
2011-04-11 07:53:21 +02:00
Vladimir 'phcoder' Serbinenko
565f076311
Take extent offset in account on uncompressed extents
2011-04-11 07:52:39 +02:00
Vladimir 'phcoder' Serbinenko
228f95a250
Fix filename comparison
2011-04-11 07:51:15 +02:00
Vladimir 'phcoder' Serbinenko
ec25b87d29
Add dprintfs to report chunk lookups
2011-04-11 07:50:22 +02:00
Vladimir 'phcoder' Serbinenko
e8980227e8
Remove stale comment about redundancy
2011-04-11 07:49:26 +02:00
Vladimir 'phcoder' Serbinenko
9ee8d94faa
* grub-core/kern/file.c (grub_file_open): Don't take into account the
...
parenthesis in the middle of the filename.
2011-04-11 07:38:42 +02:00
Vladimir 'phcoder' Serbinenko
b01abe3e16
* grub-core/loader/mips/linux.c (grub_cmd_initrd): Use correct limits
...
rather than trying to put initrd way too high.
Reported by: Ryan Lortie <desrt@desrt.ca>
2011-04-10 16:44:11 +02:00
Vladimir 'phcoder' Serbinenko
335bda1e57
* grub-core/boot/mips/yeeloong/fwstart.S (no_cs5536): Put back
...
improperly removed string.
2011-04-10 16:12:31 +02:00
Vladimir 'phcoder' Serbinenko
5ca1a64de6
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_data): New member
...
is_disk.
(grub_util_biosdisk_open): Don't apply ioctl on non-disk devices.
(open_device) Likewise.
(grub_util_biosdisk_close): Likewise.
Reported by: Mark Korenberger.
2011-04-10 16:08:58 +02:00
Colin Watson
088cdb65eb
* grub-core/gnulib/argp-parse.c (__argp_input): Don't crash if pstate
...
is NULL.
2011-04-10 15:25:52 +02:00
Vladimir 'phcoder' Serbinenko
8b8a81fa6a
Dynamically count the number of lines for the lower banner.
...
* grub-core/normal/menu_entry.c (per_term_screen): New member
num_entries.
(print_down): Use num_entries.
(update_screen): Likewise.
(grub_menu_entry_run): Set num_entries.
* grub-core/normal/menu_text.c (menu_viewer_data): New member
num_entries.
(grub_print_message_indented): Move real part to ...
(grub_print_message_indented_real): ... here. Additional argument
dry_run.
(draw_border): Additional argument num_entries.
(print_message): Additional argument dry_run.
(print_entries): Receive menu viewer data.
(grub_menu_init_page): New argment num_entries.
(menu_text_set_chosen_entry): Use num_entries.
(grub_menu_try_text): Likewise.
* grub-core/normal/term.c (print_ucs4_terminal): New argument dry_run.
All users updated.
(grub_ucs4_count_lines): New function.
* include/grub/term.h (grub_term_cursor_x): Moved from here ..
* grub-core/normal/menu_text.c (grub_term_cursor_x): ... to here.
* include/grub/term.h (GRUB_TERM_MESSAGE_HEIGHT): Removed.
(grub_term_border_height): Likewise.
(grub_term_num_entries): Likewise.
2011-04-10 13:56:23 +02:00
Vladimir 'phcoder' Serbinenko
277f955bf1
* grub-core/boot/mips/yeeloong/fwstart.S: Fix address to error message.
...
Remove now unused string.
2011-04-10 11:57:19 +02:00
Vladimir 'phcoder' Serbinenko
099821e9e4
Fix RAID1/duplicated chunk size calculation
2011-04-09 21:55:50 +02:00
Colin Watson
2c58372857
* docs/grub-dev.texi: Fix spelling of "developer" throughout.
...
* grub-core/fs/i386/pc/pxe.c (parse_dhcp_vendor): Fix spelling of
"development".
2011-04-08 14:01:51 +01:00
Vladimir 'phcoder' Serbinenko
d7a565e962
* grub-core/normal/menu_entry.c (run): Use grub_memcpy rather than
...
grub_strcpy since the lines aren't necessarily 0-terminated.
2011-04-08 14:37:13 +02:00
Vladimir 'phcoder' Serbinenko
7c2e4909c3
* grub-core/lib/legacy_parse.c (legacy_commands): Find doesn't set
...
root on legacy.
2011-04-08 14:32:41 +02:00
Vladimir 'phcoder' Serbinenko
34c09785b6
* grub-core/commands/probe.c (options): Argument to set isn't optional.
...
(GRUB_MOD_INIT): DEVICE isn't optional.
2011-04-08 14:28:19 +02:00
Vladimir 'phcoder' Serbinenko
6a6f80587b
* grub-core/normal/term.c (print_ucs4_terminal): Don't try to put the
...
word on new line if it's too long anyway. Fixes a hang.
2011-04-08 14:25:44 +02:00
Vladimir 'phcoder' Serbinenko
4ed4ce5820
correct Changelog spelling
2011-04-08 13:59:07 +02:00
Vladimir 'phcoder' Serbinenko
cb180fdf06
revert last revision. It's ineffective
2011-04-08 13:18:27 +02:00
Vladimir 'phcoder' Serbinenko
947aa4f886
* grub-core/Makefile.am: Properly escape parenthesis in sed expressions.
...
Fixes Estonian locale.
Reported by: Leho Kraav.
2011-04-08 12:13:44 +02:00
Vladimir 'phcoder' Serbinenko
f7148863eb
* grub-core/normal/menu.c: Add missing include.
2011-04-08 12:12:02 +02:00
Vladimir 'phcoder' Serbinenko
3c0e3f142a
* grub-core/disk/raid.c [GRUB_UTIL]: Add missing include.
2011-04-08 12:06:55 +02:00
Vladimir 'phcoder' Serbinenko
478182a838
* grub-core/kern/emu/hostdisk.c (open_device): Sync on close and not
...
on open.
(grub_util_biosdisk_close): Likewise.
2011-04-08 11:49:38 +02:00
Vladimir 'phcoder' Serbinenko
72a89a54e1
* grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Add missing
...
const attribute and use grub_isdigit.
2011-04-08 11:44:44 +02:00
Andrey
b5ebecfabc
* grub-core/video/fb/video_fb.c (grub_video_fb_setup): Silence older
...
gcc warning.
2011-04-06 14:21:34 +02:00
Vladimir 'phcoder' Serbinenko
7755f66e64
* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_align): Add few
...
useful grub_dprintf's.
2011-04-06 14:04:52 +02:00
Vladimir 'phcoder' Serbinenko
adf594cc44
Output errors if theme loading failed.
...
* grub-core/gfxmenu/gfxmenu.c (grub_gfxmenu_try): Move the call to
grub_gfxterm_fullscreen on error paths to ...
* grub-core/normal/menu.c (menu_init): ...here. Wait after showing
theme loading error.
2011-04-06 13:00:18 +02:00
Vladimir 'phcoder' Serbinenko
a562b47916
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Detect spares
...
and report them as not RAID members since they are useless for GRUB.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
2011-04-06 12:29:49 +02:00
Vladimir 'phcoder' Serbinenko
5bfb6e71e8
features support
2011-04-05 15:05:53 +02:00
Vladimir 'phcoder' Serbinenko
b38a498394
BPB patching support (untested)
2011-04-05 14:40:15 +02:00
Vladimir 'phcoder' Serbinenko
6ac14e6cef
Fix EFI compilation
2011-04-05 09:34:58 +02:00
Vladimir 'phcoder' Serbinenko
af0ce67056
Add HighPoint RAID controller
2011-04-03 23:52:50 +02:00
Vladimir 'phcoder' Serbinenko
850e937329
Increase LVM implementation robustness in order not to crash on
...
configurations like pvmove. Previously code assumed that in some places
only lvs or only pvs are used whereas it seems that they are used
interchangeably.
* grub-core/disk/lvm.c (read_node): New function.
(read_lv): Use read_node.
(grub_lvm_scan_device): Use only first mirror on pvmove'd lvs.
Match volumes only at the end when all lvs are found. Take both
pvs (first) and lvs (second) into account.
* include/grub/lvm.h (grub_lvm_segment): Merge fields stripe_* and
mirror_* into node_*. All users updated.
(grub_lvm_stripe): Merge this ...
(grub_lvm_mirror): ... and this ...
(grub_lvm_node): ... into this. All users updated.
2011-04-03 16:28:14 +02:00
Vladimir 'phcoder' Serbinenko
6f33215394
* grub-core/disk/lvm.c (grub_lvm_scan_device): Print errors on the end
...
of function to allow further scanning for LVMs.
2011-04-03 15:57:44 +02:00
Vladimir 'phcoder' Serbinenko
829ea451a4
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_read): Don't close
...
on failed seek as it breaks open fd reusage.
2011-04-03 15:45:20 +02:00
Colin Watson
2cccc747ac
Store the loopback device as data on loopback grub_disk structures,
...
rather than the file it points to. This fixes use of freed memory
if an existing loopback device is replaced.
* grub-core/disk/loopback.c (grub_loopback_open): Store dev in
disk->data, not dev->file.
(grub_loopback_read): Adjust file assignment to match.
Fixes Ubuntu bug #742967 .
2011-04-01 17:04:10 +01:00
Colin Watson
186ae367af
* grub-core/disk/loopback.c (grub_cmd_loopback): Fix a memory leak
...
when replacing an existing device.
2011-04-01 15:35:09 +01:00
Vladimir 'phcoder' Serbinenko
cfed2ad097
Fix incorrect types in jfs.c. This enables >2TiB disks and fixes some
...
memory corruptions.
* grub-core/fs/jfs.c (struct grub_jfs_diropen): Interpret bytes as
unsigned.
(grub_jfs_lookup_symlink): Make ino a grub_uint32_t rather than int.
(grub_jfs_blkno): Use 64-bit quantities for block sectors.
(grub_jfs_read_inode): Likewise.
(grub_jfs_opendir): Likewise. Remove now useless casts.
(grub_jfs_getent): Likewise.
Make ino a grub_uint32_t rather than int.
(grub_jfs_mount): Ensure that blksize and log2_blksize are consistent.
(grub_jfs_read_file): Use 64-bit quantities when necessary. Replace
division and module with bit operations.
(grub_jfs_find_file): Make ino a grub_uint32_t.
(grub_jfs_lookup_symlink): Likewise. Use 64-bit quantities
2011-04-01 15:53:06 +02:00
Colin Watson
05d2ed3277
* grub-core/normal/menu_entry.c (run): Quieten uninitialised
...
warning. (This was in fact always initialised before use, but GCC
wasn't smart enough to prove that.)
* grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise.
2011-04-01 11:43:51 +01:00
Vladimir 'phcoder' Serbinenko
ecb2a8b656
merge my and Abranches' branches
2011-04-01 11:25:48 +02:00
Manoel Rebelo Abranches
25f1579b43
Adapt protocols to new network struct.
2011-04-01 05:42:34 -03:00
Manoel Rebelo Abranches
457d1104f6
Add ofnet.h to Makefile.am
2011-04-01 05:40:44 -03:00
Manoel Rebelo Abranches
59b361a2df
Use bootp packet to set prefix and card address.
2011-04-01 05:39:06 -03:00
Manoel Rebelo Abranches
6d5c2ed68a
Use nb in all function declarations for consistency.
2011-04-01 05:27:06 -03:00
Manoel Rebelo Abranches
6ccb7a35e6
Remove unused file.
2011-04-01 05:26:27 -03:00
Manoel Rebelo Abranches
fbdee79b17
Add generic functions to read and seek in network file. Allocate socket with network and adress information.
2011-04-01 05:22:41 -03:00
Manoel Rebelo Abranches
d5e0a358f1
Correctly match network.
2011-04-01 05:14:16 -03:00
Manoel Rebelo Abranches
6dc14451f4
Iterate sockets to see if we expect this packet. Let the App layer to remove its own header. Add packet to socket list if it contains data. Undesired packets are freed.
2011-04-01 05:12:44 -03:00
Manoel Rebelo Abranches
50ee5d686d
Merge mainline.
2011-04-01 04:45:37 -03:00
Vladimir 'phcoder' Serbinenko
91dc607330
* grub-core/kern/x86_64/efi/callwrap.S (efi_wrap_0): Preserve 16-byte
...
stack alignment.
(efi_wrap_1): Likewise.
(efi_wrap_2): Likewise.
(efi_wrap_3): Likewise.
(efi_wrap_4): Likewise.
(efi_wrap_5): Likewise.
(efi_wrap_6): Likewise.
(efi_wrap_10): Likewise.
Based on information by: Red Hat/Peter Jones.
2011-03-31 16:48:36 +02:00
Colin Watson
a8afc1d12c
* grub-core/mmap/efi/mmap.c (grub_mmap_unregister): Remove
...
set-but-not-used variable.
2011-03-31 12:25:10 +01:00
Vladimir 'phcoder' Serbinenko
241e41f55c
* grub-core/disk/raid.c (insert_array): Add few potentially
...
useful grub_util_info.
(grub_raid_register): Likewise.
2011-03-30 16:54:11 +02:00
Vladimir 'phcoder' Serbinenko
56445fb2b4
* grub-core/kern/emu/getroot.c (grub_util_get_grub_dev) [__linux__]:
...
Preserve partition number in mdadm code path.
2011-03-30 16:37:10 +02:00
Vladimir 'phcoder' Serbinenko
c871b1c6d0
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev): Add
...
few potentially useful grub_util_info.
2011-03-30 13:13:25 +02:00
Vladimir 'phcoder' Serbinenko
87d1aa1927
* grub-core/disk/lvm.c (grub_lvm_scan_device): Remove spurious \n.
2011-03-30 13:02:39 +02:00
Vladimir 'phcoder' Serbinenko
5d8031749e
* grub-core/term/at_keyboard.c (set_scancodes)
...
[!GRUB_MACHINE_MIPS_YEELOONG && !GRUB_MACHINE_QEMU]: Use scancode set 1.
2011-03-30 09:26:23 +02:00
Vladimir 'phcoder' Serbinenko
fc18f6a3cb
* util/grub.d/10_linux.in: Skip vmlinux-* on x86 platforms.
2011-03-29 19:47:34 +02:00
Colin Watson
61d7156b94
* grub-core/disk/loopback.c (GRUB_MOD_INIT): Stop documenting
...
removed -p option.
2011-03-29 18:00:23 +01:00
Vladimir 'phcoder' Serbinenko
cf4d3fa640
Send blend_text_bg when any backgorund is set as opposed to only when streteched background is set
2011-03-29 18:34:05 +02:00
Vladimir 'phcoder' Serbinenko
9e4d19e0d3
* grub-core/kern/emu/hostdisk.c (find_partition_start)
...
[HAVE_DIOCGDINFO]: Add safety checks.
2011-03-29 15:00:23 +02:00
Colin Watson
b4db4f39f0
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): If
...
real_sb->size is zero (e.g. RAID-0), get the disk size from
real_sb->data_size instead.
Fixes Ubuntu bug #743136 .
2011-03-29 10:51:58 +01:00
Vladimir 'phcoder' Serbinenko
35e5f84c18
* grub-core/normal/misc.c (grub_normal_print_device_info): Use correct
...
printf clauses for printing size and start.
2011-03-29 11:25:04 +02:00
Vladimir 'phcoder' Serbinenko
d2e29d81a9
* grub-core/fs/ext2.c (grub_ext2_read_inode): Fix an overflow.
...
Reported and tested by: Timothy Nikkel.
2011-03-29 10:56:14 +02:00
Vladimir 'phcoder' Serbinenko
ed5587afea
* grub-core/term/gfxterm.c (dirty_region_add): Move core part to ...
...
(dirty_region_add_real): ... this.
(dirty_region_add): Don't discard margin refresh when performing
scheduled repaint.
2011-03-29 08:33:28 +02:00
Vladimir 'phcoder' Serbinenko
a1dc717c58
* grub-core/lib/relocator.c (allocate_regstart)
...
[!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Avoid grub_dprintf since not all
terminals are capabple of malloc-free operation.
(allocate_inreg) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise.
(malloc_in_range) [!DEBUG_RELOCATOR_NOMEM_DPRINTF]: Likewise.
2011-03-29 08:20:19 +02:00
Vladimir 'phcoder' Serbinenko
09573499ff
Initial variable sector size support
2011-03-29 02:02:55 +02:00
Colin Watson
2414872538
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Remove stale
...
comment.
2011-03-28 15:17:22 +01:00
Colin Watson
f329eda79e
* grub-core/disk/raid.c (grub_raid_register): Adjust debug message
...
to be specific about what kind of RAID device we're scanning for.
2011-03-28 13:23:54 +01:00
Seth Goldberg
c482ad98b3
* grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): Don't return freed string.
2011-03-26 23:22:59 +01:00
Vladimir 'phcoder' Serbinenko
5ee04984d1
* grub-core/fs/iso9660.c (grub_iso9660_label): Rtrim the label.
2011-03-26 14:14:59 +01:00
Vladimir 'phcoder' Serbinenko
f4727da93f
Use libgeom on FreeBSD to detect partitions.
...
* Makefile.util.def (grub-mkimage): Add LIBGEOM to ldadd.
(grub-mkrelpath): Likewise.
(grub-script-check): Likewise.
(grub-editenv): Likewise.
(grub-mkpasswd-pbkdf2): Likewise.
(grub-fstest): Likewise.
(grub-mkfont): Likewise.
(grub-mkdevicemap): Likewise.
(grub-probe): Likewise.
(grub-setup): Likewise.
(grub-ofpathname): Likewise.
(grub-mklayout): Likewise.
(example_unit_test): Likewise.
(grub-menulst2cfg): Likewise.
* grub-core/Makefile.core.def (grub-emu): Likewise.
(grub-emu-lite): Likewise.
* configure.ac: Check for -lgeom on FreeBSD and set LIBGEOM.
* grub-core/kern/emu/hostdisk.c [FreeBSD]: Include libgeom.h. Don't
define HAVE_DIOCGDINFO.
(follow_geom_up) [FreeBSD]: New function.
(find_partition_start) [FreeBSD]: Rewritten using follow_geom_up.
(convert_system_partition_to_system_disk) [FreeBSD]: Likewise.
(grub_util_biosdisk_get_grub_dev) [FreeBSD]: Use FreeBSD path
unconditionally of HAVE_DIOCGDINFO.
2011-03-26 12:59:02 +01:00
Vladimir 'phcoder' Serbinenko
82fe6c751b
Fix FreeBSD compilation problem.
...
* grub-core/kern/emu/hostdisk.c (MAJOR) [FreeBSD]: New definition.
(FLOPPY_MAJOR) [FreeBSD]: Likewise.
2011-03-26 12:49:34 +01:00
Colin Watson
58ed62d221
Avoid consuming lots of space and time if the first partition is not near the start of the disk (Debian bug #619458 , Ubuntu bug #691569 ).
2011-03-25 17:22:12 +00:00
Colin Watson
4c6c9431d2
* grub-core/video/fb/video_fb.c (grub_video_fb_get_info_and_fini):
...
Switch back to page zero before loading a kernel, since some kernel
drivers expect that.
Thanks to: Felix Kuehling.
2011-03-25 00:03:54 +00:00
Vladimir 'phcoder' Serbinenko
c7064d9425
* grub-core/lib/relocator.c (grub_relocator_alloc_chunk_addr)
...
[DEBUG_RELOCATOR]: Reuse grub_mm_check.
(grub_relocator_alloc_chunk_align) [DEBUG_RELOCATOR]: Likewise.
2011-03-24 12:45:51 +01:00
Vladimir 'phcoder' Serbinenko
ef6de21af4
* grub-core/lib/relocator.c (allocate_inreg): Avoid dprintf unless
...
DEBUG_RELOCATOR is defined since gfxterm can't cope with output when
malloc is disabled.
2011-03-24 12:39:48 +01:00
Vladimir 'phcoder' Serbinenko
8bc66a2ce6
* grub-core/loader/i386/bsdXX.c (grub_freebsd_load_elfmodule): Account
...
for modules headers when counting the needed allocation size.
2011-03-24 12:28:22 +01:00
Vladimir 'phcoder' Serbinenko
5657722c3c
* grub-core/term/gfxterm.c (calculate_normal_character_width): Return 8
...
if no ASCII character is found to prevent crash.
2011-03-23 20:29:17 +01:00
Alexander Kurtz
41a85f5508
* grub-core/video/bitmap.c (match_extension): Ignore case.
2011-03-23 17:08:56 +01:00
Colin Watson
ebad0b81be
remove unused variable
2011-03-23 14:45:04 +00:00
Vladimir 'phcoder' Serbinenko
59e1e5f17b
* grub-core/normal/menu_entry.c (init_line): Fix off-by-one error.
2011-03-23 14:18:56 +01:00
Vladimir 'phcoder' Serbinenko
bd4d051a95
* grub-core/script/parser.y: Declare "time" as valid argument.
2011-03-23 13:23:50 +01:00
Vladimir 'phcoder' Serbinenko
537dc9bec6
* grub-core/normal/main.c (GRUB_MOD_INIT): Export pager variable.
2011-03-23 12:40:15 +01:00
Vladimir 'phcoder' Serbinenko
fa3e01bfb5
* grub-core/lib/i386/pc/biosnum.c: Add missing include.
2011-03-23 12:23:42 +01:00
Vladimir 'phcoder' Serbinenko
b1d2840445
* grub-core/disk/usbms.c (grub_usbms_reset): Transform USB-style error
...
into GRUB-style one.
2011-03-23 12:21:15 +01:00
Vladimir 'phcoder' Serbinenko
e804e7b099
missing file in last change
2011-03-23 12:18:21 +01:00
Vladimir 'phcoder' Serbinenko
2e3e2e0908
* grub-core/bus/usb/usbtrans.c (grub_usb_control_msg): Return usb-style
...
error and not grub_errno.
* grub-core/bus/usb/usbhub.c (grub_usb_add_hub): Likewise.
2011-03-23 12:17:05 +01:00
Vladimir 'phcoder' Serbinenko
ed57e55702
* grub-core/bus/usb/uhci.c (grub_uhci_detect_dev): Return
...
GRUB_USB_SPEED_NONE in case of failure and not the error code.
2011-03-23 12:13:39 +01:00
Vladimir 'phcoder' Serbinenko
d1611f0163
* grub-core/efiemu/i386/pc/cfgtables.c
...
(grub_machine_efiemu_init_tables): Make declaration a prototype.
* grub-core/loader/xnu.c (grub_xnu_lock): Likewise.
(grub_xnu_unlock): Likewise.
* grub-core/normal/cmdline.c (grub_cmdline_get/cl_set_pos_all): Likewise.
2011-03-23 12:08:33 +01:00
Vladimir 'phcoder' Serbinenko
7d4e39d65a
* grub-core/bus/usb/usb.c (attach_hooks): Make static.
...
* grub-core/bus/usb/usbhub.c (hubs): Likewise.
* grub-core/commands/hashsum.c (aliases): Likewise.
* grub-core/commands/setpci.c (pci_registers): Likewise.
* grub-core/disk/usbms.c (attach_hook): Likewise.
* grub-core/fs/zfs/zfs.c (decomp_table): Likewise.
(zio_checksum_table): Likewise.
* grub-core/gettext/gettext.c (grub_gettext_msg_list): Likewise.
* grub-core/gfxmenu/gfxmenu.c (cached_view): Likewise.
* grub-core/lib/legacy_parse.c (legacy_commands): Likewise.
* grub-core/lib/relocator.c (leftovers): Likewise.
(extra_blocks): Likewise.
* grub-core/loader/i386/bsd.c (relocator): Likewise.
* grub-core/loader/i386/multiboot_mbi.c (modules): Likewise.
(modules_last): Likewise.
* grub-core/loader/i386/xnu.c (table_aliases): Likewise.
(devices): Likewise.
* grub-core/loader/multiboot_mbi2.c (modules): Likewise.
(modules_last): Likewise.
* grub-core/normal/auth.c (users): Likewise.
* grub-core/normal/context.c (initial_menu): Likewise.
(current_menu): Likewise.
* grub-core/normal/crypto.c (crypto_specs): Likewise.
* grub-core/term/serial.c (grub_serial_ports): Likewise.
(grub_serial_terminfo_input_template): Likewise.
(grub_serial_terminfo_output_template): Likewise.
(grub_serial_terminfo_input): Likewise.
(grub_serial_terminfo_output): Likewise.
(registered): Likewise.
* grub-core/term/usb_keyboard.c (attach_hook): Likewise.
2011-03-23 12:05:13 +01:00
Vladimir 'phcoder' Serbinenko
40fc46599d
* grub-core/video/bochs.c (grub_video_bochs_setup): Use
...
grub_video_mode_type_t.
* grub-core/video/cirrus.c (grub_video_cirrus_setup): Likewise.
* grub-core/video/i386/pc/vbe.c (grub_video_vbe_setup): Likewise.
* grub-core/video/i386/pc/vga.c (grub_video_vga_setup): Likewise.
2011-03-23 11:54:58 +01:00
Colin Watson
7bdeb3987a
merge trunk
2011-03-14 22:01:32 +00:00
Colin Watson
5de124b354
Avoid straying into first partition when embedding-area sectors are in use (LP: #730225 ).
2011-03-14 21:41:24 +00:00
Colin Watson
9b43bf396a
* grub-core/boot/i386/pc/lnxboot.S (real_code_2): Ensure that the
...
initial chunk read from the kernel always includes GRUB's multiboot
header, which is now outside the first sector.
2011-03-11 11:51:10 +00:00
Colin Watson
be1a7ce0cf
* grub-core/loader/i386/linux.c (find_efi_mmap_size): Page-align
...
cached mmap_size, so that this works correctly when called multiple
times.
Reported by: Daniel Kahn Gillmor. Should fix Debian bug #616638 .
2011-03-09 17:38:31 +00:00
Szymon Janc
57d75699d6
2011-03-07 Szymon Janc <szymon@janc.net.pl>
...
* grub-core/fs/zfs/zfs.c (zap_leaf_lookup):
Set-but-not-used variable removed.
2011-03-07 22:23:06 +01:00
Vladimir 'phcoder' Serbinenko
54da1febce
Rename mipsel-yeeloong to mipsel-loongson
2011-02-19 13:18:05 +01:00
Colin Watson
28f9509eb7
merge trunk
2011-02-17 14:51:11 +00:00
Vladimir 'phcoder' Serbinenko
028501a0e0
Workaround yet another IEEE1275 bug.
...
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New enum value
GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS.
* grub-core/kern/ieee1275/mmap.c (grub_machine_mmap_iterate): Ignore
adress_cells and size:cells if GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS
is set.
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
GRUB_IEEE1275_FLAG_BROKEN_ADDRESS_CELLS on powermacs.
2011-02-12 10:22:55 +03:00
Vladimir 'phcoder' Serbinenko
d998657dcf
* grub-core/partmap/msdos.c (pc_partition_map_embed): Fix off by one
...
error.
2011-02-12 09:59:04 +03:00
Colin Watson
7e735e4349
* include/grub/file.h (not_easly_seekable): Rename to ...
...
(not_easily_seekable): ... this. Update all users.
2011-02-08 13:21:13 +00:00
Colin Watson
5870a4a06f
typo
2011-02-04 16:35:07 +00:00
Colin Watson
8c2c4ff2f5
Handle empty dir passed to grub_find_root_device_from_mountinfo; fixes grub-mkrelpath on btrfs subvolumes.
2011-02-04 13:33:16 +00:00
Colin Watson
118fb264ee
Support probing multipath disks.
2011-01-25 16:51:23 +00:00
Colin Watson
307ed0b484
remove unused variables
2011-01-25 12:28:11 +00:00
Vladimir 'phcoder' Serbinenko
a9fa2a22d7
Integrate Fuloong firmware port into build system and grub-mkimage
2011-01-24 02:20:04 +01:00
Vladimir 'phcoder' Serbinenko
dc1c21edb7
Add informative #define
2011-01-24 01:49:25 +01:00
Vladimir 'phcoder' Serbinenko
88906eaa69
Fix accidental disable of Geode UARTs
2011-01-24 01:46:00 +01:00
Vladimir 'phcoder' Serbinenko
44626c910e
Add fuloong registers for RAM controller
2011-01-24 01:45:11 +01:00
Vladimir 'phcoder' Serbinenko
c69ef8a0ab
pass machine type from fwstart.S. Minor cleanup
2011-01-24 00:40:59 +01:00
Vladimir 'phcoder' Serbinenko
5ea788ada0
Geode UART2 (for Fuloong) fwstart.img support
2011-01-24 00:40:03 +01:00
Vladimir 'phcoder' Serbinenko
1ccfc5d201
Move GPIO init to fwstart.S for convenience
2011-01-24 00:38:30 +01:00
Vladimir 'phcoder' Serbinenko
0889c3401c
Explicitly enable MSR mailbox
2011-01-23 21:56:00 +01:00
Vladimir 'phcoder' Serbinenko
9b4ad415e6
Retry the scan for CS5536 in case of failure
2011-01-23 21:52:43 +01:00
Vladimir 'phcoder' Serbinenko
ea9e017dc5
Correct address to unsupported memory type string
2011-01-23 21:50:09 +01:00
Vladimir 'phcoder' Serbinenko
3533413cd5
* grub-core/kern/emu/getroot.c: Include config-util.h explicitly.
2011-01-22 15:37:05 +01:00
Anthony DeRobertis
5d4c5f8914
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Check
...
super_offset field.
2011-01-22 15:20:08 +01:00
Vladimir 'phcoder' Serbinenko
03a4ccb513
* grub-core/bus/bonito.c (write_bases): Fix direction of the shift.
2011-01-22 14:26:18 +01:00
Vladimir 'phcoder' Serbinenko
ffc8f4d8bc
* grub-core/partmap/bsdlabel.c: Include grub/emu/misc.h and not grub/util/misc.h.
...
(iterate_real): Don't rely on partition being non-NULL.
2011-01-22 14:15:17 +01:00
Vladimir 'phcoder' Serbinenko
80f23be71f
* grub-core/script/argv.c (round_up_exp): unsigned is 32-bit on all
...
supported platforms. Put a compile time assert for this rather than
generate a warning with 32-bit shift.
2011-01-22 14:11:19 +01:00
Vladimir 'phcoder' Serbinenko
5d4f4dd51b
* grub-core/disk/scsi.c (grub_scsi_read): Fix binary and check and make
...
logical expression more readable.
2011-01-22 13:22:46 +01:00
Vladimir 'phcoder' Serbinenko
e489601ad0
* grub-core/disk/raid.c (insert_array): Ensure uniqueness of p->number
...
even if some elements have a name.
Reported by: Alexander GQ Gerasiov.
2011-01-22 13:18:05 +01:00
Vladimir 'phcoder' Serbinenko
99388e0cf8
Fuloong shutdown support
2011-01-18 19:39:12 +01:00
Vladimir 'phcoder' Serbinenko
cfe6539cfe
initialise keylayout on fuloong too
2011-01-18 19:05:12 +01:00
Vladimir 'phcoder' Serbinenko
8f49d04c98
machtype autodetection
2011-01-18 19:04:27 +01:00
Vladimir 'phcoder' Serbinenko
74eea126f4
fuloong support
2011-01-18 15:28:44 +01:00
Vladimir 'phcoder' Serbinenko
edf9d1f7eb
Don't double the divisor on Geode UART, it runs at normal speed
2011-01-18 14:00:55 +01:00
Vladimir 'phcoder' Serbinenko
01b08a0f15
initial SIS315PRO support
2011-01-18 13:44:16 +01:00
Colin Watson
9b300caf84
grub_video_get_edid is not usable from grub_vbe_get_preferred_mode, as a
...
video adapter has not necessarily yet been set. Use grub_video_vbe_get_edid
and grub_video_edid_checksum directly instead. Remove grub_video_get_edid
as it now has no users.
Reported by: Marjo Mercado.
2011-01-17 12:07:47 +00:00
Colin Watson
cb918eddf4
fix FP info handling
2011-01-17 12:05:12 +00:00
Colin Watson
4f8ba1461b
Use low memory scratch area for EDID and FP calls.
2011-01-17 11:56:36 +00:00
Colin Watson
13fc463f17
Make new grub_vbe_bios_* functions static.
2011-01-15 14:18:16 -06:00
Vladimir 'phcoder' Serbinenko
46c9db88cd
* grub-core/kern/mips/yeeloong/init.c (grub_machine_init): Init boot
...
module.
2011-01-14 19:23:34 +01:00
Vladimir 'phcoder' Serbinenko
1d955d0098
* grub-core/Makefile.core.def (fwstart): Add lost LDFLAGS.
2011-01-14 19:21:06 +01:00
Vladimir 'phcoder' Serbinenko
f440c33fd2
Make qemu-mips compile again. Still no grub-mkimage support
2011-01-14 17:37:11 +01:00
Vladimir 'phcoder' Serbinenko
4fbf185232
* grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Quote bootpath and
...
diskdevid.
2011-01-13 22:25:56 +01:00
Vladimir 'phcoder' Serbinenko
f1632d4dd0
Fix compilation on cygwin.
...
* conf/Makefile.common (STRIPFLAGS_KERNEL): Add -F elf32-i386 and
-R .drectve on cygwin.
* conf/i386-pc-cygwin-img-ld.sc: Merge rdata and pdata into data.
* configure.ac: Use $(top_builddir) in TARGET_OBJ2ELF.
(COND_CYGWIN): New condition.
* grub-core/Makefile.am (%.mod): Set TARGET_OBJ2ELF.
* grub-core/genmod.sh.in: Use ${TARGET_OBJ2ELF} and
not @TARGET_OBJ2ELF@.
* util/grub-pe2elf.c (write_symbol_table): Use pe_symtab->type and not
type to determine whether aux is to be used.
2011-01-13 22:23:49 +01:00
Colin Watson
bd1a414714
Resolve the device returned by grub_find_root_device_from_mountinfo or
...
find_root_device_from_libzfs using grub_find_device.
Reported by: Roderich Schupp.
2011-01-12 17:27:52 -06:00
Vladimir 'phcoder' Serbinenko
8fc0a24576
* grub-core/Makefile.core.def (ieee1275_fb): Disable on sparc.
...
It doesn't work well there.
2011-01-12 11:55:52 +01:00
Vladimir 'phcoder' Serbinenko
b8494fbe5c
* grub-core/normal/context.c (grub_env_context_close): Silence spurious
...
warning.
* grub-core/normal/menu.c (grub_menu_execute_entry): Likewise.
* grub-core/partmap/msdos.c (pc_partition_map_embed): Use unsigned
counter.
2011-01-12 11:52:51 +01:00
Vladimir 'phcoder' Serbinenko
b44a558c9a
Use alias->path rather than buggy "canon".
...
* grub-core/disk/ieee1275/ofdisk.c (ofdisk_hash_add_real): New function.
(ofdisk_hash_add): New argument curcan. All users updated.
2011-01-12 11:26:28 +01:00
Vladimir 'phcoder' Serbinenko
9da068a5dc
* grub-core/loader/powerpc/ieee1275/linux.c (grub_linux_load32): Apply
...
loadmask before doing any calculations. Use correct type for offset.
(grub_linux_load64): Likewise.
2011-01-11 23:01:07 +01:00
Colin Watson
6b978c4f04
merge trunk
2011-01-11 10:00:45 -06:00
Vladimir 'phcoder' Serbinenko
4531a206a1
* grub-core/fs/i386/pc/pxe.c (set_mac_env): Export variable.
...
(set_env_limn_ro): Likewise.
(GRUB_MOD_INIT): Likewise.
* grub-core/hook/datehook.c (GRUB_MOD_INIT): Likewise. Change to
ARRAY_SIZE while on it.
(GRUB_MOD_FINI): Change to ARRAY_SIZE.
* grub-core/normal/context.c (grub_env_export): Move from here ...
* grub-core/kern/env.c (grub_env_export): ... here.
* grub-core/normal/context.c (grub_cmd_export): Skip exporting root and
prefix.
* grub-core/kern/main.c (grub_main): Export root and prefix.
* include/grub/env.h (grub_env_export): Export.
Reported by: Seth Goldberg.
2011-01-11 11:51:05 +01:00
Vladimir 'phcoder' Serbinenko
4514605726
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
...
Take into account space used by ELF sections and multiboot palette.
Reported by: Grégoire Sutre.
2011-01-11 00:44:56 +01:00
Vladimir 'phcoder' Serbinenko
3395fe5230
Pass more appropriate video id to Linux.
...
* grub-core/loader/i386/linux.c (grub_linux_setup_video): Use
grub_video_get_driver_id and variable gfxpayloadforcelfb to
fill have_vga.
(grub_linux_boot): Rely on grub_linux_setup_video to fill have_vga and
shift params->lfb_size.
* include/grub/i386/linux.h: Make an enume out of have_vga values.
2011-01-11 00:02:01 +01:00
Vladimir 'phcoder' Serbinenko
b3ff6ff056
* grub-core/fs/zfs/zfsinfo.c (grub_cmd_zfs_bootfs): Use comma as
...
separator and pass bootpath/devid even if only one of them is available.
Reported by: Seth Goldberg.
2011-01-10 23:56:11 +01:00
Vladimir 'phcoder' Serbinenko
ae67942e78
Don't use post-4G memory on EFI even if 64-bit since some non-compliant
...
implementations bug on them.
* grub-core/kern/efi/mm.c (grub_efi_allocate_pages): Skip post-4G
memory.
(filter_memory_map): Likewise.
2011-01-10 23:51:10 +01:00
Vladimir 'phcoder' Serbinenko
dcb883b162
Submenu default support.
...
* grub-core/normal/menu.c (grub_menu_execute_entry): New parameter
auto_boot. All users updated.
Declared static.
Handle chosen and default with submenus.
(grub_menu_execute_with_fallback): Declared static.
Don't notify failure if autobooted. Upper level does it.
(menuentry_eq): New function.
(get_entry_number): Use menuentry_eq.
(show_menu): New parameter "autobooted". All users updated.
(grub_show_menu): Likewise.
* include/grub/normal.h (grub_show_menu): Likewise.
* include/grub/menu.h (grub_menu_execute_entry): Removed.
(grub_menu_execute_with_fallback): Likewise.
2011-01-10 23:27:58 +01:00
Vladimir 'phcoder' Serbinenko
47a77af5e8
* grub-core/commands/legacycfg.c (legacy_file): Trim the line.
2011-01-10 19:25:00 +01:00
Vladimir 'phcoder' Serbinenko
db87be2aea
* grub-core/kern/i386/pc/init.c (grub_get_conv_memsize): Removed.
...
(grub_machine_init): Don't check amount of low memory as reportedly
INT 12h can be broken and if low memory is too low we wouldn't have
gotten into grub_machine_init anyway.
2011-01-10 17:54:21 +01:00
Vladimir 'phcoder' Serbinenko
c49849cc63
* grub-core/kern/i386/pc/mmap.c (grub_get_conv_memsize): New function.
...
(grub_machine_mmap_iterate): Take low memory into account
2011-01-10 17:51:06 +01:00
Vladimir 'phcoder' Serbinenko
b1969b3049
* grub-core/fs/btrfs.c (grub_btrfs_mount): Transform out of range into
...
badfs.
Reported by: TiCPU.
2011-01-10 17:35:32 +01:00
Vladimir 'phcoder' Serbinenko
cf0eaf13a1
* grub-core/disk/raid.c (insert_array): Display RAID name in duplicate
...
members errors.
2011-01-10 17:28:29 +01:00
Vladimir 'phcoder' Serbinenko
4b07826647
partitioned mdraid support (untested)
2011-01-08 16:33:49 +01:00
Vladimir 'phcoder' Serbinenko
e7121b6932
* grub-core/fs/zfs/zfs.c (dmu_read): Use void * for some pointers to
...
avoid aliasing.
(fzap_lookup): Likewise.
(dnode_get): Likewise.
(make_mdn): Likewise.
(zfs_mount): Likewise.
(fzap_iterate): Use temporary pointer to avoid aliasing.
(grub_zfs_read): Likewise.
* grub-core/loader/i386/xnu.c (grub_xnu_boot): Likewise.
* grub-core/loader/xnu.c (grub_cmd_xnu_kernel): Use void * for some
pointers to avoid aliasing.
(grub_cmd_xnu_kernel64): Likewise.
(grub_xnu_load_driver): Likewise.
2011-01-08 01:56:09 +01:00
Vladimir 'phcoder' Serbinenko
fc836af9a5
* grub-core/commands/terminal.c (grub_cmd_terminal_input): Silence
...
aliasing warning.
(grub_cmd_terminal_output): Likewise.
Reported and tested by: Grégoire Sutre.
2011-01-08 01:50:06 +01:00
Vladimir 'phcoder' Serbinenko
f9f376488b
* grub-core/term/at_keyboard.c (grub_keyboard_getkey): Silence spurious
...
warning.
Reported and tested by: Grégoire Sutre.
2011-01-08 01:45:57 +01:00
Vladimir 'phcoder' Serbinenko
9462775a2d
* grub-core/Makefile.am (rs_decoder.S): Force compilation with -Os.
...
Reported and tested by: Alain Greppin.
2011-01-08 00:39:12 +01:00
Vladimir 'phcoder' Serbinenko
0fd48e357f
Satisfy some bison versions need for inttypes.h.
...
* grub-core/lib/posix_wrap/inttypes.h: New file.
* grub-core/lib/posix_wrap/sys/types.h (int8_t): New type.
(int16_t): Likewise.
(int32_t): Likewise.
(int64_t): Likewise.
Reported and tested by: Alain Greppin.
2011-01-08 00:34:23 +01:00
Vladimir 'phcoder' Serbinenko
43f1bc8369
* grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta):
...
Silence spurious warning.
Reported and tested by: Alain Greppin.
2011-01-08 00:27:38 +01:00
Colin Watson
b7d86d53c4
merge trunk
2011-01-07 17:26:15 +00:00
Colin Watson
11b970d7c9
Always initialise *relroot in grub_find_root_device_from_mountinfo,
...
otherwise we free an uninitialised pointer if /proc is unmounted.
Reported by: Scott Moser.
2011-01-07 17:24:25 +00:00
Szymon Janc
25953e1055
Improve loaders' kernel command line handling.
...
* grub-core/lib/cmdline.c: New file.
* include/grub/lib/cmdline.h: Likewise.
* grub-core/loader/i386/linux.c (grub_cmd_linux): Use
grub_create_loader_cmdline to create kernel command line.
* grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise.
* grub-core/loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Likewise.
* grub-core/loader/sparc64/ieee1275/linux.c (grub_cmd_linux): Likewise.
* grub-core/Makefile.core.def (linux16): Add lib/cmdline.c on i386_pc.
(linux): Add lib/cmdline.c on common.
2011-01-07 17:09:39 +01:00
Vladimir 'phcoder' Serbinenko
e72d259fe1
* grub-core/fs/xfs.c (grub_xfs_iterate_dir): Take into account that
...
inopos might be unaligned.
2011-01-07 17:06:42 +01:00
Vladimir 'phcoder' Serbinenko
c0cf26da6b
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Add missing
...
endian transformations.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
Based on report by: Doug Nazar.
2011-01-07 16:17:24 +01:00
Doug Nazar
0ca09e6c52
* grub-core/disk/raid5_recover.c (grub_raid5_recover): Add missing
...
array->members[i].start_sector.
* grub-core/disk/raid6_recover.c (grub_raid6_recover): Likewise.
2011-01-07 14:41:44 +01:00
Colin Watson
6383772c92
remove unused variable
2011-01-06 18:08:01 +00:00
Colin Watson
71b6a2b7a2
* grub-core/kern/emu/getroot.c (find_root_device_from_mountinfo):
...
Fix prefix check to handle the case where dir ends with a slash
(most significantly, "/" itself).
Reported by: Michael Vogt.
2011-01-06 11:09:17 +00:00
Colin Watson
80e9f2bce8
merge trunk
2011-01-05 11:57:17 +00:00
Colin Watson
304e349b7f
include <grub/emu/getroot.h> for grub_find_device
2011-01-05 11:41:12 +00:00
Vladimir 'phcoder' Serbinenko
b3f8d28ad0
Run terminfo_cls on initing terminfo output to clear the screen and
...
move the cursor to (0,0).
* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_init_output):
Call grub_terminfo_output_init.
* grub-core/term/serial.c (grub_serial_term_output): Set .init.
* grub-core/term/terminfo.c (grub_terminfo_output_init): New function.
* include/grub/terminfo.h (grub_terminfo_output_init): New declaration.
2011-01-05 12:23:06 +01:00
Vladimir 'phcoder' Serbinenko
488f71f116
* grub-core/term/terminfo.c (grub_terminfo_readkey): Handle keys with
...
CTRL.
2011-01-05 01:25:01 +01:00
Vladimir 'phcoder' Serbinenko
18a38098ad
The E820 type 5 is BADRAM, not EXEC_CODE.
...
* grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
(GRUB_E820_BADRAM): New define.
* grub-core/loader/i386/linux.c (grub_linux_boot): Translate code
into reserved. Propagate BADRAM.
* grub-core/loader/i386/bsd.c (GRUB_E820_EXEC_CODE): Removed.
(GRUB_E820_BADRAM): New define.
2011-01-05 01:14:32 +01:00
Vladimir 'phcoder' Serbinenko
9eae2084f4
* grub-core/lib/efi/relocator.c (grub_relocator_firmware_fill_events):
...
Ignore the memory post-4G.
(grub_relocator_firmware_alloc_region): Additional debug statement.
2011-01-04 19:08:03 +01:00
Vladimir 'phcoder' Serbinenko
ebc71d284c
* grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Check md/%s
...
names.
Reported by: David Pravec.
2011-01-04 18:15:27 +01:00
Colin Watson
92882f28b6
merge trunk
2011-01-04 15:51:41 +00:00
Colin Watson
944404efb8
merge trunk
2011-01-04 15:41:07 +00:00
Vladimir 'phcoder' Serbinenko
446fa40081
* grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Workaround buggy
...
BIOSes.
2011-01-04 15:42:47 +01:00
Vladimir 'phcoder' Serbinenko
a0159f370d
* grub-core/lib/reed_solomon.c (grub_reed_solomon_add_redundancy):
...
Prevent overflow.
(grub_reed_solomon_recover): Likewise.
2011-01-04 15:39:59 +01:00
Vladimir 'phcoder' Serbinenko
e5146ca18b
* grub-core/lib/reed_solomon.c (main) [TEST]: Reactivate normal test.
2011-01-04 15:37:10 +01:00
Vladimir 'phcoder' Serbinenko
956384994b
* grub-core/lib/reed_solomon.c (scratch) [! STANDALONE]: Remove leftover
...
variable.
2011-01-04 15:35:10 +01:00
Colin Watson
5b1bdf1231
* grub-core/commands/legacycfg.c (GRUB_MOD_INIT): Fix typo in
...
descriptions of extract_legacy_entries_source and
extract_legacy_entries_configfile.
Reported by: Seung Soo, Ha.
2011-01-04 13:05:19 +00:00
Colin Watson
99d925aad4
* grub-core/bus/pci.c (grub_pci_iterate): Skip remaining functions
...
on devices that do not implement function 0.
2011-01-03 23:56:45 +00:00
Vladimir 'phcoder' Serbinenko
092fd3a072
merge mainline into ahci
2011-01-03 16:03:13 +01:00
Vladimir 'phcoder' Serbinenko
7a1d4deec9
Fix finalisation/restore
2011-01-03 15:59:20 +01:00
Vladimir 'phcoder' Serbinenko
fb7ab4a99b
add missing == 0
2011-01-03 15:54:59 +01:00
Dave Vasilevsky
4af0504b72
* grub-core/fs/hfsplus.c: Make parent unsigned.
...
(grub_hfsplus_cmp_catkey): Don't compare using subtraction, it
overflows.
(grub_hfsplus_cmp_extkey): Likewise
2011-01-03 15:30:41 +01:00
phcoder
bea3358389
First handling of ia64-efi in grub-mkimage
2011-01-03 13:46:36 +01:00
phcoder
c18271ed00
Fix compilation errors
2011-01-03 02:28:14 +01:00
Vladimir 'phcoder' Serbinenko
0718f66d12
Discard a bunch of junk code
2011-01-03 00:56:28 +01:00
phcoder
5faa440cb0
Discard several spurious differences from mainline
2011-01-03 00:47:21 +01:00
phcoder
0a2b2cdc95
Fix autogen
2011-01-03 00:30:26 +01:00
Vladimir 'phcoder' Serbinenko
0f35c665e6
merge mainline to ia64
2011-01-03 00:04:39 +01:00
Vladimir 'phcoder' Serbinenko
7edf63fce6
merge ia64-emu into ia64
2011-01-02 23:55:50 +01:00
phcoder
f49157dfe5
Restructure module loading and many fixes. Now normal.mod loads successfully
2011-01-02 23:30:25 +01:00
phcoder
bbbf84350e
Working hello.mod with extcmd.mod
2011-01-02 19:20:28 +01:00
phcoder
73911575dd
support for registering functions from modules (not tested yet)
2011-01-02 14:58:57 +01:00
phcoder
daca6c5f45
ltoff relocation support
2011-01-02 14:39:23 +01:00
phcoder
f9c30af6d0
Succesfully loaded return-only module on ia64-emu
2011-01-02 14:09:58 +01:00
Vladimir 'phcoder' Serbinenko
6f49d0aacb
Add missing cache.c
2011-01-01 15:53:31 +01:00
Vladimir 'phcoder' Serbinenko
3a04c65d00
Always add libgcc.h
2011-01-01 15:13:03 +01:00
Vladimir 'phcoder' Serbinenko
fb17547ca8
Check amiga partmap checksum
2010-12-31 15:23:06 +01:00
Vladimir 'phcoder' Serbinenko
b9cd13659c
Simplify the AFFS checksum computation.
2010-12-31 15:22:36 +01:00
Vladimir 'phcoder' Serbinenko
abafac997c
merge mainline into filesys
2010-12-31 15:05:55 +01:00
Vladimir 'phcoder' Serbinenko
2f70097d3e
merge mainline into filesys branch
2010-12-31 15:02:07 +01:00
Vladimir 'phcoder' Serbinenko
275bff5f00
* grub-core/partmap/amiga.c (GRUB_AMIGA_PART_MAGIC): New define.
...
(amiga_partition_map_iterate): Check "PART" magic to avoid a very long
loop in case of incorrect amiga partmap.
2010-12-31 15:00:45 +01:00
Vladimir 'phcoder' Serbinenko
307806cb53
* grub-core/partmap/amiga.c (GRUB_AMIGA_RDSK_MAGIC): New define.
...
(amiga_partition_map_iterate): Use grub_memcmp instead of grub_strcmp.
Reported by:EHeM.
2010-12-31 14:55:55 +01:00
Vladimir 'phcoder' Serbinenko
b12b923e63
* grub-core/loader/i386/bsdXX.c (grub_openbsd_find_ramdisk): Silence
...
spurious warning.
Reported by: crocket
2010-12-31 12:37:35 +01:00
Vladimir 'phcoder' Serbinenko
14b48a19c2
* grub-core/loader/xnu.c (grub_cmd_xnu_kernel) [! GRUB_MACHINE_EFI]:
...
Preload EFIemu.
(grub_cmd_xnu_kernel64) [! GRUB_MACHINE_EFI]: Likewise.
2010-12-27 07:19:51 +01:00
Vladimir 'phcoder' Serbinenko
693db2df56
* grub-core/loader/xnu.c (grub_cmd_xnu_kext): Abort if no kernel
...
is loaded
(grub_cmd_xnu_kextdir): Likewise.
(grub_cmd_xnu_splash): Likewise.
2010-12-27 07:18:24 +01:00
Vladimir 'phcoder' Serbinenko
c76386454e
Avoid using Reed-Solomon with 0 redundancy.
...
* grub-core/kern/i386/pc/startup.S: Remove 0-data check.
* grub-core/lib/reed_solomon.c (decode_block): Do not proceed on 0 data
or 0 redundancy.
(grub_reed_solomon_add_redundancy): Do not proceed with 0 redundancy.
(grub_reed_solomon_recover): Likewise.
2010-12-27 07:09:43 +01:00
Vladimir 'phcoder' Serbinenko
25dd47804d
Don't use disk subsystem in freebsd_boot.
...
* grub-core/loader/i386/bsd.c (freebsd_bootdev): New variable.
(freebsd_biosdev): Likewise.
(grub_freebsd_boot): Use freebsd_bootdev and freebsd_biosdev.
(grub_cmd_freebsd): Set freebsd_bootdev and freebsd_biosdev.
2010-12-27 07:06:41 +01:00
Vladimir 'phcoder' Serbinenko
0b2db94300
Handling of files of unknown size is currently limited. They can't be
...
used e.g. for initrd or modules. Moreover gzip handling of not
easily seekable files is buggy. Disable unknown file size for now. May
be inefficient but works.
* grub-core/io/gzio.c (test_header): Always retrieve the file size.
* grub-core/io/xzio.c (grub_xzio_open): Likewise.
2010-12-26 21:15:31 +01:00
Mirko Parthey
5c408d0f50
* grub-core/boot/i386/pc/boot.S: Fix %es:%bx pointing to nowhere on
...
floppy probe.
2010-12-26 20:49:08 +01:00
Vladimir 'phcoder' Serbinenko
3d5f359d3b
merge mainline into ahci
2010-12-26 11:20:12 +01:00
Vladimir 'phcoder' Serbinenko
af36812f5c
fix a compilation error
2010-12-26 00:57:03 +01:00
Vladimir 'phcoder' Serbinenko
b28fd807eb
freedos support
2010-12-26 00:38:20 +01:00
Jeroen Dekkers
190a011a8b
* grub-core/disk/raid.c (insert_array): Don't add spurious members.
2010-12-25 22:32:54 +01:00
Shea Levy
022d01b807
* grub-core/genmod.sh.in: Use @OBJCOPY@ rather than objcopy.
2010-12-25 18:21:46 +01:00
Vladimir 'phcoder' Serbinenko
9797178671
Accept ports in state 1
2010-12-25 18:02:43 +01:00
Vladimir 'phcoder' Serbinenko
c76ae9b4da
set parms.write on disk write
2010-12-25 17:40:00 +01:00
Vladimir 'phcoder' Serbinenko
3c51ecb82b
Fix adressing mode mismatch
2010-12-25 15:47:23 +01:00
Vladimir 'phcoder' Serbinenko
0354b8672c
* grub-core/commands/acpihalt.c (grub_acpi_halt): Sleep for 1.5 before
...
writing an error message because of async power management.
* grub-core/kern/mips/yeeloong/init.c (grub_halt): Likewise.
(grub_reboot): Likewise.
2010-12-25 14:09:36 +01:00
Vladimir 'phcoder' Serbinenko
3bce4450b3
avoid throwing data away on pxefs_open. Reported by : Seth Goldberg
2010-12-25 13:44:31 +01:00
Vladimir 'phcoder' Serbinenko
d1e517eb20
extend --disk-module to AHCI and USB
2010-12-25 12:11:54 +01:00
Vladimir 'phcoder' Serbinenko
d9675dbee3
Move 0xE0 to callers rather than to have it in drivers
2010-12-25 03:47:51 +01:00
Vladimir 'phcoder' Serbinenko
a934071d76
Remove unused pata ioaddress2
2010-12-25 03:22:12 +01:00
Vladimir 'phcoder' Serbinenko
188ac234bd
use DMA for AHCI commands
2010-12-25 03:12:49 +01:00
Vladimir 'phcoder' Serbinenko
060d0c7ac2
working AHCI (at last)
2010-12-25 03:06:07 +01:00
Vladimir 'phcoder' Serbinenko
51f7e1acb7
DMA ATA commands support
2010-12-25 02:53:20 +01:00
Vladimir 'phcoder' Serbinenko
908a8fc37a
Fix several AHCI problems
2010-12-24 19:48:55 +01:00
Vladimir 'phcoder' Serbinenko
ee2b985ef6
rearrange wait_not_busy
2010-12-24 17:11:21 +01:00
Vladimir 'phcoder' Serbinenko
8f5ac9e570
fix ATAPI support
2010-12-24 17:10:41 +01:00
Vladimir 'phcoder' Serbinenko
22a7cc9a6f
fix 3rd argument to scsi_iterate
2010-12-24 17:09:56 +01:00
Vladimir 'phcoder' Serbinenko
faec81d97d
Add missing buffer specifications
2010-12-24 16:54:33 +01:00
Vladimir 'phcoder' Serbinenko
de2690be7c
merge mainline into ahci
2010-12-24 16:16:01 +01:00
Colin Watson
e925b2b6d4
merge parse-color
2010-12-23 12:22:20 +00:00
Colin Watson
6d46121efb
merge trunk
2010-12-23 12:20:48 +00:00
Colin Watson
af4e4a875a
return GRUB_ERR_NONE instead of setting grub_errno
2010-12-23 12:19:55 +00:00
Colin Watson
1c95b6d2bf
Move video/colors.c into video.mod.
2010-12-23 12:11:44 +00:00
Colin Watson
20641b6baa
* grub-core/lib/reed_solomon.c (gauss_solve): Fix size of standalone
...
scratch area. Make sure to initialise chosen in standalone mode as
well as non-standalone.
Reported by: Robert Hooker and Andy Whitcroft.
Tested by: Andy Whitcroft.
2010-12-21 16:51:08 +00:00
Colin Watson
d060ad60ee
* grub-core/commands/echo.c (grub_cmd_echo): Make UTF-8-clean by
...
constructing a new unescaped string and passing it to grub_xputs in
one go, rather than passing characters to grub_printf one at a time.
2010-12-21 13:52:07 +00:00
Colin Watson
b889cfadf9
* grub-core/fs/udf.c (read_string): Pacify GCC warning by
...
initialising utf16.
2010-12-21 13:00:10 +00:00
Vladimir 'phcoder' Serbinenko
5c61fc9f48
supply boot file to plan9
2010-12-21 00:37:03 +01:00
Vladimir 'phcoder' Serbinenko
645b8cd99f
Allow override Plan9 device names
2010-12-21 00:22:11 +01:00
Vladimir 'phcoder' Serbinenko
da94d203d9
Generate partmaps for plan9
2010-12-21 00:04:31 +01:00
Vladimir 'phcoder' Serbinenko
5318fe9804
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_add_module):
...
Avoid next pointing to nowhere.
2010-12-20 16:13:01 +01:00
Vladimir 'phcoder' Serbinenko
ac9ef7eef9
plan9 subpartition support
2010-12-20 01:18:21 +01:00
Vladimir 'phcoder' Serbinenko
3c50773923
Ignore fields zero1 and zero3
2010-12-19 20:51:32 +01:00
Vladimir 'phcoder' Serbinenko
239ab5f048
Fix Plan9 alignment
2010-12-19 17:02:25 +01:00
Vladimir 'phcoder' Serbinenko
70e8145a7b
Plan9 support
2010-12-19 16:10:26 +01:00
Vladimir 'phcoder' Serbinenko
052677ba71
merge mainline into filesys
2010-12-19 00:54:05 +01:00
Vladimir 'phcoder' Serbinenko
6c85b743f5
* grub-core/fs/affs.c (grub_affs_mount): Read data->bblock.rootblock
...
rather than assuming than rootblock is exactly in the middle.
(grub_affs_label): Likewise.
2010-12-19 00:52:18 +01:00
Vladimir 'phcoder' Serbinenko
b070525d03
* grub-core/fs/affs.c (grub_affs_mount): Read data->bblock.rootblock
...
rather than assuming than rootblock is exactly in the middle.
(grub_affs_label): Likewise.
2010-12-19 00:52:18 +01:00
Vladimir 'phcoder' Serbinenko
a2a08a35bf
* grub-core/fs/affs.c (grub_affs_fs) [GRUB_UTIL]: Explicitly set
...
reserved_first_sector to 0.
* grub-core/fs/cpio.c (grub_cpio_fs) [GRUB_UTIL]: Likewise.
* grub-core/fs/sfs.c (grub_sfs_fs) [GRUB_UTIL]: Likewise.
* grub-core/fs/xfs.c (grub_xfs_fs) [GRUB_UTIL]: Likewise.
2010-12-19 00:49:52 +01:00
Vladimir 'phcoder' Serbinenko
b85812b06f
* grub-core/fs/affs.c (grub_affs_fs) [GRUB_UTIL]: Explicitly set
...
reserved_first_sector to 0.
* grub-core/fs/cpio.c (grub_cpio_fs) [GRUB_UTIL]: Likewise.
* grub-core/fs/sfs.c (grub_sfs_fs) [GRUB_UTIL]: Likewise.
* grub-core/fs/xfs.c (grub_xfs_fs) [GRUB_UTIL]: Likewise.
2010-12-19 00:49:52 +01:00
Vladimir 'phcoder' Serbinenko
7059d1ec14
Fix handling of UTF-16 UDF labels.
...
* grub-core/fs/udf.c (grub_udf_iterate_dir): Move string-parsing part
(read_string): .. here.
(grub_udf_label): Use read_string.
2010-12-19 00:43:41 +01:00
Vladimir 'phcoder' Serbinenko
e6533ae154
Fix handling of UTF-16 UDF labels.
...
* grub-core/fs/udf.c (grub_udf_iterate_dir): Move string-parsing part
(read_string): .. here.
(grub_udf_label): Use read_string.
2010-12-19 00:43:41 +01:00
BVK Chaitanya
fcf983f8c7
merge with mainline
2010-12-19 09:17:22 +05:30
Colin Watson
32570200a8
* grub-core/normal/term.c (print_more): Make \r or \n scroll one
...
line, and other keys scroll an entire page (previous handling was
for \r and \n to scroll a page and other keys to scroll two lines).
2010-12-18 17:37:48 +00:00
Vladimir 'phcoder' Serbinenko
e1dffcf270
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_make_mbi):
...
Set ptrdest to correct get_physical_target_address rather than
incorrect get_virtual_current_address.
2010-12-18 14:31:05 +01:00
kashyap garimella
b04298cfa2
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_load): Use
...
correct cat to grub_uint8_t * rather than grub_uint32_t *.
2010-12-18 15:22:11 +01:00
Vladimir 'phcoder' Serbinenko
4493254156
Support RomFS label
2010-12-15 22:00:18 +01:00
Vladimir 'phcoder' Serbinenko
20af857581
symlink support on romfs
2010-12-15 20:36:54 +01:00
Vladimir 'phcoder' Serbinenko
921c7932d0
directory and hardlink support on romfs
2010-12-15 20:24:16 +01:00
Vladimir 'phcoder' Serbinenko
29184e9312
romfs support
2010-12-15 19:49:35 +01:00
Colin Watson
2b7e8d5d83
merge parse-color
2010-12-15 01:39:17 +00:00
Colin Watson
477343c86e
make sure virtual_screen.bg_color is compatible with the text layer
2010-12-15 01:31:07 +00:00
Colin Watson
015e21571c
check that adapter->get_edid is non-NULL
2010-12-14 19:03:28 +00:00
Colin Watson
129185cfaa
move more EDID-handling functions to generic code, and make videoinfo display EDID information
2010-12-14 18:03:34 +00:00
Colin Watson
25d884a52a
move generic parts of EDID handling (structure, checksumming) to generic location
2010-12-14 17:06:32 +00:00
Colin Watson
e03f549b3e
Preferred resolution detection for VBE.
...
* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_flat_panel_info):
New function.
(grub_vbe_bios_get_ddc_capabilities): Likewise.
(grub_vbe_bios_read_edid): Likewise.
(grub_vbe_edid_checksum): Likewise.
(grub_vbe_get_preferred_mode): Likewise. Try EDID followed by the
Flat Panel extension, in line with the X.org VESA driver.
(grub_video_vbe_setup): When the mode is "auto", try to get the
preferred mode from VBE, and use the largest mode that is no larger
than the preferred mode (some BIOSes expose a preferred mode that is
not in their mode list!). If this fails, fall back to 640x480 as a
safe conservative choice.
* include/grub/i386/pc/vbe.h (struct grub_vbe_flat_panel_info): New
structure.
(struct grub_vbe_edid_info): Likewise.
(grub_vbe_bios_get_flat_panel_info): Add prototype.
(grub_vbe_bios_get_ddc_capabilities): Likewise.
(grub_vbe_bios_read_edid): Likewise.
* util/grub.d/00_header.in (GRUB_GFXMODE): Default to "auto". This
is more appropriate on a wider range of platforms than 640x480.
2010-12-14 16:22:19 +00:00
Colin Watson
159b4a8bb7
(redraw_screen_rect): Allow blend/replace of text layer to be
...
controlled independently from whether there is a background bitmap.
(grub_gfxterm_fullscreen): Change blend_text_bg when changing
bitmap.
(destroy_window): Likewise.
(grub_gfxterm_background_image_cmd): Likewise.
2010-12-14 12:28:36 +00:00
Colin Watson
198cae0c96
Fix border repainting.
...
* grub-core/term/gfxterm.c (dirty_region_add): When a repaint is
already scheduled, merge the virtual screen with the requested
region rather than repainting only the virtual screen.
2010-12-13 13:58:53 +00:00
Vladimir 'phcoder' Serbinenko
0e5507c411
mtime support for ntfs
2010-12-12 01:00:33 +01:00
Vladimir 'phcoder' Serbinenko
7b32d83d78
SFS mtime support
2010-12-11 22:48:29 +01:00
Vladimir 'phcoder' Serbinenko
bd1de4341b
explicitly declare SFS as not installable
2010-12-11 22:33:34 +01:00
Vladimir 'phcoder' Serbinenko
790aaa8c9f
AFFS mtime support
2010-12-11 22:02:22 +01:00
Vladimir 'phcoder' Serbinenko
e21c356413
restructure AFFS fshelp_node-related code
2010-12-11 21:59:22 +01:00
Vladimir 'phcoder' Serbinenko
9959c6a70b
Fix AFFS rootblock detection
2010-12-11 21:15:25 +01:00
Vladimir 'phcoder' Serbinenko
81ecffbfc1
Add missing packed attribute
2010-12-11 18:42:44 +01:00
Vladimir 'phcoder' Serbinenko
5e96cb4452
Extend few other fields
2010-12-11 18:41:42 +01:00
Vladimir 'phcoder' Serbinenko
ea17ec49ae
Extend fields in dirent header
2010-12-11 18:32:08 +01:00
Vladimir 'phcoder' Serbinenko
80113a6258
declare AFFS, CPIO, TAR and XFS as non-installable explicitly
2010-12-11 18:21:39 +01:00
Vladimir 'phcoder' Serbinenko
4aab263130
SquashFS mtime support
2010-12-11 18:20:45 +01:00
Vladimir 'phcoder' Serbinenko
f5ff296240
minix mtime support
2010-12-11 17:46:16 +01:00
Vladimir 'phcoder' Serbinenko
ea0df4e953
ZFS mtime support
2010-12-11 15:01:33 +01:00
Vladimir 'phcoder' Serbinenko
eb03b55271
fix ZFS label handling in non-single disk configs
2010-12-11 14:56:02 +01:00
Vladimir 'phcoder' Serbinenko
7ac6c4842d
JFS mtime support
2010-12-11 14:26:34 +01:00
Vladimir 'phcoder' Serbinenko
58fa13fc7c
HFS mtime support
2010-12-11 07:15:44 +01:00
Vladimir 'phcoder' Serbinenko
ebec6850b9
HFS filesystem mtime support
2010-12-11 07:00:31 +01:00
Vladimir 'phcoder' Serbinenko
88db5b694a
file mtime support for reiserfs
2010-12-11 06:23:33 +01:00
Vladimir 'phcoder' Serbinenko
591baceb34
UDF symlink support
2010-12-11 06:04:21 +01:00
Colin Watson
9c55cbe8e7
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.
2010-12-10 17:47:38 +00:00
Vladimir 'phcoder' Serbinenko
f8e2e451e6
handle UTF16 UDF label
2010-12-10 18:34:46 +01:00
Colin Watson
52832c554c
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_colors) [videomodules]: New module, containing
video/colors.c.
2010-12-10 16:45:58 +00:00
Vladimir 'phcoder' Serbinenko
f22c12e852
mtime for UDF support
2010-12-10 17:37:32 +01:00
Vladimir 'phcoder' Serbinenko
5706da0443
mtime support for xfs
2010-12-10 16:19:24 +01:00
Vladimir 'phcoder' Serbinenko
3b95531920
fix unix range
2010-12-10 15:04:12 +01:00
Vladimir 'phcoder' Serbinenko
d6f07b29fc
mtime btrfs support
2010-12-10 14:38:16 +01:00
Colin Watson
1fb430f865
* grub-core/gettext/gettext.c (grub_gettext_init_ext): Factor out
...
.mo/.mo.gz opening sequence to ...
(grub_mofile_open_lang): ... here.
(grub_gettext_init_ext): If opening ll_CC fails, try ll.
* util/grub.d/00_header.in (grub_lang): Include country part of
locale.
Reported by: Mario Limonciello.
2010-12-10 11:45:08 +00:00
Vladimir 'phcoder' Serbinenko
c50d99c5e5
file mtime support for iso9660
2010-12-10 11:12:59 +01:00
Vladimir 'phcoder' Serbinenko
a2de6bf6ed
filesystem mtime support for iso9660
2010-12-10 10:32:50 +01:00
Vladimir 'phcoder' Serbinenko
db64f5b167
mtime support for cpio and tar
2010-12-10 08:42:40 +01:00
Vladimir 'phcoder' Serbinenko
4a91cd8220
symlink support
2010-12-09 22:29:36 +01:00
Vladimir 'phcoder' Serbinenko
e330e4f383
support file mtime
2010-12-09 21:17:27 +01:00
Vladimir 'phcoder' Serbinenko
627a62fc70
Make type-dependent portion of inode an union
2010-12-09 21:14:42 +01:00
Vladimir 'phcoder' Serbinenko
1fc7203971
Split grub_squash_read_data
2010-12-09 20:48:03 +01:00
Vladimir 'phcoder' Serbinenko
8eef1f8244
Compressed fragments and compressed data support
2010-12-09 20:41:41 +01:00
Vladimir 'phcoder' Serbinenko
e4eaf62555
Small restructuring of squash_read
2010-12-09 19:40:11 +01:00
Vladimir 'phcoder' Serbinenko
76e39dc871
Compressed metadata support
2010-12-09 19:23:35 +01:00
Vladimir 'phcoder' Serbinenko
99f0735fb8
Support multi-header directories
2010-12-09 18:22:38 +01:00
Vladimir 'phcoder' Serbinenko
948ebd7e91
Support fragments and chunks for data
2010-12-09 17:06:49 +01:00
Vladimir 'phcoder' Serbinenko
7ed6c3e85f
Honor chunk number for directories
2010-12-09 02:48:59 +01:00
Vladimir 'phcoder' Serbinenko
0a040470e5
determine root inode on squash4fs
2010-12-09 00:04:36 +01:00
Vladimir 'phcoder' Serbinenko
1deadc83f5
extend size to 32-bit and handle file->offset
2010-12-08 23:03:59 +01:00
Vladimir 'phcoder' Serbinenko
332fa36887
some squash4 code. Works only in very easy cases.
2010-12-08 21:22:46 +01:00
BVK Chaitanya
393324be7c
execute menu editor commands with argument scope
2010-12-08 16:43:11 +05:30
Vladimir 'phcoder' Serbinenko
bfff320cdf
Apparently functioning raidz. Still mostly a guesswork so may break
2010-12-07 11:45:37 +01:00
Vladimir 'phcoder' Serbinenko
39db1a3f75
First attempt on RAIDZ. Right now works only with right phase of the moon.
2010-12-06 23:46:01 +01:00
Vladimir 'phcoder' Serbinenko
c3b87afcd4
Recognize vdev file
2010-12-06 20:28:02 +01:00
Vladimir 'phcoder' Serbinenko
79282228ec
use anopther RAID1(0) copy if main one fails
2010-12-06 20:26:49 +01:00
Vladimir 'phcoder' Serbinenko
925d998e6f
Fix a warining
2010-12-06 07:03:58 +01:00
Vladimir 'phcoder' Serbinenko
8ff84951c5
ZFS mirror support
2010-12-06 02:31:22 +01:00
Vladimir 'phcoder' Serbinenko
fdfde32aa4
striped zpool support
2010-12-05 21:17:24 +01:00
Vladimir 'phcoder' Serbinenko
e5c63d9d41
Fix handling of nvlist array
2010-12-05 18:13:32 +01:00
Vladimir 'phcoder' Serbinenko
069142f4c2
Support long symlinks
2010-12-05 16:08:26 +01:00
Vladimir 'phcoder' Serbinenko
47c3603cc8
Add missing endianness conversions in fzap code
2010-12-05 15:41:17 +01:00
Vladimir 'phcoder' Serbinenko
fe79a8ad9d
Fix fzap handling
2010-12-05 15:35:08 +01:00
Colin Watson
24b7938b32
* grub-core/kern/i386/pc/startup.S (grub_console_getkey): Use `>> 1'
...
rather than `/ 2', as the latter requires -Wa,--divide which would
require bumping our minimum binutils version.
2010-12-04 16:19:26 +00:00
Vladimir 'phcoder' Serbinenko
c5cf9f53a8
Fix short symlinks
2010-12-04 01:59:06 +01:00
Vladimir 'phcoder' Serbinenko
7a6e93788c
ZFS zlib compression support
2010-12-04 00:40:44 +01:00
Vladimir 'phcoder' Serbinenko
78ab87f61d
merge mainline into ZFS
2010-12-04 00:40:20 +01:00
Vladimir 'phcoder' Serbinenko
3be8e5ea96
BtrFS zlib compression support
2010-12-03 21:42:13 +01:00
Vladimir 'phcoder' Serbinenko
6333f1e9b6
Add RAID10 support
2010-12-03 18:11:10 +01:00
Vladimir 'phcoder' Serbinenko
db51e201fc
symlink loop detection. btrfs-raid0 and raid1 support
2010-12-03 16:56:49 +01:00
Vladimir 'phcoder' Serbinenko
0e761d3dbd
Rename some btrfs variables for more uniformity
2010-12-03 11:30:24 +01:00
Vladimir 'phcoder' Serbinenko
34018a7d1f
symlink support
2010-12-03 10:44:47 +01:00
Vladimir 'phcoder' Serbinenko
a43c4bc55f
buffer extent for performance
2010-12-02 15:28:29 +01:00
Vladimir 'phcoder' Serbinenko
8006f6779e
Fix in-extent reading
2010-12-02 15:08:46 +01:00
Vladimir 'phcoder' Serbinenko
228cfb40bf
support bind and subvolume mount
2010-12-02 14:26:46 +01:00
Vladimir 'phcoder' Serbinenko
98042add0c
Fix handling of non-leaf next
2010-12-02 13:57:07 +01:00
Vladimir 'phcoder' Serbinenko
eb82b8569a
Remove leftover unused attribute
2010-12-02 13:32:24 +01:00
Vladimir 'phcoder' Serbinenko
d9865a25f7
Implicitly skip /default prefix
2010-12-02 13:31:50 +01:00
Vladimir 'phcoder' Serbinenko
93e0c7a7c2
Fix subvolume handling
2010-12-02 13:23:20 +01:00
Vladimir 'phcoder' Serbinenko
9b4cb862f8
handle directories correctly
2010-12-02 00:11:14 +01:00
Vladimir 'phcoder' Serbinenko
1f60e35331
initialise the type of search for root
2010-12-02 00:03:19 +01:00
Vladimir 'phcoder' Serbinenko
ac5dcabe67
Fix incorrect statement from previous commit
2010-12-01 23:16:19 +01:00
Vladimir 'phcoder' Serbinenko
a3d1fcfb10
Fix 2 warnings
2010-12-01 22:59:51 +01:00
Robert Millan
15abb5547f
Merge ZFS.
2010-12-01 22:57:49 +01:00
Robert Millan
54207d4b6c
Update GPL for ZFS code to version 3, move copyright lines for Vladimir and me to FSF (covered by our assignments)
2010-12-01 22:55:26 +01:00
Robert Millan
bf78d5b251
2010-12-01 Robert Millan <rmh@gnu.org>
...
* grub-core/fs/zfs/zfs.c: New file.
* grub-core/fs/zfs/zfs_fletcher.c: Likewise.
* grub-core/fs/zfs/zfs_lzjb.c: Likewise.
* grub-core/fs/zfs/zfs_sha256.c: Likewise.
* grub-core/fs/zfs/zfsinfo.c: Likewise.
* include/grub/zfs/dmu.h: Likewise.
* include/grub/zfs/dmu_objset.h: Likewise.
* include/grub/zfs/dnode.h: Likewise.
* include/grub/zfs/dsl_dataset.h: Likewise.
* include/grub/zfs/dsl_dir.h: Likewise.
* include/grub/zfs/sa_impl.h: Likewise.
* include/grub/zfs/spa.h: Likewise.
* include/grub/zfs/uberblock_impl.h: Likewise.
* include/grub/zfs/vdev_impl.h: Likewise.
* include/grub/zfs/zap_impl.h: Likewise.
* include/grub/zfs/zap_leaf.h: Likewise.
* include/grub/zfs/zfs.h: Likewise.
* include/grub/zfs/zfs_acl.h: Likewise.
* include/grub/zfs/zfs_znode.h: Likewise.
* include/grub/zfs/zil.h: Likewise.
* include/grub/zfs/zio.h: Likewise.
* include/grub/zfs/zio_checksum.h: Likewise.
* Makefile.util.def: Build ZFS into libgrubmods.
* grub-core/Makefile.core.def: Build zfs.mod.
2010-12-01 22:42:11 +01:00
Colin Watson
ea20f6e03a
merge some more commits from before Savannah compromise (mirrored by Launchpad)
2010-12-01 16:19:26 +00:00
Vladimir 'phcoder' Serbinenko
d980826df2
Remove \n from error message
2010-12-01 16:45:12 +01:00
Vladimir 'phcoder' Serbinenko
df80cd06fb
Check file type
2010-12-01 16:36:05 +01:00
Vladimir 'phcoder' Serbinenko
355b3eed0f
support trees
2010-12-01 16:22:51 +01:00
Vladimir 'phcoder' Serbinenko
b18610feb5
partial btrfs support. Now able to list and access files as long as all trees are flat
2010-12-01 01:23:47 +01:00
Vladimir 'phcoder' Serbinenko
3836e89df1
Add crc32c for btrfs
2010-12-01 01:22:55 +01:00
Szymon Janc
3f0f38317b
* grub-core/commands/regexp.c (grub_cmd_regexp): Remove unused
...
variable.
* grub-core/commands/wildcard.c (match_files): Likewise.
2010-11-30 21:35:59 +01:00
Robert Millan
3a4253b2c4
2010-11-30 Robert Millan <rmh@gnu.org>
...
* grub-core/loader/i386/bsd.c
(grub_cmd_freebsd_loadenv, grub_cmd_freebsd_module_elf): Check
whether kernel is loaded using grub_loader_is_loaded(), rather
than `kernel_type', which may still be `KERNEL_TYPE_NONE' under
certain error conditions.
2010-11-30 19:33:12 +01:00
Colin Watson
725d286634
merge commits from before Savannah compromise
2010-11-30 17:01:52 +00:00
Robert Millan
c5c9cd3e7d
Add missing include
2010-11-30 16:23:41 +01:00
Robert Millan
8c317b270f
2010-11-30 Robert Millan <rmh@gnu.org>
...
* grub-core/commands/echo.c (grub_cmd_echo): Call grub_refresh()
after printing a message.
2010-11-30 15:36:47 +01:00
Vladimir 'phcoder' Serbinenko
49d3ab4668
Avoid using tricks for initialising endian variables.
...
* grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot):
Make const.
(GRUB_MOD_INIT): Don't byte-swap.
* include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT):
Use grub_cpu_to_le16_compile_time and grub_cpu_to_le32_compile_time.
* include/grub/types.h (grub_swap_bytes16_compile_time): New macro.
(grub_swap_bytes32_compile_time): Likewise.
(grub_cpu_to_le32_compile_time): Likewise.
(grub_cpu_to_le16_compile_time): Likewise.
2010-11-26 22:29:19 +01:00
Robert Millan
4e7db17be9
2010-11-26 Robert Millan <rmh@gnu.org>
...
* grub-core/term/i386/pc/vga_text.c (VGA_TEXT_SCREEN): Beautify.
Update all users.
2010-11-26 15:35:40 +01:00
BVK Chaitanya
2c7859b36f
merge with mainline
2010-11-25 19:54:50 +05:30
BVK Chaitanya
dfda224dd8
variable ordering
2010-11-25 19:07:02 +05:30
BVK Chaitanya
7955bea0d8
fix changelog and doc
2010-11-25 19:05:16 +05:30
BVK Chaitanya
5b08062083
replaced with grub_strchrsub function
2010-11-25 18:56:20 +05:30
Colin Watson
5a4072785b
* grub-core/Makefile.core.def (xz_decompress): Move -lgcc from
...
ldflags to ldadd, to fix link line ordering.
(none_decompress): Likewise.
2010-11-24 19:32:49 +00:00
Colin Watson
3030d8ec49
* grub-core/Makefile.core.def (kernel): Add kern/emu/cache.S for emu
...
platforms.
(grub-emu-lite): Remove kern/emu/cache.S.
2010-11-24 12:07:14 +00:00
Colin Watson
038b3ce8dc
* grub-core/Makefile.am (gentrigtables): Put -lm after $<; some
...
linkers are picky about this.
2010-11-23 13:00:05 +00:00
Colin Watson
bf16e98e3c
* grub-core/Makefile.am (command.lst): Adjust sed expression
...
ordering so that extended and priority commands aren't treated as
ordinary commands.
2010-11-23 12:52:40 +00:00
Colin Watson
7242bab6a4
* include/grub/gpt_partition.h (GRUB_GPT_PARTITION_TYPE_BIOS_BOOT):
...
Remove byte-swapping function calls, which are not valid in
structure initialisers.
* grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot): Make
non-const.
(GRUB_MOD_INIT): Byte-swap data1, data2, and data3 fields of
grub_gpt_partition_type_bios_boot.
2010-11-23 10:48:46 +00:00
Colin Watson
1e44c52a69
* partmap/msdos.c (embed_signatures): New array.
...
(pc_partition_map_embed): Check for and avoid sectors matching any
of the signatures in embed_signatures.
* util/grub-setup.c (setup): Allow for the embedding area being
split into multiple blocklists.
2010-11-22 22:33:55 +00:00
Vladimir 'phcoder' Serbinenko
7f8b0fd7f0
* grub-core/loader/i386/linux.c (grub_cmd_linux): Pass correctly the
...
bootloader version instead of 0.
2010-11-19 22:58:06 +01:00
Vladimir 'phcoder' Serbinenko
dfd240b122
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Fix spurious
...
warning.
2010-11-19 22:52:27 +01:00
Vladimir 'phcoder' Serbinenko
7b61e6096b
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Don't try to
...
retrieve the metadat sector if size isn't known.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
2010-11-19 22:48:26 +01:00
BVK Chaitanya
f866fe808b
reuse code from legacy parser
2010-11-19 19:08:44 +05:30
BVK Chaitanya
9acdcbf325
use single quotes in menuentry setparams command
2010-11-19 10:15:25 +05:30
Robert Millan
9dfe92d07a
2010-11-18 Robert Millan <rmh@gnu.org>
...
* grub-core/fs/btrfs.c (grub_btrfs_mount): Replace grub_strncmp()
with grub_memcmp().
2010-11-18 16:52:27 +01:00
Vladimir 'phcoder' Serbinenko
41cc919ef7
* grub-core/normal/menu_entry.c (print_up): Fix displacement of up
...
arrow.
Reported by: Jordan Uggla.
2010-11-18 02:08:01 +01:00
Vladimir 'phcoder' Serbinenko
1afcc914c5
Make better UTF compliant.
...
* grub-core/normal/charset.c (grub_utf8_to_utf16): Handle 6- and 7-byte
sequences as incorrect.
(grub_is_valid_utf8): Likewise.
(grub_utf8_to_ucs4): Likewise.
(grub_ucs4_to_utf8): Handle codepoints outside of BMP.
(grub_ucs4_to_utf8_alloc): Likewise.
* include/grub/charset.h (grub_utf16_to_utf8): Likewise.
2010-11-17 16:13:16 +01:00
Vladimir 'phcoder' Serbinenko
f18088844f
Make legacy_source behave like source.
...
* grub-core/commands/legacycfg.c (legacy_file): Don't call
grub_show_menu.
(grub_cmd_legacy_source): Call grub_show_menu if needed.
2010-11-17 08:41:18 +01:00
Vladimir 'phcoder' Serbinenko
e98937aaf0
* grub-core/term/at_keyboard.c (grub_keyboard_controller_read)
...
[GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: ifdef-ed out
(now unused).
(grub_keyboard_controller_init)
[GRUB_MACHINE_MIPS_YEELOONG || GRUB_MACHINE_QEMU]: Don't attempt to
read the initial state since controller isn't inited yet.
2010-11-15 10:01:11 +01:00
Vladimir 'phcoder' Serbinenko
f6bbabc373
* grub-core/lib/relocator.c (malloc_in_range): Take into account that
...
allocate_regbeg may need to create new chunk header.
2010-11-15 09:50:58 +01:00
Vladimir 'phcoder' Serbinenko
22e7dbb2bb
Fix quoting in legacy parser.
...
* grub-core/lib/legacy_parse.c (grub_legacy_escape): Correctly handle
single quotes.
(grub_legacy_parse): Likewise.
Reported by: Jordan Uggla.
Tested by: Jordan Uggla.
2010-11-15 00:33:28 +01:00
Vladimir 'phcoder' Serbinenko
03f80960cf
Don't add -lgcc on i386 and x86_64.
...
* configure.ac (LIBS): Don't add -lgcc on i386 and x86_64.
* conf/Makefile.common (LDADD_KERNEL): Likewise.
* grub-core/Makefile.core.def (kernel): Use LDADD_KERNEL.
2010-11-14 23:36:20 +01:00
Modestas Vainius
d20a3b371c
* grub-core/kern/emu/getroot.c (grub_util_is_dmraid): Recognise ddf1_
...
fakeraid.
2010-11-14 17:09:13 +01:00
Giuseppe Caizzone
69c4feebb1
Add generic logical block size support for UDF.
...
* grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
(GRUB_UDF_BLKSZ): Removed.
(struct grub_udf_data): New field "lbshift" to hold the logical block
size of the file system in log2 format. All users updated.
(sblocklist): Change type to unsigned.
(grub_udf_mount): Change type of "sblklist" to unsigned.
Move AVDP search before VRS recognition, because the latter requires
knowledge of the logical block size, which is detected during the
former.
Detect and validate logical block size during AVDP search, adding
support for block sizes 512, 1024 and 4096.
Make VRS recognition independent of block size.
2010-11-14 17:03:49 +01:00
Giuseppe Caizzone
e53609331b
Add generic logical block size support for UDF.
...
* grub-core/fs/udf.c (GRUB_UDF_LOG2_BLKSIZE): Removed.
(GRUB_UDF_BLKSZ): Removed.
(struct grub_udf_data): New field "lbshift" to hold the logical block
size of the file system in log2 format. All users updated.
(sblocklist): Change type to unsigned.
(grub_udf_mount): Change type of "sblklist" to unsigned.
Move AVDP search before VRS recognition, because the latter requires
knowledge of the logical block size, which is detected during the
former.
Detect and validate logical block size during AVDP search, adding
support for block sizes 512, 1024 and 4096.
Make VRS recognition independent of block size.
2010-11-14 16:58:50 +01:00
Giuseppe Caizzone
cb0229c587
Properly handle deleted files on UDF.
...
* grub-core/fs/udf.c (grub_udf_iterate_dir): Skip directory entries
whose "characteristics" field has the bit GRUB_UDF_FID_CHAR_DELETED
set.
2010-11-14 16:51:45 +01:00
Giuseppe Caizzone
406858a8a9
Support reading files larger than 2 GiB.
...
* grub-core/fs/udf.c (grub_udf_iterate_dir): Change type of variable
"offset" to grub_off_t.
(grub_udf_read_file): Likewise for parameter "pos".
2010-11-14 16:48:17 +01:00
Vladimir 'phcoder' Serbinenko
1fd08bf111
* grub-core/disk/lvm.c (GRUB_MOD_FINI): Reset the vg_list. Fixes
...
LVM on RAID support.
2010-11-14 14:13:11 +01:00
Vladimir 'phcoder' Serbinenko
de1a024fff
Properly define WORDS_BIGENDIAN in wrapped environments.
...
* grub-core/lib/libgcrypt_wrap/cipher_wrap.h (WORDS_BIGENDIAN): New
definition.
* grub-core/lib/posix_wrap/sys/types.h (WORDS_BIGENDIAN): Likewise.
Reported by: Manoel Rebelo Abranches.
Tested by: Manoel Rebelo Abranches.
2010-11-14 13:37:59 +01:00
Vladimir 'phcoder' Serbinenko
a06eb03ad0
Support long command lines as per 2.06 Linux boot protocol
2010-11-13 21:27:08 +01:00
Vladimir 'phcoder' Serbinenko
58c184be7b
Support big ext2 files.
...
* grub-core/fs/ext2.c (grub_ext2_inode): Rename dir_acl to size_high.
(grub_ext2_read_block): Support triple indirect blocks.
(grub_ext2_read_file): Use 64-bit types and read size_high.
(grub_ext2_open): Read size_high.
Reported by: Ximin Luo.
Tested by: Manoel Rebelo Abranches.
2010-11-13 16:11:24 +01:00
Vladimir 'phcoder' Serbinenko
10001ac54b
* grub-core/kern/i386/pc/startup.S (multiboot_trampoline): Add missing
...
jump.
2010-11-12 08:45:16 +01:00
Vladimir 'phcoder' Serbinenko
c0e103e4da
Support for partitioned loop devices. Improved devmapper support
2010-11-08 16:51:50 +01:00
Manoel Rebelo Abranches
9c4cf53bfe
2010-11-08 Manoel Rebelo Abranches <mrabran@br.ibm.com>
...
* include/grub/elfload.h (grub_elf32_size): New parameter. All users updated.
Return maximum segments alignment.
(grub_elf64_size): Likewise.
* kern/elf.c (grub_elf32_size): New parameter. All users updated.
Return maximum segments alignment.
(grub_elf64_size): Likewise.
* grub-core/loader/powerpc/ieee1275/linux.c:
(grub_linux_claimmap_iterate): New function. Uses the "available"property
in the "memory" node for memory allocation for kernel in the PowerPC loader.
(grub_linux_load32): Correctly find linux entry point offset.
(grub_linux_load64): Likewise.
2010-11-08 11:14:54 -02:00
BVK Chaitanya
87220a6881
merge with mainline
2010-11-07 18:31:41 +05:30
BVK Chaitanya
a8152fedab
suppress shell expansion inside quoted strings
2010-11-07 16:13:14 +05:30
Vladimir 'phcoder' Serbinenko
80c6d25eef
* grub-core/kern/emu/hostdisk.c
...
(convert_system_partition_to_system_disk): Handle devices like "sdaa1".
2010-11-07 00:10:49 +01:00
Vladimir 'phcoder' Serbinenko
34706ddc06
* grub-core/fs/ntfs.c (grub_ntfs_uuid): Make uppercase.
2010-11-06 21:54:24 +01:00
Vladimir 'phcoder' Serbinenko
9c693bd66a
Properly register serial terminfo.
...
Reported by: Jordan Uggla
* grub-core/term/serial.c (grub_serial_terminfo_input_template): New
const.
(grub_serial_terminfo_output_template): Likewise.
(grub_cmd_serial): Register "serial" with terminfo.
(GRUB_MOD_INIT(serial)): Fill grub_serial_terminfo_input and
grub_serial_terminfo_output.
2010-11-06 20:40:08 +01:00
Robert Millan
b9b3839f6d
2010-11-05 Robert Millan <rmh@gnu.org>
...
On Yeeloong, pass machine type information to Linux.
* grub-core/loader/mips/linux.c [GRUB_MACHINE_MIPS_YEELOONG]
(LOONGSON_MACHTYPE): New macro, set to
"machtype=lemote-yeeloong-2f-8.9inches".
[LOONGSON_MACHTYPE] (grub_cmd_linux): Pass LOONGSON_MACHTYPE as
additional argument to Linux.
2010-11-05 19:48:55 +01:00
Grégoire Sutre
33b4b0c61a
Fix an integer overflow.
2010-11-01 23:42:53 +01:00
Vladimir 'phcoder' Serbinenko
2b36fbf493
* grub-core/loader/i386/linux.c (grub_cmd_linux): Autoload vbe.mod if
...
vga= option is supplied.
2010-11-01 13:10:51 +01:00
Vladimir 'phcoder' Serbinenko
6428dec358
* grub-core/lib/arg.c (grub_arg_parse): Avoid interpreting direct
...
argument as an argument to no-argument option.
2010-11-01 12:45:51 +01:00
Vladimir 'phcoder' Serbinenko
3a1197cdb0
* grub-core/disk/mdraid1x_linux.c (grub_mdraid_detect): Do not put
...
elements with invlid index.
* grub-core/disk/mdraid_linux.c (grub_mdraid_detect): Likewise.
* grub-core/disk/raid.c (insert_array): Automatically reallocate
members.
* include/grub/raid.h (grub_raid_member): New struct.
(grub_raid_array): Transform devices and start_sector into usage of
grub_raid_member. All users updated
(allocated_devs): New member.
2010-11-01 10:20:58 +01:00
Vladimir 'phcoder' Serbinenko
dc5aeea5b9
merge mainline into net
2010-10-25 13:19:10 +02:00
Vladimir 'phcoder' Serbinenko
4f6a2e2175
* grub-core/kern/emu/misc.c
...
(grub_make_system_path_relative_to_its_root)
[HAVE_LIBZFS && HAVE_LIBNVPAIR]: Fix mountpoint return on ZFS.
2010-10-23 20:39:08 +02:00
Vladimir 'phcoder' Serbinenko
5c81f8b349
* grub-core/kern/emu/misc.c
...
(grub_make_system_path_relative_to_its_root): Revert r2882.
2010-10-23 20:34:50 +02:00
Vladimir 'phcoder' Serbinenko
e138c45836
* grub-core/lib/relocator.c (grub_relocator_subchunk): Remove now
...
useless field head. All users updated.
(free_subchunk): Correct handling of IN_REGION subchunk.
2010-10-22 22:49:36 +02:00
Grégoire Sutre
b65ea15514
Make mktemp invocations portable.
2010-10-18 22:50:01 +02:00
Szymon Janc
800e6a9be5
* grub-core/normal/auth.c (grub_auth_check_authentication):
...
Set-but-not-used variable removed.
2010-10-17 15:41:54 +02:00
Vladimir 'phcoder' Serbinenko
7bced4583e
* grub-core/kern/i386/pc/startup.S (grub_console_setcursor): Check
...
cursor shape for sanity.
2010-10-17 01:49:06 +02:00
Szymon Janc
6bdda8f877
* grub-core/commands/legacycfg.c (grub_cmd_legacy_kernel):
...
Set-but-not-used variable ifdef'ed.
* grub-core/lib/legacy_parse.c (grub_legacy_parse): Likewise.
* grub-core/bus/usb/ohci.c (grub_ohci_pci_iter): Set-but-not-used
variable removed.
* grub-core/disk/lvm.c (grub_lvm_scan_device): Likewise.
* grub-core/fs/jfs.c (grub_jfs_find_file): Likewise.
* grub-core/fs/minix.c (grub_minix_dir): Likewise.
* grub-core/fs/sfs.c (grub_sfs_read_extent): Likewise.
* grub-core/fs/ufs.c (grub_ufs_dir): Likewise.
* grub-core/gfxmenu/gui_list.c (grub_gui_list_new): Likewise.
* grub-core/gfxmenu/view.c (redraw_menu_visit): Likewise.
* grub-core/gfxmenu/widget-box.c (draw): Likewise.
* grub-core/lib/relocator.c (malloc_in_range): Likewise.
* grub-core/loader/i386/bsdXX.c (grub_netbsd_load_elf_meta): Likewise.
* grub-core/loader/i386/bsd_pagetable.c (fill_bsd64_pagetable):
Likewise.
2010-10-16 22:16:52 +02:00
Vladimir 'phcoder' Serbinenko
e19b016b30
* grub-core/commands/acpihalt.c (skip_ext_op): Skip index field op.
...
* include/grub/acpi.h (GRUB_ACPI_EXTOPCODE_INDEX_FIELD_OP): New
enum value.
2010-10-16 20:01:30 +02:00
Vladimir 'phcoder' Serbinenko
6c8d300275
* grub-core/commands/acpihalt.c (get_sleep_type): Accept \_S5_ as
...
synonym to _S5_. Needed for some DSDTs.
2010-10-16 19:12:18 +02:00
Vladimir 'phcoder' Serbinenko
c32b51c9f9
Userspace ACPI parser debugging.
...
* grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Include userspace
headers and add relevant defines. Don't include standard headers.
(main) [GRUB_DSDT_TEST]: New function.
* include/grub/acpi.h [GRUB_DSDT_TEST]: Don't include standard headers.
Don't declare functions.
2010-10-16 19:06:55 +02:00
Vladimir 'phcoder' Serbinenko
fbfbeb394f
Remove dead grub_efi_mm_fini.
...
* grub-core/kern/efi/mm.c (allocated_page): Removed.
(ALLOCATED_PAGES_SIZE): Likewise.
(MAX_ALLOCATED_PAGES): Likewise.
(allocated_pages): Likewise.
(grub_efi_allocate_pages): Don't record allocated pages.
(grub_efi_free_pages): Likewise.
(grub_efi_mm_init): Likewise.
(grub_efi_mm_fini): Removed.
2010-10-16 17:50:48 +02:00
Vladimir 'phcoder' Serbinenko
65f7ed7c9a
* grub-core/kern/efi/mm.c (BYTES_TO_PAGES): Round up instead of down.
...
(grub_efi_mm_init): Take into account the memory map size increase.
2010-10-16 17:44:35 +02:00
Vladimir 'phcoder' Serbinenko
24977b4451
* grub-core/term/ns8250.c (do_real_config): Set port->broken to 0.
...
(serial_hw_put): Wait based on real time rather than port reads. Don't
roken ports.
* include/grub/serial.h (grub_serial_port): New field broken.
2010-10-16 17:29:12 +02:00
Robert Millan
1eb01cd276
2010-10-16 Robert Millan <rmh@gnu.org>
...
* grub-core/kern/emu/misc.c
(grub_make_system_path_relative_to_its_root): Fix premature return
when processing non-root ZFS filesystems.
2010-10-16 02:30:14 +02:00
Vladimir 'phcoder' Serbinenko
d0f4c1ea0f
* grub-core/efiemu/main.c (grub_efiemu_prepare): Handle errors from
...
grub_efiemu_autocore.
2010-10-14 15:44:04 +02:00
Vladimir 'phcoder' Serbinenko
d87c681fd4
* grub-core/kern/i386/pc/startup.S (bypass_table): Use 0x1b explicitly
...
rather than 0x1b.
(grub_console_getkey): Use correct jae opcode rather than ja.
2010-10-14 15:35:55 +02:00
Vladimir 'phcoder' Serbinenko
20c6bb7e9e
Correctly distinguish mdraid flavours.
...
* grub-core/disk/raid.c (grub_raid_getname) [GRUB_UTIL]: New function.
(insert_array): New argument raid.
* include/grub/disk.h (grub_disk_dev) [GRUB_UTIL]: New member raidname.
* include/grub/raid.h (grub_raid_array) [GRUB_UTIL]: New member driver.
* util/grub-probe.c (probe): PRint raidname instead of plainly "mdraid".
2010-10-08 23:27:27 +02:00
Szymon Janc
c5dc16905a
Make enable of disk cache statistics code configurable.
...
* configure.ac: --enable-cache-stats added.
* config.h.in (DISK_CACHE_STATS): New define.
* grub-core/Makefile.core.def (cacheinfo): New command.
* include/grub/disk.h(grub_disk_cache_get_performance): New function.
* grub-core/commands/cacheinfo.c: New file.
* grub-core/commands/minicmd.c (grub_rescue_cmd_info): Updated and
moved to cacheinfo.c.
* grub-core/kern/disk.c: Use DISK_CACHE_STATS to disable disk cache
debug code.
* include/grub/disk.h: Likewise.
2010-10-06 19:57:01 +02:00
Vladimir 'phcoder' Serbinenko
74baff844e
* grub-core/kern/i386/pc/startup.S (grub_console_getkey): Fix incorrect
...
handling of special keys.
2010-10-06 19:46:20 +02:00
starous
c621fd6ebe
CBI Mass Storage support
2010-10-02 22:28:16 +02:00
starous
a94551944e
usbtrans.c - wrong max packet size for bulk transfer
2010-10-02 20:49:05 +02:00
Vladimir 'phcoder' Serbinenko
441cfe65c0
Clear out 0x80 color bit on EFI.
...
Tested by: decoder
Reported by: decoder and meta tech.
* grub-core/term/efi/console.c (grub_console_standard_color): Removed.
(grub_console_setcolorstate): Clear out 0x80 bit.
Use GRUB_TERM_DEFAULT_STANDARD_COLOR.
(grub_console_output): Use GRUB_TERM_DEFAULT_NORMAL_COLOR.
Use GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR.
2010-10-01 16:54:38 +02:00
Vladimir 'phcoder' Serbinenko
bf26bcc435
* grub-core/loader/i386/linux.c (DEFAULT_VIDEO_MODE) [GRUB_MACHINE_EFI]:
...
Set to "auto".
2010-10-01 16:24:43 +02:00
Vladimir 'phcoder' Serbinenko
6e3c515d5b
* grub-core/gettext/gettext.c (grub_gettext_init_ext): Avoid using
...
mo_file after freeing.
2010-09-30 21:07:51 +02:00
Vladimir 'phcoder' Serbinenko
e6d983ba6d
* grub-core/normal/term.c (read_terminal_list): Free in a right order.
2010-09-30 21:04:09 +02:00
Vladimir 'phcoder' Serbinenko
74ccb5b5e2
* grub-core/script/execute.c (grub_script_execute_sourcecode): Set
...
flags.
2010-09-30 20:59:20 +02:00
Vladimir 'phcoder' Serbinenko
ee74fa4822
Put terminfo into core on ieee1275 and yeeloong (needed for console).
...
* gentpl.py: New groups terminfoinkernel and terminfomodule.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Include extcmd.h, arg.h
and terminfo.h when needed.
* grub-core/Makefile.core.def (kernel): Include term/terminfo.c,
term/tparm.c, commands/extcmd.c, lib/arg.c on terminfokernel.
(terminfo): Enable only on terminfokernel.
(extcmd): Likewise.
* include/grub/extcmd.h: Add missing EXPORT_FUNC.
* include/grub/lib/arg.h: Likewise.
* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions): Fix
incorrect usage of ->.
2010-09-30 17:50:01 +02:00
Vladimir 'phcoder' Serbinenko
aa438e6818
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi]
...
[GRUB_MACHINE_EFI && __i386__]: Fix typo.
2010-09-29 23:58:43 +02:00
Vladimir 'phcoder' Serbinenko
579940128b
Fix coreboot compilation.
...
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
Take VBE info into account even if only text is supported.
(fill_vbe_info): Take into account the case when only VGA text
is supported.
* include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): Set to zero
on coreboot, multiboot and qemu.
2010-09-29 23:51:12 +02:00
Vladimir 'phcoder' Serbinenko
2a4066114d
* grub-core/lib/relocator.c (malloc_in_range): Trim too verbose
...
debug messages.
(grub_relocator_prepare_relocs): Set movers_chunk.srcv.
2010-09-29 23:19:21 +02:00
Vladimir 'phcoder' Serbinenko
d33613fcf3
* grub-core/loader/i386/bsd.c (grub_cmd_netbsd): Provide default serial
...
parameters.
2010-09-29 22:51:12 +02:00
Vladimir 'phcoder' Serbinenko
44a1b4327a
* grub-core/lib/arg.c (grub_arg_parse): Fix treating of all commands as
...
if they were BSD-style.
2010-09-29 22:48:38 +02:00
Vladimir 'phcoder' Serbinenko
edde54e656
* grub-core/boot/i386/pc/lnxboot.S: Replace
...
GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE with
GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART.
2010-09-29 22:45:57 +02:00
Vladimir 'phcoder' Serbinenko
b65830fae1
Write embedding zone using Reed-Solomon.
...
* Makefile.util.def (grub-setup): Add grub-core/lib/reed_solomon.c.
* grub-core/Makefile.am (rs_decoder.S): New target.
(kern/i386/pc/startup.S): Depend on rs_decoder.S.
* grub-core/kern/i386/pc/startup.S (reed_solomon_redundancy): New field.
(multiboot): Move to RS part.
(post_reed_solomon): New label.
(grub_boot_drive): Move to non-RS part since it's modified in memory
on boot.
Include rs_decoder.S.
* grub-core/lib/reed_solomon.c: New file.
* include/grub/offsets.h (GRUB_KERNEL_I386_PC_REED_SOLOMON_REDUNDANCY):
New definition.
(GRUB_KERNEL_I386_PC_MULTIBOOT_SIGNATURE): Removed.
(GRUB_KERNEL_I386_PC_RAW_SIZE): Updated.
(GRUB_KERNEL_I386_PC_NO_REED_SOLOMON_PART): New definition.
* include/grub/partition.h (grub_partition_map): Change prototype of
embed to allow returning additional sectors.
* include/grub/reed_solomon.h: New file.
* util/grub-setup.c (setup): Handle Reed-Solomon.
2010-09-29 21:33:38 +02:00
Colin Watson
0b4b227fae
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
...
i386 and x86-64 definedness tests.
2010-09-28 17:38:34 +01:00
Yves Blusseau
f772623bc0
Fix generation of kernel_syms.lst
...
* grub-core/Makefile.am (kernel_syms.lst): Fix value and position of
ASM_PREFIX
2010-09-27 11:11:38 +02:00
Robert Millan
8e57a6ca44
2010-09-26 Robert Millan <rmh@gnu.org>
...
Support degraded ZFS arrays in "grub-probe -t device" resolution.
* grub-core/kern/emu/getroot.c (find_root_device_from_libzfs): When
the pool is an array of devices, iterate through it and return the
first device that passes a stat() test (instead of blindly returning
the first one).
2010-09-26 16:11:33 +02:00
Robert Millan
f913083640
2010-09-26 Robert Millan <rmh@gnu.org>
...
Build fixes for GNU/kFreeBSD.
* Makefile.util.def: Add `$(LIBZFS) $(LIBNVPAIR)' library dependencies
to programs that require ZFS conversion.
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): Support
kernels that don't have FLOPPY_MAJOR.
2010-09-26 15:53:05 +02:00
Vladimir 'phcoder' Serbinenko
4e2b20a79a
Add missing dependency on rs_Decoder.S
2010-09-26 13:37:08 +02:00
Vladimir 'phcoder' Serbinenko
40ca6b29fd
Fix missing mreparm=3
2010-09-25 21:43:04 +02:00
Vladimir 'phcoder' Serbinenko
53c9e7798c
Remove debug printf
2010-09-25 21:42:36 +02:00
Vladimir 'phcoder' Serbinenko
25e09515ad
Make mb header to protected part
2010-09-25 21:42:13 +02:00
Vladimir 'phcoder' Serbinenko
3ac9e79207
Multiple bugs correction for Reed-Solomon
2010-09-25 20:40:26 +02:00
Vladimir 'phcoder' Serbinenko
419cbeb06d
hook Reed-Solomon into startup.S
2010-09-25 19:33:05 +02:00
BVK Chaitanya
96510fafd2
fix typo
2010-09-25 10:48:48 +05:30
BVK Chaitanya
449333eb7d
Fix grub-emu build.
...
* grub-core/kern/emu/main.c: Remove #include <getopt.h>.
* grub-core/kern/emu/full.c: Split grub_mdraid_{init,fini} into
mdraid09 and mdraid1x.
2010-09-25 10:43:09 +05:30
Vladimir 'phcoder' Serbinenko
4f0de6881c
C part of Reed-Solomon
2010-09-24 14:05:47 +02:00
Colin Watson
e1fd193905
Re-enable grub-extras.
...
* autogen.sh: Create symlinks to ${GRUB_CONTRIB} if necessary to
avoid confusing Automake. Run autogen only twice, once for the top
level and once for grub-core. Add Makefile.util.def and
Makefile.core.def from extra modules to the appropriate autogen
invocations. If Makefile.common exists in an extra module, include
it in both Makefile.util.am and grub-core/Makefile.core.am;
similarly, include any Makefile.util.common file in Makefile.util.am
and any Makefile.core.common file in grub-core/Makefile.core.am.
* conf/Makefile.common ($(top_srcdir)/grub-core/Makefile.core.am):
Depend on $(top_srcdir)/grub-core/Makefile.gcry.def.
($(top_srcdir)/grub-core/Makefile.gcry.def): Remove.
* grub-core/Makefile.am: Remove inclusion of Makefile.gcry.am.
* gentpl.py (gvar_add): Turn GVARS into a set.
(global_variable_initializers): Sort global variables on output.
(vars_init): New function.
(first_time): Likewise.
(library): Ensure that non-global variable initialisations are
emitted before the first time we emit code for a library block.
Append to variables rather than setting them. Only emit
noinst_LIBRARIES, BUILT_SOURCES, and CLEANFILES the first time for
each conditional path.
(program): installdir() emits an Autogen macro, so must be passed to
var_add rather than gvar_add.
(data): Likewise.
(script): Likewise.
(rules): New function, centralising handling for different target
types. Set up Guile association lists for first_time and vars_init,
and send most output to a diversion so that variable initialisations
can be emitted first.
(module_rules): Use new rules function.
(kernel_rules): Likewise.
(image_rules): Likewise.
(library_rules): Likewise.
(program_rules): Likewise.
(script_rules): Likewise.
(data_rules): Likewise.
* configure.ac: Add AC_PROG_LN_S, for the benefit of ntldr-img.
* .bzrignore: Add contrib and grub-core/contrib. Remove
grub-core/Makefile.gcry.am.
2010-09-24 09:48:27 +01:00
Yves Blusseau
1d12cf2947
* grub-core/lib/LzFind.c: Add missing include.
...
* grub-core/lib/LzmaEnc.c: Likewise.
* grub-core/script/lexer.c: Likewise.
* grub-core/script/yylex.l: Likewise.
* util/grub-macho2img.c: Likewise.
* util/grub-menulst2cfg.c: Likewise.
* util/grub-mklayout.c: Likewise.
* util/grub-mkpasswd-pbkdf2.c
* util/grub-mkrelpath.c: Likewise.
* util/resolve.c: Likewise.
2010-09-24 09:19:57 +02:00
Grégoire Sutre
f5a109e277
Variable initialization.
2010-09-24 01:13:50 +02:00
Vladimir 'phcoder' Serbinenko
6d0fa83c79
Support xz compression on yeeloong.
...
* Makefile.util.def (grub-mkimage): Add $(LIBLZMA).
* configure.ac: Check for LZMA.
* grub-core/Makefile.core.def (xz_decompress): New target.
(none_decompress): Likewise.
* grub-core/boot/decompressor/minilib.c: New file.
* grub-core/boot/decompressor/none.c: Likewise.
* grub-core/boot/decompressor/xz.c: Likewise.
* grub-core/kern/mips/cache.S: Change to noreorder nomacro.
* grub-core/kern/mips/cache_flush.S: Likewise.
* grub-core/kern/i386/pc/lzma_decode.S: Remove dead code.
* grub-core/kern/mips/startup.S: Move first stage to ...
* grub-core/boot/mips/startup_raw.S: ...here. Change to noreorder
nomacro.
* grub-core/kern/mips/startup.S: Change to noreorder nomacro.
* grub-core/lib/mips/relocator_asm.S: Change to noreorder nomacro.
* grub-core/lib/xzembed/xz_dec_bcj.c [GRUB_EMBED_DECOMPRESSOR]:
Allocate statically.
* grub-core/lib/xzembed/xz_dec_lzma2.c [GRUB_EMBED_DECOMPRESSOR]:
Allocate statically or use scratch. Don't check CRC32.
* grub-core/lib/xzembed/xz_dec_stream.c [GRUB_EMBED_DECOMPRESSOR]:
Allocate statically. Don't check CRC32.
* include/grub/decompressor.h: New file.
* include/grub/offsets.h (GRUB_KERNEL_MIPS_YEELOONG_RAW_SIZE):
Removed.
(GRUB_KERNEL_MIPS_YEELOONG_UNCOMPRESSED_SIZE): New field.
(GRUB_KERNEL_MIPS_YEELOONG_TOTAL_MODULE_SIZE): Adjusted.
(GRUB_KERNEL_MIPS_YEELOONG_PREFIX): Likewise.
(GRUB_KERNEL_MIPS_YEELOONG_PREFIX_END): Likewise.
(GRUB_KERNEL_MACHINE_UNCOMPRESSED_SIZE): New define.
* util/grub-mkimage.c (grub_compression_t): New type.
(PLATFORM_FLAGS_DECOMPRESSORS): New flag.
(image_target_desc): New field default_compression.
(image_targets): Adjust yeeloong targets.
(compress_kernel_xz) [HAVE_LIBLZMA]: New function.
(compress_kernel): New parameter comp.
(generate_image): Likewise. Handle new compression case.
(options): New option --compression
(help): Likewise.
(main): Handle new option.
2010-09-23 02:10:44 +02:00
Vladimir 'phcoder' Serbinenko
04d22dddd9
Fix a bunch of net issues
2010-09-23 00:45:39 +02:00
Grégoire Sutre
1b655af685
Define FLOPPY_MAJOR on NetBSD.
2010-09-22 23:32:58 +02:00
Vladimir 'phcoder' Serbinenko
ce3a2ec025
Remove some dead code
2010-09-22 20:34:20 +02:00
Vladimir 'phcoder' Serbinenko
760a7e5aed
Merge mainline into net
2010-09-22 20:13:00 +02:00
Colin Watson
8f03f0b580
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_make_mbi): Fix
...
typo in __i386__ conditional.
2010-09-22 16:57:49 +01:00
Vladimir 'phcoder' Serbinenko
90451bb1c9
networking in grub-emu
2010-09-22 17:14:43 +02:00
Vladimir 'phcoder' Serbinenko
6b1b3423dd
Fix error handling in ofnet
2010-09-22 17:14:14 +02:00
Vladimir 'phcoder' Serbinenko
7835dfd3e8
* grub-core/loader/multiboot_mbi2.c (GRUB_MACHINE_EFI): Add missing
...
include.
2010-09-22 17:13:21 +02:00
Vladimir 'phcoder' Serbinenko
e255597e51
Implement EFI and ACPI multiboot2 extensions.
...
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare
new tags as supported.
(acpiv2_size): New function.
(grub_multiboot_get_mbi_size): Take new tags into account.
(grub_multiboot_make_mbi): Add new tags.
* include/grub/multiboot.h (GRUB_MACHINE_HAS_ACPI): New definition.
2010-09-22 14:51:49 +02:00
Vladimir 'phcoder' Serbinenko
9a0e5c815e
Fix bugs in asm code
2010-09-22 00:53:34 +02:00
Vladimir 'phcoder' Serbinenko
67c4bb722d
Align scratch
2010-09-22 00:52:33 +02:00
starous
6cc1405144
.../serial/common.c - added missing configuration
2010-09-21 21:57:57 +02:00
Vladimir 'phcoder' Serbinenko
758194b076
Allow compression algorithm specification
2010-09-21 20:30:28 +02:00
Colin Watson
df7769d8dc
* grub-core/normal/menu_entry.c (run): Make sure we always return
...
a value.
2010-09-21 19:03:11 +01:00
Vladimir 'phcoder' Serbinenko
e0a8ef26e4
MAke a separate scratch for decompressor
2010-09-21 19:39:51 +02:00
Colin Watson
b031012d70
* grub-core/commands/efi/lsefimmap.c (grub_cmd_lsefimmap):
...
NumberOfPages is UINT64 according to the UEFI specification, not
UINTN. Fix printf format.
2010-09-21 16:58:08 +01:00
Colin Watson
174de8f340
* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Change type of
...
`err' to grub_usb_err_t.
Reported and tested by: KESHAV P.R.
2010-09-21 16:13:04 +01:00
Colin Watson
d7dbe92395
* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name): Make
...
tpart non-const, so that we can assign to it. (Since this is a
typedef, the constness refers to the pointer rather than what it
points to.)
2010-09-21 13:41:23 +01:00
Colin Watson
d309a16e26
* grub-core/commands/hashsum.c (GRUB_MOD_INIT): Make "Compute or
...
check hash checksum." consistently translatable.
2010-09-21 11:14:06 +01:00
Colin Watson
c4fe27a827
* grub-core/commands/hashsum.c (aliases): Add sha1sum alias.
...
(GRUB_MOD_INIT): Register sha1sum command.
(GRUB_MOD_FINI): Unregister sha1sum command.
2010-09-21 10:56:16 +01:00
Colin Watson
4eff79d2f9
* grub-core/kern/emu/hostdisk.c (find_system_device): Only try to
...
convert partition names to disk names if the new `convert' parameter
is set.
(grub_util_biosdisk_get_grub_dev): If opening the disk device
returns GRUB_ERR_UNKNOWN_DEVICE, treat the partition device as a
disk in its own right. This can happen with Xen disk images.
2010-09-21 10:36:44 +01:00
Vladimir 'phcoder' Serbinenko
f8926c32b4
C part of decompressor
2010-09-21 11:22:52 +02:00
Vladimir 'phcoder' Serbinenko
c5b4cd370e
asm part for mips decompressor
2010-09-21 10:14:08 +02:00
Vladimir 'phcoder' Serbinenko
3197c86ba8
Remove dead code in decompressor
2010-09-21 10:07:12 +02:00
Vladimir 'phcoder' Serbinenko
4519e259a1
Implementation of ACPI parts
2010-09-21 08:37:50 +02:00
Vladimir 'phcoder' Serbinenko
9dbbe5e858
Impletment EST multiboot passing
2010-09-21 02:19:29 +02:00
Vladimir 'phcoder' Serbinenko
77a94e9810
* grub-core/loader/i386/multiboot_mbi.c (grub_fill_multiboot_mmap):
...
Add BADRAM.
* grub-core/loader/multiboot_mbi2.c (grub_fill_multiboot_mmap):
Likewise.
* include/multiboot.h: Resynced with specification.
* include/multiboot2.h: Likewise.
2010-09-21 02:06:14 +02:00
Colin Watson
269004c158
Fix po directory handling.
...
* configure.ac: Create po/Makefile.in rather than po/Makefile.
* grub-core/gnulib/Makefile.am: Import gettext module.
* m4/gnulib-cache.m4: Likewise.
* m4/gnulib-comp.m4: Likewise.
* m4/gettext.m4: New file, from gnulib.
* m4/glibc2.m4: Likewise.
* m4/iconv.m4: Likewise.
* m4/intdiv0.m4: Likewise.
* m4/intl.m4: Likewise.
* m4/intldir.m4: Likewise.
* m4/intlmacosx.m4: Likewise.
* m4/intmax.m4: Likewise.
* m4/inttypes-pri.m4: Likewise.
* m4/lcmessage.m4: Likewise.
* m4/lib-ld.m4: Likewise.
* m4/lib-link.m4: Likewise.
* m4/lib-prefix.m4: Likewise.
* m4/lock.m4: Likewise.
* m4/nls.m4: Likewise.
* m4/po.m4: Likewise.
* m4/printf-posix.m4: Likewise.
* m4/progtest.m4: Likewise.
* m4/threadlib.m4: Likewise.
* m4/uintmax_t.m4: Likewise.
* m4/visibility.m4: Likewise.
* po/Makefile.am: Remove.
* po/Makefile.in.in: New file, from gettext.
($(DOMAIN).pot-update): Support POTFILES-shell.
* po/Makevars: New file.
* po/POTFILES-shell: Rename to ...
* po/POTFILES-shell.in: ... this. Update.
* po/POTFILES: Rename to ...
* po/POTFILES.in: ... this. Update.
* po/Rules-quot: New file, from gettext.
* po/boldquot.sed: Likewise.
* po/en@boldquot.header: Likewise.
* po/en@quot.header: Likewise.
* po/insert-header.sin: Likewise.
* po/quot.sed: Likewise.
* po/remove-potcdate.sin: Likewise.
2010-09-21 00:09:23 +01:00
Vladimir 'phcoder' Serbinenko
fc55cc4c27
Support submenus.
...
* grub-core/commands/menuentry.c (grub_normal_add_menu_entry): New
parameter submenu. All users updated.
* grub-core/normal/main.c (free_menu): Rename to ...
(grub_normal_free_menu): ... this. Made global.
* grub-core/normal/menu.c (grub_menu_execute_entry): Open new context
if requested.
* grub-core/normal/menu_entry.c (screen): New field submenu.
(make_screen): Set submenu.
(run): Open new context if requested.
* include/grub/menu.h (grub_menu_entry): New field submenu.
* include/grub/normal.h (grub_normal_free_menu): New proto.
2010-09-21 00:47:49 +02:00
Vladimir 'phcoder' Serbinenko
57f20e67a0
Support extraction of legacy entries
2010-09-20 23:10:29 +02:00
Vladimir 'phcoder' Serbinenko
a38b701cbf
Rename jail to extractor
2010-09-20 23:01:34 +02:00
Vladimir 'phcoder' Serbinenko
1b71d7500b
merge mainline into jail
2010-09-20 22:41:59 +02:00
Vladimir 'phcoder' Serbinenko
7bda3a87af
Make cutmem accept a region specification.
...
Suggested by: Samuel Thibault
* grub-core/mmap/mmap.c (parsemem): New function.
(grub_cmd_cutmem): Handle new arguments.
2010-09-20 22:24:30 +02:00
Vladimir 'phcoder' Serbinenko
2ea57f8844
* grub-core/mmap/mmap.c (grub_cmd_cutmem): New function.
...
(GRUB_MOD_INIT): Register new command.
(GRUB_MOD_FINI): Unregister new command.
2010-09-20 22:11:52 +02:00
Vladimir 'phcoder' Serbinenko
74342e312f
Support some annoying BSD and Minix subpartitions.
...
* Makefile.util.def (libgrub.a): Add grub-core/partmap/bsdlabel.c.
* grub-core/disk/efi/efidisk.c (grub_efidisk_get_device_name):
Properly handle concatenation.
* grub-core/kern/device.c (grub_device_iterate): Likewise.
* grub-core/normal/completion.c (iterate_partition): Likewise.
* grub-core/kern/disk.c (grub_disk_open): Make disk->name not
contain partition. All users updated.
* grub-core/partmap/bsdlabel.c (grub_netbsdlabel_partition_map): New
struct.
(grub_openbsdlabel_partition_map): Likewise.
(bsdlabel_partition_map_iterate): Rename to ..
(iterate_real): ... this. New arguments sector, freebsd and pmap.
(bsdlabel_partition_map_iterate): New function.
(netopenbsdlabel_partition_map_iterate): Likewise.
(netbsdlabel_partition_map_iterate): Likewise.
(openbsdlabel_partition_map_iterate): Likewise.
(GRUB_MOD_INIT): Register new partmaps.
(GRUB_MOD_FINI): Unregister new partmaps.
* grub-core/partmap/msdos.c (pc_partition_map_iterate): Rename to ...
(grub_partition_msdos_iterate): ... this. All users updated.
Don't support embedding other than in a minix partition.
* include/grub/msdos_partition.h (grub_partition_msdos_iterate): New
proto.
* include/grub/partition.h (grub_partition): New field msdostype.
* util/grub-install.in: Handle openbsd and netbsd types being in
part_bsd module.
2010-09-20 21:45:06 +02:00
Vladimir 'phcoder' Serbinenko
65d973de1c
Add the comment about net-/openbsdlabel
2010-09-20 21:34:20 +02:00
Vladimir 'phcoder' Serbinenko
4b98e0d7c7
Support net-/openbsd labels inside logical partitions
2010-09-20 21:30:11 +02:00
Vladimir 'phcoder' Serbinenko
1e8d555b7d
Split mdraid.mod into mdraid09.mod and mdraid1x.mod.
...
* Makefile.util.def (libgrub.a): Add grub-core/disk/mdraid1x_linux.c.
* grub-core/Makefile.core.def (mdraid): Renamed to ...
(mdraid09): ... this.
(mdraid1x): New module.
* grub-core/disk/mdraid_linux.c: Move 1.x parts ...
* grub-core/disk/mdraid1x_linux.c: ...here. All users updated.
2010-09-20 20:09:31 +02:00
Vladimir 'phcoder' Serbinenko
899d8af498
* grub-core/kern/emu/misc.c (asprintf): Use vsnprintf instead of
...
vsprintf.
2010-09-20 19:14:29 +02:00
Colin Watson
40901acd76
* grub-core/commands/efi/lsefimmap.c: Correct header.
...
* NEWS: Update.
2010-09-20 17:59:09 +01:00
Tristan Gingold
3dccbe4bbb
* grub-core/commands/efi/lsefimmap.c: New file.
...
* grub-core/Makefile.core.def (lsefimmap): New module.
* include/grub/efi/api.h (PRIxGRUB_EFI_UINTN_T): New definition.
Also-By: Robert Millan <rmh.grub@aybabtu.com>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2010-09-20 17:59:25 +02:00
Vladimir 'phcoder' Serbinenko
38c259a76a
Pause the execution (10s max) if any errors are displayed so the user
...
has a chance to see them.
* grub-core/kern/err.c (grub_err_printed_errors): New variable.
(grub_print_error): Increment grub_err_printed_errors.
* grub-core/normal/menu.c (grub_menu_execute_entry): Pause the
execution if any errors were displayed.
(show_menu): Remove old code for pause.
* grub-core/normal/menu_entry.c (run): Likewise.
* grub-core/normal/term.c (grub_normal_char_counter): Removed. All
users updated.
(grub_normal_get_char_counter): Likewise.
* include/grub/err.h (grub_err_printed_errors): New external variable.
* include/grub/normal.h (grub_normal_get_char_counter): Removed.
2010-09-20 17:46:35 +02:00
Vladimir 'phcoder' Serbinenko
f218b09c99
Support multiboot VBE info.
...
* grub-core/loader/i386/multiboot_mbi.c (grub_multiboot_get_mbi_size):
Take VBE info into account.
(fill_vbe_info) [GRUB_MACHINE_HAS_VBE]: New function.
(retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
Call fill_vbe_info when appropriate.
(grub_multiboot_make_mbi): Account for the size occupied by VBE info.
* grub-core/loader/multiboot_mbi2.c (grub_multiboot_load): Declare tags
as supported.
(grub_multiboot_get_mbi_size): Take new tags into account.
(fill_vbe_tag) [GRUB_MACHINE_HAS_VBE]: New function.
(retrieve_video_parameters) [GRUB_MACHINE_HAS_VBE]:
Call fill_vbe_tag when appropriate.
(grub_multiboot_make_mbi): Properly align tags.
* grub-core/video/i386/pc/vbe.c (grub_vbe_bios_get_pm_interface): New
function.
* include/grub/i386/pc/vbe.h (grub_vbe_bios_get_pm_interface): New
proto.
* include/grub/multiboot.h (GRUB_MACHINE_HAS_VBE): New definition.
2010-09-20 17:01:28 +02:00
Vladimir 'phcoder' Serbinenko
a9cc5438a5
Suport manual terminal geometry specification.
...
* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_dimensions):
Save state in grub_ofconsole_terminfo_output.
(grub_ofconsole_term): Use grub_terminfo_getwh.
(grub_ofconsole_getwh): Removed.
* grub-core/term/serial.c (grub_serial_getwh): Removed.
(grub_serial_term): Use grub_terminfo_getwh.
* grub-core/term/terminfo.c (grub_terminfo_getwh): New function.
(options): New struct.
(OPTION_*): New enum.
(grub_cmd_terminfo): Transform into extcmd and handle new parameters.
* include/grub/terminfo.h (grub_terminfo_output_state): New fields
width and height.
(grub_terminfo_getwh): New proto.
* grub-core/lib/legacy_parse.c (grub_legacy_parse): Handle --lines.
2010-09-20 16:27:33 +02:00
Vladimir 'phcoder' Serbinenko
1a8fed20ad
Handle legacy "terminal" command.
...
* grub-core/lib/legacy_parse.c (legacy_command): New flags FLAG_TITLE
and FLAG_TERMINAL.
(legacy_commands): Add terminal and title.
(grub_legacy_parse): Handle terminal. Simplify title handling.
2010-09-20 16:15:50 +02:00
Vladimir 'phcoder' Serbinenko
41e9c57d89
* grub-core/lib/arg.c (grub_arg_show_help): Correctly handle
...
parameters overflow.
2010-09-20 16:12:15 +02:00
Vladimir 'phcoder' Serbinenko
5ee21c970b
Add terminal support in legacy_parser
2010-09-20 14:48:17 +02:00
Colin Watson
6d3d698d13
* grub-core/commands/efi/lsefisystab.c: Correct header.
...
* grub-core/commands/efi/lssal.c: Likewise.
* grub-core/commands/testload.c: Likewise.
2010-09-20 13:18:41 +01:00
Colin Watson
a63c31b62d
* kern/emu/hostdisk.c: Include <sys/ioctl.h> and <sys/disklabel.h>
...
on FreeBSD. Define HAVE_DIOCGDINFO on NetBSD and FreeBSD to reduce
the verbosity of later #ifs.
(find_partition_start): Define this function on FreeBSD too.
(device_is_wholedisk) [__FreeBSD__ || __FreeBSD_kernel__]: New
function.
(grub_util_biosdisk_get_grub_dev): Use partition-start-sector logic
on FreeBSD.
2010-09-20 12:12:33 +01:00
Yves Blusseau
15c6926126
Use gnulib-tool to create gnulib source files.
...
* Add gnulib files generated by gnulib-tool in build-aux, m4 and
grub-core/gnulib directories
* .bzignore: Add **/.deps and autogenerated gnulib files
* configure.ac: Assign auxiliary directory to build-aux, add invocation
of gnulib macros, add grub-core/gnulib/Makefile
* Makefile.am: Add gnulib directory in SUBDIRS (removing unnecessary .),
include m4 directory to aclocal.
* Makefile.util.def: Remove direct compilation of gnulib source files
and use the new grub-core/gnulib/libgnu.a.
* build-aux/config.rpath: move config.rpath from top directory to
build-aux
* conf/Makefile.common: Remove the macro _GL_UNUSED already defined
in gnulib headers
* conf/Makefile.extra-dist: Add m4/gnulib-cache.m4
* grub-core/Makefile.core.def: Remove unnecessary extra_dist
* grub-core/lib/posix_wrap/localcharset.h (locale_charset): Update
header.
* grub-core/lib/posix_wrap/langinfo.h (nl_langinfo): Return static
string.
2010-09-20 12:35:33 +02:00
Vladimir 'phcoder' Serbinenko
774b7ca021
merge mainline into gingold3
2010-09-20 12:23:10 +02:00
Szymon Janc
c55f50180d
Remove crc.mod and move crc command to hashsum.mod.
...
Remove lib/crc.c - users updated to use gcrypt implementation.
* grub-core/commands/crc.c: Removed.
* grub-core/Makefile.core.def (crc): Module removed.
* grub-core/commands/hashsum.c (aliases[]): Add crc alias.
* grub-core/commands/hashsum.c (GRUB_MOD_INIT): Register crc command.
* grub-core/commands/hashsum.c (GRUB_MOD_FINI): Unregister crc command.
* grub-core/lib/crc.c: Removed.
* include/grub/lib/crc.h: Removed.
* Makefile.util.def (crc): Remove lib/crc.c
* grub-core/Makefile.core.def (libgrub.a): Remove grub-core/lib/crc.c.
* util/grub-fstest.c (cmd_crd): Use libgcrypt crc implementation.
* Makefile.util.def (libgrub.a): Add grub-core/lib/libgcrypt-grub/cipher/crc.c.
* Makefile.util.def (grub-fstest): Add CFLAGS_GCRY to cflags.
* Makefile.util.def (grub-fstest): Add CPPFLAGS_GCRY to cppflags.
* grub-core/efiemu/prepare.c (grub_efiemu_crc): Use libgcrypt crc implementation.
2010-09-20 01:40:58 +02:00
Vladimir 'phcoder' Serbinenko
e0337366d1
* grub-core/boot/i386/pc/boot.S: Ignore %dl if it's not in a sane range.
2010-09-20 00:06:45 +02:00
Vladimir 'phcoder' Serbinenko
742f9232e3
Split config.h for util and core.
...
* acinclude.m4 (HAVE_ASM_USCORE): Transformed into a variable.
(ADDR32): Likewise.
(DATA32): Likewise.
(BSS_START_SYMBOL): Likewise.
(END_SYMBOL): Likewise.
(NEED_ENABLE_EXECUTE_STACK): Likewise. All users updated.
(grub_I386_ASM_ABSOLUTE_WITHOUT_ASTERISK): Removed.
* config.h.in: New file.
* configure.ac: Use config-util.h as config define file.
Rename MACHINE into GRUB_MACHINE. All users updated.
(NEED_REGISTER_FRAME_INFO): Transformed into a variable. All users
updated.
(NESTED_FUNC_ATTR): Likewise.
Substitue new variables.
(COND_HAVE_ASM_USCORE): New conditional.
* grub-core/Makefile.am (ASM_PREFIX): New variable.
(kernel_syms.lst): Use ASM_PREFIX.
* grub-core/kern/emu/console.c: Include config-util.h.
* grub-core/kern/emu/misc.c: Likewise.
* grub-core/kern/emu/mm.c: Likewise.
* include/grub/emu/misc.h: Likewise.
* include/grub/libgcc.h: Likewise.
2010-09-19 22:22:43 +02:00
Vladimir 'phcoder' Serbinenko
5d6015ddf6
Add lost part of GRUB_TERM_KEY_* commit
2010-09-19 22:12:25 +02:00
Vladimir 'phcoder' Serbinenko
39feb0e8f9
* grub-core/term/efi/console.c (efi_codes): Fix GRUB_TERM_KEY_*
...
constants usage.
* grub-core/kern/emu/console.c (grub_ncurses_getkey):
Fix GRUB_TERM_KEY_* constants usage.
* grub-core/kern/emu/misc.c (asprintf): Fix vasprintf usage.
2010-09-19 22:09:05 +02:00
Vladimir 'phcoder' Serbinenko
9af6dac30d
* grub-core/bus/usb/ohci.c (grub_ohci_cancel_transfer): Use %p to
...
print pointer.
* grub-core/bus/usb/uhci.c: Remove empty define.
(grub_uhci_check_transfer): Add missing cast.
* grub-core/bus/usb/usbhub.c (poll_nonroot_hub): Use %p to
print pointer.
* grub-core/term/usb_keyboard.c (grub_usb_keyboard_getkey): Use
PRIuGRUB_SIZE.
* include/grub/types.h (PRIuGRUB_SIZE): New definition.
2010-09-19 22:05:48 +02:00
Vladimir 'phcoder' Serbinenko
d6d94820b5
* grub-core/Makefile.core.def (legacycfg): Add
...
lib/i386/pc/vesa_modes_table.c on emu.
2010-09-19 22:03:16 +02:00
BVK Chaitanya
3572f2b65a
Reduce number of temporary files generated by build system.
...
* grub-core/gencmdlist.sh: Removed.
* grub-core/genfslist.sh: Removed.
* grub-core/genhandlerlist.sh: Removed.
* grub-core/genmodsrc.sh: Removed.
* grub-core/genpartmaplist.sh: Removed.
* grub-core/genparttoollist.sh: Removed.
* grub-core/gentermiinallist.sh: Removed.
* grub-core/genvideolist.sh: Removed.
* grub-core/genmod.sh.in: New file.
* grub-core/gensyminfo.sh.in: New file.
* conf/Makefile.common (CPPFLAGS_*_LIST): New marker flags.
* conf/Makefile.extra-dist: Update with new files.
* gentpl.py: Remove rules related to unnecessary temporary files.
* grub-core/Makefile.am (syminfo.lst): New replacement for def-*
and und-* files.
* grub-core/Makefile.core.def: New rules for gensyminfo.sh and
genmod.sh scripts.
* grub-core/bus/usb/uhci.c: Remove empty #define.
* grub-core/genmoddep.awk: Updated with new syminfo format.
* util/bash-completion.d/Makefile.am: Add config.log to
CLEANFILES.
2010-09-19 19:29:36 +05:30
BVK Chaitanya
b524259bec
merge with mainline
2010-09-19 18:54:45 +05:30
Vladimir 'phcoder' Serbinenko
eaf41b2592
* grub-core/commands/i386/cmostest.c (+parse_args): New function.
...
(grub_cmd_cmosclean): Likewise.
(GRUB_MOD_INIT): Register command cmosclean.
* util/grub-mkconfig.in: Export GRUB_BUTTON_CMOS_CLEAN.
* util/grub.d/00_header.in: Handle GRUB_BUTTON_CMOS_CLEAN.
2010-09-19 01:15:44 +02:00
Carles Pina i Estany
1a9130dd3f
Add keyboard layouts support.
...
* Makefile.util.def (grub-mklayout): New file.
(grub-kbdcomp): New script.
* grub-core/Makefile.am (KERNEL_HEADER_FILES) [COND_mips_yeeloong]:
Add keyboard_layouts.h.
* grub-core/Makefile.core.def (kernel): Add commands/keylayouts.c and
commands/boot.c on yeeloong.
(keylayouts): New module.
* grub-core/bus/usb/ohci.c
* grub-core/bus/usb/uhci.c
* grub-core/bus/usb/usbhub.c (rescan): New variable.
(grub_usb_add_hub): Poll interrupt pipe for device handling.
(attach_root_port): Likewise.
(poll_nonroot_hub): Likewise.
(grub_usb_poll_devices): Likewise.
(detach_device): Close transfer.
* grub-core/bus/usb/usbtrans.c (grub_usb_execute_and_wait_transfer): New
function.
(grub_usb_bulk_setup_readwrite): Likewise.
(grub_usb_bulk_finish_readwrite): Likewise.
* grub-core/commands/keylayouts.c: New file.
* grub-core/commands/keystatus.c (grub_getkeystatus): New function.
* grub-core/commands/menuentry.c (hotkey_aliases): All several new
aliases.
* grub-core/term/at_keyboard.c: Restructured to use keylayouts and
support scancode 2.
* grub-core/term/usb_keyboard.c: Restructured to use keylayouts.
* include/grub/keyboard_layouts.h: New file.
* util/grub-mklayout.c: New file.
* util/grub-kbdcomp.in: Likewise.
Also-By: Aleš Nesrsta <starous@volny.cz>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2010-09-19 01:01:35 +02:00
Aleš Nesrsta
ab629d0c5d
Fix incorrect usb report interpretation
2010-09-19 00:34:25 +02:00
Vladimir 'phcoder' Serbinenko
a1d84a5e5e
Unify memory types.
...
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Include memory.h.
* grub-core/commands/lsmmap.c (grub_cmd_lsmmap): Output user-readable
types.
* grub-core/kern/i386/multiboot_mmap.c (grub_lower_mem): Removed.
(grub_upper_mem): Likewise.
* grub-core/kern/ieee1275/init.c (grub_upper_mem): Likewise.
* include/grub/memory.h (grub_memory_type_t): New enum.
All users updated.
2010-09-19 00:04:31 +02:00
Vladimir 'phcoder' Serbinenko
9696382e79
GRUB-legacy configuration file support.
...
* Makefile.util.def (grub-menulst2cfg): New util.
* docs/man/grub-menulst2cfg.h2m: New file.
* grub-core/Makefile.core.def (legacycfg): New module.
* grub-core/commands/legacycfg.c: New file.
* grub-core/commands/menuentry.c (append_menu_entry): Rename to ...
(grub_normal_add_menu_entry): ... this.
* grub-core/commands/password.c (grub_cmd_password): Split main part to ...
(grub_normal_set_password): ...this.
* grub-core/commands/videoinfo.c (grub_cmd_videoinfo): Support MODE.
* grub-core/loader/i386/linux.c (linux_vesafb_res): Move to ..,
* grub-core/lib/i386/pc/vesa_modes_table.c: ... here.
* grub-core/lib/legacy_parse.c: New file.
* grub-core/normal/auth.c (grub_cmd_authenticate): New command.
* include/grub/i386/pc/vesa_modes_table.h: New file.
* include/grub/legacy_parse.h: Likewise.
* include/grub/normal.h (grub_normal_add_menu_entry): New proto.
* util/grub-menulst2cfg.c: New file.
* grub-core/Makefile.core.def (lsapm): New module.
* grub-core/commands/i386/pc/lsapm.c: New file.
* grub-core/loader/i386/multiboot_mbi.c (make_mbi) [GRUB_MACHINE_PCBIOS]: Pass APM info.
* grub-core/loader/multiboot_mbi2.c (make_mbi) [GRUB_MACHINE_PCBIOS]:
Likewise.
* include/grub/i386/pc/apm.h: New file.
* include/multiboot.h (multiboot_apm_info): New struct.
2010-09-18 16:21:57 +02:00
Vladimir 'phcoder' Serbinenko
685475e596
Fix yeeloong compilation
2010-09-18 13:49:39 +02:00
Aleš Nesrsta
e70a1b9535
Fix multiple USB issues
2010-09-18 13:49:15 +02:00
Aleš Nesrsta
b9c7e9d400
Set UHCI low-speed flag
2010-09-18 10:56:52 +02:00
Colin Watson
bf8d13388d
(convert_system_partition_to_system_disk): Initialise node.
...
* grub-core/kern/emu/hostdisk.c
2010-09-17 23:41:06 +01:00
Colin Watson
9c0bad2e15
* grub-core/kern/emu/hostdisk.c
...
(convert_system_partition_to_system_disk): Fix devmapper memory pool
leak.
Reported and based on patch by: Modestas Vainius.
2010-09-17 11:43:46 +01:00
Colin Watson
a939d135ec
Fix DM-RAID probing with recent versions of device-mapper udev
...
rules.
* grub-core/kern/emu/hostdisk.c (read_device_map): Don't
canonicalise device paths under /dev/mapper/.
(convert_system_partition_to_system_disk): Compare the
uncanonicalised path to /dev/mapper/ rather than the canonicalised
path, since device nodes under /dev/mapper/ are often symlinks.
2010-09-17 11:00:37 +01:00
Vladimir 'phcoder' Serbinenko
7756d44436
Basic menuentry-retrieveing jail
2010-09-16 23:48:32 +02:00
Manoel R. Abranches
7bb47706c9
Merge grub_net into net. Compiles but is broken right now.
2010-09-16 21:57:31 +02:00
Colin Watson
108538d8ff
Support RAID on virtio devices, and others.
...
* grub-core/kern/emu/getroot.c [__MINGW32__] (find_root_device):
Rename to ...
[__MINGW32__] (grub_find_device): ... this.
[! __MINGW32__ && ! __CYGWIN__] (find_root_device): Rename to ...
[! __MINGW32__ && ! __CYGWIN__] (grub_find_device): ... this. Use a
reasonable default if dir is NULL.
[! __MINGW32__ && __CYGWIN__] (find_cygwin_root_device): Rename to
...
[! __MINGW32__ && __CYGWIN__] (grub_find_device): ... this.
(grub_guess_root_device): Update callers.
* include/grub/emu/getroot.h (grub_find_device): Add prototype.
* util/raid.c (grub_util_getdiskname): Remove.
(grub_util_raid_getmembers): Use grub_find_device rather than
grub_util_getdiskname.
2010-09-16 14:55:28 +01:00
Colin Watson
e5bfc130a4
* docs/grub.texi (serial): Remove obsolete comment about GRUB
...
needing to be compiled with serial support.
(ls): Indicate that multiple files are accepted.
* grub-core/commands/ls.c (GRUB_MOD_INIT): Update help text to
indicate that multiple files are accepted.
2010-09-16 14:13:48 +01:00
Vladimir 'phcoder' Serbinenko
f0eee6b26a
implement multiboot2 vbe specification
2010-09-16 00:54:21 +02:00
Vladimir 'phcoder' Serbinenko
0b37526a5a
Add VBE PM interface
2010-09-16 00:37:30 +02:00
Vladimir 'phcoder' Serbinenko
b09cf083a0
Fix compilation issue
2010-09-16 00:30:47 +02:00
Vladimir 'phcoder' Serbinenko
9ba27423f5
Merge mainline into mbivid
2010-09-16 00:22:49 +02:00
Vladimir 'phcoder' Serbinenko
35139e8a55
* grub-core/commands/parttool.c (grub_cmd_parttool): Fix a variable
...
misusage.
Reported by: J. Nick Terry
2010-09-15 21:48:24 +02:00
Vladimir 'phcoder' Serbinenko
e50fca4a4c
Move embedding routines to partmap sources files.
...
* grub-core/partmap/gpt.c (grub_gpt_partition_type_bios_boot)
[GRUB_UTIL]: New variable.
(gpt_partition_map_iterate): Set part.parent.
(gpt_partition_map_embed) [GRUB_UTIL]: New function.
(grub_gpt_partition_map) [GRUB_UTIL]: Set .embed.
* grub-core/partmap/msdos.c (pc_partition_map_embed) [GRUB_UTIL]:
New function.
(grub_msdos_partition_map) [GRUB_UTIL]: Set .embed.
* include/grub/partition.h (grub_embed_type_t) [GRUB_UTIL]: New type.
(grub_partition_map) [GRUB_UTIL]: New field embed.
* util/grub-setup.c (grub_gpt_partition_type_bios_boot): Removed.
(setup): Use ->embed.
2010-09-15 21:36:57 +02:00
Vladimir 'phcoder' Serbinenko
f00478b719
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_is_floppy): New
...
function.
* include/grub/emu/hostdisk.h (grub_util_biosdisk_is_floppy): New proto.
* util/grub-setup.c (setup): Use grub_util_biosdisk_is_floppy.
2010-09-15 15:30:43 +02:00
Vladimir 'phcoder' Serbinenko
3f8fcb6a24
Support vbeprobe MODE
2010-09-15 14:37:28 +02:00
Vladimir 'phcoder' Serbinenko
c99dead654
Support geometry
2010-09-15 14:11:08 +02:00
Vladimir 'phcoder' Serbinenko
e2830452f0
Support legacy_check_password
2010-09-15 13:51:02 +02:00
Vladimir 'phcoder' Serbinenko
0cb2f2813f
merge mainline into legacy_parser
2010-09-15 11:43:59 +02:00
Vladimir 'phcoder' Serbinenko
890c9fa5f2
Implement APM
2010-09-15 11:42:18 +02:00
Vladimir 'phcoder' Serbinenko
e31bb61911
Transform legacy mode numbers into resolution specification
2010-09-15 11:39:53 +02:00
Vladimir 'phcoder' Serbinenko
2e04a00685
* grub-core/gnulib/basename-lgpl.c: Imported.
...
* grub-core/gnulib/basename.c: Likewise.
* grub-core/gnulib/dirname-lgpl.c: Likewise.
* grub-core/gnulib/dirname.c: Likewise.
* grub-core/gnulib/dirname.h: Likewise.
* grub-core/gnulib/stripslash.c: Likewise.
2010-09-15 11:34:29 +02:00
Vladimir 'phcoder' Serbinenko
5dcdf93ad6
* grub-core/gnulib/error.c: Resynced.
...
* grub-core/gnulib/getopt.c: Likewise.
* grub-core/gnulib/getopt_int.h: Likewise.
* grub-core/gnulib/regex.h: Likewise.
* grub-core/gnulib/regex_internal.c: Likewise.
* grub-core/gnulib/regex_internal.h: Likewise.
2010-09-15 11:31:02 +02:00
Vladimir 'phcoder' Serbinenko
44224d3948
Fix UUID command. Reported by: Jordan Uggla
2010-09-15 02:16:12 +02:00
Vladimir 'phcoder' Serbinenko
21e4963bcc
Support net_get_dhcp_option
2010-09-15 01:12:47 +02:00
Vladimir 'phcoder' Serbinenko
779e9dc480
Support Solaris DHCP ACK parsing
2010-09-15 00:44:57 +02:00
Szymon Janc
014f47b74f
* grub-core/lib/xzembed/xz_dec_stream.c (dec_main): Fix index and block
...
CRC calculations and validity checks.
* grub-core/lib/xzembed/xz_dec_stream.c (dec_index): Fix index CRC
calculations.
2010-09-15 00:39:49 +02:00
Szymon Janc
dd521a4afb
* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_end): Fix memory leak.
2010-09-15 00:13:09 +02:00
Vladimir 'phcoder' Serbinenko
79c4eeb919
Fix incorrect echo options handling.
...
Reported by: Yves Blusseau.
* include/grub/command.h (grub_command_flags_t): New flags
GRUB_COMMAND_ACCEPT_DASH and GRUB_COMMAND_OPTIONS_AT_START.
* grub-core/lib/arg.c (grub_arg_parse): Handle new flags.
* grub-core/commands/echo.c (GRUB_MOD_INIT): Use new flags.
2010-09-14 23:30:06 +02:00
Vladimir 'phcoder' Serbinenko
ed80f7d586
* include/grub/command.h (GRUB_COMMAND_FLAG_CMDLINE): Removed. All
...
users updated.
(GRUB_COMMAND_FLAG_MENU): Likewise.
(GRUB_COMMAND_FLAG_BOTH): Likewise.
(GRUB_COMMAND_FLAG_TITLE): Removed.
(GRUB_COMMAND_FLAG_NO_ECHO): Likewise.
(GRUB_COMMAND_FLAG_EXTCMD): Moved into enum.
(GRUB_COMMAND_FLAG_DYNCMD): Likewise.
(GRUB_COMMAND_FLAG_BLOCKS): Likewise.
(grub_command_flags_t): New enum. All users updated.
2010-09-14 23:06:01 +02:00
Seth Goldberg
5fe7620a4e
Fix solaris compilation.
...
* grub-core/Makefile.core.def (kernel): Include gnulib/error.c on emu.
(grub-emu): Add LIBZFS and LIBNVPAIR to ldadd.
(grub-emu-list): Likewise.
2010-09-14 22:32:33 +02:00
Vladimir 'phcoder' Serbinenko
545b752f88
Remove deprecated root command.
...
* grub-core/commands/minicmd.c (grub_mini_cmd_root): Removed. All users
updated.
2010-09-14 22:21:35 +02:00
Vladimir 'phcoder' Serbinenko
d2ea455141
* grub-core/partmap/sun.c (sun_partition_map_iterate): Don't needlesly
...
allocate p.
2010-09-14 21:07:39 +02:00
Vladimir 'phcoder' Serbinenko
b71c3faedb
* grub-core/kern/sparc64/ieee1275/crt0.S: Align stack.
2010-09-14 20:59:00 +02:00
Vladimir 'phcoder' Serbinenko
275433e642
Don't export grub_gate_a20.
...
* grub-core/kern/i386/pc/init.c: Remove leftovers.
* grub-core/kern/i386/pc/startup.S (FUNCTION(grub_gate_a20)): Rename
to ...
(grub_gate_a20): ... this. All users updated.
* include/grub/i386/pc/init.h: Removed. All users updated.
2010-09-14 01:08:24 +02:00
Vladimir 'phcoder' Serbinenko
608e43b102
Disable usbserial on grub-emu since our libusb code isn't good enough
...
yet.
* grub-core/Makefile.core.def (usbserial_common): Disable on emu.
(usbserial_pl2303): Likewise.
(usbserial_ftdi): Likewise.
2010-09-14 00:08:07 +02:00
Vladimir 'phcoder' Serbinenko
94564f81a8
* include/grub/disk.h (grub_disk): Remove has_partitions.
...
All users updated.
* disk/loopback.c (grub_loopback): Remove has_partitions.
All users updated.
(options): Remove partitions. All users updated.
* util/grub-fstest.c (fstest): Don't pass "-p" to loopback.
* util/i386/pc/grub-setup.c (setup): copy partition table only when
actual partition table is found.
2010-09-13 23:59:22 +02:00
Vladimir 'phcoder' Serbinenko
2419f17a09
Enable acpi shutdown on all ACPI platforms.
...
* grub-core/Makefile.core.def (halt): Inlude commands/acpihalt.c
on coreboo, multiboot and EFI.
* grub-core/commands/acpihalt.c (get_sleep_type): Add missing casts.
(grub_acpi_halt): Likewise.
* grub-core/commands/i386/pc/halt.c (grub_halt): Call grub_acpi_halt.
(grub_cmd_halt): Don't call grub_acpi_halt directly.
* grub-core/lib/efi/halt.c (grub_halt): Call grub_acpi_halt.
* grub-core/lib/i386/halt.c (grub_halt)
[GRUB_MACHINE_COREBOOT || GRUB_MACHINE_MULTIBOOT]: Likewise.
2010-09-13 20:29:15 +02:00
Vladimir 'phcoder' Serbinenko
0575c7c3ec
* grub-core/commands/iorw.c (grub_cmd_read): Declare buf in smallest
...
context.
2010-09-13 20:16:51 +02:00
Vladimir 'phcoder' Serbinenko
54ac3cd189
* grub-core/video/efi_gop.c: Fix over-80-chars line.
...
* grub-core/video/efi_uga.c: Likewise.
2010-09-13 20:10:41 +02:00
Vladimir 'phcoder' Serbinenko
b2a30ac5e4
Filter devaliases and never open same device twice.
...
* grub-core/disk/ieee1275/ofdisk.c (last_devpath): New variable.
(last_ihandle): Likewise.
(ofdisk_hash_ent): New member shortest.
(ofdisk_hash_add): Add canonical path too.
(scan): New function.
(grub_ofdisk_iterate): Iterate over hashed entries.
(compute_dev_path): Don't add :0.
(grub_ofdisk_open): Don't really open the disk.
(grub_ofdisk_close): Avoid closing unrelated disk.
(grub_ofdisk_read): Implement reopen logic.
* grub-core/kern/ieee1275/openfw.c (grub_ieee1275_canonicalise_devname):
New function.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_canonicalise_devname):
New proto.
2010-09-13 19:17:29 +02:00
Vladimir 'phcoder' Serbinenko
fb53b340aa
Fix sparc64.
...
* configure.ac (GRUB_KERNEL_MACHINE_LINK_ADDR): Removed.
* grub-core/Makefile.core.def (kernel): Make ldflags just use the
right address. Add sparc64_ieee1275_ldflags.
* grub-core/loader/sparc64/ieee1275/linux.c: Remove leftover include.
* util/grub-mkimagexx.c (locate_sections): Correct grub_host_to_target32
to grub_host_to_target_addr
(load_image): Likewise.
2010-09-13 16:49:50 +02:00
Vladimir 'phcoder' Serbinenko
f452b04048
* grub-core/normal/completion.c (complete_file): Handle device
...
containing slash.
Fix based on patch by Doug Nazar.
2010-09-13 14:26:55 +02:00
Vladimir 'phcoder' Serbinenko
9d2be652d4
videoinfo on non-vbe.
...
* grub-core/Makefile.core.def (vbeinfo): Removed.
(vbetest): Removed.
(videoinfo): New module.
* grub-core/commands/i386/pc/vbeinfo.c: Removed.
* grub-core/commands/i386/pc/vbetest.c: Removed.
* grub-core/commands/videoinfo.c: New file.
* grub-core/commands/videotest.c (grub_cmd_videotest): Support mode
specification.
(grub_cmd_videotest) [GRUB_MACHINE_PCBIOS]: Load vbe.mod when invoked
as vbetest.
(GRUB_MOD_INIT) [GRUB_MACHINE_PCBIOS]: New command vbetest.
(GRUB_MOD_FINI) [GRUB_MACHINE_PCBIOS]: Unregister vbetest.
* grub-core/video/efi_gop.c (grub_video_gop_fill_mode_info): Fill
mode_number. New parameter mode. All users updated.
(grub_video_gop_iterate): New function.
(grub_video_efi_gop): New member iterate.
* grub-core/video/i386/pc/vbe.c (framebuffer): Removed leftover fields.
(grub_vbe_set_video_mode): Remove setting useless fields.
(vbe2videoinfo): New function.
(grub_video_vbe_iterate): Likewise.
(grub_video_vbe_setup): Use vbe2videoinfo.
(grub_video_vbe_print_adapter_specific_info): New function.
(grub_video_vbe_adapter): New fields iterate and
print_adapter_specific_info.
* include/grub/video.h (GRUB_VIDEO_MODE_*): Transform into enum.
All users updated.
(grub_video_mode_info): New field mode_number.
(grub_video_adapter): New fields iterate and
print_adapter_specific_info.
2010-09-13 13:38:13 +02:00
Tristan Gingold
179503f524
* grub-core/commands/efi/lsefisystab.c: New file.
...
* grub-core/commands/efi/lssal.c: Likewise.
* grub-core/Makefile.core.def (lsacpi): New module.
(lsefisystab): Likewise.
* include/grub/efi/api.h (GRUB_EFI_SAL_TABLE_GUID): New definition.
(GRUB_EFI_HCDP_TABLE_GUID): Likewise.
(grub_efi_sal_system_table): New struct.
(grub_efi_sal_system_table_entrypoint_descriptor): Likewise.
(grub_efi_sal_system_table_memory_descriptor): Likewise.
(grub_efi_sal_system_table_platform_features): Likewise.
(grub_efi_sal_system_table_translation_register_descriptor): Likewise.
(grub_efi_sal_system_table_purge_translation_coherence): Likewise.
(grub_efi_sal_system_table_ap_wakeup): Likewise.
* include/grub/types.h (PRIuGRUB_UINT64_T): New definition.
Also-By: Robert Millan <rmh.grub@aybabtu.com>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2010-09-13 13:14:44 +02:00
Vladimir 'phcoder' Serbinenko
cf9827de73
Support explicit user claim that a device is BIOS-visible.
...
* grub-core/kern/emu/getroot.c (grub_util_get_dev_abstraction):
Return GRUB_DEV_ABSTRACTION_NONE if device is in device.map.
* grub-core/kern/emu/hostdisk.c
(convert_system_partition_to_system_disk): Support mdX.
(find_system_device): New parameter add. All users updated.
(grub_util_biosdisk_is_present): New function.
* include/grub/emu/hostdisk.h (grub_util_biosdisk_is_present): New
proto.
2010-09-13 13:09:58 +02:00
Vladimir 'phcoder' Serbinenko
53f0eb1f64
Search hints support.
...
* commands/search.c (FUNC_NAME): New arguments hints and nhints.
All users updated.
2010-09-13 13:01:41 +02:00
Vladimir 'phcoder' Serbinenko
1f1dd48a17
support subpartition hints
2010-09-13 12:16:22 +02:00
Vladimir 'phcoder' Serbinenko
53d4ca1afc
Change from direct arguments to --hint
2010-09-13 11:48:01 +02:00
Vladimir 'phcoder' Serbinenko
a848c54e34
merge mainline into hints
2010-09-13 02:22:10 +02:00
Vladimir 'phcoder' Serbinenko
d547dc281c
* grub-core/normal/term.c (put_glyphs_terminal): Correct sign.
...
(print_backlog): set backlog_ucs4 and backlog_glyphs.
Reported by: Yves Blusseau.
2010-09-12 22:05:27 +02:00
Vladimir 'phcoder' Serbinenko
2fc8ccb97f
* grub-core/normal/misc.c (grub_normal_print_device_info): Show
...
partition size and offset.
2010-09-12 20:18:50 +02:00
Vladimir 'phcoder' Serbinenko
d8a84076ea
* grub-core/commands/wildcard.c (make_regex): Escape brackets.
2010-09-12 20:15:30 +02:00
Vladimir 'phcoder' Serbinenko
84fb3b3d73
* grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files.
2010-09-12 20:12:16 +02:00
Vladimir 'phcoder' Serbinenko
898330b097
MArk setup as not to be implemented
2010-09-12 16:15:40 +02:00
Vladimir 'phcoder' Serbinenko
df8957929d
lock support (not tested)
2010-09-12 16:11:41 +02:00
Vladimir 'phcoder' Serbinenko
6492c85a42
Support config file reloading (not tested)
2010-09-12 15:54:39 +02:00
Vladimir 'phcoder' Serbinenko
e64334df29
Support mixed inline and suffix commands
2010-09-12 15:50:52 +02:00
Vladimir 'phcoder' Serbinenko
281d690594
Add no-argument version of commands and remove legacy_color
2010-09-12 15:26:38 +02:00
Vladimir 'phcoder' Serbinenko
21d7be6612
Support (hd0,1,a legacy partition specification
2010-09-12 14:18:39 +02:00
Vladimir 'phcoder' Serbinenko
b2b260b9eb
REmove obsolete FIXME
2010-09-12 14:04:10 +02:00
Vladimir 'phcoder' Serbinenko
2d06d22b0c
Merge mainline into legacy_parser
2010-09-12 14:01:25 +02:00
Vladimir 'phcoder' Serbinenko
64ad6157ae
Fix bunch of memory problems and implement hdbias
2010-09-12 14:01:02 +02:00
Vladimir 'phcoder' Serbinenko
768ec2e2ad
* grub-core/kern/misc.c (grub_vprintf): Use va_copy when necessary.
...
(grub_xvasprintf): Likewise.
2010-09-12 14:00:44 +02:00
Vladimir 'phcoder' Serbinenko
abda0cade5
Enable legacy_parser on emu
2010-09-12 13:58:18 +02:00
Vladimir 'phcoder' Serbinenko
4870900f8f
* grub-core/kern/emu/main.c (main): Call hostfs_init only after init_all.
2010-09-12 13:55:52 +02:00
Vladimir 'phcoder' Serbinenko
faca6bec3b
* grub-core/commands/menuentry.c (append_menu_entry): Don't rely on
...
args ending with NULL.
2010-09-12 13:53:12 +02:00
Vladimir 'phcoder' Serbinenko
788f1f3a85
* grub-core/lib/xzembed/xz_dec_stream.c (xz_dec_reset): Preserve context
...
pointer.
2010-09-12 13:50:24 +02:00
Vladimir 'phcoder' Serbinenko
9664465892
Add missing newlines
2010-09-12 11:09:01 +02:00
Vladimir 'phcoder' Serbinenko
43cce9e095
Fix uninitialised usage of curarg
2010-09-12 11:01:21 +02:00
Vladimir 'phcoder' Serbinenko
07473cf917
Support pause
2010-09-12 03:05:19 +02:00
Vladimir 'phcoder' Serbinenko
6c6850ae13
Implement hiddenmenu (not tested)
2010-09-12 02:55:24 +02:00
Vladimir 'phcoder' Serbinenko
237a43b1c1
Support few more legacy commands
2010-09-12 02:30:48 +02:00
Vladimir 'phcoder' Serbinenko
b062152c2a
Allow specifying video mode
2010-09-12 02:18:14 +02:00
Vladimir 'phcoder' Serbinenko
4dd58a6edd
Change video_mode_type to an enum, fix collisions and add a bit more info
2010-09-12 02:09:09 +02:00
Vladimir 'phcoder' Serbinenko
d2467d2361
Add Hercules, Planar and YUV to videoinfo (not tested)
2010-09-12 01:45:58 +02:00
Vladimir 'phcoder' Serbinenko
a37376e72a
legacy_password implementation
2010-09-12 01:07:41 +02:00
Vladimir 'phcoder' Serbinenko
8bc402fbda
Remove obsolete FIXME comments
2010-09-11 22:47:49 +02:00
Vladimir 'phcoder' Serbinenko
bd9603071a
Merge mainline into legacy_parser
2010-09-11 22:39:55 +02:00
Vladimir 'phcoder' Serbinenko
9fb175ed9a
Implement multiboot filename duplication in legacy parser
2010-09-11 22:18:41 +02:00
Szymon Janc
3c70f225b2
* grub-core/commands/lsacpi.c (grub_cmd_lsacpi): Fix prototype.
2010-09-11 20:08:37 +02:00
Vladimir 'phcoder' Serbinenko
4ce9a74332
merge mainline into gingold2
2010-09-11 18:03:47 +02:00
Vladimir 'phcoder' Serbinenko
4df7996d87
Shutdown using ACPI.
...
* grub-core/Makefile.core.def (halt): Add commands/acpihalt.c on i386-pc.
* grub-core/commands/acpihalt.c: New file.
* grub-core/commands/i386/pc/halt.c (grub_cmd_halt): Call grub_acpi_halt.
* include/grub/acpi.h (grub_acpi_fadt): New member pm1a.
(grub_acpi_halt): New proto.
(GRUB_ACPI_SLP_EN): New const.
(GRUB_ACPI_SLP_TYP_OFFSET): Likewise.
(GRUB_ACPI_OPCODE_*): New enum.
(GRUB_ACPI_EXTOPCODE_*): Likewise.
2010-09-11 17:59:14 +02:00
Tristan Gingold
126b4c32ab
* commands/lsacpi.c: New file.
...
* grub-core/Makefile.core.def (lsacpi): New module.
* include/grub/acpi.h (GRUB_ACPI_FADT_SIGNATURE): New definition.
(GRUB_ACPI_MADT_SIGNATURE): Likewise.
(grub_acpi_madt_entry_header): New struct.
(grub_acpi_madt): Likewise.
(grub_acpi_madt_entry_interrupt_override): Likewise.
(grub_acpi_madt_entry_sapic): Likewise.
(grub_acpi_madt_entry_lsapic): Likewise.
(grub_acpi_madt_entry_platform_int_source): Likewise.
* include/grub/types.h (PRIxGRUB_UINT32_T): New definition.
(PRIuGRUB_UINT32_T): Likewise.
(PRIxGRUB_UINT64_T): Likewise.
Also-By: Robert Millan <rmh.grub@aybabtu.com>
Also-By: Vladimir Serbinenko <phcoder@gmail.com>
2010-09-11 17:48:54 +02:00
Vladimir 'phcoder' Serbinenko
1aa4fe8822
Implement loading palette on ieee1275_fb.
...
* grub-core/video/ieee1275.c (stdout_ihandle): New variable.
(have_setcolors): Likewise.
(grub_video_ieee1275_init): Fill stdout_ihandle and have_setcolors.
(grub_video_ieee1275_setup): Use grub_video_ieee1275_set_palette.
(grub_video_ieee1275_set_palette): Implement.
2010-09-11 17:41:56 +02:00
Vladimir 'phcoder' Serbinenko
050abaeaa8
Fix emu on mipsel.
...
* conf/Makefile.common (CFLAGS_PLATFORM): Add -mflush-func
=grub_cpu_flush_cache on all mips and not only yeeloong.
* configure.ac (COND_mips): New conditional.
* grub-core/Makefile.am (KERNEL_HEADER_FILES): Add libgcc on all
platforms.
* grub-core/kern/emu/cache.S (__mips__): Use _flush_cache.
* grub-core/kern/emu/full.c (grub_arch_dl_init_linker)
[GRUB_LINKER_HAVE_INIT]: New function.
(grub_emu_post_init): Likewise.
* grub-core/kern/emu/lite.c (grub_emu_post_init): Likewise.
* grub-core/kern/emu/main.c: Use grub_emu_post_init.
* include/grub/cache.h (_mips): Include mips/cache.h.
* include/grub/disk.h [GRUB_UTIL || GRUB_MACHINE_EMU]: Add missing
LVM and RAID prototypes.
* include/grub/emu/misc.h (grub_emu_post_init): New proto.
* include/grub/mips/time.h (grub_cpu_idle) [GRUB_MACHINE_EMU]: New
function.
2010-09-11 16:58:06 +02:00
Robert Millan
c38fe9f48e
2010-09-10 Robert Millan <rmh@gnu.org>
...
Solaris support in grub_find_zpool_from_dir(). Thanks
Seth Goldberg for referring to getextmntent() facility.
* configure.ac: Check for getextmntent(), `sys/mnttab.h' and
`sys/mkdev.h'.
* grub-core/kern/emu/misc.c [HAVE_SYS_MNTTAB_H]: Include
`<sys/mnttab.h>'.
[HAVE_SYS_MKDEV_H]: Include `<sys/mkdev.h>'.
[HAVE_GETEXTMNTENT] (grub_find_zpool_from_dir): Add getextmntent()
method for finding zpool name.
2010-09-10 14:32:28 +02:00
Robert Millan
fb90b54648
2010-09-10 Robert Millan <rmh@gnu.org>
...
* configure.ac: Check for `struct statfs.f_fstypename' and
`struct statfs.f_mntfromname'.
* grub-core/kern/emu/misc.c (grub_find_zpool_from_dir): Conditionalize
kFreeBSD-specific code.
2010-09-10 14:02:54 +02:00
Robert Millan
4dfbc57428
2010-09-09 Robert Millan <rmh@gnu.org>
...
Basic Btrfs support (detection and UUID).
* grub-core/fs/btrfs.c: New file.
* Makefile.util.def (library): Register btrfs.c.
* grub-core/Makefile.core.def: Likewise.
2010-09-09 01:12:10 +02:00
Vladimir 'phcoder' Serbinenko
43de930c20
Change to disk->name being raw name. It makes less hidden issues
2010-09-08 21:22:41 +02:00
Vladimir 'phcoder' Serbinenko
f256469360
Fix minix issue
2010-09-08 21:03:23 +02:00
Vladimir 'phcoder' Serbinenko
7051df3609
Fix an issue with new interface for device names
2010-09-08 21:02:51 +02:00
Vladimir 'phcoder' Serbinenko
dedb5f9be2
merge mainline into nested
2010-09-08 20:40:27 +02:00
Vladimir 'phcoder' Serbinenko
3fcb410549
Fix a double device name
2010-09-08 20:39:57 +02:00
Vladimir 'phcoder' Serbinenko
b4a0c9154b
Split minix.mod into minix.mod and minix2.mod.
...
* Makefile.util.def (libgrub.a): Add grub-core/fs/minix2.c.
* grub-core/Makefile.core.def (minix2): New module.
* grub-core/fs/minix.c: Use definitions instead of runtime version
checking.
* grub-core/fs/minix2.c: New file.
2010-09-08 19:13:48 +02:00
Vladimir 'phcoder' Serbinenko
5f7a44bf92
Missing part of r2705
2010-09-08 19:09:07 +02:00
Vladimir 'phcoder' Serbinenko
e55e8495e1
* grub-core/kern/ieee1275/cmain.c (grub_ieee1275_find_options): Set
...
GRUB_IEEE1275_FLAG_HAS_CURSORONOFF when appropriate.
* grub-core/term/ieee1275/ofconsole.c (grub_ofconsole_setcursor):
Use terminfo and don't use cursor-on/cursor-off unless it's known
to work.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_flag): New element
GRUB_IEEE1275_FLAG_HAS_CURSORONOFF.
2010-09-08 16:15:57 +02:00
Colin Watson
6fa6d6751d
* grub-core/kern/efi/init.c (grub_efi_set_prefix): If the prefix
...
starts with "(,", fill the drive containing the loaded image in
between those two characters, but expect that a full partition
specification including partition map names will follow.
2010-09-08 13:53:47 +01:00
bvk.groups@gmail.com
058e30ac09
Not command (!) support to GRUB script.
...
* tests/grub_script_not.in: New test.
* Makefile.util.def: Rules for new test.
* grub-core/script/execute.c (grub_script_execute_cmdline): Handle
! command as a special case.
* grub-core/script/yylex.l (GRUB_PARSER_TOKEN_NOT): Removed.
2010-09-08 09:21:02 +05:30
bvk.groups@gmail.com
a0b5f6bcb1
update grub_errno as per the return value
2010-09-07 21:46:04 +05:30
bvk.groups@gmail.com
dc0fae73f8
merge with mainline
2010-09-07 21:45:34 +05:30
bvk.groups@gmail.com
b61d05ed19
* grub-core/commands/wildcard.c (wildcard_expand): Fix wrong
...
grub_free.
2010-09-07 17:16:03 +05:30
Vladimir 'phcoder' Serbinenko
db0f7e3d20
Rename CD-ROM to cd on BIOS.
...
* grub-core/disk/i386/pc/biosdisk.c (grub_biosdisk_get_drive): Recognise
"cd".
(grub_biosdisk_call_hook): Call with "cd" instead of arbitrary hdX.
2010-09-06 09:35:35 +02:00
Vladimir 'phcoder' Serbinenko
88b87c9313
* grub-core/kern/emu/main.c (main): Reinit LVM and RAID.
...
* util/grub-probe.c (main): Likewise.
* util/i386/pc/grub-setup.c (main): Likewise.
* util/sparc64/ieee1275/grub-setup.c (main): Likewise.
Reported and debugged by: alexxy
2010-09-05 23:24:57 +02:00
Vladimir 'phcoder' Serbinenko
294f324d89
* grub-core/disk/lvm.c (grub_lvm_scan_device) [GRUB_UTIL]: Output more
...
diagnostic info.
2010-09-05 23:20:13 +02:00
Vladimir 'phcoder' Serbinenko
122a9b2cd9
Merge mainline into legacy_parser
2010-09-05 20:44:42 +02:00
Vladimir 'phcoder' Serbinenko
5cd837bd47
Add testload
2010-09-05 20:43:43 +02:00
Szymon Janc
f0aff67c47
* grub-core/Makefile.core.def (xzio): New module.
...
* grub-core/io/xzio.c: New file.
* grub-core/lib/xzembed/xz.h: New file (from xembed).
* grub-core/lib/xzembed/xz_config.h: Likewise.
* grub-core/lib/xzembed/xz_dec_bcj.c: Likewise.
* grub-core/lib/xzembed/xz_dec_lzma2.c: Likewise.
* grub-core/lib/xzembed/xz_dec_stream.c: Likewise.
* grub-core/lib/xzembed/xz_lzma2.h: Likewise.
* grub-core/lib/xzembed/xz_private.h: Likewise.
* grub-core/lib/xzembed/xz_stream.h: Likewise.
* include/grub/file.h (grub_file_filter_id): New compression filter
GRUB_FILE_FILTER_XZIO.
2010-09-05 17:12:13 +02:00
Vladimir 'phcoder' Serbinenko
82a8506214
* include/grub/file.h (GRUB_FILE_SIZE_UNKNOWN): New definition.
...
* grub-core/disk/loopback.c (grub_loopback_open): Handle unknown file
size.
2010-09-05 17:01:16 +02:00
Vladimir 'phcoder' Serbinenko
3579415d20
* include/grub/err.h (grub_err_t): Replace GRUB_ERR_BAD_GZIP_DATA with
...
GRUB_ERR_BAD_COMPRESSED_DATA. All users updated.
2010-09-05 16:55:49 +02:00
Vladimir 'phcoder' Serbinenko
5124ae6d4f
Uncompressed checksum support.
...
* grub-core/commands/hashsum.c (options): Add option --uncompress.
(check_list): New parameter uncompress.
(grub_cmd_hashsum): Handle --uncompress.
2010-09-05 16:48:54 +02:00
Vladimir 'phcoder' Serbinenko
06f7011716
Reintroduce testload.
...
* grub-core/commands/minicmd.c (grub_rescue_cmd_testload) [0]: Moved
from here ...
* grub-core/commands/testload.c (grub_cmd_testload): ... here.
(GRUB_MOD_INIT): New function.
(GRUB_MOD_FINI): Likewise.
* grub-core/Makefile.core.def (testload): New module.
2010-09-05 16:40:41 +02:00
Szymon Janc
a17792c324
* grub-core/lib/posix_wrap/sys/types.h (bool): Transform into an enum.
...
(uint8_t): New type.
(uint16_t): Likewise.
(uint32_t): Likewise.
(uint64_t): Likewise.
2010-09-05 14:24:39 +02:00
Vladimir 'phcoder' Serbinenko
fc2ef1172c
* grub-core/io/gzio.c (grub_gzio_open): Removed "transparent" parameter.
...
Made static.
(grub_gzfile_open): Removed. All users updated.
(GRUB_MOD_INIT): New function.
(GRUB_MOD_FINI): Likewise.
* grub-core/kern/file.c (grub_file_filters_all): New variable.
(grub_file_filters_enabled): Likewise.
(grub_file_open): Handle filters.
* grub-core/loader/i386/bsd.c (GRUB_MOD_INIT): Load gzio.
* grub-core/normal/main.c (GRUB_MOD_INIT): Likewise.
* include/grub/file.h (grub_file_filter_id_t): New type.
(grub_file_filter_t): Likewise.
(grub_file_filters_all): New extern variable.
(grub_file_filters_enabled): Likewise.
(grub_file_filter_register): New inline function.
(grub_file_filter_unregister): Likewise.
(grub_file_filter_disable): Likewise.
(grub_file_filter_disable_compression): Likewise.
* include/grub/gzio.h: Removed.
2010-09-05 13:05:36 +02:00
BVK Chaitanya
1bce65c7b1
not command (!) support
2010-09-05 14:57:28 +05:30
BVK Chaitanya
ee14ec9935
merge with mainline
2010-09-04 22:34:32 +05:30
BVK Chaitanya
5f0c4acaca
Support for updating environment variables with matched substrings
...
of regexp.
* tests/grub_cmd_regexp.in: New test.
* Makefile.util.def: Rule for new test.
* grub-core/commands/regexp.c: New option -s to update environment
variables with regexp matches.
2010-09-04 22:19:58 +05:30
BVK Chaitanya
a431c98a52
merge with mainline
2010-09-04 22:13:45 +05:30
Szymon Janc
3759a35f75
* include/grub/file.h (grub_file): New member not_easly_seekable.
...
(grub_file_seekable): New inline function.
* grub-core/io/gzio.c (test_header): Don't test end magic if file isn't
easily seekable.
(grub_gzio_open): Set not_easly_seekable.
* grub-core/fs/i386/pc/pxe.c (grub_pxefs_open): Set not_easily_seekable.
* grub-core/io/bufio.c (grub_bufio_open): Propagate not_easily_seekable.
2010-09-04 18:28:42 +02:00
BVK Chaitanya
ed8c6dec96
Support for options to appear multiple times on cmdline.
...
* include/grub/lib/arg.h (grub_arg_list_alloc): New prototype.
* grub-core/commands/extcmd.c: Support for repeatable option.
* grub-core/lib/arg.c (grub_arg_list_alloc): New function for
repeatable option support.
Refactor menuentry into a regular command.
* grub-core/commands/menuentry.c: New file, menuentry command
implementation.
* grub-core/Makefile.core.def: Rule update for normal.mod.
* grub-core/normal/main.c: Moved menuentry creation to
grub-core/commands/menuentry.c.
* grub-core/normal/menu.c (grub_menu_execute_entry): Removed.
(grub_menu_execute_entry_real): Removed.
* grub-core/script/execute.c (grub_script_execute_sourcecode): New
function.
(grub_script_execute_menuentry): Removed.
* grub-core/script/parser.y (menuentry): Removed.
* grub-core/script/script.c (grub_script_create_cmdmenu): Removed.
* grub-core/script/yylex.l (menuentry): Removed.
* include/grub/menu.h (grub_menu_init): New prototype.
(grub_menu_fini): New prototype.
* include/grub/normal.h (grub_normal_add_menu_entry): Removed.
* include/grub/script_sh.h (grub_script_cmd_menuentry): Removed.
(grub_script_execute_sourcecode): New prototype.
2010-09-04 21:43:54 +05:30
BVK Chaitanya
9fcd1ee541
merge with mainline
2010-09-04 21:02:48 +05:30
Vladimir 'phcoder' Serbinenko
30b4166fde
Reimport setjmp from Tristan's branch.
2010-09-04 17:23:51 +02:00
BVK Chaitanya
165bfce138
merge with mainline
2010-09-04 20:44:44 +05:30
Vladimir 'phcoder' Serbinenko
df3df23d5c
Reorganise memory map handling
2010-09-04 17:10:10 +02:00
BVK Chaitanya
52e72f9d46
"setparams" command to update positional parameters.
...
* tests/grub_script_setparams.in: New test.
* Makefile.util.def: Rules for new test.
* grub-core/script/argv.c (grub_script_argv_make): New function.
* grub-core/script/execute.c (replace_scope): New function.
(grub_script_setparams): New function.
* grub-core/script/lexer.c: Remove unused variables.
* grub-core/script/main.c: Register/unregister setparams command.
* include/grub/script_sh.h (grub_script_argv_make): New prototype.
(grub_script_setparams): New prototype.
2010-09-04 20:27:48 +05:30
BVK Chaitanya
cd652829a1
merge with mainline
2010-09-04 14:41:08 +05:30
BVK Chaitanya
49649ac85d
review comments
2010-09-04 14:32:59 +05:30
BVK Chaitanya
965e0faac8
merge with mainline
2010-09-04 14:30:12 +05:30
BVK Chaitanya
854bd47cb8
fix memory leak and out-of-range writes
2010-09-04 14:22:51 +05:30
BVK Chaitanya
e77cc389d5
merge with mainline
2010-09-04 14:21:56 +05:30
BVK Chaitanya
25b60c913b
* grub-core/normal/completion.c (grub_normal_do_completion): Fix
...
grub_free order.
2010-09-04 14:19:04 +05:30
BVK Chaitanya
6d7c073bc8
merge with mainline
2010-09-04 11:49:02 +05:30
BVK Chaitanya
7af6505ba1
merge with mainline
2010-09-04 11:37:59 +05:30
BVK Chaitanya
312e3e3668
merge with mainline
2010-09-04 11:28:45 +05:30
BVK Chaitanya
227cab7c79
merge with mainline
2010-09-04 10:56:23 +05:30
BVK Chaitanya
e5a73c4247
merge with mainline
2010-09-04 09:05:21 +05:30
BVK Chaitanya
adcf5a8e30
merge with mainline
2010-09-04 08:33:42 +05:30
BVK Chaitanya
80f5b97cdc
--source option for menuentry
2010-09-04 08:14:50 +05:30
Vladimir 'phcoder' Serbinenko
dda060dd0f
* grub-core/kern/misc.c: Don't add abort alias in utils.
...
Reported by: echoline.
2010-09-04 02:18:48 +02:00
Vladimir 'phcoder' Serbinenko
7b111db538
resync MAkefile.core.def
2010-09-04 01:31:13 +02:00
Vladimir 'phcoder' Serbinenko
5b1d8b4832
Remove leftover files
2010-09-04 01:17:08 +02:00
Vladimir 'phcoder' Serbinenko
844d0fd5aa
Remove excessive dprintfs
2010-09-04 01:13:20 +02:00
Vladimir 'phcoder' Serbinenko
babad161fb
Reorganise net and openbsdlabel
2010-09-04 01:10:58 +02:00
Vladimir 'phcoder' Serbinenko
56a4b23d37
fix several issues with nested labels
2010-09-04 00:49:45 +02:00
Vladimir 'phcoder' Serbinenko
30d71dbced
dd GOP mode listing
2010-09-03 22:50:27 +02:00
Vladimir 'phcoder' Serbinenko
03199f1909
Fix order of dimensions in videoinfo
2010-09-03 22:50:11 +02:00
Vladimir 'phcoder' Serbinenko
4ab5f27548
Remove vbetest and vbeinfo in favour of videotest and videoinfo
2010-09-03 22:21:48 +02:00
Vladimir 'phcoder' Serbinenko
380c39cb25
Show adapter-specific info
2010-09-03 22:11:22 +02:00
Vladimir 'phcoder' Serbinenko
4787931fe0
Show mode id
2010-09-03 21:40:40 +02:00
Vladimir 'phcoder' Serbinenko
540e2fe185
Initial videoinfo implementation
2010-09-03 21:19:22 +02:00
BVK Chaitanya
e89f9ec539
add setparams prefix
2010-09-03 22:28:16 +05:30