Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
All x11(ia32 emulation) apps segfaults (si_code=SEGV_MAPERR)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
ShingRay
n00b
n00b


Joined: 23 Jan 2010
Posts: 27

PostPosted: Wed Aug 21, 2013 3:01 pm    Post subject: All x11(ia32 emulation) apps segfaults (si_code=SEGV_MAPERR) Reply with quote

Code:

% strace -f skype |& tail -n20
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff4ae6000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff4ae5000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff4ae4000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff4ae3000
set_thread_area(0xffffbdc0)             = 0
mprotect(0xf55b3000, 8192, PROT_READ)   = 0
mprotect(0xf4afa000, 4096, PROT_READ)   = 0
mprotect(0xf4b00000, 4096, PROT_READ)   = 0
mprotect(0xf7ecf000, 4096, PROT_READ)   = 0
mprotect(0xf4b09000, 4096, PROT_READ)   = 0
mprotect(0xf5721000, 4096, PROT_READ)   = 0
mprotect(0xf4b0d000, 4096, PROT_READ)   = 0
mprotect(0xf4b33000, 4096, PROT_READ)   = 0
mprotect(0xf4be3000, 20480, PROT_READ)  = 0
mprotect(0xf4c05000, 8192, PROT_READ)   = 0
mprotect(0xf4c0c000, 4096, PROT_READ)   = 0
mprotect(0xf4c13000, 4096, PROT_READ)   = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x58d6} ---
+++ killed by SIGSEGV +++
[1]    2119 segmentation fault  strace -f skype 2>&1 |
       2120 done                tail -n $((${LINES:-`tput lines 4>/dev/null||echo -n 12`} - 3)) -n20


Code:

% strace -f wine console |& tail -n20
futex(0xf7c2d050, FUTEX_WAKE_PRIVATE, 2147483647) = 0
open("/usr/bin/../lib32/wine/ntdll.dll.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\n\302{4\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=689372, ...}) = 0
mmap2(0x7bc00000, 769012, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7bc00000
mmap2(0x7bc9f000, 45056, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9e000) = 0x7bc9f000
mmap2(0x7bcaa000, 72692, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7bcaa000
close(3)                                = 0
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=225753, ...}) = 0
mmap2(NULL, 225753, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7efc8000
close(3)                                = 0
open("/lib32/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Y\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=263644, ...}) = 0
mmap2(NULL, 266384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ef86000
mmap2(0x7efc6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3f000) = 0x7efc6000
close(3)                                = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x58d6} ---
+++ killed by SIGSEGV +++
[1]    2192 segmentation fault  strace -f wine console 2>&1 |
       2193 done                tail -n $((${LINES:-`tput lines 4>/dev/null||echo -n 12`} - 3)) -n20



Code:

% sudo su -c 'echo 0 > /proc/sys/kernel/randomize_va_space'
% skype
[1]    2436 segmentation fault  skype
% dmesg | tail -n 1                                       
[34882.291454] skype[2436]: segfault at 58d6 ip 00000000000058d6 sp 00000000ffffbcfc error 14 in skype[56555000+1d30000]
% wine console                       
[1]    2500 segmentation fault  wine console
% dmesg | tail -n 1
[34892.932415] wine[2500]: segfault at 58d6 ip 00000000000058d6 sp 00000000ffffb53c error 14


I have no idea how to deal with it using gdb:

Code:

% gdb -d glibc-2.17/elf /opt/bin/skype
Reading symbols from /opt/bin/skype...(no debugging symbols found)...done.
(gdb) r
Starting program: /opt/bin/skype
warning: the debug information found in "/usr/lib64/debug/lib64/ld-2.17.so.debug" does not match "/lib/ld-linux.so.2" (CRC mismatch).

warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?

Program received signal SIGSEGV, Segmentation fault.
0x000058d6 in ?? ()
(gdb) up 2
#2  0xf7fdf083 in dl_main (phdr=0x56555034, phnum=9, user_entry=0xffffbeac, auxv=0xffffc0d8) at rtld.c:2203
2203                _dl_relocate_object (l, l->l_scope, GLRO(dl_lazy) ? RTLD_LAZY : 0,
(gdb) bt
#0  0x000058d6 in ?? ()
#1  0xf55f3734 in ?? ()
#2  0xf7fdf083 in dl_main (phdr=0x56555034, phnum=9, user_entry=0xffffbeac, auxv=0xffffc0d8) at rtld.c:2203
#3  0xf7ff1448 in _dl_sysdep_start (start_argptr=start_argptr@entry=0xffffbf40, dl_main=dl_main@entry=0xf7fdd790 <dl_main>) at ../elf/dl-sysdep.c:241
#4  0xf7fe0bf2 in _dl_start_final (arg=0xffffbf40) at rtld.c:331
#5  _dl_start (arg=0xffffbf40) at rtld.c:557
#6  0xf7fdd1f7 in _start () from /lib/ld-linux.so.2
(gdb)


Code:

emerge --info

Portage 2.2.0_alpha188 (default/linux/amd64/13.0/desktop, gcc-4.7.3, glibc-2.17, 3.11.0-rc5+ x86_64)
=================================================================
System uname: Linux-3.11.0-rc5+-x86_64-Intel-R-_Core-TM-_i5-3317U_CPU_@_1.70GHz-with-gentoo-2.2
KiB Mem:     3956464 total,     95336 free
KiB Swap:          0 total,         0 free
Timestamp of tree: Mon, 19 Aug 2013 01:45:01 +0000
ld GNU ld (GNU Binutils) 2.21.1
distcc 3.1 x86_64-pc-linux-gnu [disabled]
ccache version 3.1.7 [disabled]
app-shells/bash:          4.2_p45
dev-java/java-config:     2.1.12
dev-lang/python:          2.7.5, 3.2.3-r2, 3.3.2
dev-util/ccache:          3.1.7
dev-util/cmake:           2.8.10.2-r1
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.11.6, 1.12.4
sys-devel/binutils:       2.23.2
sys-devel/gcc:            4.6.3, 4.7.3
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo systemd gentoo-haskell gentoo-zh ray-overlay g-ctan
Installed sets: @app, @dev, @font, @network, @portage, @sys
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-Os -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/lib/hsqldb /var/lib/redmine/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /var/lib/redmine/config/locales /var/lib/redmine/config/settings.yml"
CXXFLAGS="-Os -pipe -march=native"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--oneshot --keep-going y --quiet-build y --with-bdep y --autounmask-write y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs candy config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirrors.tuna.tsinghua.edu.cn/gentoo"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/systemd /var/lib/layman/haskell /var/lib/layman/gentoo-zh /home/ray/portage /var/lib/g-ctan"
SYNC="rsync://mirrors.ustc.edu.cn/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 bash-completion berkdb bluetooth branding bzip2 c++0x cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fontconfig fortran gdbm gif gpm gtk gtk3 hoogle hscolour iconv inotify ipv6 jpeg lcms ldap libnotify mad mmx mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds qt3support qt4 readline sdl session smp spell sse sse2 ssl ssse3 startup-notification svg systemd tcpd tiff truetype udev udisks unicode upower usb vaapi vim vim-syntax vorbis wxwidgets x264 xcb xft xinerama xml xv xvid zlib zsh-completion" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" QEMU_SOFTMMU_TARGETS="arm x86_64" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="intel" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON


Last edited by ShingRay on Fri Aug 23, 2013 5:03 pm; edited 1 time in total
Back to top
View user's profile Send private message
eccerr0r
Watchman
Watchman


Joined: 01 Jul 2004
Posts: 9732
Location: almost Mile High in the USA

PostPosted: Wed Aug 21, 2013 11:42 pm    Post subject: Reply with quote

So no x86_64 programs segfault?

Did this suddenly happen or what did you change to get this to happen? Did you install a multilib library recently or something?

Although I don't think it's the problem, are you sure you have 32-bit support enabled in your kernel?
_________________
Intel Core i7 2700K/Radeon R7 250/24GB DDR3/256GB SSD
What am I supposed watching?
Back to top
View user's profile Send private message
ShingRay
n00b
n00b


Joined: 23 Jan 2010
Posts: 27

PostPosted: Fri Aug 23, 2013 3:16 pm    Post subject: All x11(ia32 emulation) apps segfaults (si_code=SEGV_MAPERR) Reply with quote

eccerr0r wrote:
So no x86_64 programs segfault?

Did this suddenly happen or what did you change to get this to happen? Did you install a multilib library recently or something?

Although I don't think it's the problem, are you sure you have 32-bit support enabled in your kernel?


No x86_64 programs segfault and the ia32 emulation config is on:

Code:

% zgrep IA32 /proc/config.gz
CONFIG_IA32_EMULATION=y
# CONFIG_IA32_AOUT is not set


And a simple ia32 program linked with libc works fine:

Code:

% echo 'int main() {}' | gcc -xc -m32 - && ./a.out


I have these emul-linux packages:

Code:

% eix -I --only-names emul-linux
app-emulation/emul-linux-x86-baselibs
app-emulation/emul-linux-x86-compat
app-emulation/emul-linux-x86-gtklibs
app-emulation/emul-linux-x86-medialibs
app-emulation/emul-linux-x86-soundlibs
app-emulation/emul-linux-x86-xlibs


And all x11-related packages with abi_x86_32 are emerged:

Code:

FORMAT="<installedversions:I>" I="<category>/<name>-<version>[<use>]\n" eix -C x11 | grep -q -- -abi_x86_32


It seems that my ia32 xlib is broken. Here's a hello-world xlib app from http://tronche.com/gui/x/xlib-tutorial/ :

Code:

#include <X11/Xlib.h> // Every Xlib program must include this
#include <assert.h>   // I include this to test return values the lazy way
#include <unistd.h>   // So we got the profile for 10 seconds

#define NIL (0)       // A name for the void pointer

main()
{
      Display *dpy = XOpenDisplay(NIL);
      assert(dpy);
      Window w = XCreateWindow(dpy, DefaultRootWindow(dpy), 0, 0,
                               200, 100, 0,
                               CopyFromParent, CopyFromParent, CopyFromParent,
                               NIL, 0);
      XMapWindow(dpy, w);
      XFlush(dpy);
      sleep(10);
}


Compile it with:

Code:
g++ prog-1.cc -lX11 -m32 -g


Code:

% strace ./a.out
execve("./a.out", ["./a.out"], [/* 96 vars */]) = 0
[ Process PID=9529 runs in 32 bit mode. ]
brk(0)                                  = 0x804b000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7716000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=235448, ...}) = 0
mmap2(NULL, 235448, PROT_READ, MAP_PRIVATE, 3, 0) = 0xfffffffff76dc000
close(3)                                = 0
open("/usr/lib32/libX11.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0g\1\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1124548, ...}) = 0
mmap2(NULL, 1128548, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff75c8000
mmap2(0xf76d8000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10f000) = 0xfffffffff76d8000
close(3)                                = 0
open("/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/32/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\262\4\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=958964, ...}) = 0
mmap2(NULL, 988820, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff74d6000
mprotect(0xf75bb000, 4096, PROT_NONE)   = 0
mmap2(0xf75bc000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe5000) = 0xfffffffff75bc000
mmap2(0xf75c1000, 26260, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xfffffffff75c1000
close(3)                                = 0
open("/lib32/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Y\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=263644, ...}) = 0
mmap2(NULL, 266384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff7494000
mmap2(0xf74d4000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3f000) = 0xfffffffff74d4000
close(3)                                = 0
open("/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/32/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p$\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=108108, ...}) = 0
mmap2(NULL, 111120, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff7478000
mmap2(0xf7492000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19000) = 0xfffffffff7492000
close(3)                                = 0
open("/lib32/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\316\1\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1743448, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7477000
mmap2(NULL, 1751772, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff72cb000
mprotect(0xf7470000, 4096, PROT_NONE)   = 0
mmap2(0xf7471000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a5000) = 0xfffffffff7471000
mmap2(0xf7474000, 10972, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7474000
close(3)                                = 0
open("/usr/lib32/libxcb.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\235\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=124480, ...}) = 0
mmap2(NULL, 127380, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff72ab000
mmap2(0xf72c9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0xfffffffff72c9000
close(3)                                = 0
open("/lib32/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\f\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=13832, ...}) = 0
mmap2(NULL, 16504, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff72a6000
mmap2(0xf72a9000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0xfffffffff72a9000
close(3)                                = 0
open("/usr/lib32/libXau.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\v\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=9492, ...}) = 0
mmap2(NULL, 12420, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff72a2000
mmap2(0xf72a4000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0xfffffffff72a4000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff72a1000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff72a0000
set_thread_area(0xfff0fc50)             = 0
mprotect(0xf7471000, 8192, PROT_READ)   = 0
mprotect(0xf72a4000, 4096, PROT_READ)   = 0
mprotect(0xf72a9000, 4096, PROT_READ)   = 0
mprotect(0xf72c9000, 4096, PROT_READ)   = 0
mprotect(0xf7492000, 4096, PROT_READ)   = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x58d6} ---
+++ killed by SIGSEGV +++
[1]    9526 segmentation fault  strace ./a.out
Back to top
View user's profile Send private message
highland
n00b
n00b


Joined: 05 Nov 2008
Posts: 71

PostPosted: Mon May 26, 2014 9:05 am    Post subject: Reply with quote

Hello

I have exactly the same problem. All 32bit applications compiled with x11 seg faults in the same eip.

All 32bit applications without x11 and all 64bit are working fine.

My problems started after skype installation which upgraded most of my emul libs.
I have tried different versions of emul-linux-x86-xlibs (including 2012, 2013 and 2014) - but without luck :(

Any ideas ?

Thanks,
Michal
Back to top
View user's profile Send private message
highland
n00b
n00b


Joined: 05 Nov 2008
Posts: 71

PostPosted: Mon May 26, 2014 9:58 am    Post subject: Reply with quote

I have narrowed down the issue. The problem starts appearing as soon as i start compiling the simplest 32 bit application with -lX11.

Example:
g++ -xc -m32 program.c (works fine)
g++ -xc -lX11 -m32 program.c (seg fault)

program.c:
main(){
}

64bit applications are working fine.

I have tested with both:
emul-linux-x86-xlibs-20140406
emul-linux-x86-xlibs-20130224

I have also recompiled glibc.

No luck :(
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum