diff -u nvidia-graphics-drivers-346-346.47/debian/changelog nvidia-graphics-drivers-346-346.47/debian/changelog --- nvidia-graphics-drivers-346-346.47/debian/changelog +++ nvidia-graphics-drivers-346-346.47/debian/changelog @@ -1,8 +1,70 @@ -nvidia-graphics-drivers-346 (346.47-0ubuntu1~xedgers14.04.1) trusty; urgency=medium +nvidia-graphics-drivers-346 (346.47-0ubuntu4~xedgers14.04.1) trusty; urgency=medium - * New upstream release + * Copied from vivid - -- Rico Tzschichholz Wed, 25 Feb 2015 16:50:46 +0100 + -- Rico Tzschichholz Thu, 26 Mar 2015 08:17:43 +0100 + +nvidia-graphics-drivers-346 (346.47-0ubuntu4) vivid; urgency=medium + + * debian/templates/control.in: + - Stop recommending the uvm package now that it's a + transitional package. Thanks to Jason De Rose for + spotting the error. + + -- Alberto Milone Tue, 17 Mar 2015 20:15:02 +0100 + +nvidia-graphics-drivers-346 (346.47-0ubuntu3) vivid; urgency=medium + + * debian/rules, + debian/templates/dkms.conf.fragment.in, + debian/templates/control.in, + debian/templates/dkms_nvidia_uvm.conf.in, + debian/templates/nvidia-graphics-drivers-uvm.dirs.in, + debian/templates/nvidia-graphics-drivers-uvm.install.in, + debian/templates/nvidia-graphics-drivers-uvm.postinst.in, + debian/templates/nvidia-graphics-drivers-uvm.prerm.in: + - Build nvidia and nvidia-uvm together, as the latter + build depends on the former (LP: #1431753). + - Merge the -uvm package into the main nvidia driver + package, and provide a transitional package for -uvm. + - Make sure to remove all upstream dkms.conf files. + + -- Alberto Milone Mon, 16 Mar 2015 18:16:53 +0100 + +nvidia-graphics-drivers-346 (346.47-0ubuntu2) vivid; urgency=medium + + * debian/nvidia_supported: + - Update the script to parse the format of the new README. + This fixes the lack of modaliases in the packages. + + -- Alberto Milone Thu, 12 Mar 2015 17:30:18 +0100 + +nvidia-graphics-drivers-346 (346.47-0ubuntu1) vivid; urgency=medium + + * debian/rules, debian/templates/control.in: + - Drop UVM on armhf, as upstream removed it from the installer. + Fixes FTBFS. + * New upstream release: + - Added support for the following GPUs: + Quadro K620M + Quadro K2200M + GeForce GTX 965M + - Fixed a bug that could cause rendering corruption in GLX + clients using PBOs and/or VBOs when using GLX indirect + rendering. + - Fixed a bug that caused Xinerama layouts which included X + screens with 'Option "UseDisplayDevice" "none"' to be + represented incorrectly in the nvidia-settings control + panel. + - Fixed a bug that could cause glXSwapBuffer() to block for + longer than necessary in multi-threaded GLX applications using + the GLX_NV_delay_before_swap extension. + - Fixed a bug that caused OpenGL applications using the + NV_path_rendering extension to crash after a modeswitch event. + - Fixed a bug that caused DisplayPort audio to stop working after + monitors are hotplugged. + + -- Alberto Milone Tue, 03 Mar 2015 18:05:26 +0100 nvidia-graphics-drivers-346 (346.35-0ubuntu1) vivid; urgency=medium diff -u nvidia-graphics-drivers-346-346.47/debian/control nvidia-graphics-drivers-346-346.47/debian/control --- nvidia-graphics-drivers-346-346.47/debian/control +++ nvidia-graphics-drivers-346-346.47/debian/control @@ -15,7 +15,7 @@ patch, acpid, lib32gcc1 [amd64], libc6-i386 [amd64], passwd, adduser, ${shlibs:Depends}, ${misc:Depends}, ${xviddriver:Depends} Recommends: nvidia-settings (>= 331.20), nvidia-prime (>= 0.5) | bumblebee, - libcuda1-346, nvidia-opencl-icd-346 [!armhf], nvidia-346-uvm [!i386] + libcuda1-346, nvidia-opencl-icd-346 [!armhf] Provides: xorg-driver-binary, nvidia-driver-binary, nvidia-persistenced, ${xviddriver:Provides} Conflicts: xorg-driver-binary, nvidia-persistenced @@ -97,9 +97,6 @@ Package: nvidia-346-uvm -Architecture: amd64 armhf -Depends: ${misc:Depends}, nvidia-346 (>= 346.47) -Conflicts: nvidia-uvm -Replaces: nvidia-uvm -Provides: nvidia-uvm -Description: NVIDIA Unified Memory kernel module - This package contains the NVIDIA Unified Memory kernel module. +Architecture: amd64 +Depends: nvidia-346 +Description: Transitional package for nvidia-346 + This is a transitional package for nvidia-346. diff -u nvidia-graphics-drivers-346-346.47/debian/dkms_nvidia.conf nvidia-graphics-drivers-346-346.47/debian/dkms_nvidia.conf --- nvidia-graphics-drivers-346-346.47/debian/dkms_nvidia.conf +++ nvidia-graphics-drivers-346-346.47/debian/dkms_nvidia.conf @@ -12,3 +12,3 @@ #PATCH_MATCH[1]="^3.[10-11]" -#PATCH[0]="buildfix_kernel_3.18.patch" +PATCH[0]="buildfix_kernel_3.18.patch" #PATCH[1]="register-VT-switch-requirements.patch" reverted: --- nvidia-graphics-drivers-346-346.47/debian/dkms_nvidia_uvm/patches/buildfix_kernel_3.12.patch +++ nvidia-graphics-drivers-346-346.47.orig/debian/dkms_nvidia_uvm/patches/buildfix_kernel_3.12.patch @@ -1,42 +0,0 @@ -From b32ce9509d4039e56f527e2874550eb2cf1a5648 Mon Sep 17 00:00:00 2001 -From: Alberto Milone -Date: Thu, 9 Jan 2014 11:50:51 +0100 -Subject: [PATCH 1/1] uvm: add support for Linux 3.12 (v2) - -If CONFIG_UIDGID_STRICT_TYPE_CHECKS is enabled, kuid_t is a struct -with the uid_t val member, otherwise it's simply an alias for uid_t. - -Despite the commit subject, this is not specific to Linux 3.12. - -Thanks to Joseph Yasi for finding out the issue and suggesting a fix. ---- - nvidia_uvm_linux.h | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/nvidia_uvm_linux.h b/nvidia_uvm_linux.h -index e2b4620..0a38cbc 100644 ---- a/nvidia_uvm_linux.h -+++ b/nvidia_uvm_linux.h -@@ -389,11 +389,17 @@ typedef void irqreturn_t; - // not require the RCU's read lock on current->cred. - // - // -+#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS -+#define NV_KUID_TO_UID(value) (__kuid_val(value)) -+#else -+#define NV_KUID_TO_UID(value) (value) -+#endif -+ - #if defined(NV_TASK_STRUCT_HAS_CRED) - #define NV_CURRENT_EUID() \ -- (((typeof(*current->cred) __force __kernel *)current->cred)->euid) -+ NV_KUID_TO_UID(((typeof(*current->cred) __force __kernel *)current->cred)->euid) - #else --#define NV_CURRENT_EUID() (current->euid) -+#define NV_CURRENT_EUID() NV_KUID_TO_UID(current->euid) - #endif - - #if !defined(VM_FAULT_NOPAGE) --- -1.7.9.5 - reverted: --- nvidia-graphics-drivers-346-346.47/debian/nvidia-346-uvm.dirs +++ nvidia-graphics-drivers-346-346.47.orig/debian/nvidia-346-uvm.dirs @@ -1 +0,0 @@ -/usr/src/nvidia-346-346.47 reverted: --- nvidia-graphics-drivers-346-346.47/debian/nvidia-346-uvm.install +++ nvidia-graphics-drivers-346-346.47.orig/debian/nvidia-346-uvm.install @@ -1,3 +0,0 @@ -debian/temp/modules/nvidia-uvm-kernel/uvm/* usr/src/nvidia-346-uvm-346.47 -debian/dkms_nvidia_uvm/patches/* usr/src/nvidia-346-uvm-346.47/patches -debian/dkms_nvidia_uvm/dkms.conf usr/src/nvidia-346-uvm-346.47 reverted: --- nvidia-graphics-drivers-346-346.47/debian/nvidia-346-uvm.postinst +++ nvidia-graphics-drivers-346-346.47.orig/debian/nvidia-346-uvm.postinst @@ -1,75 +0,0 @@ -#!/bin/sh -# Copyright (C) 2007-2008 Mario Limonciello -# Copyright (C) 2009 Canonical Ltd -# Authors: Alberto Milone -set -e - -PACKAGE_NAME=nvidia-346-uvm -CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2` -CVERSION=${CVERSION#*really.} - -INIT_SCRIPT="/etc/init/build-$PACKAGE_NAME.conf" -TMP_FILE="/tmp/do_not_build_dkms_module" - -ARCH=`dpkg --print-architecture` -case $ARCH in - amd64) - ARCH="x86_64" - ;; - lpia) - ARCH="i686" - ;; - i386) - ARCH="i686" - ;; - armhf) - ARCH="armhf" - ;; - *) - echo "WARNING: unsupported arch: $ARCH" - ARCH="$ARCH" - ;; -esac - -case "$1" in - configure) - # If the delayed module build feature is enabled - # i.e. if $DONT_BUILD_MODULE is set to 1 - # or if $TMP_FILE exists - if [ "${DONT_BUILD_MODULE}1" -eq "11" ] || [ -e $TMP_FILE ]; then - # Do not build the module and create - # the Upstart script which will - # build the module on next boot - cat > $INIT_SCRIPT <&2 - exit 1 - ;; -esac - -#DEBHELPER# reverted: --- nvidia-graphics-drivers-346-346.47/debian/nvidia-346-uvm.prerm +++ nvidia-graphics-drivers-346-346.47.orig/debian/nvidia-346-uvm.prerm @@ -1,27 +0,0 @@ -#!/bin/sh -# prerm script for nvidia-346 -# -# Copyright (C) 2007 Mario Limonciello -# Copyright (C) 2009 Canonical Ltd -# Authors: Alberto Milone - - -PACKAGE_NAME=nvidia-346-uvm -CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2` -CVERSION=${CVERSION#*really.} - -ARCH=`dpkg --print-architecture` - -remove_dkms_module() { - echo "Removing all DKMS Modules" - dkms remove -m $PACKAGE_NAME -v $CVERSION --all > /dev/null - echo "Done." -} - -case "$1" in - upgrade|remove) - remove_dkms_module - ;; -esac - -#DEBHELPER# diff -u nvidia-graphics-drivers-346-346.47/debian/nvidia_supported nvidia-graphics-drivers-346-346.47/debian/nvidia_supported --- nvidia-graphics-drivers-346-346.47/debian/nvidia_supported +++ nvidia-graphics-drivers-346-346.47/debian/nvidia_supported @@ -23,10 +23,15 @@ local diff="$(mktemp)" sed -nr '/^Appendix .\. Supported NVIDIA /,/legacy/ { - s/.* 0x([0-9a-fA-F]{4}) 0x([0-9a-fA-F]{4})( .*|$)/\1 \2/p + s/.* ([0-9a-fA-F]{4}) ([0-9a-fA-F]{4}) ([0-9a-fA-F]{4})( .*|$)/\1 \2 \3/p }' "$readme" | tr A-F a-f | sort | uniq >"$readme_list" + + sed -nr '/^Appendix .\. Supported NVIDIA /,/legacy/ { + s/.* ([0-9a-fA-F]{4}) ([0-9a-fA-F]{4})( .*|$)/\1 \2/p + }' "$readme" | tr A-F a-f | sort | uniq >"$readme_list" + sed -nr '/^Appendix .\. Supported NVIDIA /,/legacy/ { - s/.* 0x([0-9a-fA-F]{4})( .*|$)/\1/p + s/.* ([0-9a-fA-F]{4})( .*|$)/\1/p }' "$readme" | tr A-F a-f | sort | uniq >>"$readme_list" local readme_length="$(grep -Ec . "$readme_list")" diff -u nvidia-graphics-drivers-346-346.47/debian/rules nvidia-graphics-drivers-346-346.47/debian/rules --- nvidia-graphics-drivers-346-346.47/debian/rules +++ nvidia-graphics-drivers-346-346.47/debian/rules @@ -314,13 +314,15 @@ # kernel module source mkdir -p $(CURDIR)/debian/temp/modules/nvidia-kernel cp -Rf $(CURDIR)/$(dirname)/kernel $(CURDIR)/debian/temp/modules/nvidia-kernel/ - rm -rf $(CURDIR)/debian/temp/modules/nvidia-kernel/kernel/uvm if [ -e "$(CURDIR)/debian/temp/modules/nvidia-kernel/kernel/Makefile.kbuild" ] ; \ then \ cp -f $(CURDIR)/debian/temp/modules/nvidia-kernel/kernel/Makefile.kbuild \ $(CURDIR)/debian/temp/modules/nvidia-kernel/kernel/Makefile ; \ fi; + # Remove the dkms.conf(s) from upstream + find $(CURDIR)/debian/temp/modules/nvidia-kernel/ -name dkms.conf* | xargs rm -f + mkdir -p $(CURDIR)/debian/dkms_nvidia cp -f $(CURDIR)/debian/dkms_nvidia.conf $(CURDIR)/debian/dkms_nvidia/dkms.conf @@ -344,14 +346,9 @@ execstack -c $(CURDIR)/$(dirname)/nvidia-smi || true execstack -c $(CURDIR)/$(dirname)/nvidia-persistenced || true -ifneq ($(DEB_BUILD_ARCH),i386) - # Part about $(PKG_driver_uvm) - # Kernel module files - mkdir -p $(CURDIR)/debian/temp/modules/nvidia-uvm-kernel - cp -Rf $(CURDIR)/$(dirname)/kernel/uvm $(CURDIR)/debian/temp/modules/nvidia-uvm-kernel/ - - mkdir -p $(CURDIR)/debian/dkms_nvidia_uvm - cp -f $(CURDIR)/debian/dkms_nvidia_uvm.conf $(CURDIR)/debian/dkms_nvidia_uvm/dkms.conf +ifeq ($(DEB_BUILD_ARCH),amd64) + # Make sure the UVM module is built + cat $(CURDIR)/debian/dkms.conf.fragment >> $(CURDIR)/debian/dkms_nvidia/dkms.conf endif override_dh_install: gen-abi-substvars @@ -443,12 +440,6 @@ # Remove libnvidia-opencl find $(CURDIR)/debian/$(PKG_driver) -name 'libnvidia-opencl*.so*' | xargs /bin/rm -f -ifneq ($(DEB_BUILD_ARCH),i386) - # Part about $(PKG_driver_uvm): - dh_install -p$(PKG_driver_uvm) - rm -rf debian/temp/modules/nvidia-uvm-kernel -endif - # Part about $(PKG_libcuda1): dh_install -p$(PKG_libcuda1) ifeq ($(DEB_BUILD_ARCH),amd64) diff -u nvidia-graphics-drivers-346-346.47/debian/templates/control.in nvidia-graphics-drivers-346-346.47/debian/templates/control.in --- nvidia-graphics-drivers-346-346.47/debian/templates/control.in +++ nvidia-graphics-drivers-346-346.47/debian/templates/control.in @@ -15,7 +15,7 @@ patch, acpid, lib32gcc1 [amd64], libc6-i386 [amd64], passwd, adduser, ${shlibs:Depends}, ${misc:Depends}, ${xviddriver:Depends} Recommends: nvidia-settings (>= 331.20), nvidia-prime (>= 0.5) | bumblebee, - #LIBCUDA1#, #OPENCLICD# [!armhf], #DRIVERUVMNAME# [!i386] + #LIBCUDA1#, #OPENCLICD# [!armhf] Provides: xorg-driver-binary, nvidia-driver-binary, nvidia-persistenced, ${xviddriver:Provides} Conflicts: xorg-driver-binary, nvidia-persistenced @@ -97,9 +97,6 @@ Package: #DRIVERUVMNAME# -Architecture: amd64 armhf -Depends: ${misc:Depends}, #DRIVERNAME# (>= #VERSION#) -Conflicts: nvidia-uvm -Replaces: nvidia-uvm -Provides: nvidia-uvm -Description: NVIDIA Unified Memory kernel module - This package contains the NVIDIA Unified Memory kernel module. +Architecture: amd64 +Depends: #DRIVERNAME# +Description: Transitional package for #DRIVERNAME# + This is a transitional package for #DRIVERNAME#. diff -u nvidia-graphics-drivers-346-346.47/debian/templates/dkms_nvidia.conf.in nvidia-graphics-drivers-346-346.47/debian/templates/dkms_nvidia.conf.in --- nvidia-graphics-drivers-346-346.47/debian/templates/dkms_nvidia.conf.in +++ nvidia-graphics-drivers-346-346.47/debian/templates/dkms_nvidia.conf.in @@ -12,3 +12,3 @@ #PATCH_MATCH[1]="^3.[10-11]" -#PATCH[0]="buildfix_kernel_3.18.patch" +PATCH[0]="buildfix_kernel_3.18.patch" #PATCH[1]="register-VT-switch-requirements.patch" reverted: --- nvidia-graphics-drivers-346-346.47/debian/templates/dkms_nvidia_uvm.conf.in +++ nvidia-graphics-drivers-346-346.47.orig/debian/templates/dkms_nvidia_uvm.conf.in @@ -1,11 +0,0 @@ -RM_PACKAGE_NAME="#DRIVERNAME#" -PACKAGE_NAME="${RM_PACKAGE_NAME}-uvm" -PACKAGE_VERSION="#VERSION#" -RM_OUT_DIR=${dkms_tree}/${RM_PACKAGE_NAME}/${PACKAGE_VERSION}/build -BUILT_MODULE_NAME[0]="nvidia-uvm" -DEST_MODULE_NAME[0]=${PACKAGE_NAME} -DEST_MODULE_LOCATION[0]="/kernel/drivers/char/drm" -CLEAN="make -C ${RM_OUT_DIR} clean; make clean RM_OUT_DIR=${RM_OUT_DIR}" -MAKE[0]="make module KERNEL_UNAME=${kernelver} KBUILD_EXTMOD=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build RM_OUT_DIR=${RM_OUT_DIR}" -AUTOINSTALL="yes" -#PATCH[0]="buildfix_kernel_3.12.patch" reverted: --- nvidia-graphics-drivers-346-346.47/debian/templates/nvidia-graphics-drivers-uvm.dirs.in +++ nvidia-graphics-drivers-346-346.47.orig/debian/templates/nvidia-graphics-drivers-uvm.dirs.in @@ -1 +0,0 @@ -/usr/src/#DRIVERNAME#-#VERSION# reverted: --- nvidia-graphics-drivers-346-346.47/debian/templates/nvidia-graphics-drivers-uvm.install.in +++ nvidia-graphics-drivers-346-346.47.orig/debian/templates/nvidia-graphics-drivers-uvm.install.in @@ -1,3 +0,0 @@ -debian/temp/modules/nvidia-uvm-kernel/uvm/* usr/src/#DRIVERUVMNAME#-#VERSION# -debian/dkms_nvidia_uvm/patches/* usr/src/#DRIVERUVMNAME#-#VERSION#/patches -debian/dkms_nvidia_uvm/dkms.conf usr/src/#DRIVERUVMNAME#-#VERSION# reverted: --- nvidia-graphics-drivers-346-346.47/debian/templates/nvidia-graphics-drivers-uvm.postinst.in +++ nvidia-graphics-drivers-346-346.47.orig/debian/templates/nvidia-graphics-drivers-uvm.postinst.in @@ -1,75 +0,0 @@ -#!/bin/sh -# Copyright (C) 2007-2008 Mario Limonciello -# Copyright (C) 2009 Canonical Ltd -# Authors: Alberto Milone -set -e - -PACKAGE_NAME=#DRIVERUVMNAME# -CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2` -CVERSION=${CVERSION#*really.} - -INIT_SCRIPT="/etc/init/build-$PACKAGE_NAME.conf" -TMP_FILE="/tmp/do_not_build_dkms_module" - -ARCH=`dpkg --print-architecture` -case $ARCH in - amd64) - ARCH="x86_64" - ;; - lpia) - ARCH="i686" - ;; - i386) - ARCH="i686" - ;; - armhf) - ARCH="armhf" - ;; - *) - echo "WARNING: unsupported arch: $ARCH" - ARCH="$ARCH" - ;; -esac - -case "$1" in - configure) - # If the delayed module build feature is enabled - # i.e. if $DONT_BUILD_MODULE is set to 1 - # or if $TMP_FILE exists - if [ "${DONT_BUILD_MODULE}1" -eq "11" ] || [ -e $TMP_FILE ]; then - # Do not build the module and create - # the Upstart script which will - # build the module on next boot - cat > $INIT_SCRIPT <&2 - exit 1 - ;; -esac - -#DEBHELPER# reverted: --- nvidia-graphics-drivers-346-346.47/debian/templates/nvidia-graphics-drivers-uvm.prerm.in +++ nvidia-graphics-drivers-346-346.47.orig/debian/templates/nvidia-graphics-drivers-uvm.prerm.in @@ -1,27 +0,0 @@ -#!/bin/sh -# prerm script for #DRIVERNAME# -# -# Copyright (C) 2007 Mario Limonciello -# Copyright (C) 2009 Canonical Ltd -# Authors: Alberto Milone - - -PACKAGE_NAME=#DRIVERUVMNAME# -CVERSION=`dpkg-query -W -f='${Version}' $PACKAGE_NAME | awk -F "-" '{print $1}' | cut -d\: -f2` -CVERSION=${CVERSION#*really.} - -ARCH=`dpkg --print-architecture` - -remove_dkms_module() { - echo "Removing all DKMS Modules" - dkms remove -m $PACKAGE_NAME -v $CVERSION --all > /dev/null - echo "Done." -} - -case "$1" in - upgrade|remove) - remove_dkms_module - ;; -esac - -#DEBHELPER# only in patch2: unchanged: --- nvidia-graphics-drivers-346-346.47.orig/debian/dkms.conf.fragment +++ nvidia-graphics-drivers-346-346.47/debian/dkms.conf.fragment @@ -0,0 +1,6 @@ +BUILT_MODULE_NAME[1]="nvidia-uvm" +BUILT_MODULE_LOCATION[1]="uvm/" +DEST_MODULE_LOCATION[1]="/kernel/drivers/video" +DEST_MODULE_NAME[1]="nvidia_346_uvm" +MAKE[0]+="; make -C uvm module KERNEL_UNAME=${kernelver} KBUILD_EXTMOD=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build/uvm" +CLEAN+="; make -C uvm clean" only in patch2: unchanged: --- nvidia-graphics-drivers-346-346.47.orig/debian/templates/dkms.conf.fragment.in +++ nvidia-graphics-drivers-346-346.47/debian/templates/dkms.conf.fragment.in @@ -0,0 +1,6 @@ +BUILT_MODULE_NAME[1]="nvidia-uvm" +BUILT_MODULE_LOCATION[1]="uvm/" +DEST_MODULE_LOCATION[1]="/kernel/drivers/video" +DEST_MODULE_NAME[1]="#MODULENAME#_uvm" +MAKE[0]+="; make -C uvm module KERNEL_UNAME=${kernelver} KBUILD_EXTMOD=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build/uvm" +CLEAN+="; make -C uvm clean"