Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

s3c2410_defconfig linkage errors `__aeabi_idivmod` #482

Closed
nickdesaulniers opened this issue May 15, 2019 · 11 comments

Comments

@nickdesaulniers
Copy link
Member

commented May 15, 2019

reported by KernelCI, it looks like

$ ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make CC=clang -j46 s3c2410_defconfig

is producing tons of linkage failures against some compiler helper routines:

init/do_mounts_rd.o: In function `rd_load_image':
/android0/linux-next/init/do_mounts_rd.c:247: undefined reference to `__aeabi_uidivmod'
arch/arm/kernel/process.o: In function `get_wchan':
/android0/linux-next/arch/arm/kernel/process.c:317: undefined reference to `unwind_frame'
arch/arm/kernel/process.o: In function `sigpage_addr':
/android0/linux-next/arch/arm/kernel/process.c:400: undefined reference to `__aeabi_uidivmod'
arch/arm/kernel/stacktrace.o: In function `walk_stackframe':
/android0/linux-next/arch/arm/kernel/stacktrace.c:57: undefined reference to `unwind_frame'
kernel/ptrace.o: In function `ptrace_regset':
/android0/linux-next/kernel/ptrace.c:861: undefined reference to `__aeabi_uidivmod'
kernel/irq/generic-chip.o: In function `irq_map_generic_chip':
/android0/linux-next/kernel/irq/generic-chip.c:392: undefined reference to `__aeabi_uidivmod'
kernel/irq/generic-chip.o: In function `irq_unmap_generic_chip':
/android0/linux-next/kernel/irq/generic-chip.c:439: undefined reference to `__aeabi_uidivmod'
kernel/irq/irqdomain.o: In function `irq_domain_alloc_descs':
/android0/linux-next/kernel/irq/irqdomain.c:1017: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/kernel/irq/irqdomain.c:1017: undefined reference to `__aeabi_uidivmod'
mm/percpu.o: In function `pcpu_dump_alloc_info':
/android0/linux-next/mm/percpu.c:2201: undefined reference to `__aeabi_idivmod'
mm/slab_common.o: In function `find_mergeable':
/android0/linux-next/mm/slab_common.c:355: undefined reference to `__aeabi_uidivmod'
mm/swapfile.o: In function `__do_sys_swapon':
/android0/linux-next/mm/swapfile.c:3089: undefined reference to `__aeabi_uidivmod'
mm/dmapool.o: In function `dma_pool_create':
/android0/linux-next/mm/dmapool.c:150: undefined reference to `__aeabi_uidivmod'
fs/inode.o: In function `timespec64_trunc':
/android0/linux-next/fs/inode.c:2140: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/fs/inode.c:2140: undefined reference to `__aeabi_uidivmod'
fs/inode.o:/android0/linux-next/fs/inode.c:2140: more undefined references to `__aeabi_uidivmod' follow
fs/ext4/extents.o: In function `ext4_ext_calc_metadata_amount':
/android0/linux-next/fs/ext4/extents.c:329: undefined reference to `__aeabi_idivmod'
/android0/linux-next/fs/ext4/extents.c:325: undefined reference to `__aeabi_idivmod'
/android0/linux-next/fs/ext4/extents.c:327: undefined reference to `__aeabi_idivmod'
fs/ext4/ialloc.o: In function `find_group_other':
/android0/linux-next/fs/ext4/ialloc.c:627: undefined reference to `__aeabi_uidivmod'
fs/ext4/ialloc.o: In function `find_group_orlov':
/android0/linux-next/fs/ext4/ialloc.c:523: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/fs/ext4/ialloc.c:462: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/fs/ext4/ialloc.c:464: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/fs/ext4/ialloc.c:540: undefined reference to `__aeabi_uidivmod'
fs/ext4/inode.o:/android0/linux-next/fs/ext4/inode.c:4589: more undefined references to `__aeabi_uidivmod' follow
fs/ext2/ialloc.o: In function `find_group_orlov':
/android0/linux-next/fs/ext2/ialloc.c:329: undefined reference to `__aeabi_idivmod'
fs/ext2/ialloc.o: In function `find_group_other':
/android0/linux-next/fs/ext2/ialloc.c:394: undefined reference to `__aeabi_uidivmod'
fs/ext2/ialloc.o: In function `find_group_orlov':
/android0/linux-next/fs/ext2/ialloc.c:287: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/fs/ext2/ialloc.c:289: undefined reference to `__aeabi_idivmod'
/android0/linux-next/fs/ext2/ialloc.c:346: undefined reference to `__aeabi_idivmod'
fs/ext2/ialloc.o: In function `ext2_preread_inode':
/android0/linux-next/fs/ext2/ialloc.c:188: undefined reference to `__aeabi_uidivmod'
fs/ext2/inode.o: In function `ext2_get_inode':
/android0/linux-next/fs/ext2/inode.c:1346: undefined reference to `__aeabi_uidivmod'
fs/fat/inode.o: In function `fat_fill_super':
/android0/linux-next/fs/fat/inode.c:1790: undefined reference to `__aeabi_uidivmod'
fs/lockd/svc.o: In function `get_lockd_grace_period':
/android0/linux-next/fs/lockd/svc.c:93: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/fs/lockd/svc.c:93: undefined reference to `__aeabi_uidivmod'
fs/jffs2/nodelist.o:/android0/linux-next/fs/jffs2/nodelist.c:425: more undefined references to `__aeabi_uidivmod' follow
drivers/video/fbdev/core/fbcon.o: In function `updatescrollmode':
/android0/linux-next/drivers/video/fbdev/core/fbcon.c:2145: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/video/fbdev/core/fbcon.c:2133: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/video/fbdev/core/fbcon.c:2134: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/video/fbdev/core/fbcon.c:2135: undefined reference to `__aeabi_uidivmod'
drivers/video/fbdev/core/cfbfillrect.o: In function `cfb_fillrect':
/android0/linux-next/drivers/video/fbdev/core/cfbfillrect.c:302: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/video/fbdev/core/cfbfillrect.c:357: undefined reference to `__aeabi_uidivmod'
drivers/video/fbdev/core/cfbfillrect.o:/android0/linux-next/drivers/video/fbdev/core/cfbfillrect.c:157: more undefined references to `__aeabi_uidivmod' follow
drivers/dma/of-dma.o: In function `of_dma_request_slave_channel':
/android0/linux-next/drivers/dma/of-dma.c:270: undefined reference to `__aeabi_idivmod'
drivers/tty/vt/vc_screen.o: In function `vcs_read':
/android0/linux-next/drivers/tty/vt/vc_screen.c:327: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/vc_screen.c:342: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/vc_screen.c:393: undefined reference to `__aeabi_idivmod'
drivers/tty/vt/vc_screen.o: In function `vcs_write':
/android0/linux-next/drivers/tty/vt/vc_screen.c:537: undefined reference to `__aeabi_idivmod'
drivers/tty/vt/vc_screen.o:/android0/linux-next/drivers/tty/vt/vc_screen.c:566: more undefined references to `__aeabi_idivmod' follow
drivers/tty/vt/selection.o: In function `set_selection_kernel':
/android0/linux-next/drivers/tty/vt/selection.c:254: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/tty/vt/selection.c:252: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/tty/vt/selection.c:237: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/tty/vt/selection.c:247: undefined reference to `__aeabi_uidivmod'
drivers/tty/vt/selection.o: In function `atedge':
/android0/linux-next/drivers/tty/vt/selection.c:122: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/selection.c:122: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/selection.c:122: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/selection.c:122: undefined reference to `__aeabi_idivmod'
drivers/tty/vt/selection.o: In function `set_selection_kernel':
/android0/linux-next/drivers/tty/vt/selection.c:324: undefined reference to `__aeabi_uidivmod'
drivers/tty/vt/vt.o: In function `vc_scrolldelta_helper':
/android0/linux-next/drivers/tty/vt/vt.c:4679: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/vt.c:4678: undefined reference to `__aeabi_idivmod'
/android0/linux-next/drivers/tty/vt/vt.c:4689: undefined reference to `__aeabi_idivmod'
drivers/char/random.o: In function `crng_slow_load':
/android0/linux-next/drivers/char/random.c:983: undefined reference to `__aeabi_uidivmod'
drivers/char/random.o: In function `randomize_page':
/android0/linux-next/drivers/char/random.c:2411: undefined reference to `__aeabi_uidivmod'
drivers/base/regmap/regmap.o: In function `_regmap_raw_write_impl':
/android0/linux-next/drivers/base/regmap/regmap.c:1521: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/base/regmap/regmap.c:1539: undefined reference to `__aeabi_uidivmod'
drivers/base/regmap/regmap.o: In function `regmap_raw_write':
/android0/linux-next/drivers/base/regmap/regmap.c:1904: undefined reference to `__aeabi_uidivmod'
drivers/base/regmap/regmap.o:/android0/linux-next/drivers/base/regmap/regmap.c:1948: more undefined references to `__aeabi_uidivmod' follow
drivers/block/loop.o: In function `transfer_xor':
/android0/linux-next/drivers/block/loop.c:113: undefined reference to `__aeabi_idivmod'
drivers/misc/eeprom/at24.o: In function `at24_adjust_write_count':
/android0/linux-next/drivers/misc/eeprom/at24.c:346: undefined reference to `__aeabi_uidivmod'
drivers/scsi/sr.o: In function `sr_init_command':
/android0/linux-next/drivers/scsi/sr.c:474: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/scsi/sr.c:475: undefined reference to `__aeabi_uidivmod'
drivers/mtd/mtdconcat.o: In function `concat_writev':
/android0/linux-next/drivers/mtd/mtdconcat.c:175: undefined reference to `__aeabi_uidivmod'
drivers/mtd/mtdblock.o: In function `do_cached_read':
/android0/linux-next/drivers/mtd/mtdblock.c:206: undefined reference to `__aeabi_uidivmod'
drivers/mtd/mtdblock.o:/android0/linux-next/drivers/mtd/mtdblock.c:136: more undefined references to `__aeabi_uidivmod' follow
drivers/mtd/chips/cfi_cmdset_0002.o: In function `cfi_amdstd_write_buffers':
/android0/linux-next/drivers/mtd/chips/cfi_cmdset_0002.c:1968: undefined reference to `__aeabi_idivmod'
drivers/mtd/nand/core.o: In function `nanddev_offs_to_pos':
/android0/linux-next/./include/linux/mtd/nand.h:464: undefined reference to `__aeabi_uidivmod'
drivers/mtd/nand/core.o: In function `nanddev_pos_next_eraseblock':
/android0/linux-next/./include/linux/mtd/nand.h:596: undefined reference to `__aeabi_uidivmod'
drivers/usb/core/hub.o: In function `led_work':
/android0/linux-next/drivers/usb/core/hub.c:527: undefined reference to `__aeabi_idivmod'
drivers/usb/core/urb.o: In function `usb_submit_urb':
/android0/linux-next/drivers/usb/core/urb.c:462: undefined reference to `__aeabi_uidivmod'
drivers/usb/host/ohci-hcd.o: In function `ohci_urb_enqueue':
/android0/linux-next/drivers/usb/host/ohci-hcd.c:183: undefined reference to `__aeabi_uidivmod'
drivers/mmc/core/core.o: In function `mmc_init_erase':
/android0/linux-next/drivers/mmc/core/core.c:1545: undefined reference to `__aeabi_uidivmod'
drivers/mmc/core/core.o: In function `mmc_erase':
/android0/linux-next/drivers/mmc/core/core.c:1886: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/drivers/mmc/core/core.c:1886: undefined reference to `__aeabi_uidivmod'
drivers/mmc/core/core.o:/android0/linux-next/drivers/mmc/core/core.c:1828: more undefined references to `__aeabi_uidivmod' follow
drivers/of/fdt.o: In function `__reserved_mem_reserve_reg':
/android0/linux-next/drivers/of/fdt.c:560: undefined reference to `__aeabi_idivmod'
drivers/of/of_reserved_mem.o: In function `__reserved_mem_alloc_size':
/android0/linux-next/drivers/of/of_reserved_mem.c:121: undefined reference to `__aeabi_idivmod'
sound/core/timer.o: In function `snd_timer_user_read':
/android0/linux-next/sound/core/timer.c:2095: undefined reference to `__aeabi_idivmod'
sound/core/timer.o: In function `snd_timer_user_append_to_tqueue':
/android0/linux-next/sound/core/timer.c:1326: undefined reference to `__aeabi_idivmod'
/android0/linux-next/sound/core/timer.c:1326: undefined reference to `__aeabi_idivmod'
sound/core/timer.o:/android0/linux-next/sound/core/timer.c:1326: more undefined references to `__aeabi_idivmod' follow
sound/core/pcm_native.o: In function `snd_pcm_do_reset':
/android0/linux-next/sound/core/pcm_native.c:1658: undefined reference to `__aeabi_uidivmod'
sound/core/pcm_native.o: In function `frame_aligned':
/android0/linux-next/./include/sound/pcm.h:713: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/./include/sound/pcm.h:713: undefined reference to `__aeabi_uidivmod'
sound/core/pcm_native.o: In function `snd_pcm_do_reset':
/android0/linux-next/sound/core/pcm_native.c:1658: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/sound/core/pcm_native.c:1658: undefined reference to `__aeabi_uidivmod'
sound/core/pcm_native.o:/android0/linux-next/./include/sound/pcm.h:713: more undefined references to `__aeabi_uidivmod' follow
net/core/filter.o: In function `bpf_tcp_sock_is_valid_access':
/android0/linux-next/net/core/filter.c:5581: undefined reference to `__aeabi_idivmod'
net/core/filter.o: In function `bpf_sock_is_valid_access':
/android0/linux-next/net/core/filter.c:6502: undefined reference to `__aeabi_idivmod'
net/core/filter.o: In function `__is_valid_xdp_access':
/android0/linux-next/net/core/filter.c:6664: undefined reference to `__aeabi_idivmod'
net/core/filter.o: In function `sock_addr_is_valid_access':
/android0/linux-next/net/core/filter.c:6721: undefined reference to `__aeabi_idivmod'
net/core/filter.o: In function `sock_ops_is_valid_access':
/android0/linux-next/net/core/filter.c:6810: undefined reference to `__aeabi_idivmod'
net/core/filter.o:/android0/linux-next/net/core/filter.c:6891: more undefined references to `__aeabi_idivmod' follow
net/core/filter.o: In function `convert_bpf_ld_abs':
/android0/linux-next/net/core/filter.c:465: undefined reference to `__aeabi_uidivmod'
net/core/filter.o: In function `bpf_skb_is_valid_access':
/android0/linux-next/net/core/filter.c:6286: undefined reference to `__aeabi_idivmod'
net/ipv4/inet_hashtables.o: In function `__inet_hash_connect':
/android0/linux-next/net/ipv4/inet_hashtables.c:665: undefined reference to `__aeabi_uidivmod'
net/ipv4/inet_connection_sock.o: In function `inet_csk_find_open_port':
/android0/linux-next/net/ipv4/inet_connection_sock.c:207: undefined reference to `__aeabi_uidivmod'
net/ipv4/tcp_input.o: In function `tcp_match_skb_to_sack':
/android0/linux-next/net/ipv4/tcp_input.c:1172: undefined reference to `__aeabi_uidivmod'
/android0/linux-next/net/ipv4/tcp_input.c:1172: undefined reference to `__aeabi_uidivmod'
net/ipv4/tcp_output.o: In function `tcp_select_initial_window':
/android0/linux-next/net/ipv4/tcp_output.c:217: undefined reference to `__aeabi_uidivmod'
net/ipv4/tcp_output.o:/android0/linux-next/net/ipv4/tcp_output.c:1748: more undefined references to `__aeabi_uidivmod' follow
net/ipv4/tcp_output.o: In function `__tcp_select_window':
/android0/linux-next/net/ipv4/tcp_output.c:2710: undefined reference to `__aeabi_idivmod'
net/ipv4/igmp.o: In function `igmp_start_timer':
/android0/linux-next/net/ipv4/igmp.c:211: undefined reference to `__aeabi_uidivmod'
net/ipv4/igmp.o: In function `igmp_gq_start_timer':
/android0/linux-next/net/ipv4/igmp.c:220: undefined reference to `__aeabi_uidivmod'
net/ipv4/igmp.o: In function `igmp_ifc_start_timer':
/android0/linux-next/net/ipv4/igmp.c:234: undefined reference to `__aeabi_uidivmod'
net/ipv4/igmp.o: In function `igmp_start_timer':
/android0/linux-next/net/ipv4/igmp.c:211: undefined reference to `__aeabi_uidivmod'
net/xfrm/xfrm_state.o: In function `xfrm_alloc_spi':
/android0/linux-next/net/xfrm/xfrm_state.c:1781: undefined reference to `__aeabi_uidivmod'
net/xfrm/xfrm_replay.o:/android0/linux-next/net/xfrm/xfrm_replay.c:517: more undefined references to `__aeabi_uidivmod' follow

@arndb points out they are defined, for example I see __aeabi_uidivmod exported in both arch/arm/kernel/armksyms.c and arch/arm/lib/lib1funcs.S, so the question is why those are getting built or linked for that config.

@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented May 15, 2019

So it looks like arch/arm/kernel/armksyms.o gets linked in when CONFIG_MODULES is set, which arch/arm/configs/s3c2410_defconfig does indeed set. And I think arch/arm/lib/lib1funcs.o unconditionally gets linked in?

$ llvm-nm arch/arm/kernel/armksyms.o reports no such symbol for __aeabi_uidivmod, $ llvm-nm arch/arm/lib/lib1funcs.o has __aeabi_uidiv but no __aeabi_uidivmod.

The implementation of __aeabi_uidivmod in arch/arm/lib/lib1funcs.S has:

#ifdef CONFIG_AEABI
ENTRY(__aeabi_uidivmod)
...
ENDPROC(__aeabi_uidivmod)

arch/arm/configs/s3c2410_defconfig does not explicitly set CONFIG_AEABI, and running $ ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- make CC=clang -j46 s3c2410_defconfig does not select/set it in .config.

# CONFIG_AEABI is not set                                                       

Explicitly setting CONFIG_AEABI in arch/arm/configs/s3c2410_defconfig solves the issue.

diff --git a/arch/arm/configs/s3c2410_defconfig b/arch/arm/configs/s3c2410_defconfig
index 39c648594d93..5dc2686f0eab 100644
--- a/arch/arm/configs/s3c2410_defconfig
+++ b/arch/arm/configs/s3c2410_defconfig
@@ -41,6 +41,7 @@ CONFIG_MACH_NEO1973_GTA02=y
 CONFIG_MACH_RX1950=y
 CONFIG_MACH_SMDK2443=y
 CONFIG_S3C_ADC=y
+CONFIG_AEABI=y
 CONFIG_ZBOOT_ROM_TEXT=0x0
 CONFIG_ZBOOT_ROM_BSS=0x0
 CONFIG_CMDLINE="root=/dev/hda1 ro init=/bin/bash console=ttySAC0"

@arndb thoughts before I send upstream? (In particular, I don't know what AEABI is, so I'm not sure of the implications of enabling it, beyond linking against the correct runtime dependencies.

@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented May 15, 2019

@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented Jun 3, 2019

@arndb suggested:

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 8869742a85df..eb281b9afff7 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1545,8 +1545,9 @@ config ARM_PATCH_IDIV
          code to do integer division.
 
 config AEABI
-       bool "Use the ARM EABI to compile the kernel" if !CPU_V7 && !CPU_V7M && !CPU_V6 && !CPU_V6K
-       default CPU_V7 || CPU_V7M || CPU_V6 || CPU_V6K
+       bool "Use the ARM EABI to compile the kernel" if !CPU_V7 && !CPU_V7M && \
+               !CPU_V6 && !CPU_V6K && !CC_IS_CLANG
+       default CPU_V7 || CPU_V7M || CPU_V6 || CPU_V6K || CC_IS_CLANG
        help
          This option allows for the kernel to be compiled using the latest
          ARM ABI (aka EABI).  This is only useful if you are using a user

which I tested and works.

@nickdesaulniers nickdesaulniers self-assigned this Jun 3, 2019
@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented Jun 3, 2019

still some errors w/ the above:

drivers/infiniband/hw/mlx5/main.o: In function `mlx5_ib_alloc_dm':
main.c:(.text+0x1d10): undefined reference to `__aeabi_uldivmod'
drivers/infiniband/hw/mlx5/cmd.o: In function `mlx5_cmd_alloc_sw_icm':
cmd.c:(.text+0x81c): undefined reference to `__aeabi_uldivmod'
@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented Jun 4, 2019

thanks, please cc me/our mailing list on the thread if there's further communication

@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented Jun 25, 2019

@nickdesaulniers

This comment has been minimized.

fengguang pushed a commit to 0day-ci/linux that referenced this issue Aug 29, 2019
Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented Sep 24, 2019

It seems that a05b960 is in mainline, but my helper script can't find the first tag that contains it.

v5.3-rc5-4-ga05b9608456e

does that mean it landed in 5.3-rc5, or 5.4-?

@nickdesaulniers

This comment has been minimized.

Copy link
Member Author

commented Sep 24, 2019

Looks like it came in via 8808cf8, but still can't find that one's tag.

@nathanchance

This comment has been minimized.

Copy link
Member

commented Sep 24, 2019

It will be tagged for v5.4-rc1.

mrchapp pushed a commit to mrchapp/linux that referenced this issue Oct 7, 2019
[ Upstream commit a05b960 ]

Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Whissi pushed a commit to Whissi/linux-stable that referenced this issue Oct 7, 2019
[ Upstream commit a05b960 ]

Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux/linux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
woodsts pushed a commit to woodsts/linux-stable that referenced this issue Oct 7, 2019
[ Upstream commit a05b960 ]

Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux/linux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
woodsts pushed a commit to woodsts/linux-stable that referenced this issue Oct 7, 2019
[ Upstream commit a05b960 ]

Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux/linux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
isjerryxiao added a commit to archlinux-jerry/Amlogic_s905-kernel that referenced this issue Oct 7, 2019
[ Upstream commit a05b9608456e0d4464c6f7ca8572324ace57a3f4 ]

Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux/linux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Staars added a commit to Staars/linux-stable that referenced this issue Oct 15, 2019
[ Upstream commit a05b9608456e0d4464c6f7ca8572324ace57a3f4 ]

Clang produces references to __aeabi_uidivmod and __aeabi_idivmod for
arm-linux-gnueabi and arm-linux-gnueabihf targets incorrectly when AEABI
is not selected (such as when OABI_COMPAT is selected).

While this means that OABI userspaces wont be able to upgraded to
kernels built with Clang, it means that boards that don't enable AEABI
like s3c2410_defconfig will stop failing to link in KernelCI when built
with Clang.

Link: ClangBuiltLinux/linux#482
Link: https://groups.google.com/forum/#!msg/clang-built-linux/yydsAAux5hk/GxjqJSW-AQAJ

Suggested-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.