Package: nvidia-kernel-dkms Version: 295.33-2 Severity: normal Tags: upstream
Dear Maintainer, I am attaching a patch to fix building the kernel module with recent kernels like 3.4.0-rc1. Thanks again for you work on this package. Regards, Antonio Ospite http://ao2.it -- Package-specific info: uname -a: Linux jcn 3.4.0-rc1-ao2 #1 SMP Thu Apr 5 13:37:34 CEST 2012 x86_64 GNU/Linux /proc/version: Linux version 3.4.0-rc1-ao2 (ao2@jcn) (gcc version 4.6.3 (Debian 4.6.3-1) ) #1 SMP Thu Apr 5 13:37:34 CEST 2012 /proc/driver/nvidia/version: NVRM version: NVIDIA UNIX x86_64 Kernel Module 295.33 Sat Mar 17 14:55:45 PDT 2012 GCC version: gcc version 4.6.3 (Debian 4.6.3-1) lspci 'VGA compatible controller [0300]': 02:00.0 VGA compatible controller [0300]: NVIDIA Corporation C77 [GeForce 8200] [10de:0849] (rev a2) (prog-if 00 [VGA controller]) Subsystem: ASUSTeK Computer Inc. Device [1043:82f2] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 20 Region 0: Memory at fd000000 (32-bit, non-prefetchable) [size=16M] Region 1: Memory at f0000000 (64-bit, prefetchable) [size=128M] Region 3: Memory at fa000000 (64-bit, prefetchable) [size=32M] Region 5: I/O ports at ec00 [size=128] [virtual] Expansion ROM at febe0000 [disabled] [size=128K] Capabilities: <access denied> Kernel driver in use: nvidia dmesg: [ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.4.0-rc1-ao2 root=UUID=604c68ad-bd5f-4617-9f62-1e0cada91687 ro quiet vga=0x317 [ 0.000000] No AGP bridge found [ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.4.0-rc1-ao2 root=UUID=604c68ad-bd5f-4617-9f62-1e0cada91687 ro quiet vga=0x317 [ 0.000000] No AGP bridge found [ 0.120305] vgaarb: device added: PCI:0000:02:00.0,decodes=io+mem,owns=io+mem,locks=none [ 0.120308] vgaarb: loaded [ 0.120309] vgaarb: bridge control possible 0000:02:00.0 [ 0.559798] PCI-DMA: Disabling AGP. [ 0.559878] PCI-DMA: Reserving 64MB of IOMMU area in the AGP aperture [ 0.590304] fb0: VESA VGA frame buffer device [ 0.631619] Linux agpgart interface v0.103 [ 11.824320] nvidia: module license 'NVIDIA' taints kernel. [ 11.912832] nvidia 0000:02:00.0: setting latency timer to 64 [ 11.912842] vgaarb: device changed decodes: PCI:0000:02:00.0,olddecodes=io+mem,decodes=none:owns=io+mem [ 11.914027] NVRM: loading NVIDIA UNIX x86_64 Kernel Module 295.33 Sat Mar 17 14:55:45 PDT 2012 -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (900, 'unstable'), (600, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 3.4.0-rc1-ao2 (SMP w/1 CPU core) Locale: LANG=it_IT.utf8, LC_CTYPE=it_IT.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages nvidia-kernel-dkms depends on: ii dkms 2.2.0.3-1 ii nvidia-installer-cleanup 20111111+3 ii nvidia-kernel-common 20111111+3 Versions of packages nvidia-kernel-dkms recommends: ii nvidia-glx 295.33-2 nvidia-kernel-dkms suggests no packages. Versions of packages nvidia-glx depends on: ii dpkg 1.16.2 ii libgl1-nvidia-glx 295.33-2 ii nvidia-alternative 295.33-2 ii nvidia-installer-cleanup 20111111+3 ii nvidia-kernel-dkms [nvidia-kernel-295.33] 295.33-2 ii nvidia-support 20111111+3 ii nvidia-vdpau-driver 295.33-2 ii xserver-xorg-video-nvidia 295.33-2 Versions of packages nvidia-glx suggests: ii nvidia-settings 295.33-1 Versions of packages libgl1-nvidia-glx depends on: ii libc6 2.13-27 ii libx11-6 2:1.4.4-4 ii libxext6 2:1.3.0-3 ii libxv1 2:1.0.6-2 ii libxvmc1 2:1.0.6-1 ii multiarch-support 2.13-27 ii nvidia-alternative 295.33-2 ii nvidia-installer-cleanup 20111111+3 ii nvidia-support 20111111+3 Versions of packages libgl1-nvidia-glx recommends: ii nvidia-kernel-dkms [nvidia-kernel-295.33] 295.33-2 libgl1-nvidia-glx suggests no packages. Versions of packages xserver-xorg-video-nvidia depends on: ii libc6 2.13-27 ii libgl1-nvidia-glx 295.33-2 ii nvidia-alternative 295.33-2 ii nvidia-installer-cleanup 20111111+3 ii nvidia-support 20111111+3 ii xserver-xorg-core [xorg-video-abi-11] 2:1.11.4-1 Versions of packages xserver-xorg-video-nvidia recommends: ii nvidia-kernel-dkms [nvidia-kernel-295.33] 295.33-2 ii nvidia-vdpau-driver 295.33-2 Versions of packages xserver-xorg-video-nvidia suggests: ii nvidia-settings 295.33-1 Versions of packages nvidia-alternative depends on: ii glx-alternative-nvidia 0.2.1 ii libgl1-nvidia-alternatives 295.33-2 ii libglx-nvidia-alternatives 295.33-2 Versions of packages nvidia-kernel-source depends on: ii debhelper 9.20120322 ii make 3.81-8.1 ii quilt 0.60-2 Versions of packages nvidia-kernel-source recommends: ii kernel-package 12.036+nmu2 ii module-assistant 0.11.4 ii nvidia-kernel-common 20111111+3 Versions of packages nvidia-kernel-source suggests: ii nvidia-glx 295.33-2 Versions of packages glx-alternative-nvidia depends on: ii glx-alternative-mesa 0.2.1 ii glx-diversions 0.2.1 Versions of packages glx-alternative-nvidia suggests: ii nvidia-glx 295.33-2 Versions of packages nvidia-kernel-dkms is related to: ii libdrm-nouveau1 <none> ii libdrm-nouveau1a 2.4.33-1 ii libgl1-nvidia-glx [libgl1-nvidia-glx-any] 295.33-2 ii libgl1-nvidia-glx-ia32-any <none> ii linux-headers-3.2.0-2-amd64 [linux-headers] 3.2.13-1 ii linux-headers-3.3.0-trunk-amd64 [linux-head 3.3-1~experimental.1 ii linux-headers-3.4.0-rc1-ao2 [linux-headers] 3.4.0-rc1-ao2-1 ii linux-headers-amd64 [linux-headers] 3.2+44 ii nvidia-glx [nvidia-glx-any] 295.33-2 ii nvidia-kernel-common 20111111+3 ii nvidia-kernel-dkms [nvidia-kernel-dkms] 295.33-2 ii nvidia-kernel-source 295.33-2 ii nvidia-settings 295.33-1 ii nvidia-support 20111111+3 ii nvidia-xconfig <none> ii xserver-xorg 1:7.6+12 ii xserver-xorg-core 2:1.11.4-1 ii xserver-xorg-video-nouveau 1:0.0.16+git20111201+b5534a1-1 ii xserver-xorg-video-nvidia [xserver-xorg-vid 295.33-2 -- no debconf information
Make the kernel module build against kernels >= 3.4 In newer kernels asm/system.h has been split into several other header files, to let the including code bring in only what is strictly necessary. In this case just asm/switch_to.h is needed to make the build complete. Signed-off-by: Antonio Ospite <osp...@studenti.unina.it> diff -pruN nvidia-295.33.orig/nv-linux.h nvidia-295.33/nv-linux.h --- nvidia-295.33.orig/nv-linux.h 2012-04-06 08:53:45.000000000 +0200 +++ nvidia-295.33/nv-linux.h 2012-04-06 09:07:38.000000000 +0200 @@ -113,12 +113,18 @@ #include <asm/div64.h> /* do_div() */ -#include <asm/system.h> /* cli, sli, save_flags */ #include <asm/io.h> /* ioremap, virt_to_phys */ #include <asm/uaccess.h> /* access_ok */ #include <asm/page.h> /* PAGE_OFFSET */ #include <asm/pgtable.h> /* pte bit definitions */ +/* Check for asm/system.h */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0) +#include <asm/switch_to.h> +#else +#include <asm/system.h> +#endif + #if defined(NVCPU_X86_64) && !defined(KERNEL_2_4) && !defined(HAVE_COMPAT_IOCTL) #include <linux/syscalls.h> /* sys_ioctl() */ #include <linux/ioctl32.h> /* register_ioctl32_conversion() */