package nvidia-current 195.36.24-0ubuntu1~10.04 failed to install/upgrade: error: unknown field ‘ioctl’ specified in initializer

Bug #653910 reported by swalter
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
nvidia-graphics-drivers (Ubuntu)
Invalid
High
Alberto Milone

Bug Description

Was installing via nvidia-current and got this error

ProblemType: Package
DistroRelease: Ubuntu 10.04
Package: nvidia-current 195.36.24-0ubuntu1~10.04
ProcVersionSignature: Ubuntu 2.6.31-21.59-generic
Uname: Linux 2.6.31-21-generic x86_64
Architecture: amd64
Date: Sat Oct 2 22:25:28 2010
DkmsStatus: nvidia-current, 195.36.24: added
ErrorMessage: nvidia-current kernel module failed to build
GdmLog1:

/usr/src/linux-headers-2.6.36-999-generic/arch/x86/include/asm/compat.h:211: warning: pointer of type ‘void *’ used in arithmetic
/var/lib/dkms/nvidia-current/195.36.24/build/nv.c: At top level:
/var/lib/dkms/nvidia-current/195.36.24/build/nv.c:417: error: unknown field ‘ioctl’ specified in initializer

InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release amd64 (20091027)
Lsusb:
 Bus 001 Device 003: ID 160a:3184
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 002 Device 003: ID 045e:0737 Microsoft Corp.
 Bus 002 Device 002: ID 046d:c315 Logitech, Inc. Classic New Touch Keyboard
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: Unknow Unknow
PackageVersion: 195.36.24-0ubuntu1~10.04
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.31-21-generic root=UUID=024cd15d-6210-47a2-a951-7ba1952da34e ro nomodeset quiet splash
SourcePackage: nvidia-graphics-drivers
Title: package nvidia-current 195.36.24-0ubuntu1~10.04 failed to install/upgrade: nvidia-current kernel module failed to build
XorgLogOld:

dmi.bios.date: 10/30/2008
dmi.bios.vendor: Phoenix Technologies, LTD
dmi.bios.version: 6.00 PG
dmi.board.name: MCP73
dmi.board.vendor: Unknow
dmi.board.version: Unknow
dmi.chassis.asset.tag: Unknow
dmi.chassis.type: 3
dmi.chassis.vendor: Unknow
dmi.chassis.version: Unknow
dmi.modalias: dmi:bvnPhoenixTechnologies,LTD:bvr6.00PG:bd10/30/2008:svnUnknow:pnUnknow:pvrUnknow:rvnUnknow:rnMCP73:rvrUnknow:cvnUnknow:ct3:cvrUnknow:
dmi.product.name: Unknow
dmi.product.version: Unknow
dmi.sys.vendor: Unknow
system:
 distro: Ubuntu
 codename: lucid
 architecture: x86_64
 kernel: 2.6.31-21-generic

Revision history for this message
swalter (seanwalter) wrote :
Bryce Harrington (bryce)
tags: added: karmic
Bryce Harrington (bryce)
description: updated
summary: package nvidia-current 195.36.24-0ubuntu1~10.04 failed to
- install/upgrade: nvidia-current kernel module failed to build
+ install/upgrade: error: unknown field ‘ioctl’ specified in initializer
Changed in nvidia-graphics-drivers (Ubuntu):
status: New → Confirmed
tags: removed: karmic
bugbot (bugbot)
tags: added: karmic
Revision history for this message
Paul van Genderen (paulvg) wrote :

Here's what I did:

Remove 3 lines from /usr/src/nvidia-current-195.36.24/nv.c (see attached diff), run `sudo dkms build -m nvidia-current -v 195.36.24`. If that works, run `sudo dkms install -m nvidia-current -v 195.36.24`.

Now, if you're still in an X session, log out, switch to a virtual console, log in and run `sudo service gdm stop` (or whatever dm you happen to be running, if at all). Unload the old module if it's still loaded (`sudo rmmod nvidia`) and load the new one with `sudo modprobe nvidia-current`. Now run `exec sudo service gdm start`, `startx` or whatever floats your boat. If this is too difficult, a plain restart should suffice, too. If the package manager had errors, you can run `sudo apt-get -f install` or `sudo dpkg --configure --pending` and it'll run dkms for you as well. Just don't restart X until the new module is loaded and you'll be fine.

This is using package nvidia-current version 195.36.24-0ubuntu1~10.04. I'll try to make a debdiff shortly.

Revision history for this message
Paul van Genderen (paulvg) wrote :

Here's my stab at a debdiff, please take a look at it (anyone).

Thanks.

tags: added: patch
Revision history for this message
Bryce Harrington (bryce) wrote :

The maverick version of -nvidia has this patch:

blumonc:~/ubuntu/nvidia-graphics-drivers/nvidia-graphics-drivers-260.19.06/debian$ more dkms/patches/nvidia-2.6.36-ioctl.patch
diff --git a/nv.c b/nv.c
index 54be61e..2390c94 100644
--- a/nv.c
+++ b/nv.c
@@ -393,7 +393,7 @@ static struct file_operations nv_fops = {
     .owner = THIS_MODULE,
     .poll = nv_kern_poll,
 #if defined(NV_FILE_OPERATIONS_HAS_IOCTL)
- .ioctl = nv_kern_ioctl,
+ .unlocked_ioctl = nv_kern_unlocked_ioctl,
 #endif
 #if defined(NV_FILE_OPERATIONS_HAS_UNLOCKED_IOCTL)
     .unlocked_ioctl = nv_kern_unlocked_ioctl,

Revision history for this message
Bryce Harrington (bryce) wrote :

Looking at maverick's patch, your patch looks to be a suitable backport of it for lucid.

Changed in nvidia-graphics-drivers (Ubuntu):
importance: Undecided → High
status: Confirmed → Triaged
Revision history for this message
Bryce Harrington (bryce) wrote :

Hmm, actually I just noticed your report indicates you're running the 2.6.31 kernel?

  kernel: 2.6.31-21-generic
  ProcVersionSignature: Ubuntu 2.6.31-21.59-generic
  Uname: Linux 2.6.31-21-generic x86_64
  ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.31-21-generic root=UUID=024cd15d-6210-47a2-a951-7ba1952da34e ro nomodeset quiet splash

Yet 2.6.32 is the standard for Lucid.

I'm also wondering if perhaps the change needs to be fenced in an #ifdef. NV_FILE_OPERATIONS_HAS_IOCTL seems not to be valid in this old version of the driver.

I'm going to punt and leave this one to Alberto who is better aware of the intricacies of this ioctl issue. Please follow up with him.

Bryce Harrington (bryce)
Changed in nvidia-graphics-drivers (Ubuntu):
assignee: nobody → Alberto Milone (albertomilone)
Revision history for this message
Alberto Milone (albertomilone) wrote :

@Bryce
According to the original reporter, the compilation failed against kernel 2.6.36 (as it clearly mentions /usr/src/linux-headers-2.6.36-999-generic) which, of course, we do not support in lucid.

I think packages in the x-updates PPA (rather than the officially supported packages) are better candidates for users who'd like to experiment with newer kernel and newer driver releases.

Changed in nvidia-graphics-drivers (Ubuntu):
status: Triaged → Invalid
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. This particular bug has already been reported and is a duplicate of bug 627022, so it is being marked as such. Please look at the other bug report to see if there is any missing information that you can provide, or to see if there is a workaround for the bug. Additionally, any further discussion regarding the bug should occur in the other report. Feel free to continue to report any other bugs you may find.

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.