[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] arm64: build with -mcmodel=large
From: |
Colin Watson |
Subject: |
Re: [PATCH] arm64: build with -mcmodel=large |
Date: |
Thu, 24 Dec 2015 04:20:29 +0000 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Thu, Dec 24, 2015 at 04:14:20AM +0000, Colin Watson wrote:
> This fixes a build failure with very current GCC versions, such as the one
> in Ubuntu xenial. Leif (or anyone with suitable arm64 systems), would you
> mind testing that this doesn't break things? I've tested that it builds
> cleanly now, but I don't have a particularly convenient way to do any
> run-time tests.
Never mind, I spoke too soon and withdraw this patch, since this doesn't
actually fix the problem, which is:
$ obj/grub-efi-arm64/grub-mkimage -O arm64-efi -o test.efi -d
obj/grub-efi-arm64/grub-core -p /boot/grub -v ext2
obj/grub-efi-arm64/grub-mkimage: info: the total module size is 0x37e8.
obj/grub-efi-arm64/grub-mkimage: info: reading
obj/grub-efi-arm64/grub-core/kernel.img.
obj/grub-efi-arm64/grub-mkimage: info: locating the section .text at 0x0.
obj/grub-efi-arm64/grub-mkimage: info: locating the section .rodata at 0xa200.
obj/grub-efi-arm64/grub-mkimage: info: locating the section .rodata.str1.1 at
0xa2a6.
obj/grub-efi-arm64/grub-mkimage: info: locating the section .data at 0xbbf8.
obj/grub-efi-arm64/grub-mkimage: info: locating the section .bss at 0xcc60.
obj/grub-efi-arm64/grub-mkimage: info: locating at 0x400 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating at 0xa600 (0xa600).
obj/grub-efi-arm64/grub-mkimage: info: locating at 0xa6a6 (0xa6a6).
obj/grub-efi-arm64/grub-mkimage: info: locating at 0xbff8 (0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating at 0xd060 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating at 0x400 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strlen at 0x83e4 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_net_poll_cards_idle at
0xeda0 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_finish_boot_services
at 0x3368 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_get_size at 0x5ac8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_progress_hook at
0x18e88 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efidisk_fini at 0xd44
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_arm64_set_xxxx26_offset
at 0x9a0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_puts_ at 0x80c0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_millisleep at 0x45e8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_fs_autoload_hook at
0xeb80 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_allocate_pages_max
at 0x30c0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_fs_blocklist at 0xc150
(0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_errmsg at 0x18d80
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strncmp at 0x819c
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strtoull at 0x850c
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_system_table at
0xeda8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating memmove at 0x8064 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_open at 0x5528
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_locate_protocol at
0x1dc4 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_env_update_get_sorted at
0x6c90 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strcpy at 0x80a8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_partition_probe at
0x99d0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strrchr at 0x81fc
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_partition_get_name at
0x9c10 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_load at 0x68c0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_stall at 0x1fe0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_get_filename at
0x2498 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_env_export at 0x6db0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_xvasprintf at 0x9340
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_error_push at 0x6ed8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating __bswapsi2 at 0xa4d0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_rescue_run at 0xa208
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_xasprintf at 0x93e0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_realloc at 0x4510
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_exit at 0x2020 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating memcpy at 0x8064 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_memmove at 0x8064
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_device_open at 0x4cd0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_register_exported_symbols at 0xa488 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strdup at 0x8400 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_firmware_is_tainted
at 0xedd8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_divmod64 at 0x8494
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_get_device_name at
0x70d8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_print_device_path at
0x26b4 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_partition_iterate at
0x9b80 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_vsnprintf at 0x9248
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_partition_map_list at
0x18ed8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_command_list at 0xedd0
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_machine_fini at 0x500
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_arch_dl_get_tramp_got_size at 0x710 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_rescue_parse_line at
0x9f70 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_get_variable at
0x21b8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_snprintf at 0x92cc
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_register_core_commands
at 0x4af0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_dev_register at
0x5418 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_console_init at 0x3de8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_write_weak at
0xede0 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_add at 0x5be0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_read at 0x57c0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_highlight_color at
0xc2f0 (0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_parser_execute at 0x9958
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_xputs at 0xc2e8 (0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_console_fini at 0x3ef8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_fatal at 0x9458 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_ref at 0x5d10 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_seek at 0x7468
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_get_loaded_image at
0x2000 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_errno at 0x18e80
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_parser_cmdline_state at
0x961c (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_memset at 0x8350 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_getkey at 0xa468 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_outputs_disabled at
0x18ee0 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_grubnet_fini at 0x18e90
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_register_variable_hook
at 0x6d38 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_image_handle at
0xedb0 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_vprintf at 0x8f38
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_net_open at 0xd0d0
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_register_command_prio at
0x4620 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_efi_find_last_device_path at 0x25e0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_compare_device_paths
at 0x2eb8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_filters_all at
0x18e98 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_install_get_time_ms at
0x45d0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_arch_clean_dcache_range
at 0x698 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating _start at 0x400 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_inputs at 0x18ee8
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_parser_split_cmdline at
0x96f8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_firmware_fini at
0xede8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_close at 0x5478
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_unload at 0x5da8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_set_variable at
0x20c8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_printf at 0x9048 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_secure_boot at
0x22b8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_unregister_command at
0x4728 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_fs_list at 0xeb78
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_efidisk_get_device_handle at 0x1730 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_main at 0x7ab0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_read at 0x7180
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_unload_unneeded at
0x69a8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating __bswapdi2 at 0xa4d8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating memcmp at 0x8138 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_normal_color at
0xc2f1 (0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_dev_list at 0xedf0
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_machine_init at 0x468
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_locate_handle at
0x1e08 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_outputs at 0x18ef0
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_modbase at 0xedb8
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_inputs_disabled at
0x18ef8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_net_config at 0xedc0
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_efi_set_virtual_address_map at 0x2070 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_print_error at 0x7008
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_mm_init at 0x3588
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating memset at 0x8350 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_zalloc at 0x423c (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strcmp at 0x816c (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_allocate_pages at
0x3178 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strchr at 0x81e0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_refresh at 0xa420
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_malloc at 0x4230 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_arch_sync_caches at
0x568 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_get_memory_map at
0x3240 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efidisk_get_device_name
at 0x18a4 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_get_time_ms at 0x45b8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_arch_invalidate_icache_range at 0x6b8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_close at 0x7250
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_open at 0x72b0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_isspace at 0x821c
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_open_protocol at
0x1ef0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_real_dprintf at 0x9150
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_load_core_noinit at
0x5ec0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_load_file at 0x67d8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_env_unset at 0x6c00
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_device_close at 0x4dc0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_head at 0xd0e0
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_fs_probe at 0x7788
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_mm_base at 0xedc8
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_term_poll_usb at 0xed98
(0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_file_filters_enabled at
0x18eb8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strword at 0x82a4
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_machine_get_bootlocation
at 0x2fe0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_fini at 0x3088
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_err_printed_errors at
0x18e84 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_error at 0x6e08 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_current_context at
0xc148 (0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating efi_codes at 0xa638 (0xa600).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_register_symbol at
0x5c30 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_is_finished at
0xd098 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_list_remove at 0x79f8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_modules_get_end at
0x7a78 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_free at 0x427c (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strndup at 0x8444
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_arm_64_check_xxxx26_offset at 0x988 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_named_list_find at
0x7990 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_unref at 0x5d5c
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_efi_duplicate_device_path at 0x2640 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efidisk_init at 0x14c0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_dev_unregister at
0x5438 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_init at 0x2f80
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_arch_dl_check_header at
0x6d8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_arch_dl_relocate_symbols
at 0x79c (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_free_pages at 0x30a0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_printf_ at 0x90c0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_get_device_path at
0x25c0 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_modules_addr at
0x23c8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_error_pop at 0x6f78
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_device_iterate at 0x4f08
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_getkey_noblock at 0xa3a0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_list_push at 0x79d8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_efi_set_text_mode at
0x1f50 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_err_printf at 0x9048
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating
grub_disk_cache_invalidate_all at 0x53b8 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_env_set at 0x6a88
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_dl_load_core at 0x6780
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_gettext at 0xc1a0
(0xbff8).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_memcmp at 0x8138 (0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_env_get at 0x6bc8
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_strtoul at 0x8a40
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_mm_init_region at 0x43c0
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_disk_cache_table at
0xedf8 (0xd060).
obj/grub-efi-arm64/grub-mkimage: info: locating grub_memalign at 0x4028
(0x400).
obj/grub-efi-arm64/grub-mkimage: info: dealing with the relocation section
.rela.text for .text.
obj/grub-efi-arm64/grub-mkimage: error: relocation 0x113 is not implemented
yet.
Would anyone arm64-knowledgeable mind taking a look at this?
--
Colin Watson address@hidden