nvidia-304 304.135-0ubuntu0.16.04.2: nvidia-304 kernel module failed to build [error: too many arguments to function ‘get_user_pages’]

Bug #1815858 reported by giovanni faglia
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
nvidia-graphics-drivers-304 (Ubuntu)
Confirmed
Undecided
Unassigned
nvidia-graphics-drivers-384 (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Applying an upgrade, an nvidia component would fail

ProblemType: Package
DistroRelease: Ubuntu 16.04
Package: nvidia-304 304.135-0ubuntu0.16.04.2
ProcVersionSignature: Ubuntu 4.4.0-143.169-generic 4.4.170
Uname: Linux 4.4.0-143-generic x86_64
.tmp.unity_support_test.0:

ApportVersion: 2.20.1-0ubuntu2.18
Architecture: amd64
CompizPlugins: No value set for `/apps/compiz-1/general/screen0/options/active_plugins'
CompositorRunning: compiz
CompositorUnredirectDriverBlacklist: '(nouveau|Intel).*Mesa 8.0'
CompositorUnredirectFSW: true
DKMSKernelVersion: 4.4.0-143-generic
Date: Thu Feb 14 06:07:49 2019
DistUpgraded: 2018-08-19 23:38:53,894 DEBUG icon theme changed, re-reading
DistroCodename: xenial
DistroVariant: ubuntu
DkmsStatus:
 nvidia-304, 304.135, 4.4.0-134-generic, x86_64: installed
 nvidia-304, 304.135, 4.4.0-141-generic, x86_64: installed
 nvidia-304, 304.135, 4.4.0-142-generic, x86_64: installed
DuplicateSignature: dkms:nvidia-304:304.135-0ubuntu0.16.04.2:/var/lib/dkms/nvidia-304/304.135/build/nv-linux.h:1941:9: error: too many arguments to function ‘get_user_pages’
GraphicsCard:
 Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0106] (rev 09) (prog-if 00 [VGA controller])
   Subsystem: Acer Incorporated [ALI] 2nd Generation Core Processor Family Integrated Graphics Controller [1025:068d]
 NVIDIA Corporation GF108M [GeForce GT 620M/630M/635M/640M LE] [10de:0de9] (rev a1) (prog-if 00 [VGA controller])
   Subsystem: Acer Incorporated [ALI] GF108M [GeForce GT 630M] [1025:068d]
InstallationDate: Installed on 2015-08-15 (1278 days ago)
InstallationMedia: Ubuntu 14.04.2 LTS "Trusty Tahr" - Release amd64 (20150218.1)
MachineType: Packard Bell EasyNote LV11HC
PackageVersion: 304.135-0ubuntu0.16.04.2
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.4.0-143-generic root=UUID=8b9d55d3-d97b-487c-88fb-3bbfb323e56a ro quiet splash vt.handoff=7
RelatedPackageVersions:
 dpkg 1.18.4ubuntu1.5
 apt 1.2.29ubuntu0.1
SourcePackage: nvidia-graphics-drivers-304
Title: nvidia-304 304.135-0ubuntu0.16.04.2: nvidia-304 kernel module failed to build
UpgradeStatus: Upgraded to xenial on 2018-08-19 (178 days ago)
dmi.bios.date: 04/19/2012
dmi.bios.vendor: Insyde Corp.
dmi.bios.version: V1.06
dmi.board.asset.tag: Type2 - Board Asset Tag
dmi.board.name: VG70_HC
dmi.board.vendor: Type2 - Board Vendor Name1
dmi.board.version: Type2 - Board Version
dmi.chassis.type: 10
dmi.chassis.vendor: Chassis Manufacturer
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnInsydeCorp.:bvrV1.06:bd04/19/2012:svnPackardBell:pnEasyNoteLV11HC:pvrV1.06:rvnType2-BoardVendorName1:rnVG70_HC:rvrType2-BoardVersion:cvnChassisManufacturer:ct10:cvrChassisVersion:
dmi.product.name: EasyNote LV11HC
dmi.product.version: V1.06
dmi.sys.vendor: Packard Bell
version.compiz: compiz 1:0.9.12.3+16.04.20180221-0ubuntu1
version.ia32-libs: ia32-libs N/A
version.libdrm2: libdrm2 2.4.91-2~16.04.1
version.libgl1-mesa-dri: libgl1-mesa-dri 18.0.5-0ubuntu0~16.04.1
version.libgl1-mesa-dri-experimental: libgl1-mesa-dri-experimental N/A
version.libgl1-mesa-glx: libgl1-mesa-glx 18.0.5-0ubuntu0~16.04.1
version.xserver-xorg-core: xserver-xorg-core 2:1.18.4-0ubuntu0.8
version.xserver-xorg-input-evdev: xserver-xorg-input-evdev 1:2.10.1-1ubuntu2
version.xserver-xorg-video-ati: xserver-xorg-video-ati 1:7.7.0-1
version.xserver-xorg-video-intel: xserver-xorg-video-intel 2:2.99.917+git20160325-1ubuntu1.2
version.xserver-xorg-video-nouveau: xserver-xorg-video-nouveau 1:1.0.12-1build2
xserver.bootTime: Thu Feb 14 07:14:19 2019
xserver.configfile: default
xserver.errors:

xserver.logfile: /var/log/Xorg.0.log
xserver.outputs:
 product id 832
 vendor LGD
xserver.version: 2:1.18.4-0ubuntu0.8

Revision history for this message
giovanni faglia (jofaglia) wrote :
tags: removed: need-duplicate-check
Revision history for this message
giovanni faglia (jofaglia) wrote :

I could not read the "compiling bla-bla-bla" part in the summery, so on a second thought it might correspond to a recently (1/2019) reported bug in nvidia driver compilation.

Revision history for this message
daniel CURTIS (anoda) wrote :
Download full text (5.2 KiB)

Hello.

It seems, that I'm experiencing exactly the same problem. During kernel update process to v4.4.0-143.169 (from '-proposed') there was an error message about some issues with 'nvidia' module etc. '/var/lib/dkms/nvidia-304/304.135/build/make.log' file contains a full build process informations. Here are some examples (I can paste it somewhere):

============[ NVIDIA Build log examples ]============

In file included from ./arch/x86/include/asm/preempt.h:5:0,
                 from include/linux/preempt.h:59,
                 from include/linux/spinlock.h:50,
                 from include/linux/seqlock.h:35,
                 from include/linux/time.h:5,
                 from include/uapi/linux/timex.h:56,
                 from include/linux/timex.h:56,
                 from include/linux/sched.h:19,
                 from include/linux/utsname.h:5,
                 from /var/lib/dkms/nvidia-304/304.135/build/nv-linux.h:40,
                 from /var/lib/dkms/nvidia-304/304.135/build/nv.c:13:
include/linux/percpu-refcount.h: In function ‘percpu_ref_get_many’:
./arch/x86/include/asm/percpu.h:130:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
          ((val) == 1 || (val) == -1)) ? \
                               ^
(...)

include/linux/percpu-refcount.h: In function ‘percpu_ref_get_many’:
./arch/x86/include/asm/percpu.h:130:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
          ((val) == 1 || (val) == -1)) ? \
                               ^
(...)

include/linux/percpu-defs.h:394:11: note: in expansion of macro ‘this_cpu_add_1’
   case 1: stem##1(variable, __VA_ARGS__);break; \
           ^
(...)

include/linux/percpu-refcount.h:276:3: note: in expansion of macro ‘this_cpu_sub’
   this_cpu_sub(*percpu_count, nr);
   ^
(...)

include/linux/compiler.h:165:40: note: in definition of macro ‘likely’
 # define likely(x) __builtin_expect(!!(x), 1)
                                        ^
(...)

In file included from /var/lib/dkms/nvidia-304/304.135/build/nv-linux.h:82:0,
                 from /var/lib/dkms/nvidia-304/304.135/build/nv-mlock.c:15:
include/linux/mm.h:1222:6: note: declared here
 long get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
      ^
(...)

make[2]: *** [_module_/var/lib/dkms/nvidia-304/304.135/build] Error 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
Makefile:257: commands for 'module' object failed
make[1]: *** [module] Error 1
makefile:59: commands for 'module' object failed
make: *** [module] Error 2

● NOTE: There is more definitions of, mentioned above, 'macros'. For example: ‘__pcpu_size_call’, ‘this_cpu_add’, ‘percpu_add_op’, ‘this_cpu_add_4’ etc. Generally, they all are repeated in build log.

============[ END of NVIDIA Build log example ]============

That's is only an example (whole build log contains about ~1500 lines). Most interesting and strange part is that I'm not using 'nvidia' or 'nouveau' module, but I still can log to system via LightDM! Why is that? Shouldn't there be some graphics issues? Here are some more informations about 'nvidia' module (NOTE: I'm logged in and using v4.4.0-143-generic ker...

Read more...

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in nvidia-graphics-drivers-304 (Ubuntu):
status: New → Confirmed
Revision history for this message
daniel CURTIS (anoda) wrote :

Hello.

I'm sorry for writing post by post, but I forget to write, that - in my case - architecture is i386/i686. There is also one more issue: I've made a mistake during writing my post, in the last 'Makefile/make[1]' informations (see exceptions from a build log): of course, there should be "recipe for target 'module' failed".

Best regards.

Revision history for this message
daniel CURTIS (anoda) wrote :

Hello.

Once agains - I'm sorry for writing post by post, but there is a very interesting comment I found, while checking patches/fixes in Linux v4.4.0-143.169 version (see '1.'). This is excatly the same error, that happened when I updated kernel to the latest '-proposed' release etc. In both cases, it's about "Processing triggers for linux-image-4.4.0-143-generic" and bad return status for 'nvidia' module build.

So, maybe the whole problem with building 'nvidia' module is related with "signing: only install a signed kernel (LP: #1764794)" (see '2.')? In the last hours, two more more bug reports were created - all related with 'nvidia' module build issues etc. (see '3.', '4.'). One difference is nvidia driver version.

Thanks, best regards.

_______________________________
[1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1764794/comments/6
[2] https://launchpad.net/ubuntu/+source/linux/4.4.0-143.169
[3] https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-340/+bug/1815752
[4] https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-384/+bug/1815776

summary: nvidia-304 304.135-0ubuntu0.16.04.2: nvidia-304 kernel module failed to
- build
+ build [error: too many arguments to function ‘get_user_pages’]
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in nvidia-graphics-drivers-384 (Ubuntu):
status: New → Confirmed
Revision history for this message
stef (update-5) wrote :

This error now hits me in production systems with xenial 16.04.5 after unattended security update of kernel from linux generic 4.4.0-142.168 to 4.4.0-143.169!

 DKMS make.log for nvidia-304-304.137 for kernel 4.4.0-143-generic (x86_64)
...
 In file included from /var/lib/dkms/nvidia-304/304.137/build/nv-mlock.c:15:0:
 /var/lib/dkms/nvidia-304/304.137/build/nv-linux.h:1927:9: error: too many arguments to function ‘get_user_pages’
          get_user_pages(current, current->mm, start, nr_pages, write, force, pages, vmas)
 ...
The driver builds fine with former kernel version 4.4.0-142.168

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.