Created attachment 405702 [details, diff] fix This appears to be addressed (haven't confirmed) in 346.72 by adding the macros NV_READ_CR4 and NV_READ_CR4 which are defined based upon NV_WRITE_CR4_PRESENT (no clue where that gets decided). Anyway, this patch doesn't bother with the macros, just does a dirtier inline #if/else where the functions are used. See: https://devtalk.nvidia.com/default/topic/813458/linux/linux-4-0-rc1-346-35-build-error-_cr4-functions-fix/ /tmp/portage/x11-drivers/nvidia-drivers-340.76/work/kernel/nv-pat.c:38:5: error: implicit declaration of function ‘read_cr4’ [-Werror=implicit-function-declaration] *cr4 = read_cr4(); ^ /tmp/portage/x11-drivers/nvidia-drivers-340.76/work/kernel/nv-pat.c:39:5: error: implicit declaration of function ‘write_cr4’ [-Werror=implicit-function-declaration] if (*cr4 & 0x80) write_cr4(*cr4 & ~0x80); ^
*** This bug has been marked as a duplicate of bug 549714 ***
hmm, I would suggest patching this or potentially removing versions of nvidia-drivers from the tree, much preferably the former. I have a slightly older card and I cannot mask the versions "known to fail", >= 341. However, this requires me to manually patch the driver in order to merge it. While I understand that the kernel interface *IS* going to change -- that's just a fact of life, these little backports become vital to those who don't upgrade their hardware every time nvidia decides to stop supporting it. I have a patch posted that works and won't force those who don't know how to find such patches and use them to go buy a new card (of course, an AMD with real open source drivers). The only thing I didnt put is the line in the ebuild to run it.