Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 483610 - net-libs/webkit-gtk-2.0.4 - .../work/webkitgtk-2.0.4/tmp-introspectR49_vm/.libs/WebKit2-3.0: error while loading shared libraries: .../work/webkitgtk-2.0.4/.libs/libjavascriptcoregtk-3.0.so.0: cannot make segment writable for relocation: Permission denied
Summary: net-libs/webkit-gtk-2.0.4 - .../work/webkitgtk-2.0.4/tmp-introspectR49_vm/.li...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Hardened (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: The Gentoo Linux Hardened Team
URL: https://bugs.webkit.org/show_bug.cgi?...
Whiteboard:
Keywords:
: 493014 (view as bug list)
Depends on:
Blocks: 378027
  Show dependency tree
 
Reported: 2013-09-04 14:04 UTC by Fernando (likewhoa)
Modified: 2015-05-08 16:05 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (webkit-gtk-2.0.4.build.log.xz,299.89 KB, application/x-xz)
2013-09-04 14:07 UTC, Fernando (likewhoa)
Details
net-libs/webkit-gtk-2.2.2 full build log (build.log.gz,942.27 KB, application/x-gzip)
2014-01-27 02:18 UTC, Anton Kochkov
Details
Fix textrel on x86 (webkit_textrel.patch,691 bytes, patch)
2014-03-06 23:01 UTC, Magnus Granberg
Details | Diff
Fix textrel on x86 (webkit-gtk-2.2.5-textrel_x86.patch,602 bytes, patch)
2014-03-13 21:07 UTC, Magnus Granberg
Details | Diff
Fix textrel on x86 (webkit_textrel.patch,2.08 KB, patch)
2014-03-20 21:45 UTC, Magnus Granberg
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Fernando (likewhoa) 2013-09-04 14:04:13 UTC
this the output from dmesg. 

grsec: From x.x.x.x: denied RWX mprotect of /chroot/catalyst/tmp/default/livecd-stage1-i686-13.0/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/.libs/libjavascriptcoregtk-3.0.so.0.13.16 by /chroot/catalyst/tmp/default/livecd-stage1-i686-13.0/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/.libs/WebKit2-3.0[WebKit2-3.0:31418] uid/euid:250/250 gid/egid:250/250, parent /chroot/catalyst/tmp/default/livecd-stage1-i686-13.0/usr/bin/g-ir-scanner[g-ir-scanner:31310] uid/euid:250/250 gid/egid:250/250

it's inside a x86 chroot on a amd64 hardened profile.

Reproducible: Always

Steps to Reproduce:
emerge =net-libs/webkit-gtk-2.0.4::gentoo
Actual Results:  
libtool: link: i686-pc-linux-gnu-gcc -o /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/.libs/WebKit2-3.0 -O2 -march=i686 -pipe -std=c99 -Wl,-O1 -Wl,--no-keep-memory /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/WebKit2-3.0.o -Wl,--export-dynamic -pthread -Wl,--export-dynamic  -Wl,--as-needed -L. /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/.libs/libwebkit2gtk-3.0.so -L/usr/lib -lenchant -lharfbuzz-icu -lharfbuzz -lgailutil-3 -lgeoclue -ldbus-glib-1 -ldbus-1 -lgstapp-1.0 -lgstaudio-1.0 -lgstfft-1.0 -lgstpbutils-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -ljpeg -lxslt -lxml2 -lGL -ldl -lpangoft2-1.0 -lfreetype -lfontconfig -lpng16 -lsqlite3 -lwebp -lXrender -lXcomposite -lXdamage -lXfixes -lXt -lX11 -lz /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/.libs/libjavascriptcoregtk-3.0.so -lpthread -licui18n -licuuc -licudata -lgthread-2.0 -lrt -lgmodule-2.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -pthread
/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/.libs/WebKit2-3.0: error while loading shared libraries: /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/.libs/libjavascriptcoregtk-3.0.so.0: cannot make segment writable for relocation: Permission denied
Command '['/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/WebKit2-3.0', '--introspect-dump=/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/functions.txt,/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspectR49_vm/dump.xml']' returned non-zero exit status 127
make[1]: *** [WebKit2-3.0.gir] Error 1
make[1]: Leaving directory `/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4'
make: *** [all] Error 2
 * ERROR: net-libs/webkit-gtk-2.0.4::gentoo failed (compile phase):
 *   emake failed



Portage 2.2.1 (default/linux/x86/13.0/desktop, gcc-4.7.3, glibc-2.17, 3.8.7-hardened i686)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.8.7-hardened-i686-Intel-R-_Xeon-R-_CPU_E5420_@_2.50GHz-with-gentoo-2.2
KiB Mem:    28772428 total,   4324664 free
KiB Swap:   33554428 total,  33419600 free
Timestamp of tree: Tue, 03 Sep 2013 18:15:01 +0000
ld GNU ld (GNU Binutils) 2.23.2
distcc 3.1 i686-pc-linux-gnu [disabled]
ccache version 3.1.9 [disabled]
app-shells/bash:          4.2_p45
dev-lang/python:          2.7.5-r2, 3.2.5-r2, 3.3.2-r2
dev-util/ccache:          3.1.9
dev-util/cmake:           2.8.11.1
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.12
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.69
sys-devel/automake:       1.11.6, 1.13.4, 1.14
sys-devel/binutils:       2.23.2
sys-devel/gcc:            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.11 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo
ACCEPT_KEYWORDS="x86 ~x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-logs 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 userpriv usersandbox usersync"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-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=""
USE="X aac accessibility acl acpi alsa berkdb bindist bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam fbcondecor firefox flac fortran gdbm gif gimp gnome gpm gtk iconv ipv6 jpeg lcms ldap libnotify livecd loop-aes mad mmx mng modules mpeg mudflap ncurses nls nouveau nptl ogg opengl openmp pam pango pax_kernel pcre pdf png policykit ppds qt3support qt4 readline sdl session socks5 spell sse sse2 ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vorbis wxwidgets x86 xcb xml xv zlib" ABI_X86="32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC, USE_PYTHON
Comment 1 Fernando (likewhoa) 2013-09-04 14:07:46 UTC
Created attachment 357842 [details]
build.log

the build log was 64MB in size so i had to compress it to fit.
Comment 2 Alex Efros 2013-12-03 11:54:53 UTC
Just had to rebuild it on hardened amd64 because of update to python-3.3 and got compile error:

...
libtool: link: x86_64-pc-linux-gnu-gcc -o /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-
2.0.4/tmp-introspect36w_2o/.libs/WebKit2-3.0 -march=native -O2 -pipe -std=c99 -Wl,-O1 -Wl,--no-keep-memory /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspect36w_2o/WebKit2-3.0.o -Wl,--export-dynamic -pthread -Wl,--export-dynamic  -Wl,--as-needed -L. /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/.libs/libwebkit2gtk-3.0.so -L/usr/lib64 -lenchant -lharfbuzz-icu -lharfbuzz -lgailutil-3 -lgeoclue -ldbus-glib-1 -ldbus-1 -lgstapp-1.0 -lgstaudio-1.0 -lgstfft-1.0 -lgstpbutils-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -ljpeg -lxslt -lxml2 -lGL -ldl -lpangoft2-1.0 -lfreetype -lfontconfig -lpng15 -lsqlite3 -lwebp -lXrender -lXcomposite -lXdamage -lXfixes -lXt -lX11 -lz /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/.libs/libjavascriptcoregtk-3.0.so -lpthread -licui18n -licuuc -licudata -lgthread-2.0 -lgmodule-2.0 -lrt -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lsoup-2.4 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -pthread
/var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspect36w_2o/.libs/WebKit2-3.0: error while loading shared libraries: libGL.so.1: failed to map segment from shared object: Operation not permitted
ERROR: can't resolve libraries to shared libraries: webkit2gtk-3.0, javascriptcoregtk-3.0
make[1]: *** [WebKit2-3.0.gir] Error 1

and this in kernel log:

kern.alert: grsec: denied RWX mmap of /usr/lib64/opengl/nvidia/lib/libGL.so.331.20 by /var/tmp/portage/net-libs/webkit-gtk-2.0.4/work/webkitgtk-2.0.4/tmp-introspect36w_2o/.libs/WebKit2-3.0[WebKit2-3.0:14258] uid/euid:250/250 gid/egid:250/250, parent /usr/bin/ldd[ldd:14256] uid/euid:250/250 gid/egid:250/250

I've work around this by temporary switching to `eselect opengl set xorg-x11`, but looks like some paxmarking needed in ebuild or Makefile.
Comment 3 Magnus Granberg gentoo-dev 2013-12-05 16:45:13 UTC
*** Bug 493014 has been marked as a duplicate of this bug. ***
Comment 4 Magnus Granberg gentoo-dev 2013-12-05 17:41:18 UTC
 * QA Notice: The following files contain runtime text relocations
 *  Text relocations force the dynamic linker to perform extra
 *  work at startup, waste system resources, and may pose a security
 *  risk.  On some architectures, the code may not even function
 *  properly, if at all.
 *  For more information, see http://hardened.gentoo.org/pic-fix-guide.xml
 *  Please include the following list of files in your report:
 * TEXTREL usr/lib/libjavascriptcoregtk-3.0.so.0.13.16

jasmin lib # scanelf -qT libjavascriptcoregtk-3.0.so.0.13.16 
  libjavascriptcoregtk-3.0.so.0.13.16: jsRound [0x2BC809] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x2BC7A0]
  libjavascriptcoregtk-3.0.so.0.13.16: exp [0x2BC822] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x2BC7A0]
  libjavascriptcoregtk-3.0.so.0.13.16: log [0x2BC83B] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x2BC7A0]
  libjavascriptcoregtk-3.0.so.0.13.16: floor [0x2BC854] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x2BC7A0]
  libjavascriptcoregtk-3.0.so.0.13.16: ceil [0x2BC86D] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x2BC7A0]
  libjavascriptcoregtk-3.0.so.0.13.16
jasmin lib #
Comment 5 Magnus Granberg gentoo-dev 2013-12-05 21:02:14 UTC
objdump -d libjavascriptcoregtk-3.0.so.0.13.16
........
002bc7a0 <_ZN3JSC25JumpReplacementWatchpointD0Ev>:
  2bc7a0:       83 ec 2c                sub    $0x2c,%esp
  2bc7a3:       89 5c 24 24             mov    %ebx,0x24(%esp)
  2bc7a7:       e8 3f 66 e2 ff          call   e2deb <_ZN3JSC12ArrayProfile24computeUpdatedPredictionEPNS_9CodeBlockENS_19OperationInProgressE@plt+0x105b>
  2bc7ac:       81 c3 b4 e7 28 00       add    $0x28e7b4,%ebx
  2bc7b2:       65 a1 14 00 00 00       mov    %gs:0x14,%eax
  2bc7b8:       89 44 24 1c             mov    %eax,0x1c(%esp)
  2bc7bc:       31 c0                   xor    %eax,%eax
  2bc7be:       89 74 24 28             mov    %esi,0x28(%esp)
  2bc7c2:       8b 74 24 30             mov    0x30(%esp),%esi
  2bc7c6:       8b 83 d4 4d 00 00       mov    0x4dd4(%ebx),%eax
  2bc7cc:       83 c0 08                add    $0x8,%eax
  2bc7cf:       89 06                   mov    %eax,(%esi)
  2bc7d1:       89 34 24                mov    %esi,(%esp)
  2bc7d4:       e8 f7 6f e1 ff          call   d37d0 <_ZN3JSC10WatchpointD2Ev@plt>
  2bc7d9:       89 34 24                mov    %esi,(%esp)
  2bc7dc:       e8 9f b9 e1 ff          call   d8180 <_ZdlPv@plt>
  2bc7e1:       8b 44 24 1c             mov    0x1c(%esp),%eax
  2bc7e5:       65 33 05 14 00 00 00    xor    %gs:0x14,%eax
  2bc7ec:       75 0c                   jne    2bc7fa <_ZN3JSC25JumpReplacementWatchpointD0Ev+0x5a>
  2bc7ee:       8b 5c 24 24             mov    0x24(%esp),%ebx
  2bc7f2:       8b 74 24 28             mov    0x28(%esp),%esi
  2bc7f6:       83 c4 2c                add    $0x2c,%esp
  2bc7f9:       c3                      ret
  2bc7fa:       e8 61 c3 1e 00          call   4a8b60 <_ZN3WTF8CollatorD1Ev+0x60>
  2bc7ff:       90                      nop
  2bc800:       83 ec 08                sub    $0x8,%esp
  2bc803:       f2 0f 11 04 24          movsd  %xmm0,(%esp)
  2bc808:       e8 fc ff ff ff          call   2bc809 <_ZN3JSC25JumpReplacementWatchpointD0Ev+0x69>
  2bc80d:       dd 1c 24                fstpl  (%esp)
  2bc810:       f2 0f 10 04 24          movsd  (%esp),%xmm0
  2bc815:       83 c4 08                add    $0x8,%esp
  2bc818:       c3                      ret
  2bc819:       83 ec 08                sub    $0x8,%esp
  2bc81c:       f2 0f 11 04 24          movsd  %xmm0,(%esp)
  2bc821:       e8 fc ff ff ff          call   2bc822 <_ZN3JSC25JumpReplacementWatchpointD0Ev+0x82>
  2bc826:       dd 1c 24                fstpl  (%esp)
  2bc829:       f2 0f 10 04 24          movsd  (%esp),%xmm0
  2bc82e:       83 c4 08                add    $0x8,%esp
  2bc831:       c3                      ret
  2bc832:       83 ec 08                sub    $0x8,%esp
  2bc835:       f2 0f 11 04 24          movsd  %xmm0,(%esp)
  2bc83a:       e8 fc ff ff ff          call   2bc83b <_ZN3JSC25JumpReplacementWatchpointD0Ev+0x9b>
  2bc83f:       dd 1c 24                fstpl  (%esp)
  2bc842:       f2 0f 10 04 24          movsd  (%esp),%xmm0
  2bc847:       83 c4 08                add    $0x8,%esp
  2bc84a:       c3                      ret
  2bc84b:       83 ec 08                sub    $0x8,%esp
  2bc84e:       f2 0f 11 04 24          movsd  %xmm0,(%esp)
  2bc853:       e8 fc ff ff ff          call   2bc854 <_ZN3JSC25JumpReplacementWatchpointD0Ev+0xb4>
  2bc858:       dd 1c 24                fstpl  (%esp)
  2bc85b:       f2 0f 10 04 24          movsd  (%esp),%xmm0
  2bc860:       83 c4 08                add    $0x8,%esp
  2bc863:       c3                      ret
  2bc864:       83 ec 08                sub    $0x8,%esp
  2bc867:       f2 0f 11 04 24          movsd  %xmm0,(%esp)
  2bc86c:       e8 fc ff ff ff          call   2bc86d <_ZN3JSC25JumpReplacementWatchpointD0Ev+0xcd>
  2bc871:       dd 1c 24                fstpl  (%esp)
  2bc874:       f2 0f 10 04 24          movsd  (%esp),%xmm0
  2bc879:       83 c4 08                add    $0x8,%esp
  2bc87c:       c3                      ret
  2bc87d:       90                      nop
  2bc87e:       66 90                   xchg   %ax,%ax
  2bc880:       83 ec 1c                sub    $0x1c,%esp
  2bc883:       83 e2 07                and    $0x7,%edx
  2bc886:       89 74 24 14             mov    %esi,0x14(%esp)
  2bc88a:       8d 14 d5 04 00 00 00    lea    0x4(,%edx,8),%edx
  2bc891:       8b 4c 24 20             mov    0x20(%esp),%ecx
  2bc895:       89 7c 24 18             mov    %edi,0x18(%esp)
  2bc899:       8b b8 8c 00 00 00       mov    0x8c(%eax),%edi
  2bc89f:       65 8b 35 14 00 00 00    mov    %gs:0x14,%esi
  2bc8a6:       89 74 24 0c             mov    %esi,0xc(%esp)
  2bc8aa:       31 f6                   xor    %esi,%esi
  2bc8ac:       8b b0 94 00 00 00       mov    0x94(%eax),%esi
 2bc8b2:       83 e1 07                and    $0x7,%ecx
  2bc8b5:       83 c9 20                or     $0x20,%ecx
  2bc8b8:       88 14 37                mov    %dl,(%edi,%esi,1)
  2bc8bb:       8b 90 94 00 00 00       mov    0x94(%eax),%edx
  2bc8c1:       8d 72 01                lea    0x1(%edx),%esi
  2bc8c4:       89 b0 94 00 00 00       mov    %esi,0x94(%eax)
  2bc8ca:       8b b0 8c 00 00 00       mov    0x8c(%eax),%esi
  2bc8d0:       88 4c 16 01             mov    %cl,0x1(%esi,%edx,1)
  2bc8d4:       83 80 94 00 00 00 01    addl   $0x1,0x94(%eax)
  2bc8db:       8b 7c 24 0c             mov    0xc(%esp),%edi
  2bc8df:       65 33 3d 14 00 00 00    xor    %gs:0x14,%edi
  2bc8e6:       75 0c                   jne    2bc8f4 <_ZN3JSC25JumpReplacementWatchpointD0Ev+0x154>
  2bc8e8:       8b 74 24 14             mov    0x14(%esp),%esi
  2bc8ec:       8b 7c 24 18             mov    0x18(%esp),%edi
  2bc8f0:       83 c4 1c                add    $0x1c,%esp
  2bc8f3:       c3                      ret
  2bc8f4:       e8 67 c2 1e 00          call   4a8b60 <_ZN3WTF8CollatorD1Ev+0x60>
  2bc8f9:       8d b4 26 00 00 00 00    lea    0x0(%esi,%eiz,1),%esi
.....
So it call _ZN3JSC25JumpReplacementWatchpointD0Ev+XXX direcly instead of call it with _ZN3JSC25JumpReplacementWatchpointD0Ev@plt+XXX
Since this object code may be loaded into any address, using an aboslute reference obviously won't fly.
Comment 6 Magnus Granberg gentoo-dev 2013-12-05 21:52:35 UTC
Gnome can you test if you get textrel in the same lib?
Comment 7 Pacho Ramos gentoo-dev 2013-12-06 07:49:15 UTC
I have never got any textrel warning from webkit-gtk-2.0.4 :/, but I build it with "jit" USE enabled always, not sure if that could cause the difference
Comment 8 Magnus Granberg gentoo-dev 2013-12-06 16:56:22 UTC
(In reply to Pacho Ramos from comment #7)
> I have never got any textrel warning from webkit-gtk-2.0.4 :/, but I build
> it with "jit" USE enabled always, not sure if that could cause the difference

FEATURES="strict" should check for textrel
Comment 9 Pacho Ramos gentoo-dev 2013-12-06 17:04:34 UTC
I always run with strict enabled ;)
$ emerge --info|grep strict
FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms sign split-log strict test test-fail-continue unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

and get textrel warnings for other packages, but not for webkit-gtk :/
Comment 10 Magnus Granberg gentoo-dev 2013-12-07 16:28:35 UTC
This bug is only on x86
Alex the thing you got is that nvida opengl lib have
textrel and need rwx and it is know problem.
and it is a difffrent problem then we hit here.
Comment 11 Pacho Ramos gentoo-dev 2013-12-07 18:58:05 UTC
Ah, I looked for the textrels on amd64, the problem is that webkit-gtk takes hours on the x86 machine I built it, and would prefer other to rebuild it to test that :( (the "owner" of the x86 laptop won't let me rebuild that again as she needs it for working now)
Comment 12 Anton Kochkov 2013-12-07 19:09:20 UTC
(In reply to Pacho Ramos from comment #11)
> Ah, I looked for the textrels on amd64, the problem is that webkit-gtk takes
> hours on the x86 machine I built it, and would prefer other to rebuild it to
> test that :( (the "owner" of the x86 laptop won't let me rebuild that again
> as she needs it for working now)

I can confirm, it is only for x86.
Comment 13 Magnus Granberg gentoo-dev 2013-12-07 19:16:52 UTC
(In reply to Pacho Ramos from comment #11)
> Ah, I looked for the textrels on amd64, the problem is that webkit-gtk takes
> hours on the x86 machine I built it, and would prefer other to rebuild it to
> test that :( (the "owner" of the x86 laptop won't let me rebuild that again
> as she needs it for working now)
i would just run a x86 chroot on a amd64 box.
if you get textrel on amd64 it will fail at linking stage and on x86 you get
textrel and no fail at linking stage.
Comment 14 Alex Efros 2013-12-08 13:33:16 UTC
(In reply to Magnus Granberg from comment #10)
> Alex the thing you got is that nvida opengl lib have
> textrel and need rwx and it is know problem.
> and it is a difffrent problem then we hit here.

So, do I need to open new bugreport? Or if it already known, then probably it already opened?
Comment 15 Magnus Granberg gentoo-dev 2013-12-09 19:44:26 UTC
Pacho you could check what the install on have
or any one else on default profile?
Comment 16 Magnus Granberg gentoo-dev 2013-12-09 20:01:23 UTC
(In reply to Alex Efros from comment #14)
> (In reply to Magnus Granberg from comment #10)
> > Alex the thing you got is that nvida opengl lib have
> > textrel and need rwx and it is know problem.
> > and it is a difffrent problem then we hit here.
> 
> So, do I need to open new bugreport? Or if it already known, then probably
> it already opened?
it know problem with nvidia blob driver that anything that use the libs from
it most time need pax markings. Open new bug for that so we can add a check for
the nvidia blob driver and pax mark needed stuff.
Comment 17 Pacho Ramos gentoo-dev 2013-12-10 21:13:47 UTC
I will try to leave it building on a remote machine during the night... but I need to remember what I need to enable to get the textrel warnings: looks like "strict" FEATURE is always enabled by default, then, I guess I simply need to build it passing PORTAGE_ELOG_CLASSES="warn error log qa" to get the warnings, any more? :/ (since it will take around 7 hours to build, better don't need to repeat many times)
Comment 18 Magnus Granberg gentoo-dev 2013-12-14 15:20:08 UTC
(In reply to Pacho Ramos from comment #17)
> I will try to leave it building on a remote machine during the night... but
> I need to remember what I need to enable to get the textrel warnings: looks
> like "strict" FEATURE is always enabled by default, then, I guess I simply
> need to build it passing PORTAGE_ELOG_CLASSES="warn error log qa" to get the
> warnings, any more? :/ (since it will take around 7 hours to build, better
> don't need to repeat many times)
should work or you can test the installed one with scanelf
Comment 19 Pacho Ramos gentoo-dev 2013-12-14 17:00:13 UTC
I get:
# scanelf -qT  /usr/lib/libjavascriptcoregtk-3.0.so.0.13.16
  libjavascriptcoregtk-3.0.so.0.13.16: jsRound [0x28A531] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
  libjavascriptcoregtk-3.0.so.0.13.16: exp [0x28A54A] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
  libjavascriptcoregtk-3.0.so.0.13.16: log [0x28A563] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
  libjavascriptcoregtk-3.0.so.0.13.16: floor [0x28A57C] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
  libjavascriptcoregtk-3.0.so.0.13.16: ceil [0x28A595] in (optimized out: previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
  /usr/lib/libjavascriptcoregtk-3.0.so.0.13.16
Comment 20 Magnus Granberg gentoo-dev 2013-12-14 19:05:45 UTC
(In reply to Pacho Ramos from comment #19)
> I get:
> # scanelf -qT  /usr/lib/libjavascriptcoregtk-3.0.so.0.13.16
>   libjavascriptcoregtk-3.0.so.0.13.16: jsRound [0x28A531] in (optimized out:
> previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
>   libjavascriptcoregtk-3.0.so.0.13.16: exp [0x28A54A] in (optimized out:
> previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
>   libjavascriptcoregtk-3.0.so.0.13.16: log [0x28A563] in (optimized out:
> previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
>   libjavascriptcoregtk-3.0.so.0.13.16: floor [0x28A57C] in (optimized out:
> previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
>   libjavascriptcoregtk-3.0.so.0.13.16: ceil [0x28A595] in (optimized out:
> previous _ZN3JSC25JumpReplacementWatchpointD0Ev) [0x28A4F0]
>   /usr/lib/libjavascriptcoregtk-3.0.so.0.13.16
You get the same as me but with diffrent addres see comment #4
So the lib have textrel on default profile to.
Is this something that upstream can fix?
Comment 21 Pacho Ramos gentoo-dev 2013-12-15 07:37:38 UTC
I would wait for 2.2.x to retest and, if still valid, try to report
Comment 22 Magnus Granberg gentoo-dev 2013-12-27 11:38:22 UTC
Can someone test webkit-gtk 2.2.2 if it still have the textrel on x86?
Comment 23 Anton Kochkov 2014-01-27 02:18:02 UTC
Created attachment 368848 [details]
net-libs/webkit-gtk-2.2.2 full build log

Bug is still here (see attached build log for net-libs/webkit-gtk-2.2.2).
Comment 24 Pacho Ramos gentoo-dev 2014-02-02 14:04:44 UTC
Can you report it to upstream? -> bugs.webkit.org (remember to add "[GTK] [Stable]" at the start of the Summary)
Comment 25 Diego Elio Pettenò (RETIRED) gentoo-dev 2014-02-11 00:29:46 UTC

*** This bug has been marked as a duplicate of bug 494656 ***
Comment 26 Fernando (likewhoa) 2014-02-11 01:58:49 UTC
sorry but this bug is not a duplicate of #494656 as this bug was created before that one and hence should have priority.
Comment 27 Fernando (likewhoa) 2014-02-11 01:59:23 UTC
*** Bug 494656 has been marked as a duplicate of this bug. ***
Comment 28 Diego Elio Pettenò (RETIRED) gentoo-dev 2014-02-11 08:12:42 UTC
You do realize that bug id and priority don't mean much (beside for your ego) when the other bug is actually assigned to the right team with the right diagnosis rather than the error message?

But sure, let's keep webkit-gtk fail by waiting for an upstream that will tell you "we don't care, it's your own fault for using pax", it seems like the perfect policy.
Comment 29 Attila Tóth 2014-02-11 08:32:34 UTC
(In reply to Diego Elio Pettenò from comment #28)
> You do realize that bug id and priority don't mean much (beside for your
> ego) when the other bug is actually assigned to the right team with the
> right diagnosis rather than the error message?
> 
> But sure, let's keep webkit-gtk fail by waiting for an upstream that will
> tell you "we don't care, it's your own fault for using pax", it seems like
> the perfect policy.

With all the respect I suppose this bug is not a duplicate of 494656.
Comment 30 Fernando (likewhoa) 2014-02-11 14:44:57 UTC
(In reply to Diego Elio Pettenò from comment #28)
> You do realize that bug id and priority don't mean much (beside for your
> ego) when the other bug is actually assigned to the right team with the
> right diagnosis rather than the error message?
> 
> But sure, let's keep webkit-gtk fail by waiting for an upstream that will
> tell you "we don't care, it's your own fault for using pax", it seems like
> the perfect policy.

pay attention to the bug report before you go mouthing off on people who are being polite to you. This bug is assigned to the same TEAM as the other and please refrain from attacking me with your words. I am just trying to get things moving in an orderly fashion.

I want this bug resolved just as much as you and everyone else that depends on it and using PaX should not be blamed.
Comment 31 Magnus Granberg gentoo-dev 2014-03-06 23:01:19 UTC
Created attachment 371916 [details, diff]
Fix textrel on x86

This patch fix the textrel.
But is only compile and install tested
simmular fix did have problems as in the upstream bug.
So it need testing
Comment 32 Magnus Granberg gentoo-dev 2014-03-13 20:32:15 UTC
Patch posted upstrem
We could use the pic use flag to applay the patch.
Comment 33 Magnus Granberg gentoo-dev 2014-03-13 21:07:23 UTC
Created attachment 372612 [details, diff]
Fix textrel on x86

updated patch for the textrel fix.
Comment 34 Magnus Granberg gentoo-dev 2014-03-20 21:45:27 UTC
Created attachment 373142 [details, diff]
Fix textrel on x86

* Source/WTF/wtf/InlineASM.h GLOBAL_REFERENCE: Add plt if PIC
* Source/JavaScriptCore/jit/ThunkGenerators.cpp defineUnaryDoubleOpWrapper:
if PIC then setup %ebx so we can use plt
Comment 35 Pacho Ramos gentoo-dev 2015-01-13 15:49:30 UTC
This should be fixed in 2.6... but not sure for older slots :S
Comment 36 Gilles Dartiguelongue (RETIRED) gentoo-dev 2015-05-01 12:20:23 UTC
Please test with webkit-gtk-2.4.8 or webkit-gtk-2.6.
Comment 37 Fernando (likewhoa) 2015-05-05 13:07:57 UTC
(In reply to Gilles Dartiguelongue from comment #36)
> Please test with webkit-gtk-2.4.8 or webkit-gtk-2.6.

I seem to be running into an unrelated compile error that has been reported at #546988 and after using cmake-3.1.0 it compiles properly on both amd64/x86 ~arch
Comment 38 Gilles Dartiguelongue (RETIRED) gentoo-dev 2015-05-08 16:05:11 UTC
Thanks for the update.