My Oracle Support Banner

32 Bit Binaries Crashes After Upgrade To 4.1.12-112.14.11.el6uek.x86_64 on servers running AMD Opteron CPUs (Doc ID 2463502.1)

Last updated on FEBRUARY 01, 2019

Applies to:

Linux OS - Version Oracle Linux 6.9 with Unbreakable Enterprise Kernel [4.1.12] and later
Linux x86-64

Symptoms

On a server running Oracle Linux 6.9, 32-bit binaries are not working after upgrade to 4.1.12-112.14.11.el6uek.x86_64 or later

After upgrading to UEK4 kernel: 4.1.12-112.14.11.el6uek.x86_64, 32-bit binaries segfaulted with the the below error

32 bit iconvconfig binaries is shown to be a example with glibc debuginfo installed below, however other 32-bit application binaries fail as well, but probably end up with different stack traces using gdb.


root@localhost [DEV Active] ~# /usr/sbin/iconvconfig.i686
Bus error (core dumped)

(gdb) bt full

#0 0x45281529 in calculate_head_size (category=12, namep=0xffdcf518) at
loadarchive.c:235

namehash_end = <error reading variable namehash_end (Cannot access
memory at address 0xf75c7010)>


string_end = <error reading variable string_end (Cannot access memory
at address 0xf75c7018)>

locrectab_end = <error reading variable locrectab_end (Cannot access
memory at address 0xf75c7024)>


#1 _nl_load_locale_from_archive (category=12, namep=0xffdcf518) at
loadarchive.c:235


result = 0xf75c7000

headsize = <value optimized out>
mapsize = 2097152

name = 0xffdd0ee8 "en_GB"
results = {{addr = 0x0, len = 0} <repeats 13 times>}

lia = <value optimized out>

head = <value optimized out>

namehashtab = <value optimized out>

locrec = <value optimized out>

mapped = <value optimized out>

last = <value optimized out>

hval = <value optimized out>

idx = <value optimized out>

incr = <value optimized out>

ranges = {{from = 0, len = 0, category = 0, result = 0x0} <repeats 12
times>}


nranges = <value optimized out>

cnt = <value optimized out>

ps = 4096

fd = 3

#2 0x4528013b in _nl_find_locale (locale_path=0x0, locale_path_len=0,
category=12,

name=0xffdcf518) at findlocale.c:156

data = <value optimized out>

mask = <value optimized out>

loc_name = 0xffdd0ee8 "en_GB"

language = <value optimized out>

modifier = <value optimized out>

territory = <value optimized out>

codeset = <value optimized out>

normalized_codeset = <value optimized out>

locale_file = <value optimized out>


#3 0x4527f831 in setlocale (category=<value optimized out>, locale=0x804b4de
"")

at setlocale.c:342

newnames = {0x804b4de "", 0x804b4de "", 0x804b4de "", 0x804b4de "",
0x804b4de "",
0x804b4de "", 0x804b4de "", 0x804b4de "", 0xffdd0ee8 "en_GB"}

newdata = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xffdcf668,
0xffdd0e5d, 0xffdcf50c, 0x4528c382, 0xffdd0e5f}

locale_copy = 0x0
locale_path = 0x0
locale_path_len = 0

locpath_var = <value optimized out>

composite = <value optimized out>

#4 0x08049e88 in main (argc=1, argv=0xffdcf634) at iconvconfig.c:292

remaining = 134525947


status = 0

This behavior only occurs on systems with AMD Opteron CPUs, and could not be reproduced on systems with Intel CPUs.

The 32-bit binaries core dump problem appears on all kinds of applications after upgrading to 4.1.12-112.14.11.el6uek.x86_64.  If the system kernel stays on 4.1.12-112.14.10.el6uek.x86_64 or below, the core dump problem doesn't occur.

This issue occurs on AMD Opteron processors only but NOT on Intel CPUs.



Changes

 Changes that causes this issue:

8e69671 x86/ia32: Adds code hygiene for 32bit SYSCALL instruction entry

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.