Package: release.debian.org Severity: normal User: [email protected] Usertags: unblock
Please unblock package nvidia-graphics-drivers-legacy-173xx The changes are a fix for CVE-2012-4225 and the other changes are a synchronisation of the packaging with nvidia-graphics-drivers, discussed in more detail in the unblock request of n-g-d (#684871). The largest change is turning the -ia32 package into transitional ones because of monolithic ia32-libs going away. Andreas unblock nvidia-graphics-drivers-legacy-173xx/173.14.35-3
diffstat for nvidia-graphics-drivers-legacy-173xx-173.14.35 nvidia-graphics-drivers-legacy-173xx-173.14.35 bug-control.in | 2 changelog | 56 +++++++++- control | 54 +++++---- libgl1-nvidia-glx-ia32.NEWS | 14 ++ libgl1-nvidia-glx-ia32.docs | 1 libgl1-nvidia-glx-ia32.install.in | 4 libgl1-nvidia-glx-ia32.links.in | 4 libgl1-nvidia-glx-ia32.lintian-overrides.in | 20 --- libgl1-nvidia-glx-ia32.postinst.in | 12 -- libgl1-nvidia-glx-ia32.symbols | 1 module/conftest.h | 28 ++++- module/debian/control.template.in | 1 module/debian/patches/nvidia-blacklist-vga-pmu-registers-195.diff | 30 +++++ module/debian/patches/series | 3 module/debian/rules | 6 - rules | 22 +-- xserver-xorg-video-nvidia.postrm | 2 17 files changed, 176 insertions(+), 84 deletions(-) diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/bug-control.in nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/bug-control.in --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/bug-control.in 2012-02-16 03:18:01.000000000 +0100 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/bug-control.in 2012-09-13 12:31:05.000000000 +0200 @@ -1,3 +1,3 @@ report-with: nvidia-glx#LEGACY# libgl1-nvidia#LEGACY#-glx xserver-xorg-video-nvidia#LEGACY# nvidia-alternative#LEGACY# nvidia-kernel#LEGACY#-dkms nvidia-kernel#LEGACY#-source glx-alternative-nvidia -package-status: nvidia-glx#LEGACY# nvidia-kernel#LEGACY#-dkms nvidia-kernel#LEGACY#-source nvidia-glx-any libgl1-nvidia-glx-any libgl1-nvidia-glx-ia32-any xserver-xorg-video-nvidia-any nvidia-settings nvidia-xconfig nvidia-support nvidia-kernel-common xserver-xorg xserver-xorg-core linux-headers libdrm-nouveau1 libdrm-nouveau1a xserver-xorg-video-nouveau +package-status: nvidia-glx#LEGACY# nvidia-kernel#LEGACY#-dkms nvidia-kernel#LEGACY#-source nvidia-glx-any libgl1-nvidia-glx-any libgl1-nvidia-glx-ia32-any libgl1-nvidia-glx-ia32 libgl1-nvidia-legacy-173xx-glx-ia32 libgl1-nvidia-alternatives-ia32 xserver-xorg-video-nvidia-any nvidia-settings nvidia-xconfig nvidia-support nvidia-kernel-common xserver-xorg xserver-xorg-core linux-headers libdrm-nouveau1 libdrm-nouveau1a xserver-xorg-video-nouveau ia32-libs diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/changelog nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/changelog --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/changelog 2012-06-30 18:56:22.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/changelog 2012-09-13 12:31:13.000000000 +0200 @@ -1,12 +1,64 @@ +nvidia-graphics-drivers-legacy-173xx (173.14.35-3) unstable; urgency=low + + * 173.14.35 was promoted to release status without further changes. + * CVE-2012-4225. (Closes: #685118) + Add upstream patch nvidia-blacklist-vga-pmu-registers-195.diff: + - Implemented hotfix for a privilege escalation vulnerability reported on + August 1, 2012. For more details, see: + http://nvidia.custhelp.com/app/answers/detail/a_id/3140 + * Synchronize packaging with nvidia-graphics-drivers 304.22-1: + - Work around dpkg-gencontrol bug #659814. + - Convert *-ia32 into transitional packages due to ia32-libs transition: + - $pkg:i386 Provides: $pkg-i386 + - $pkg-ia32 Recommends: $pkg-i386 + - Add multiarch instructions to long descriptions. + * Synchronize packaging with nvidia-graphics-drivers 304.30-1: + - xserver-xorg-video-nvidia-legacy-173xx.postrm: Do not fail if the + debconf templates from nvidia-support are not available. + * Synchronize packaging with nvidia-graphics-drivers 304.30-2: + - Disable patch-3.0-rt-nvidia.patch, no longer needed. + * Synchronize packaging with nvidia-graphics-drivers 304.32-1: + - debian/rules: get-orig-source: Make --pasv overridable. + * Synchronize packaging with nvidia-graphics-drivers 304.37-1: + - nvidia-kernel-legacy-173xx-source: Add Built-Using attribute to the + generated module packages to record the exact versions of linux and + nvidia-graphics-drivers-legacy-173xx that were used during the build. + - libgl1-nvidia-legacy-173xx-glx:i386: Add Breaks: ia32-libs (<< 20120701) + because that is shipping /usr/lib32/libGL.so.1 which gets no longer + diverted away. + - nvidia-kernel-legacy-173xx-dkms: Set Multi-Arch: foreign (instead of + allowed). + - Add nvidia-kernel-legacy-173xx-dkms (= ${binary:Version}) as preferred + alternative to (virtual) nvidia-kernel-${nvidia:Version}. + * Synchronize packaging with nvidia-graphics-drivers 304.43-1: + - conftest.h: + - Implement check for linux/screen_info.h (302.17). + - Implement check for linux/kconfig.h (304.30). + - Implement new conftest.sh function acpi_os_wait_events_complete + (304.43). + - bug-control: Report installed versions of + libgl1-nvidia-alternatives-ia32, libgl1-nvidia{,-legacy-173xx}-glx-ia32, + and ia32-libs. + - libgl1-nvidia-legacy-173xx-glx-ia32: Add NEWS file describing the steps + needed to install the multiarch :i386 nvidia packages on amd64. + * Synchronize packaging with nvidia-graphics-drivers 304.48-1: + - get-orig-source: Skip downloading if cached files are in ../.cache/ + - Switch .deb compression to xz. + * libgl1-nvidia-legacy-173xx-glx: add Breaks: nvidia-settings (>= 302) which + is no longer backwards compatible. + * Suggests: nvidia-settings-legacy-173xx instead. + + -- Andreas Beckmann <[email protected]> Thu, 13 Sep 2012 12:30:00 +0200 + nvidia-graphics-drivers-legacy-173xx (173.14.35-2) unstable; urgency=low * Synchronize packaging with nvidia-graphics-drivers 295.59-1: - bug-script: report all /lib/modules/.../nvidia.ko and their version. * Synchronize packaging with nvidia-graphics-drivers 302.17-3: - xserver-xorg-video-nvidia.{config,postinst}: Present a debconf note - about needing manual Xorg configuration to enable the fglrx driver. + about needing manual Xorg configuration to enable the fglrx driver. - xserver-xorg-video-nvidia.postrm: Present a debconf note if the driver - was removed, but it is still enabled in xorg.conf(.d/). + was removed, but it is still enabled in xorg.conf(.d/). -- Andreas Beckmann <[email protected]> Sat, 30 Jun 2012 18:49:44 +0200 diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/control nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/control --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/control 2012-06-30 18:56:13.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/control 2012-09-13 12:31:05.000000000 +0200 @@ -14,7 +14,6 @@ dkms (>= 2.1.1.1), libxext6, quilt, - ia32-libs (>= 20090804) [amd64], Standards-Version: 3.9.3 Homepage: http://www.nvidia.com XS-Autobuild: yes @@ -29,16 +28,20 @@ libgl1-nvidia${nvidia:Legacy}-glx (= ${binary:Version}), xserver-xorg-video-nvidia${nvidia:Legacy} (= ${binary:Version}), nvidia-alternative${nvidia:Legacy} (= ${binary:Version}), - nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, + nvidia-kernel${nvidia:Legacy}-dkms (= ${binary:Version}) + | nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, nvidia-support, ${shlibs:Depends}, ${misc:Depends} +Recommends: + libgl1-nvidia${nvidia:Legacy}-glx-i386 [amd64], Suggests: - nvidia-settings, + nvidia-settings-legacy-173xx, nvidia-kernel${nvidia:Legacy}-dkms (>= ${nvidia:Version}) | nvidia-kernel${nvidia:Legacy}-source (>= ${nvidia:Version}) Provides: nvidia-glx-any, Description: NVIDIA metapackage${nvidia:LegacyDesc} + . This metapackage depends on the NVIDIA binary driver and libraries that provide optimized hardware acceleration of OpenGL applications via a direct-rendering X Server. @@ -66,9 +69,10 @@ ${nvidia:xorgDepends}, ${shlibs:Depends}, ${misc:Depends} Recommends: - nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, + nvidia-kernel${nvidia:Legacy}-dkms (= ${binary:Version}) + | nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, Suggests: - nvidia-settings, + nvidia-settings-legacy-173xx, nvidia-kernel${nvidia:Legacy}-dkms (>= ${nvidia:Version}) | nvidia-kernel${nvidia:Legacy}-source (>= ${nvidia:Version}) Provides: @@ -80,10 +84,11 @@ nvidia-glx-legacy-71xx (<< 71.86.14-3), nvidia-glx-legacy-96xx (<< 96.43.19-2), nvidia-glx-legacy-173xx (<< 173.14.30-2), - fglrx-driver (<< 11-6-~), + fglrx-driver (<< 1:11-6-~), Replaces: nvidia-glx${nvidia:Legacy} (<< 173.14.30-2), Description: NVIDIA binary Xorg driver${nvidia:LegacyDesc} + . These binary drivers provide optimized hardware acceleration of OpenGL applications via a direct-rendering X Server. AGP, PCIe, SLI, TV-out and flat panel displays are also supported. @@ -120,11 +125,13 @@ nvidia-support, ${shlibs:Depends}, ${misc:Depends} Recommends: - nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, + nvidia-kernel${nvidia:Legacy}-dkms (= ${binary:Version}) + | nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, Suggests: nvidia-kernel${nvidia:Legacy}-dkms (>= ${nvidia:Version}) | nvidia-kernel${nvidia:Legacy}-source (>= ${nvidia:Version}) Provides: + libgl1-nvidia${nvidia:Legacy}-glx-i386 [i386], libgl1-nvidia-glx-any, Conflicts: libgl1-nvidia${nvidia:Legacy}-dev, @@ -141,12 +148,15 @@ libgl1-nvidia-legacy-71xx-glx (<< 71.86.14-3), libgl1-nvidia-legacy-96xx-glx (<< 96.43.19-2), # libgl1-nvidia-legacy-173xx-glx (<< 173.14.30-2), - fglrx-glx (<< 11-6-~), + fglrx-glx (<< 1:11-6-~), + ia32-libs (<< 20120701) [i386], + nvidia-settings (>= 302), Replaces: nvidia-glx${nvidia:Legacy} (<< 173.14.27), libgl1-nvidia${nvidia:Legacy}-dev, nvidia-glx${nvidia:Legacy}-dev, Description: NVIDIA binary OpenGL libraries${nvidia:LegacyDesc} + . These binary libraries provide optimized hardware acceleration of OpenGL applications via a direct-rendering X Server. . @@ -155,23 +165,16 @@ for a complete list of supported GPUs and PCI IDs. Package: libgl1-nvidia-legacy-173xx-glx-ia32 +Section: non-free/oldlibs Priority: extra Architecture: amd64 Pre-Depends: libc6-i386 (>= 2.9-18), nvidia-installer-cleanup, - ${misc:Pre-Depends} Depends: - libgl1-nvidia-alternatives-ia32, - nvidia-support, ${shlibs:Depends}, ${misc:Depends} Recommends: - nvidia-kernel-${nvidia:Version}${nvidia:Perfkit}, -Suggests: - nvidia-kernel${nvidia:Legacy}-dkms (>= ${nvidia:Version}) - | nvidia-kernel${nvidia:Legacy}-source (>= ${nvidia:Version}) -Provides: - libgl1-nvidia-glx-ia32-any, + libgl1-nvidia${nvidia:Legacy}-glx-i386, Conflicts: libgl1-nvidia-glx-ia32, libgl1-nvidia-glx-ia32-any, @@ -185,13 +188,13 @@ libgl1-nvidia${nvidia:Legacy}-glx (<< ${nvidia:Version}), Replaces: nvidia-glx${nvidia:Legacy}-ia32 (<< 173.14.27), -Description: NVIDIA binary OpenGL 32-bit libraries${nvidia:LegacyDesc} - These binary 32-bit libraries provide optimized hardware acceleration of - OpenGL applications via a direct-rendering X Server. +Description: please switch to multiarch libgl1-nvidia${nvidia:Legacy}-glx:i386 . - See the description of the nvidia-glx${nvidia:Legacy} package - or /usr/share/doc/libgl1-nvidia${nvidia:Legacy}-glx/README.txt.gz - for a complete list of supported GPUs and PCI IDs. + This is an empty transitional package to aid switching to multiarch. + . + Run the following commands to install the multiarch library: + * dpkg --add-architecture i386 ; apt-get update + * apt-get install libgl1-nvidia${nvidia:Legacy}-glx:i386 Package: nvidia-alternative-legacy-173xx Architecture: i386 amd64 @@ -205,6 +208,7 @@ nvidia-glx${nvidia:Legacy} (<< 173.14.30-2), libgl1-nvidia${nvidia:Legacy}-glx (<< 173.14.30-2), Description: allows the selection of NVIDIA as GLX provider + . In setups with several NVIDIA driver versions installed (e.g. current and legacy) this metapackage registers an alternative to allow easy switching between the different versions. @@ -218,7 +222,7 @@ Package: nvidia-kernel-legacy-173xx-dkms Section: non-free/kernel Architecture: i386 amd64 -Multi-Arch: allowed +Multi-Arch: foreign Pre-Depends: nvidia-installer-cleanup, Depends: @@ -235,6 +239,7 @@ Breaks: make (= 3.82-1), Description: NVIDIA binary kernel module DKMS source${nvidia:LegacyDesc} + . This package builds the NVIDIA Xorg binary kernel module needed by nvidia-glx${nvidia:Legacy}, using DKMS. Provided that you have the kernel header packages installed, the kernel @@ -267,6 +272,7 @@ Breaks: make (= 3.82-1), Description: NVIDIA binary kernel module source${nvidia:LegacyDesc} + . This package provides the source for the NVIDIA Xorg binary kernel module needed by nvidia-glx${nvidia:Legacy} in a form suitable for use by module-assistant or kernel-package. diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.NEWS nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.NEWS --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.NEWS 1970-01-01 01:00:00.000000000 +0100 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.NEWS 2012-09-13 12:31:05.000000000 +0200 @@ -0,0 +1,14 @@ +nvidia-graphics-drivers-legacy-173xx (173.14.35-3) unstable; urgency=low + + The *nvidia*-ia32 packages have been converted into empty dummy packages + to aid switching to multiarch packages and removing the obsolete ia32-libs + packages. + + To install the 32-bit multiarch packages on amd64, you need to enable i386 + as a foreign architecture and install the i386 packages you need: + + dpkg --add-architecture i386 + apt-get update + apt-get install libgl1-nvidia-legacy-173xx-glx:i386 + + -- Andreas Beckmann <[email protected]> Fri, 17 Aug 2012 10:23:30 +0200 diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.docs nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.docs --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.docs 2010-09-01 10:56:09.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.docs 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -debian/README.alternatives diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.install.in nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.install.in --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.install.in 2011-07-08 09:08:10.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.install.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,4 +0,0 @@ -usr/lib32/libGL.so.#VERSION# usr/lib32/nvidia/ -usr/lib32/libGLcore.so.#VERSION# -usr/lib32/libnvidia-tls.so.#VERSION# -usr/lib32/tls/libnvidia-tls.so.#VERSION# diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.links.in nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.links.in --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.links.in 2011-07-08 09:10:55.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.links.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,4 +0,0 @@ -usr/lib32/nvidia/libGL.so.#VERSION# usr/lib32/nvidia/libGL.so.1 -usr/lib32/libGLcore.so.#VERSION# usr/lib32/libGLcore.so.1 -usr/lib32/libnvidia-tls.so.#VERSION# usr/lib32/libnvidia-tls.so.1 -usr/lib32/tls/libnvidia-tls.so.#VERSION# usr/lib32/tls/libnvidia-tls.so.1 diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.lintian-overrides.in nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.lintian-overrides.in --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.lintian-overrides.in 2012-05-22 10:51:54.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.lintian-overrides.in 1970-01-01 01:00:00.000000000 +0100 @@ -1,20 +0,0 @@ -# The NVIDIA license does not allow any form of modification. -binary-has-unneeded-section -shared-lib-without-dependency-information -shlib-with-non-pic-code -shlib-without-PT_GNU_STACK-section -spelling-error-in-binary -shlib-calls-exit -hardening-no-fortify-functions -hardening-no-relro -hardening-no-stackprotector - -# Packages built against the NVIDIA libGL should declare dependencies on -# the free version for Debian's purposes. Therefore we use a special -# combination of shlibs files (for libGL.so.1) and symbols files (for all -# other libraries). -shlibs-declares-dependency-on-other-package ia32-libs (>= 20090804) - -# Due to complex maintainer script operations (migration of diversions) a -# simple Breaks+Replaces is not sufficient to ensure clean up-/downgrades. -conflicts-with-version nvidia-glx#LEGACY#-ia32 * diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.postinst.in nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.postinst.in --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.postinst.in 2011-09-08 14:02:46.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.postinst.in 2012-09-13 12:31:05.000000000 +0200 @@ -4,17 +4,7 @@ if [ "$1" = "configure" ]; then - update-alternatives --install /usr/lib32/libGL.so.1 ia32-libGL.so.1 /usr/lib32/nvidia/libGL.so.1 42 - - if [ -x /usr/lib/nvidia/check-for-conflicting-opengl-libraries ] - then - /usr/lib/nvidia/check-for-conflicting-opengl-libraries - fi - - if [ -x /usr/lib/nvidia/check-for-mismatching-nvidia-module ] - then - /usr/lib/nvidia/check-for-mismatching-nvidia-module #VERSION# - fi + update-alternatives --remove ia32-libGL.so.1 /usr/lib32/nvidia/libGL.so.1 fi diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.symbols nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.symbols --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.symbols 2010-06-30 12:37:08.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/libgl1-nvidia-glx-ia32.symbols 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -#include "libgl1-nvidia-glx.symbols.common" diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/conftest.h nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/conftest.h --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/conftest.h 2012-05-22 10:51:54.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/conftest.h 2012-09-13 12:31:05.000000000 +0200 @@ -1,4 +1,4 @@ -/* synchronized with conftest.sh from 302.11, 295.53, 173.14.34, 96.43.20, 71.86.15 */ +/* synchronized with conftest.sh from 304.48, 295.75, 173.14.35, 96.43.23, 71.86.15 */ #ifndef LINUX_VERSION_CODE #include <linux/version.h> @@ -212,6 +212,18 @@ #define NV_ACPI_WALK_NAMESPACE_ARGUMENT_COUNT 6 #endif +/* Implement conftest.sh function acpi_os_wait_events_complete */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,7) + #define NV_ACPI_OS_WAIT_EVENTS_COMPLETE_PRESENT + #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0) + #define NV_ACPI_OS_WAIT_EVENTS_COMPLETE_ARGUMENT_COUNT 0 + #else + #define NV_ACPI_OS_WAIT_EVENTS_COMPLETE_ARGUMENT_COUNT 1 + #endif +#else + #undef NV_ACPI_OS_WAIT_EVENTS_COMPLETE_PRESENT +#endif + /* Implement conftest.sh function ioremap_cache */ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,25) #define NV_IOREMAP_CACHE_PRESENT @@ -340,3 +352,17 @@ #else #undef NV_ASM_SYSTEM_H_PRESENT #endif + +/* Check for linux/kconfig.h */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,1,0) + #define NV_LINUX_KCONFIG_H_PRESENT +#else + #undef NV_LINUX_SCREEN_INFO_H_PRESENT +#endif + +/* Check for linux/screen_info.h */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) + #define NV_LINUX_SCREEN_INFO_H_PRESENT +#else + #undef NV_LINUX_SCREEN_INFO_H_PRESENT +#endif diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/control.template.in nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/control.template.in --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/control.template.in 2012-02-16 03:18:01.000000000 +0100 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/control.template.in 2012-09-13 12:31:05.000000000 +0200 @@ -12,6 +12,7 @@ Provides: nvidia-kernel-#VERSION# Depends: nvidia-kernel-common (>= 20110213) Recommends: linux-image-#KVERS# +Built-Using: ${built:using:kernel}, ${built:using:nvidia} Description: NVIDIA binary kernel module for Linux #KVERS# This package provides the non-free NVIDIA binary kernel module built for the Debian Linux kernel package. This kernel module is required by the diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/nvidia-blacklist-vga-pmu-registers-195.diff nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/nvidia-blacklist-vga-pmu-registers-195.diff --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/nvidia-blacklist-vga-pmu-registers-195.diff 1970-01-01 01:00:00.000000000 +0100 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/nvidia-blacklist-vga-pmu-registers-195.diff 2012-09-13 12:31:05.000000000 +0200 @@ -0,0 +1,30 @@ +Subject: CVE-2012-4225 + http://nvidia.custhelp.com/app/answers/detail/a_id/3140 +Origin: upstream, ftp://download.nvidia.com/XFree86/patches/security/2012-08-01/nvidia-blacklist-vga-pmu-registers-195.diff +Bug-Debian: http://bugs.debian.org/684781 + +diff -ur usr/src/nv/nv.h usr/src/nv/nv.h +--- usr/src/nv/nv.h 2012-08-02 18:19:37.000000000 -0700 ++++ usr/src/nv/nv.h 2012-08-02 18:19:37.000000000 -0700 +@@ -436,7 +436,20 @@ + + #define IS_BLACKLISTED_REG_OFFSET(nv, offset, length) \ + ((IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1000, 0x1000, offset, length)) ||\ +- (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x700000, 0x100000, offset, length))) ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x84000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x85000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x86000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x87000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x89000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0xa0000, 0x20000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x104000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x105000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x10a000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1c2000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1c3000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x618000, 0x2000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x627000, 0x1000, offset, length)) ||\ ++ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x700000, 0x100000, offset, length))) + + /* duplicated from nvos.h for external builds */ + #ifndef NVOS_AGP_CONFIG_DISABLE_AGP diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/series nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/series --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/series 2012-05-22 10:51:54.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/patches/series 2012-09-13 12:31:05.000000000 +0200 @@ -1,4 +1,5 @@ -patch-3.0-rt-nvidia.patch +nvidia-blacklist-vga-pmu-registers-195.diff -p3 +#patch-3.0-rt-nvidia.patch use-nv-kernel.o.ARCH.patch conditionally-include-linux_version.h.patch avoid-ld.gold.patch diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/rules nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/rules --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/rules 2011-07-05 13:11:10.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/module/debian/rules 2012-09-13 12:31:05.000000000 +0200 @@ -63,6 +63,8 @@ $(MAKE) LINUXDIR=$(KSRC) touch $@ +get_built_using ?= $(filter-out (=),$(shell dpkg-query -f='$${source:Package} (=$${source:Version})' -W $1)) + binary: binary-arch binary-indep binary-indep: binary-arch: build-stamp @@ -79,7 +81,9 @@ dh_compress dh_fixperms dh_installdeb - dh_gencontrol -- -v`cat debian/VERSION` + dh_gencontrol -- -v`cat debian/VERSION` \ + -V'built:using:kernel=$(call get_built_using,linux-headers-$(KVERS))' \ + -V'built:using:nvidia=$(call get_built_using,$(shell dpkg-parsechangelog | sed -nr '/^Source:/s/Source: //p')-source)' dh_md5sums dh_builddeb --destdir=$(KPKG_DEST_DIR) diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/rules nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/rules --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/rules 2012-06-30 18:56:13.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/rules 2012-09-13 12:31:05.000000000 +0200 @@ -40,11 +40,8 @@ $(patsubst debian/nvidia-alternative%,debian/nvidia-alternative$(legacy)%,\ $(patsubst debian/xserver-xorg-video-nvidia%,debian/xserver-xorg-video-nvidia$(legacy)%,\ $(RENAME_CONTROL)))))) -IA32_OVERRIDES = nvidia-vdpau-driver libcuda1 -GEN_IA32_OVERRIDES := $(foreach p,$(IA32_OVERRIDES),$(if $(wildcard debian/$p.lintian-overrides*),$p)) TEMPLATES := $(wildcard debian/*.in debian/module/debian/*.in debian/detect/*.in) AUTOGEN += $(patsubst %.in,%,$(TEMPLATES)) -AUTOGEN += $(foreach pkg,$(GEN_IA32_OVERRIDES), debian/$(pkg)-ia32.lintian-overrides) AUTOGEN += debian/module/debian/changelog AUTOGEN += $(patsubst %.in,%,$(RENAMED_CONTROL)) AUTOKEEP = debian/watch @@ -244,13 +241,9 @@ # Redirect shlibs for libGL.so.1 to libgl1-mesa-glx | libgl1. test ! -f debian/libgl1-nvidia$(legacy)-glx/DEBIAN/shlibs || \ sed -i -e '/^libGL 1 /s/.*/libGL 1 libgl1-mesa-glx | libgl1/' debian/libgl1-nvidia$(legacy)-glx/DEBIAN/shlibs - test ! -f debian/libgl1-nvidia$(legacy)-glx-ia32/DEBIAN/shlibs || \ - sed -i -e '/^libGL 1 /s/.*/libGL 1 ia32-libs (>= 20090804)/' debian/libgl1-nvidia$(legacy)-glx-ia32/DEBIAN/shlibs # Remove libGL.so from symbols files in order not to override our special shlibs files. test ! -f debian/libgl1-nvidia$(legacy)-glx/DEBIAN/symbols || \ sed -i -e '/^libGL\.so/,/^lib/{/^libGL\.so\|^ /d}' debian/libgl1-nvidia$(legacy)-glx/DEBIAN/symbols - test ! -f debian/libgl1-nvidia$(legacy)-glx-ia32/DEBIAN/symbols || \ - sed -i -e '/^libGL\.so/,/^lib/{/^libGL\.so\|^ /d}' debian/libgl1-nvidia$(legacy)-glx-ia32/DEBIAN/symbols override_dh_shlibdeps: LD_LIBRARY_PATH=/$(libdir)/$(nvidia_private):$(LD_LIBRARY_PATH) dh_shlibdeps @@ -277,6 +270,11 @@ # in a way other than unzipping of compressed files. override_dh_strip: +ifneq (squeeze,$(BACKPORT)) +override_dh_builddeb: + dh_builddeb -- -Zxz +endif + ############################################################################ # Generating control files @@ -290,9 +288,6 @@ -e 's{#PRIVATE#}{$(nvidia_private)}g;' \ < $< > $@ -%-ia32.lintian-overrides: %.lintian-overrides - sed -r -e '/^\[amd64\]: /d; s/^\[i386\]: //; s%$(libdir)%usr/lib32%g' $< > $@ - debian/module/debian/changelog: debian/changelog sed '1s/^nvidia-graphics-drivers/nvidia-kernel/g' $< > $@ @@ -351,13 +346,16 @@ ############################################################################ +PASV ?= --pasv + .PHONY: get-orig-source get-orig-source: rm -rf get-orig-source || true mkdir get-orig-source - uscan --no-symlink --download-current-version --pasv \ + ln -v ../.cache/*-$(version).run get-orig-source/ || true + uscan --no-symlink --download-current-version $(PASV) \ --watchfile debian/watch --destdir get-orig-source - test `ls get-orig-source/* | wc -l` = 2 # we need exactly 2 downloaded files + test $$(ls get-orig-source/* | wc -l) = 2 # we need exactly 2 downloaded files @set -e -x ; \ cd get-orig-source ; \ newversion=$$(ls *-x86-*.run | sed -e 's/.*-\([0-9.]*\)\(-.*\)\?\.run/\1/') ; \ diff -Nru nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/xserver-xorg-video-nvidia.postrm nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/xserver-xorg-video-nvidia.postrm --- nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/xserver-xorg-video-nvidia.postrm 2012-06-30 18:56:13.000000000 +0200 +++ nvidia-graphics-drivers-legacy-173xx-173.14.35/debian/xserver-xorg-video-nvidia.postrm 2012-09-13 12:31:05.000000000 +0200 @@ -6,7 +6,7 @@ warn_about_remaining_xorg_configuration() { # allow to disable the check via preseeding - db_get nvidia-support/check-xorg-conf-on-removal + db_get nvidia-support/check-xorg-conf-on-removal || true test "$RET" = "true" || return 0 XORG_CONF=$(grep -l '^[^#]*nvidia' /etc/X11/xorg.conf /etc/X11/xorg.conf.d/*.conf 2>/dev/null || true)

