Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 736513 - x11-drivers/nvidia-drivers-390.138-r1 with linux kernel 5.8.0 - FATAL: modpost: GPL-incompatible module nvidia-uvm.ko uses GPL-only symbol 'radix_tree_preloads'
Summary: x11-drivers/nvidia-drivers-390.138-r1 with linux kernel 5.8.0 - FATAL: modpos...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Jeroen Roovers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-08-09 12:57 UTC by N. Andrew Walsh
Modified: 2020-08-25 13:25 UTC (History)
3 users (show)

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


Attachments
build.log (build.log,411.96 KB, text/plain)
2020-08-09 12:59 UTC, N. Andrew Walsh
Details

Note You need to log in before you can comment on or make changes to this bug.
Description N. Andrew Walsh 2020-08-09 12:57:45 UTC
5.8 kernels are blocking nvidia-drivers from circumventing GPL protections of the kernel. Compilation of nvidia-drivers-390.138-r1 fails with the following error:

  sed 's/ko$/o/' /var/tmp/portage/x11-drivers/nvidia-drivers-390.138-r1/work/kernel/modules.order | scripts/mod/modpost     -o /var/tmp/portage/x11-drivers/nvidia-drivers-390.138-r1/work/kernel/Module.symvers -e -i Module.symvers   -T -
FATAL: modpost: GPL-incompatible module nvidia-uvm.ko uses GPL-only symbol 'radix_tree_preloads'
make[2]: *** [scripts/Makefile.modpost:111: /var/tmp/portage/x11-drivers/nvidia-drivers-390.138-r1/work/kernel/Module.symvers] Error 1
make[1]: *** [Makefile:1669: modules] Error 2
make[1]: Leaving directory '/usr/src/linux-5.8.0-gentoo-r1'
make: *** [Makefile:81: modules] Error 2


Reproducible: Always




    priority: 50

stefantalpalaru
    location: /var/portage/repos/stefantalpalaru
    masters: gentoo
    priority: 50

danrepo
    location: /var/db/repos/danrepo
    sync-type: git
    sync-uri: https://github.com/ferion11/danrepo.git
    masters: gentoo
    priority: 9999

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=bdver2 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
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="-march=bdver2 -O2 -pipe"
DISTDIR="/var/portage/distfiles"
EMERGE_DEFAULT_OPTS="--autounmask=n"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://gentoo.mirror.dkm.cz/pub/gentoo/ http://ftp.fi.muni.cz/pub/linux/gentoo/ http://gentoo.mirror.web4u.cz/ ftp://gentoo.mirror.web4u.cz/ ftp://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://mirror.netcologne.de/gentoo/ ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo http://gentoo.mneisen.org/ ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ ftp://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp6.uni-erlangen.de/pub/mirrors/gentoo ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://mirror.netcologne.de/gentoo/ ftp://ftp6.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp6.uni-muenster.de/pub/linux/distributions/gentoo http://ftp.uni-erlangen.de/pub/mirrors/gentoo http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp.ipv6.uni-muenster.de/pub/linux/distributions/gentoo ftp://gentoo.inf.elte.hu/ http://gentoo.inf.elte.hu/ http://ftp.heanet.ie/pub/gentoo/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_US en_US.utf8 de de_DE de_DE.utf8"
MAKEOPTS="-j9"
PKGDIR="/var/cache/binpkgs"
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 --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X Xaw3d a52 aac acl acpi aim alsa amd64 apm audiofile bash-completion berkdb bzip2 cairo cddb cdinstall cdparanoia cdr cli cracklib crypt css curl curlwrappers cxx dbus directfb dri dvd dvdr encode fbcon ffmpeg fftw firefox flac fortran ftp gdbm geoip gif gimp glut graphite gstreamer gtk hddtemp iconv icq ieee1394 imagemagick imap imlib ipv6 jack java javascript joystick jpeg lame latex ldap libsamplerate libtirpc libwww lm_sensors mad matroska minimal mmx motif mp3 mpeg mplayer multilib ncurses nls nptl nsplugin offensive ogg openal opengl openmp openssl oscar pam pcre pdf perl png policykit posix python qt5 quicktime raw readline real rss scanner seccomp semantic-desktop sndfile sockets speex spell split-usr ssl suid svg symlink syslog tcl tcpd tetex theora threads tidy tiff tk translucency truetype udev unicode usb vaapi vdpau videos vorbis win32codecs wmf wxwindows x264 xattr xcomposite xetex xine xml xpm xscreensaver xulrunner xv xvid xvmc zlib" ABI_X86="64 32" ADA_TARGET="gnat_2018" ALSA_CARDS="hda-intel usb-audio" 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="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" L10N="en-US de" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2 php7-3" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_8" PYTHON_TARGETS="python3_7 python3_8" RUBY_TARGETS="ruby27" USERLAND="GNU" VIDEO_CARDS="nvidia" 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, INSTALL_MASK, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 N. Andrew Walsh 2020-08-09 12:59:19 UTC
Created attachment 653919 [details]
build.log
Comment 2 Francois Chenier 2020-08-13 23:46:47 UTC
Until kernel guys or nVidia fix the issue we are doomed. Why on hell kernel guys protect radix_tree_preloads symbol but not all others radix_tree_* related symbols? This remains a mystery for me.

See here to how to patch the kernel and make radix_tree_preloads symbol visible again.

https://www.spinics.net/lists/linux-fsdevel/msg173844.html
Comment 3 Jeroen Roovers gentoo-dev 2020-08-14 09:11:15 UTC
You had been warned:

 * Package:    x11-drivers/nvidia-drivers-390.138-r1
 * Repository: gentoo
 * Maintainer: jer@gentoo.org
 * USE:        X abi_x86_32 abi_x86_64 amd64 driver elibc_glibc gtk3 kernel_linux kms multilib tools userland_GNU
 * FEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found sources for kernel version:
 *     5.8.0-gentoo-r1
 * Gentoo supports kernels which are supported by NVIDIA
 * which are limited to the following kernels:
 * <sys-kernel/gentoo-sources-5.8
 * <sys-kernel/vanilla-sources-5.8
 *
 * You are free to utilize eapply_user to provide whatever
 * support you feel is appropriate, but will not receive
 * support as a result of those changes.
 *
 * Do not file a bug report about this.

And you ignored the warning.
Comment 4 Jeroen Roovers gentoo-dev 2020-08-14 09:13:38 UTC
>>> Preparing source in /var/tmp/portage/x11-drivers/nvidia-drivers-390.138-r1/work ...
 * Applying nvidia-settings-fno-common.patch ...
 [ ok ]
 * Applying nvidia-settings-linker.patch ...
 [ ok ]
 * Applying kernel-5.8-vmalloc.patch ...
 [ ok ]
 * User patches applied.

Also also.
Comment 5 Jeroen Roovers gentoo-dev 2020-08-14 09:16:09 UTC
Actually.
Comment 6 email200202 2020-08-22 07:38:37 UTC
Hi N. Andrew Walsh

Can you please attach the user patches that you used:

nvidia-settings-fno-common.patch
nvidia-settings-linker.patch
kernel-5.8-vmalloc.patch

I'm looking for patches for nvidia-drivers to work with kernel 5.8.