While emerging nvidia-drivers-361.28-r2 it fails with: FATAL: modpost: GPL-incompatible module nvidia-uvm.ko uses GPL-only symbol '__init_work' /usr/src/linux-4.1.15-gentoo-r1/scripts/Makefile.modpost:90: recipe for target '__modpost' failed Curiously enoguh it fails with the same error even with USE="-uvm" (just a try, I need the uvm feature) In addition to that nvidia-drivers-358.xxx fail on the kms module, regardless the corresponding use flag is set or no.
# emerge --info Portage 2.2.26 (python 3.4.3-final-0, default/linux/amd64/13.0, gcc-4.9.3, glibc-2.21-r2, 4.1.15-gentoo-r1 x86_64) ================================================================= System uname: Linux-4.1.15-gentoo-r1-x86_64-Intel-R-_Core-TM-_i7-4702MQ_CPU_@_2.20GHz-with-gentoo-2.2 KiB Mem: 16318348 total, 13328572 free KiB Swap: 4466388 total, 4466388 free Timestamp of repository gentoo: Thu, 10 Mar 2016 18:30:01 +0000 sh bash 4.3_p42-r1 ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 ccache version 3.1.9 [enabled] app-shells/bash: 4.3_p42-r1::gentoo dev-java/java-config: 2.2.0::gentoo dev-lang/perl: 5.20.2::gentoo dev-lang/python: 2.7.10-r1::gentoo, 3.4.3-r1::gentoo dev-util/ccache: 3.1.9-r4::gentoo dev-util/cmake: 3.3.1-r1::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.2::gentoo sys-apps/openrc: 0.19.1::gentoo sys-apps/sandbox: 2.10-r1::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69::gentoo sys-devel/automake: 1.9.6-r4::gentoo, 1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15::gentoo sys-devel/binutils: 2.25.1-r1::gentoo sys-devel/gcc: 4.8.5::gentoo, 4.9.3::gentoo sys-devel/gcc-config: 1.7.3::gentoo sys-devel/libtool: 2.4.6::gentoo sys-devel/make: 4.1-r1::gentoo sys-kernel/linux-headers: 4.3::gentoo (virtual/os-headers) sys-libs/glibc: 2.21-r2::gentoo Repositories: gentoo location: /sync/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-extra-opts: --exclude-from=/etc/portage/rsync_excludes --timeout=23 myebs location: /sync/gentoo/myebs masters: gentoo priority: 0 java location: /var/lib/layman/java sync-type: laymansync sync-uri: git://anongit.gentoo.org/proj/java.git masters: gentoo priority: 50 science location: /var/lib/layman/science sync-type: laymansync sync-uri: git://anongit.gentoo.org/proj/sci.git masters: gentoo priority: 50 Installed sets: @system ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=core-avx2 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=core-avx2 -O2 -pipe" DISTDIR="/sync/gentoo/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/ ftp://ftp.df.lth.se/pub/gentoo/ ftp://de-mirror.org/gentoo/ http://ftp.vectranet.pl/gentoo/ http://130.230.54.100/gentoo ftp://gd.tuwien.ac.at/opsys/linux/gentoo/ ftp://192.35.244.50/opsys/linux/gentoo/ http://trumpetti.atm.tut.fi/gentoo/" LANG="en_GB.UTF-8" LC_ALL="en_GB.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,now -Wl,--hash-style=gnu" MAKEOPTS="-j1" PKGDIR="/sync/gentoo/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes --timeout=23" 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="/hugetmp/portage" USE="R X a52 aac aalib abm acl acpi aes alsa amd64 apache2 apm aspell audiofile avi avx avx2 bcmath berkdb bitmap-fonts bmi bmi2 bmp bzip2 bzip2cairo cairo caps cdparanoia cdr cli clibpdf consolekit cracklib crypt cscope ctype cuda cups cx16 cxx dbus dbx diet dillo dio directfb divx4linux dri dv dvb dvd dvdr dvdread emul-linux-86 encode examples exif expat f16c f90 f95 fam fbcon ffmpeg fftw flac flash fma foomaticdb fortran fortran90 fortran95 fsgsbase g95 gcj gd gdbm geforce gfortran ggi gif ginac glut glx gmp gnutls gphoto2 gpl gpm gstreamer gtk gtk3 gtkhtml guile hal handbook hardened hardenedphp hdf5 hdtemp headphones html2ps iconv ieee1394 inifile innodb int64 ipv6 itls jabber jack jikes jpeg junit ladcca lcms ldap libcaca libnotify libwww lm_sensors lzcnt m17n-lib mad man mhash mikmod mime ming mjpeg mmx mmxext mng modules motif movbe mp3 mpeg mplayer msession multilib mysql mysqli ncurses netcdf nforce nls no-fma4 no-lwp no-tbm no-xop nptl nsplugin nvidia nvidia-glx objc ocamlopt ofx ogg openal opengl openmp osc pam pango pclmul pcre pdflib perl php plotutils png policykit popcnt portaudio ppds pthreads python qdbm qt qt3support qt4 quicktime radius rdrnd readline ruby sahf samba scanner sdl seccomp session sharedext shorten simplexml slp smp smu sndfile speex spell spl sse sse2 sse3 sse4_1 sse4_2 ssl ssse3 svg szip tcl tcp tcpd tetex theora threads tidy tiff tk tokenizer truetype truetype-fonts type1-fonts udev unicode usb vcd videos vim-syntax vorbis wddx wifi win32codecs wireless wmf wxwidgets xattr xfce xfce4 xft xine xml xmlrpc xmms xosd xpm xscreensaver xsl xv xvid xvmc zlib" ABI_X86="64 32" ALSA_CARDS="hda-intel" APACHE2_MODULES="access auth auth_dbm auth_anon authn_core auth_digest authz_core authz_host alias file-cache echo charset-lite cache disk-cache mem-cache ext-filter case_filter case-filter-in deflate filter mime-magic cern-meta expires headers usertrack unique_id proxy proxy-connect proxy-ftp proxy-http info include cgi dav dav-fs vhost-alias speling rewrite log_config logio env setenvif mime status autoindex asis negotiation dir imap actions unixd userdir so socache_shmcb" 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" CPU_FLAGS_X86="abm aes avx avx2 bmi bmi2 f16c fsgsbase fma fma3 no-fma4 lzcnt mmx mmxext no-lwp no-tbm no-xop pclmul pni popcnt rdrnd sse sse2 sse3 sse4_1 sse4_2 ssse3" 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 ublox 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" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" SANE_BACKENDS="epson epson2 canon canon630u canon_dr canon_pp" USERLAND="GNU" VIDEO_CARDS="nvidia vesa" 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: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON
(In reply to disperato from comment #0): Forgot to add that nvidia-drivers-355.11-r2 emerges and works fine.
Please attach the entire build log to this bug report.
Created attachment 428230 [details] nvidia-drivers-361.28-r2.log Here is the complete build log
I can't reproduce that. Can you attach your kernel .config and post your `emerge -vpq sys-kernel/gentoo-sources`?
Created attachment 428250 [details] .config
# emerge -vpq gentoo-sources [ebuild R ] sys-kernel/gentoo-sources-4.1.15-r1 USE="-build -experimental -kdbus -symlink" Please note that I adjust the symlink manually or by a very simple script when switching to newly compiled kernel or choosing it from lilo/grub. Basically it links based upon uname command, and this works fine from ages for me, so the problem cannot be there: # ls -l /usr/src/ linux -> /usr/src/linux-4.1.15-gentoo-r1 Also note that while in my 'emerge --info' output you can see MAKEOPTS="-j1" it was just a try, I usually compile using all cores+1. The emerge error for this bug is just the same.
The same issue happens with nvidia-drivers 370.28.
(In reply to jorgicio from comment #8) > The same issue happens with nvidia-drivers 370.28. Upgrading to kernel 4.4.21, stable as of today's --sync causes the same issue, in symbol mutex_destroy
(In reply to Carter Young from comment #9) > (In reply to jorgicio from comment #8) > > The same issue happens with nvidia-drivers 370.28. > > Upgrading to kernel 4.4.21, stable as of today's --sync causes the same > issue, in symbol mutex_destroy Works fine in 4.4.6, with uvm enabled. Both are listed in my grub2 config
Tried again today. I tried to compile several versions of nvidia-drivers above 355.11-r4, on kernels 4.1.27, 4.1.33, 4.4.21 (and 4.7.6, 4.8.0). For 4.7.6 and 4.8.0 failure is due to wrong path searched by the installer, because their are still unsupported for usage with nvidia-drivers. For 4.1.x and 4.4.x here is the workaround: in file /usr/sr/linux-4.x.xx/ change the line EXPORT_SYMBOL_GPL(__init_work); with EXPORT_SYMBOL(__init_work); that might be done by a patch.
(In reply to Carter Young from comment #9) > (In reply to jorgicio from comment #8) > > The same issue happens with nvidia-drivers 370.28. > > Upgrading to kernel 4.4.21, stable as of today's --sync causes the same > issue, in symbol mutex_destroy Tried the following? Change the line: EXPORT_SYMBOL_GPL(mutex_destroy); into: EXPORT_SYMBOL(mutex_destroy); in your gentoo-source's file /usr/src/linux/4.4.21/kernel/locking/mutex-debug.c Or, more correctly, as pointed out on forum, disabling CONFIG_DEBUG_MUTEXES=n (I already had it disabled, so the next error you may incur after this change is that '__init_work')
I am going to close this now as it's becoming a forum for bad advice.