grub-devel
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]