Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 114894 - nvidia-glx/nvidia-drivers use TEXTREL and contain excecutable stacks
Summary: nvidia-glx/nvidia-drivers use TEXTREL and contain excecutable stacks
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: X11 External Driver Maintainers
URL:
Whiteboard:
Keywords:
: 148789 (view as bug list)
Depends on:
Blocks:
 
Reported: 2005-12-08 10:37 UTC by Togge
Modified: 2007-07-19 19:02 UTC (History)
7 users (show)

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


Attachments
Executable stacks log file, as requested. (scanelf-execstack.log,630 bytes, application/octet-stream)
2006-11-08 07:09 UTC, Abraham Marin Perez
Details
ebuild updated fixing this issue for _amd64. (nvidia-drivers-1.0.9746.ebuild,13.14 KB, text/plain)
2007-01-18 19:18 UTC, Sandro Bonazzola (RETIRED)
Details
patch for x86 and symlink (nvidia-drivers-1.0.9746.ebuild.patch,1018 bytes, patch)
2007-01-18 23:42 UTC, Vlastimil Babka (Caster) (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Togge 2005-12-08 10:37:03 UTC
When emerging nvidia-glx-1.0.8174-r1 a lot of QA Notice messages are printed.
As instructed this bug is filed :)

From the emerge:
-----
QA Notice: USE Flag 'x86-fbsd' not in IUSE for media-video/nvidia-glx-1.0.8174-r1
Creating directory NVIDIA-Linux-x86-1.0-8174-pkg1
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86
1.0-8174..........................................................................................................
..........................................................................................................................................................................
QA Notice: USE Flag 'x86-fbsd' not in IUSE for media-video/nvidia-glx-1.0.8174-r1
 * Applying NVIDIA_glx-1.0.6629-makefile.patch ...                             
                                                                               
           [ ok ]
 * Applying NVIDIA_glx-1.0.6629-defines.patch ...                              
                                                                               
           [ ok ]
 * Applying NVIDIA_glx-1.0.6629-glheader.patch ...                             
                                                                               
           [ ok ]
>>> Source unpacked.
Gentoo Linux does not use nvidia-installer.
>>> Test phase [not enabled]: media-video/nvidia-glx-1.0.8174-r1

>>> Install nvidia-glx-1.0.8174-r1 into
/var/tmp/portage/nvidia-glx-1.0.8174-r1/image/ category media-video
QA Notice: USE Flag 'x86-fbsd' not in IUSE for edia-video/nvidia-glx-1.0.8174-r1
QA Notice: USE Flag 'x86-fbsd' not in IUSE for edia-video/nvidia-glx-1.0.8174-r1
QA Notice: USE Flag 'x86-fbsd' not in IUSE for edia-video/nvidia-glx-1.0.8174-r1
QA Notice: USE Flag 'x86-fbsd' not in IUSE for edia-video/nvidia-glx-1.0.8174-r1
man:

QA Notice: the following files contain runtime text relocations
 Text relocations require a lot of extra work to be preformed by the
 dynamic linker which will cause serious performance impact on IA-32
 and might not function properly on other architectures hppa for example.
 If you are a programmer please take a closer look at this package and
 consider writing a patch which addresses this problem.
TEXTREL usr/lib/xorg/libXvMCNVIDIA.so.1.0.8174
TEXTREL usr/lib/opengl/nvidia/lib/libGL.so.1.0.8174
TEXTREL usr/lib/opengl/nvidia/lib/libGLcore.so.1.0.8174
TEXTREL usr/lib/opengl/nvidia/tls/libnvidia-tls.so.1.0.8174
TEXTREL usr/lib/opengl/nvidia/no-tls/libnvidia-tls.so.1.0.8174
TEXTREL usr/lib/opengl/nvidia/extensions/libglx.so


QA Notice: the following files contain executable stacks
 Files with executable stacks will not work properly (or at all!)
 on some architectures/operating systems.  A bug should be filed
 at http://bugs.gentoo.org/ to make sure the file is fixed.
--- --- RWX usr/lib/opengl/nvidia/lib/libGL.so.1.0.8174
--- --- RWX usr/lib/opengl/nvidia/lib/libGLcore.so.1.0.8174
--- --- RWX usr/lib/opengl/nvidia/extensions/libglx.so
-----

Reproducible: Always
Steps to Reproduce:




I run a mostly stable system with nvidia, kde as the big exceptions (~x86)

Portage 2.0.53 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r2,
2.6.14-gentoo-r2 i686)
=================================================================
System uname: 2.6.14-gentoo-r2 i686 Intel(R) Pentium(R) 4 CPU 1600MHz
Gentoo Base System version 1.6.13
distcc[12792] (dcc_set_trace_from_env) ERROR: failed to open logfile
/var/tmp/distcc.log: Permission denied [disabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.20
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -fomit-frame-pointer -pipe -march=pentium4"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env
/usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mo
zilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/pl
atex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -fomit-frame-pointer -pipe -march=pentium4"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/
http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/
http://ds.thn.htu.se/linux/gentoo http://ftp.snt.ut
wente.nl/pub/os/linux/gentoo http://ftp.easynet.nl/mirror/gentoo/
http://ftp.rhnet.is/pub/gentoo/ http://mir.zyrianes.net/gentoo/
http://gentoo.math.bme.hu http:/
/ftp.linux.ee/pub/gentoo/distfiles/"
LANG="en_US.UTF-8"
LC_ALL=""
LINGUAS="en sv"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/mnt/web/localhost/htdocs/gentoo/portage-overlay"
SYNC="rsync://dx/gentoo-portage"
USE="x86 X a52 aac acpi alsa apm arts audiofile avi bash-completion berkdb
bitmap-fonts browserplugin bzip2 cdr chm crypt css cups curl divx4linux dts dvd
dvdr dv
dread emacs emboss encode esd ethereal exif expat fam ffmpeg firefox flac
font-server foomaticdb fortran freetype gd gdbm geoip gif glut gmp gpm gstreamer
gtk gtk
2 idn imagemagick imap imlib ipv6 java javascript jpeg junit kde lcms libg++
libwww mad maildir matroska mhash mikmod mmx mmx2 mng mono motif mozcalendar
mozilla 
mozsvg mp3 mpeg msn ncurses nls nptl nptlonly nsplugin nvidia ogg oggvorbis
opengl oss pam pcre pdf pdflib perl png ppds python qt quicktime readline real
recode 
ruby samba scanner sdl slang spell spreadsheet sqlite sse sse2 ssl svg svga
symlink tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts udev unicode
usb v4l
 v4l2 vorbis win32codecs wmf wv wxwindows xface xine xml xml2 xmms xosd xprint
xv xvid zlib linguas_en linguas_sv userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LDFLAGS, MAKEOPTS
Comment 1 Sandro Bonazzola (RETIRED) gentoo-dev 2005-12-24 10:29:07 UTC
I confirm this bug also on media-video/nvidia-glx-1.0.8178 for amd64.

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.
TEXTREL usr/lib32/opengl/nvidia/tls/libnvidia-tls.so.1.0.8178
TEXTREL usr/lib32/opengl/nvidia/no-tls/libnvidia-tls.so.1.0.8178
TEXTREL usr/lib32/opengl/nvidia/lib/libGLcore.so.1.0.8178
TEXTREL usr/lib32/opengl/nvidia/lib/libGL.so.1.0.8178


QA Notice: the following files contain executable stacks
 Files with executable stacks will not work properly (or at all!)
 on some architectures/operating systems.  A bug should be filed
 at http://bugs.gentoo.org/ to make sure the file is fixed.
RWX --- --- usr/lib64/xorg/libXvMCNVIDIA.so.1.0.8178
--- --- RWX usr/lib64/opengl/nvidia/extensions/libglx.so
--- --- RWX usr/lib64/opengl/nvidia/lib/libGLcore.so.1.0.8178
RWX --- RWX usr/lib64/opengl/nvidia/lib/libGL.so.1.0.8178
--- --- RWX usr/lib32/opengl/nvidia/lib/libGLcore.so.1.0.8178
--- --- RWX usr/lib32/opengl/nvidia/lib/libGL.so.1.0.8178
Comment 2 Deny Wilson 2005-12-26 18:27:20 UTC
I'm not sure if this is related (seems to me that it would be), but on AMD64, the libGLcore is no longer properly symlinked.  No OpenGL programs open with this version (1.0.8178) emerged.
Comment 3 Kris Kersey (RETIRED) gentoo-dev 2006-01-06 07:34:37 UTC
Since we can't fix the binary files that NVIDIA provides, I'm going to mark this as CANTFIX.  I don't know why these errors are there now, seems like this could be a problem for many binary packages.
Comment 4 Carsten Lohrke (RETIRED) gentoo-dev 2006-09-23 11:01:54 UTC
*** Bug 148789 has been marked as a duplicate of this bug. ***
Comment 5 Abraham Marin Perez 2006-10-09 02:15:36 UTC
Would it be possible to add RESTRICT="stricter" so the ebuild won't fail for those who enabled that feature? I did it in my portage overlay and seems to work perfectly...

Comment 6 Chris Gianelloni (RETIRED) gentoo-dev 2006-10-09 06:34:01 UTC
Well, adding RESTRICT="stricter" isn't the answer in this case.
Comment 7 Chris Gianelloni (RETIRED) gentoo-dev 2006-10-09 06:34:30 UTC
Instead, I added the QA variables to nvidia-drivers and nvidia-legacy drivers.
Comment 8 Abraham Marin Perez 2006-10-10 01:03:59 UTC
OK, didn't know about those QA variables, maybe that's the reason I'm not a gentoo dev :-P.
Comment 9 Abraham Marin Perez 2006-11-08 06:56:14 UTC
This bug has been marked as resolved but the problem seems to be yet around. I recently tried to update nvidia-drivers to 1.0.8776 and found the following errors:

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 this file in your report:
 /var/tmp/portage/nvidia-drivers-1.0.8776/temp/scanelf-textrel.log
TEXTREL usr/lib/xorg/modules/drivers/nvidia_drv.so
TEXTREL usr/lib/libXvMCNVIDIA.so.1.0.8776


QA Notice: the following files contain executable stacks
 Files with executable stacks will not work properly (or at all!)
 on some architectures/operating systems.  A bug should be filed
 at http://bugs.gentoo.org/ to make sure the file is fixed.
 For more information, see http://hardened.gentoo.org/gnu-stack.xml
 Please include this file in your report:
 /var/tmp/portage/nvidia-drivers-1.0.8776/temp/scanelf-execstack.log
--- --- RWX usr/lib/opengl/nvidia/lib/libGL.so.1.0.8776
--- --- RWX usr/lib/opengl/nvidia/lib/libGLcore.so.1.0.8776
--- --- RWX usr/lib/opengl/nvidia/extensions/libglx.so

Although some QA variables have been included inside the ebuild, the files with text relocations aren't covered by them. The funny point is that the ones with executable stacks are indeed covered by QA variables and yet there they are...


#######################
emerge --info

Portage 2.1.1-r1 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.3.5-r2, 2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 AMD Athlon(tm) XP 1700+
Gentoo Base System version 1.12.6
Last Sync: Wed, 08 Nov 2006 09:50:01 +0000
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: [Not Present]
dev-lang/python:     2.3.5-r2, 2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.13-r4
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.8.1-r1, 2.6.17-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=athlon-xp"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=athlon-xp"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict stricter test"
GENTOO_MIRRORS="http://ftp.caliu.info/pub/gentoo/ http://mirror.ovh.net/gentoo-distfiles/"
LANG="es_ES.UTF-8@euro"
LC_ALL="es_ES.UTF-8@euro"
LINGUAS="es en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow X a52 acpi alsa apache2 asf audiofile avi bash-completion bidi bitmap-fonts bzip2 bzlib canna cdr cjk cli cracklib crypt cups dbus dga directfb divx4linux dlloader doc dri dvb dvd dvdr dvdread eds elibc_glibc emboss encode esd evo exif fbcon fftw firefox flac foomaticdb freewnn ftp gb gcj gd gdbm gif glut gmp gnome gpm gstreamer gtk gtk2 gtkhtml hal iconv imlib input_devices_evdev input_devices_keyboard input_devices_mouse iodbc isdnlog java jikes jpeg kde kernel_linux libg++ libwww linguas_en linguas_es mad memlimit mikmod mime mmx motif mozilla mp3 mpeg msn nas nls nptl nptlonly nsplugin nvidia odbc offensive ogg oggvorbis openal opengl pam pcre pdflib perl png pnp posix ppds pppd qt3 qt4 quicktime readline reflection sdl session sharedmem simplexml spell spl ssl svg svga sysvipc szip tcltk tcpd tetex theora threads tiff truetype truetype-fonts type1-fonts udev unicode usb userland_GNU video_cards_nvidia videos vorbis win32codecs wmf x86 xine xml xorg xprint xv xvid zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Comment 10 Abraham Marin Perez 2006-11-08 07:09:56 UTC
Created attachment 101468 [details]
Executable stacks log file, as requested.
Comment 11 Abraham Marin Perez 2006-11-08 07:11:14 UTC
I couldn't attach text relocations log file due to it being too large (about 8MB). If it is necessary I'll make it available somehow.
Comment 12 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2006-11-12 06:45:58 UTC
--- --- RWX usr/lib/opengl/nvidia/lib/libGL.so.1.0.9629
--- --- RWX usr/lib/opengl/nvidia/lib/libGLcore.so.1.0.9629
--- --- RWX usr/lib/opengl/nvidia/extensions/libglx.so


!!! ERROR: x11-drivers/nvidia-drivers-1.0.9629 failed.
Call stack:
  misc-functions.sh, line 439:   Called install_qa_check
  misc-functions.sh, line 165:   Called die
Comment 13 Josh Nichols (RETIRED) gentoo-dev 2006-12-02 01:29:31 UTC
Still an issue with 1.0.9742 on amd64:

QA Notice: the following files contain executable stacks
 Files with executable stacks will not work properly (or at all!)
 on some architectures/operating systems.  A bug should be filed
 at http://bugs.gentoo.org/ to make sure the file is fixed.
 For more information, see http://hardened.gentoo.org/gnu-stack.xml
 Please include this file in your report:
 /var/tmp/portage/x11-drivers/nvidia-drivers-1.0.9742/temp/scanelf-execstack.log
--- --- RWX usr/lib32/opengl/nvidia/lib/libGL.so.1.0.9742
--- --- RWX usr/lib32/opengl/nvidia/lib/libGLcore.so.1.0.9742
--- --- RWX usr/lib64/opengl/nvidia/lib/libGL.so.1.0.9742
--- --- RWX usr/lib64/opengl/nvidia/lib/libGLcore.so.1.0.9742
--- --- RWX usr/lib64/opengl/nvidia/extensions/libglx.so
RWX --- --- usr/lib64/xorg/modules/drivers/nvidia_drv.so
RWX --- --- usr/lib64/libXvMCNVIDIA.so.1.0.9742
Comment 14 Chris Gianelloni (RETIRED) gentoo-dev 2006-12-04 08:22:01 UTC
This should be fixed now.  What is really strange is that I *have* the QA_EXECSTACK_* stuff defined, but I still get notices.  I'm not really sure what's going on here, but I'm leaving this open for now.
Comment 15 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2006-12-05 15:04:13 UTC
It's really weird indeed. I know of other package (dev-java/ibm-jdk-bin-1.5.0.3-r1) which also defines these variables, and also some files have both execstacks and texrels, like here, but there's no problem, unlike here.
Comment 16 Sandro Bonazzola (RETIRED) gentoo-dev 2007-01-15 19:21:39 UTC
Portage people, seems that here we have an ebuild with QA_EXECSTACK_* ignored by portage (tested with sys-apps/portage-2.1.2 and previous) This could be a portage bug, so maybe it's better let you know about this.
Comment 17 SpanKY gentoo-dev 2007-01-15 21:01:46 UTC
make sure you're using the latest ~arch pax-utils and see if it is still a problem
Comment 18 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-01-15 22:35:45 UTC
Ahh, I see the problem. Files reported like "RWX --- ---" are fixed with QA_EXECSTACK, but the files "--- --- RWX" need QA_WX_LOAD.
meh
Comment 19 Sandro Bonazzola (RETIRED) gentoo-dev 2007-01-18 19:18:53 UTC
Created attachment 107388 [details]
ebuild updated fixing this issue for _amd64.

As reported by caster on comment #18, RWX need QA_WX_LOAD. In QA_EXECSTACK there were some library not listed. Fixed those issues for _amd64.

I still see a QA message using this ebuild:

 * QA Notice: Found an absolute symlink in a library directory:
 *            usr/lib64/libXvMCNVIDIA.so -> /usr/lib64/libXvMCNVIDIA.so.1.0.9746
 *            It should be a relative symlink if in the same directory
 *            or a linker script if it crosses the /usr boundary.
Comment 20 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2007-01-18 23:42:40 UTC
Created attachment 107402 [details, diff]
patch for x86 and symlink

QA_EXECSTACK_x86 changed to QA_WX_LOAD_x86

that absolute symlink made relative
Comment 21 Chris Gianelloni (RETIRED) gentoo-dev 2007-02-07 12:31:19 UTC
Thanks Vlastimil!