Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 528108

Summary: x11-drivers/nvidia-drivers-343.22-r2 - .../work/kernel/nv-linux.h:199:2: error: #error "This driver requires the ability to change memory types!"
Product: Gentoo Linux Reporter: Nikolaos Chatzidakis <nikhatzi>
Component: Current packagesAssignee: David Seifert <soap>
Status: RESOLVED OBSOLETE    
Severity: normal CC: andrey.vul, b.buschinski, crazy-ivanovic, jlec, mike, silvio.gerli, sven.eden
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: nvidia-drivers-343.22-r2 build log
environment
environment
build.log
build.log
build.log with verbose contest.sh

Description Nikolaos Chatzidakis 2014-11-03 11:00:33 UTC
Created attachment 388410 [details]
nvidia-drivers-343.22-r2 build log

I tried to emerge nvidia-drivers after updating gentoo-sources to 3.17.2. I attache my build.log. Here is my portage info:

Portage 2.2.14 (python 2.7.8-final-0, default/linux/amd64/13.0/desktop/kde, gcc-4.8.3, glibc-2.19-r1, 3.17.1-gentoo-r1 x86_64)
=================================================================
System uname: Linux-3.17.1-gentoo-r1-x86_64-Intel-R-_Core-TM-_i7-3820_CPU_@_3.60GHz-with-gentoo-2.2
KiB Mem:    16352500 total,  11870572 free
KiB Swap:    4194300 total,   4194300 free
Timestamp of tree: Mon, 03 Nov 2014 09:45:01 +0000
ld GNU ld (GNU Binutils) 2.24
ccache version 3.1.10 [enabled]
app-shells/bash:          4.3_p30
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r2
dev-lang/python:          2.7.8, 3.3.5-r1, 3.4.1
dev-util/ccache:          3.1.10-r1
dev-util/cmake:           3.0.2
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.2
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.14.1
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.8.3
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.3-r2
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 3.17-r1 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories: gentoo
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=corei7-avx -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/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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=corei7-avx -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--jobs=10 --quiet-build=y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs ccache config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://ftp.ntua.gr/pub/linux/gentoo/"
LANG="el_GR.UTF-8"
LC_ALL="el_GR.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
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=""
SYNC="rsync://rsync.gr.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 berkdb branding bzip2 cairo cdda cdr cleartype cli consolekit corefonts cracklib crypt cups cxx dbus declarative dri dts dvd dvdr embedded emboss encode exif fam firefox flac fontconfig fortran gdbm gif glamor gpm gtk iconv ipv6 jack jpeg kde kipi lcms ldap libnotify mad mmx mng modules mp3 mp4 mpeg msn multilib ncurses nls nptl nsplugin ogg opengl openmp pam pango pcre pdf phonon plasma png policykit ppds pulseaudio qt3support qt4 readline sdl session spell sse sse2 sse3 sse4 sse4.1 ssl ssse3 startup-notification svg tcpd threads tiff truetype udev udisks unicode upower usb v4l vaapi vdpau vorbis wxwidgets x264 xcb xcomposite xinerama xml xscreensaver xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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 ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="el en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" 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:  CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-03 11:32:25 UTC
The bit of code that fails seems to be:

#if !defined(NV_VMWARE) && !defined(NVCPU_FAMILY_ARM) && !defined(NVCPU_PPC64LE)

You're not in one of those categories.

#if !defined(NV_SET_MEMORY_UC_PRESENT) && !defined(NV_SET_PAGES_UC_PRESENT) && \
  !defined(NV_CHANGE_PAGE_ATTR_PRESENT)

So one of these must be failing to get this error printed:

#error "This driver requires the ability to change memory types!"
#endif
#endif
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-03 11:34:07 UTC
(In reply to Jeroen Roovers from comment #1)
> The bit of code that fails seems to be:

> #if !defined(NV_SET_MEMORY_UC_PRESENT) && !defined(NV_SET_PAGES_UC_PRESENT)
> && \
>   !defined(NV_CHANGE_PAGE_ATTR_PRESENT)
> 
> So one of these must be failing to get this error printed:

Correction: /all/ of these must be failing.
Comment 3 Nikolaos Chatzidakis 2014-11-03 11:35:10 UTC
I look into this issue several days now but can't think of any solution... I clean-built my kernel again, deleted my /var/tmp/portage and my nvidia installers in /usr/portage/distfiles but none of these worked... Do you want me to test here something for you? Thank you for your time and effort working on this issue. :)
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-03 12:05:34 UTC
Do you have KBUILD_OUTPUT set in your environment? I.e. please attach the environment file mentioned in the build log.
Comment 5 Nikolaos Chatzidakis 2014-11-03 12:14:51 UTC
Created attachment 388414 [details]
environment

Here is my environment file. Thank you for your time.
Comment 6 Micke Eriksson 2014-11-04 01:11:22 UTC
I have the same problem but on 340.46, tried several older kernels...same problem.

Portage 2.2.14 (python 3.3.5-final-0, default/linux/amd64/13.0, gcc-4.8.3, glibc-2.19-r1, 3.17.0-gentoo x86_64)
=================================================================
System uname: Linux-3.17.0-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q6600_@_2.40GHz-with-gentoo-2.2
KiB Mem:     4052760 total,    115880 free
KiB Swap:    2097148 total,   2088116 free
Timestamp of tree: Mon, 03 Nov 2014 19:30:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
ccache version 3.1.10 [enabled]
app-shells/bash:          4.3_p30
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r2
dev-lang/python:          2.7.8, 3.3.5-r1, 3.4.2
dev-util/ccache:          3.1.10-r1
dev-util/cmake:           3.0.2
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.2
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3, 1.11.6, 1.14.1
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.8.3
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.3-r2
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 3.17-r1 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories: gentoo steam-overlay megacoffee
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -O2 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /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/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"
CXXFLAGS="-march=core2 -O2 -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going"
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 strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://ftp.df.lth.se/pub/gentoo/"
LANG="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3"
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="/var/lib/layman/steam /var/lib/layman/megacoffee"
USE="X acl alsa amd64 apache berkdb bzip2 cli consolekit cracklib crypt cxx dbus dri fortran gdbm gstreamer gtk iconv ipv6 jpeg lirc lm_sensors mad mmx mng modules mp3 multilib mysql ncurses nls nptl nptlonly opengl openmp pam pcre php png policykit qt3support qt4 readline samba semantic-desktop session sql sse sse2 ssl ssse3 startup-notification svg tcpd thunar udev unicode usb vdpau webkit zlib" ABI_X86="64" ALSA_CARDS="ctxfi" 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 ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" LIRC_DEVICES="userspace" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="plustek" 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"
USE_PYTHON="2.7 3.3"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, SYNC
Comment 7 Micke Eriksson 2014-11-04 01:12:44 UTC
Created attachment 388488 [details]
environment
Comment 8 Micke Eriksson 2014-11-04 01:14:32 UTC
Created attachment 388490 [details]
build.log
Comment 9 Justin Lecher (RETIRED) gentoo-dev 2014-11-05 08:02:51 UTC
Same here.
Comment 10 Justin Lecher (RETIRED) gentoo-dev 2014-11-05 08:06:11 UTC
Failes with linux-3.17.{1,2}*
Comment 11 Andrey Vul 2014-11-05 09:19:10 UTC
Same failure for x11-drivers/nvidia-drivers-340.46.
Comment 12 Justin Lecher (RETIRED) gentoo-dev 2014-11-05 10:05:27 UTC
These are the packages I emerged after the last successful merge with linux-3.17.1

Mon Nov  3 08:23:14 2014 >>> app-portage/eclass-manpages-20130110
Mon Nov  3 08:28:57 2014 >>> x11-terms/finalterm-9999
Mon Nov  3 08:29:08 2014 >>> www-client/pybugz-9999
Mon Nov  3 08:54:53 2014 >>> dev-libs/mpfr-3.1.2_p10
Mon Nov  3 08:55:06 2014 >>> dev-libs/mpc-1.0.2-r1
Mon Nov  3 08:55:21 2014 >>> net-libs/libotr-4.1.0
Mon Nov  3 08:55:29 2014 >>> sys-boot/gnu-efi-3.0u
Mon Nov  3 08:55:45 2014 >>> sys-kernel/linux-headers-3.17-r1
Mon Nov  3 08:56:15 2014 >>> dev-java/tomcat-servlet-api-6.0.41
Mon Nov  3 09:18:19 2014 >>> dev-lang/vala-0.22.1
Mon Nov  3 09:21:08 2014 >>> sys-devel/gcc-4.9.2
Mon Nov  3 09:21:20 2014 >>> app-text/iso-codes-3.57
Mon Nov  3 09:21:31 2014 >>> dev-libs/libltdl-2.4.3
Mon Nov  3 09:21:58 2014 >>> sys-devel/libtool-2.4.3-r2
Mon Nov  3 09:22:25 2014 >>> media-libs/libgphoto2-2.5.5.1
Mon Nov  3 09:23:09 2014 >>> dev-vcs/git-2.1.3
Mon Nov  3 09:25:20 2014 >>> media-video/ffmpeg-2.2.10
Mon Nov  3 09:27:39 2014 >>> app-emulation/qemu-2.1.2-r1
Mon Nov  3 09:27:50 2014 >>> media-gfx/pngcrush-1.7.78
Mon Nov  3 09:29:37 2014 >>> media-gfx/shotwell-0.20.2
Mon Nov  3 09:29:47 2014 >>> dev-python/mockldap-0.2.3
Mon Nov  3 09:30:00 2014 >>> x11-plugins/pidgin-otr-4.0.1
Mon Nov  3 09:30:19 2014 >>> app-emulation/docker-1.3.1
Mon Nov  3 09:30:33 2014 >>> app-shells/dash-0.5.8.1-r2
Mon Nov  3 09:31:19 2014 >>> sys-block/gparted-0.20.0
Mon Nov  3 09:31:32 2014 >>> dev-util/ccache-3.1.10-r1
Mon Nov  3 09:32:27 2014 >>> dev-python/pytables-3.1.1-r1
Mon Nov  3 09:43:28 2014 >>> dev-python/PyQt4-4.11.3_pre20141024
Mon Nov  3 09:43:46 2014 >>> sys-apps/iproute2-3.17.0
Mon Nov  3 09:43:58 2014 >>> dev-java/tomcat-servlet-api-7.0.56
Mon Nov  3 09:46:48 2014 >>> app-emulation/libvirt-1.2.9-r1
Mon Nov  3 09:47:00 2014 >>> dev-python/paramiko-1.15.1
Mon Nov  3 09:47:46 2014 >>> sys-boot/syslinux-6.03
Mon Nov  3 09:48:06 2014 >>> dev-python/logilab-common-0.62.1
Mon Nov  3 09:55:10 2014 >>> dev-java/oracle-jdk-bin-1.7.0.71
Mon Nov  3 10:41:11 2014 >>> gnome-extra/synapse-0.2.10
Mon Nov  3 12:26:04 2014 >>> media-gfx/tachyon-0.98.9-r2
Mon Nov  3 12:33:25 2014 >>> sci-chemistry/vmd-1.9.1-r3
Tue Nov  4 08:54:29 2014 >>> app-portage/eclass-manpages-20130110
Tue Nov  4 09:11:56 2014 >>> www-client/pybugz-9999
Tue Nov  4 09:30:44 2014 >>> sys-apps/openrc-0.13.3
Tue Nov  4 09:31:13 2014 >>> gnome-extra/synapse-0.2.10
Tue Nov  4 09:31:34 2014 >>> www-servers/nginx-1.7.7
Tue Nov  4 09:32:02 2014 >>> dev-lang/swig-3.0.2
Tue Nov  4 09:32:11 2014 >>> app-text/asciidoc-8.6.9-r1
Tue Nov  4 09:36:27 2014 >>> dev-lang/R-3.1.2
Tue Nov  4 09:36:45 2014 >>> dev-vcs/mercurial-3.2
Wed Nov  5 08:15:26 2014 >>> app-portage/eclass-manpages-20130110
Wed Nov  5 08:26:59 2014 >>> sci-chemistry/pymol-9999
Wed Nov  5 08:30:52 2014 >>> dev-db/sqlite-3.8.7.1
Wed Nov  5 08:31:06 2014 >>> dev-libs/libevdev-1.3
Wed Nov  5 08:31:26 2014 >>> x11-misc/xkeyboard-config-2.13
Wed Nov  5 08:31:38 2014 >>> app-admin/ansible-1.7.2
Wed Nov  5 08:31:53 2014 >>> app-admin/logrotate-3.8.8
Wed Nov  5 08:32:06 2014 >>> app-misc/scrub-2.6.1
Wed Nov  5 08:38:05 2014 >>> dev-java/oracle-jdk-bin-1.7.0.72
Wed Nov  5 08:51:52 2014 >>> sci-chemistry/cns-1.2.1-r8
Wed Nov  5 08:58:18 2014 >>> app-emulation/virtualbox-modules-4.3.18
Comment 13 Nikolaos Chatzidakis 2014-11-06 13:36:12 UTC
I tried reverting all of the updates I did before this bug occurred but the problem persists. I rebuilt my @system, rebuilt gcc, tried some patches I found on google for kernel sources 3.18 (beta) but none of them worked... I honestly don't know what may be the problem, other than incompatibility with the new kernel sources...
Comment 14 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-06 15:00:18 UTC
(In reply to Jeroen Roovers from comment #4)
> Do you have KBUILD_OUTPUT set in your environment?

Why has no one answered this simple question yet?
Comment 15 Justin Lecher (RETIRED) gentoo-dev 2014-11-06 15:01:50 UTC
(In reply to Jeroen Roovers from comment #14)
> Why has no one answered this simple question yet?

Not set here.

Portage 2.2.14 (python 2.7.8-final-0, default/linux/amd64/13.0, gcc-4.9.2, glibc-2.20, 3.17.1-lh-r1 x86_64)
=================================================================
System uname: Linux-3.17.1-lh-r1-x86_64-Intel-R-_Core-TM-_i7-2600_CPU_@_3.40GHz-with-gentoo-2.2
KiB Mem:    16400652 total,   3482640 free
KiB Swap:    8388600 total,   8297640 free
Timestamp of tree: Thu, 06 Nov 2014 07:00:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
ccache version 3.1.10 [enabled]
app-shells/bash:          4.3_p30
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r2
dev-lang/python:          2.7.8, 3.3.5-r1, 3.4.2
dev-util/ccache:          3.1.10-r1
dev-util/cmake:           3.0.2
dev-util/pkgconfig:       0.28-r2
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.3
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.12.6, 1.14.1
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.1.2, 4.8.3, 4.9.2
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.3-r2
sys-devel/make:           4.1-r1
sys-kernel/linux-headers: 3.17-r1 (virtual/os-headers)
sys-libs/glibc:           2.20
Repositories: gentoo sunrise betagarden dummy science last-hope
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -ftracer   -march=native -frecord-gcc-switches -g -fdiagnostics-color=always -Wimplicit-function-declaration -Wformat-security"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/eselect/ /usr/share/gnupg/qualified.txt /usr/share/nano/ /var/lib/hsqldb /var/spool/munin-async/.ssh /var/spool/torque"
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/terminfo"
CXXFLAGS="-O2 -pipe -ftracer   -march=native -frecord-gcc-switches -g -fdiagnostics-color=always -Wenum-compare -Wformat-security"
DISTDIR="/mnt/system/portage/distfiles"
EMERGE_DEFAULT_OPTS=" -vt --keep-going --autounmask-write --autounmask --quiet-build=n"
FCFLAGS="-O2 -pipe -ftracer   -march=native -frecord-gcc-switches -g -fdiagnostics-color=always"
FEATURES="assume-digests binpkg-logs buildsyspkg ccache cgroup collision-protect compressdebug distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news noinfo parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms sign split-log splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe -ftracer   -march=native -frecord-gcc-switches -g -fdiagnostics-color=always"
GENTOO_MIRRORS=" /mnt/tmpfs/ http://gentoo.j-schmitz.net/mirror/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo/"
LANG="en_GB.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common"
MAKEOPTS="-j12 -l8"
PKGDIR="/mnt/system/portage/packages"
PORTAGE_COMPRESS="xz"
PORTAGE_COMPRESS_FLAGS="-z -e -9 -v"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--omit-dir-times"
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="/var/db/portage"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /local/overlays/betagarden /local/overlays/dummy /local/overlays/sci /local/overlays/lh-overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl alsa amd64 avx bash-completion berkdb branding bzip2 cairo caps cli cracklib crypt cups cxx dbus dri fortran gdbm gif gmp gstreamer gtk gtk3 iconv icu ipv6 jpeg jpeg2k ldap logrotate mmx mmxext modules multilib ncurses network-cron nls nptl nsplugin numa opengl openmp pam pcre pgo png pulseaudio qt3support readline session smp sse sse2 sse2_4way sse2check sse3 sse4 sse41 sse4_1 sse4_2 sse4a sse5 ssl ssse3 startup-notification tcpd threads tiff truetype unicode vaapi vdpau xattr xinerama zlib" 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" DRACUT_MODULES="plymouth" 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" GRUB_PLATFORMS="efi-32 efi-64" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer pdfimport scripting-javascript wiki-publisher nlpsolver" LINGUAS="en" NGINX_MODULES_HTTP="access auth_basic autoindex browser charset empty_gif fastcgi geo gzip limit_conn limit_req map memcached proxy referer rewrite scgi split_clients ssi upstream_ip_hash userid uwsgi stub_status" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3 python3_4" QEMU_SOFTMMU_TARGETS="i386 x86_64 arm armeb" QEMU_USER_TARGETS="i386 x86_64 arm armeb" RUBY_TARGETS="ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia" XFCE_PLUGINS="clock trash power" 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"
USE_PYTHON="2.7 3.3 3.4"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND
Comment 16 Nikolaos Chatzidakis 2014-11-06 15:09:10 UTC
(In reply to Jeroen Roovers from comment #14)
> (In reply to Jeroen Roovers from comment #4)
> > Do you have KBUILD_OUTPUT set in your environment?
> 
> Why has no one answered this simple question yet?

Jeroen we provided the environment file as you requested in the same post, i thought that the variable you ask for is in that file...
Comment 17 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-06 15:11:28 UTC
(In reply to Nikolaos Chatzidakis from comment #16)
> (In reply to Jeroen Roovers from comment #14)
> > (In reply to Jeroen Roovers from comment #4)
> > > Do you have KBUILD_OUTPUT set in your environment?
> > 
> > Why has no one answered this simple question yet?
> 
> Jeroen we provided the environment file as you requested in the same post, i
> thought that the variable you ask for is in that file...

Well, I hoped it would be.
Comment 18 Micke Eriksson 2014-11-06 15:33:30 UTC
(In reply to Jeroen Roovers from comment #14)
> (In reply to Jeroen Roovers from comment #4)
> > Do you have KBUILD_OUTPUT set in your environment?
> 
> Why has no one answered this simple question yet?

No set here either.
Comment 19 Nikolaos Chatzidakis 2014-11-06 15:41:36 UTC
(In reply to Jeroen Roovers from comment #14)
> (In reply to Jeroen Roovers from comment #4)
> > Do you have KBUILD_OUTPUT set in your environment?
> 
> Why has no one answered this simple question yet?

I see that it's not set here either.
Comment 20 Micke Eriksson 2014-11-06 23:22:06 UTC
nvidia-drivers-340.58 is out and they have the same issue
Comment 21 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-06 23:25:05 UTC
(In reply to Micke Eriksson from comment #20)
> nvidia-drivers-340.58 is out and they have the same issue

Yes, I know. I put the ebuild there. But I don't have this issue, so I can't fix it until I can figure out what is going wrong and reproduce it locally.
Comment 22 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-06 23:26:07 UTC
Does it help to set KBUILD_OUTPUT (to an empty value)?
Comment 23 Sven Eden 2014-11-07 08:24:03 UTC
Please do an

ebuild ebuild /usr/portage/x11-drivers/nvidia-drivers/nvidia-drivers-343.22-r2.ebuild compile

Then please post the output of the conftest. The result is here:

<PORTAGE_TMPDIR>/portage/x11-drivers/nvidia-drivers-343.22-r2/work/kernel/conftest/functions.h

If all of the above are #undef, then it is a problem with your kernel configuration.

For reference, here is the output on my system, where the this driver compiles fine with a 3.16.7 kernel installed:

-----
 # grep -P "(SET_MEMORY|SET_PAGES|CHANGE_PAGE)" kernel/conftest/functions.h
#define NV_SET_PAGES_UC_PRESENT
#define NV_SET_MEMORY_UC_PRESENT
#define NV_SET_MEMORY_ARRAY_UC_PRESENT
#undef NV_CHANGE_PAGE_ATTR_PRESENT
-----

These are decided by three little test programs which simply call the appropriate functions. What is a bit weird is, that the text succeeds if the program can not be compiled (too few arguments).

btw: Which linux-headers do you have installed?
Comment 24 Nikolaos Chatzidakis 2014-11-07 09:18:10 UTC
(In reply to Sven Eden from comment #23)

> Then please post the output of the conftest. The result is here:
> 
> <PORTAGE_TMPDIR>/portage/x11-drivers/nvidia-drivers-343.22-r2/work/kernel/
> conftest/functions.h
> 
> If all of the above are #undef, then it is a problem with your kernel
> configuration.

My functions.h gives me:

#undef NV_REMAP_PAGE_RANGE_PRESENT
#undef NV_REMAP_PFN_RANGE_PRESENT
#undef NV_VMAP_PRESENT
#undef NV_SET_PAGES_UC_PRESENT
#undef NV_SET_MEMORY_UC_PRESENT
#undef NV_SET_MEMORY_ARRAY_UC_PRESENT
#undef NV_CHANGE_PAGE_ATTR_PRESENT
#undef NV_PCI_GET_CLASS_PRESENT
#undef NV_PCI_CHOOSE_STATE_PRESENT
#undef NV_VM_INSERT_PAGE_PRESENT
#undef NV_ACQUIRE_CONSOLE_SEM_PRESENT
#undef NV_CONSOLE_LOCK_PRESENT
#undef NV_KMEM_CACHE_CREATE_PRESENT
#undef NV_ON_EACH_CPU_PRESENT
#undef NV_SMP_CALL_FUNCTION_PRESENT
#define NV_ACPI_EVALUATE_INTEGER_PRESENT
typedef unsigned long long nv_acpi_integer_t;
#undef NV_IOREMAP_CACHE_PRESENT
#undef NV_IOREMAP_WC_PRESENT
#undef NV_ACPI_WALK_NAMESPACE_PRESENT
#undef NV_PCI_DOMAIN_NR_PRESENT
#define NV_PCI_DMA_MAPPING_ERROR_PRESENT
#define NV_PCI_DMA_MAPPING_ERROR_ARGUMENT_COUNT 2
#undef NV_SG_ALLOC_TABLE_PRESENT
#undef NV_SG_ALLOC_TABLE_FROM_PAGES_PRESENT
#undef NV_SG_INIT_TABLE_PRESENT
#undef NV_PCI_GET_DOMAIN_BUS_AND_SLOT_PRESENT
#undef NV_GET_NUM_PHYSPAGES_PRESENT
#undef NV_EFI_ENABLED_PRESENT
#undef NV_PROC_CREATE_DATA_PRESENT
#undef NV_PDE_DATA_PRESENT
#undef NV_PROC_REMOVE_PRESENT
#undef NV_PM_VT_SWITCH_REQUIRED_PRESENT
Comment 25 Nikolaos Chatzidakis 2014-11-07 09:20:52 UTC
(In reply to Jeroen Roovers from comment #22)
> Does it help to set KBUILD_OUTPUT (to an empty value)?

Not here. I get the same error as before...
Comment 26 Justin Lecher (RETIRED) gentoo-dev 2014-11-07 11:53:44 UTC
It works when I issue the compile command manually.
Comment 27 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-07 11:55:19 UTC
(In reply to Justin Lecher from comment #26)
> It works when I issue the compile command manually.

But you don't know why.
Comment 28 Nikolaos Chatzidakis 2014-11-07 12:02:06 UTC
(In reply to Justin Lecher from comment #26)
> It works when I issue the compile command manually.

Here, giving:

ebuild /usr/portage/x11-drivers/nvidia-drivers/nvidia-drivers-343.22-r2.ebuild compile

Gives me the same error as before though... How do you compile the drivers manually?
Comment 29 Justin Lecher (RETIRED) gentoo-dev 2014-11-07 12:06:18 UTC
(In reply to Nikolaos Chatzidakis from comment #28)
> (In reply to Justin Lecher from comment #26)
> > It works when I issue the compile command manually.
> 
> Here, giving:
> 
> ebuild
> /usr/portage/x11-drivers/nvidia-drivers/nvidia-drivers-343.22-r2.ebuild
> compile
> 
> Gives me the same error as before though... How do you compile the drivers
> manually?

After it breaks, cd into the build dir and execute the make command which failed.
Comment 30 Justin Lecher (RETIRED) gentoo-dev 2014-11-07 12:10:06 UTC
Created attachment 388760 [details]
build.log

Full build log with debug execution of contest.sh
Comment 31 Justin Lecher (RETIRED) gentoo-dev 2014-11-07 12:16:29 UTC
Created attachment 388762 [details]
build.log with verbose contest.sh

now with stdout && stderr of the conftest.sh compile commands.
Comment 32 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-07 12:25:07 UTC
Um, how about FEATURES=-ccache since you all seem to have it. :)
Comment 33 Nikolaos Chatzidakis 2014-11-07 12:25:54 UTC
(In reply to Jeroen Roovers from comment #32)
> Um, how about FEATURES=-ccache since you all seem to have it. :)

Tried cleaning ccache first, same error. Then i tried disabling ccache, same error again... :(
Comment 34 Justin Lecher (RETIRED) gentoo-dev 2014-11-07 12:42:03 UTC
(In reply to Jeroen Roovers from comment #32)
> Um, how about FEATURES=-ccache since you all seem to have it. :)

no, same error.
Comment 35 Sven Eden 2014-11-07 14:54:33 UTC
Okay, this seems to have something to do with anything but portage, gcc or the nvidia drivers.

Look at this from Justins conftest log:
--------
            #include <asm/cacheflush.h>
            void conftest_set_pages_uc(void) {
                set_pages_uc();
            }'
+ x86_64-pc-linux-gnu-gcc -O2 -D__KERNEL__ '-DKBUILD_BASENAME="#conftest14690"' '-DKBUILD_MODNAME="#conftest14690"' -nostdinc -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.2/include -I/usr/src/linux/include/asm-x86_64/mach-default -I/usr/src/linux/include/asm-x86/mach-default -I/usr/src/linux/arch/x86/include/asm/mach-default -I/usr/src/linux/include/arch/x86/include/uapi -I/lib/modules/3.17.1-lh-r1/build/include2 -I/lib/modules/3.17.1-lh-r1/build/include -include /lib/modules/3.17.1-lh-r1/build/include/generated/autoconf.h -I/usr/src/linux/include -I/usr/src/linux/include/uapi -I/lib/modules/3.17.1-lh-r1/build/include/generated/uapi -I/usr/src/linux/arch/x86/include -I/usr/src/linux/arch/x86/include/uapi -I/lib/modules/3.17.1-lh-r1/build/arch/x86/include/generated -I/lib/modules/3.17.1-lh-r1/build/arch/x86/include/generated/uapi -c conftest14690.c
conftest14690.c: In function ‘conftest_set_pages_uc’:
conftest14690.c:15:17: error: too few arguments to function ‘set_pages_uc’
                 set_pages_uc();
                 ^
In file included from conftest14690.c:13:0:
/usr/src/linux/arch/x86/include/asm/cacheflush.h:136:5: note: declared here
 int set_pages_uc(struct page *page, int numpages);
     ^
+ rm -f conftest14690.c
+ '[' -f conftest14690.o ']'
+ rm -f conftest14690.o
+ echo '#undef NV_SET_PAGES_UC_PRESENT'
+ append_conftest functions
+ TEMPORARY_HEADER=conftest/functions-14690.h
+ read LINE
+ echo '#undef' NV_SET_PAGES_UC_PRESENT
+ read LINE
+ return
--------

The test program on top is wrong. So the conftest looks whether it can be compiled anyway. If it can, it means that the function is not declared in the includes, and then the #undef is issued.

As you can see above, the compilation fails (too few arguments) as it should be, but the #undef is nevertheless issued.

Could it be that you have /bin/sh linked to something different than /bin/bash? dash or zsh maybe? Because the lines responsible for this are:

--------
            echo "$CONFTEST_PREAMBLE
            #include <asm/cacheflush.h>
            void conftest_set_pages_uc(void) {
                set_pages_uc();
            }" > conftest$$.c

            $CC $CFLAGS -c conftest$$.c > /dev/null 2>&1
            rm -f conftest$$.c

            if [ -f conftest$$.o ]; then
                rm -f conftest$$.o
                echo "#undef NV_SET_PAGES_UC_PRESENT" | append_conftest "functions"
                return
            else
                echo "#define NV_SET_PAGES_UC_PRESENT" | append_conftest "functions"
                return
            fi
---------
So as you can see, if the compilation fails, like logged above, [ -f conftest$$.o ] should fail, too.
Comment 36 Nikolaos Chatzidakis 2014-11-07 16:23:48 UTC
(In reply to Sven Eden from comment #35)

> Could it be that you have /bin/sh linked to something different than
> /bin/bash? dash or zsh maybe? Because the lines responsible for this are:

On my box, i have this: 
lrwxrwxrwx 1 root root 4 Nov   3 17:58 /bin/sh -> bash
Comment 37 Nikolaos Chatzidakis 2014-11-07 18:08:48 UTC
Something strange I noticed... If i issue the "make" command in /var/tmp/portage/.../nvidia.../kernel, I get the following:

NVIDIA: calling KBUILD...
make[1]: Entering directory '/usr/src/linux-3.17.1-gentoo-r1'
make[1]: *** No rule to make target 'modules'.  Stop.
make[1]: Leaving directory '/usr/src/linux-3.17.1-gentoo-r1'

Why does it go to 3.17.1-gentoo-r1, since my current/only kernel sources is 3.17.2...?
Comment 38 Sven Eden 2014-11-07 20:59:06 UTC
(In reply to Nikolaos Chatzidakis from comment #37)
> Something strange I noticed... If i issue the "make" command in
> /var/tmp/portage/.../nvidia.../kernel, I get the following:
> 
> NVIDIA: calling KBUILD...
> make[1]: Entering directory '/usr/src/linux-3.17.1-gentoo-r1'
> make[1]: *** No rule to make target 'modules'.  Stop.
> make[1]: Leaving directory '/usr/src/linux-3.17.1-gentoo-r1'
> 
> Why does it go to 3.17.1-gentoo-r1, since my current/only kernel sources is
> 3.17.2...?

Because it is still around. I had this, too, and just deleted the old (already unmerged) orphaned directories of previous kernels.

However, user tranquilcool  reports to have solved the issue by simply deactivating ccache here:
http://forums.gentoo.org/viewtopic-p-7646940.html#7646902
Comment 39 Nikolaos Chatzidakis 2014-11-07 21:08:41 UTC
(In reply to Sven Eden from comment #38)
> (In reply to Nikolaos Chatzidakis from comment #37)
> > Something strange I noticed... If i issue the "make" command in
> > /var/tmp/portage/.../nvidia.../kernel, I get the following:
> > 
> > NVIDIA: calling KBUILD...
> > make[1]: Entering directory '/usr/src/linux-3.17.1-gentoo-r1'
> > make[1]: *** No rule to make target 'modules'.  Stop.
> > make[1]: Leaving directory '/usr/src/linux-3.17.1-gentoo-r1'
> > 
> > Why does it go to 3.17.1-gentoo-r1, since my current/only kernel sources is
> > 3.17.2...?
> 
> Because it is still around. I had this, too, and just deleted the old
> (already unmerged) orphaned directories of previous kernels.
> 
> However, user tranquilcool  reports to have solved the issue by simply
> deactivating ccache here:
> http://forums.gentoo.org/viewtopic-p-7646940.html#7646902

So, it finally worked here. I don't know what exactly solved the problem, but these are the steps i followed:

* Removed all /lib/modules/x.y.z/ directories of older kernels, and kept only the modules of 3.17.2
* Unemerged nvidia-drivers
* Unemerged all gentoo-sources and deleted everything in /usr/src
* Deleted /var/tmp/portage/*
* Emerged latest gentoo-sources again (3.17.2), used my old .config and built the kernel as usual
* Emerged nvidia-drivers WITHOUT ccache, and this time it worked.

Don't know what was the specific problem, but doing the about, managed to emerge nvidia-drivers but without ccache.
Comment 40 Micke Eriksson 2014-11-07 21:11:53 UTC
Disabling ccache works!

FEATURES="-ccache"
Comment 41 Nils Kneuper 2014-11-08 10:47:35 UTC
Same for me. Had the issues and setting FEATURES="-ccache" fixes the problem. It was not enough to completely empty the ccache cache.
Comment 42 Adam Stylinski 2014-11-08 18:17:00 UTC
Ahh, this possibly explains a lot of the weird issues I've been having with VDPAU related crashes and kernel module rebuilds that resulted in supposedly missing symbols, despite being built against the correct sources.  I feel dumb now :-/.
Comment 43 Nikolaos Chatzidakis 2014-11-09 11:36:51 UTC
For me though (and others as I see) disabling ccache didn't solve the issue right away. I tried it many times before and it didn't work, until i did all the steps I mentioned above... Who knows...
Comment 44 Geoff Leach 2014-11-12 07:12:52 UTC
Simply disabling ccache worked for me. Have multiple kernels (gentoo-sources) installed. Didn't try emptying the cache.
Comment 45 Geoff Leach 2014-11-12 07:13:46 UTC
Disabling ccache worked for me. Have multiple kernels installed. Didn't try emptying the cache.
Comment 46 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-13 11:21:23 UTC
*** Bug 529128 has been marked as a duplicate of this bug. ***
Comment 47 Silvio 2014-11-13 11:28:02 UTC
I confirm, disabling CCACHE it compiles well.
Comment 48 Jeroen Roovers (RETIRED) gentoo-dev 2014-11-13 11:40:02 UTC
pkg_setup() {
    # try to turn off distcc and ccache for people that have a problem with it
    export DISTCC_DISABLE=1
    export CCACHE_DISABLE=1


The ebuilds already try to disable ccache, but apparently this doesn't work as advertised in the manual:

       CCACHE_DISABLE
           If you set the environment variable CCACHE_DISABLE then ccache will just
           call the real compiler, bypassing the cache completely.