Hello community, here is the log from the commit of package bumblebee for openSUSE:Factory checked in at 2016-04-28 16:54:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bumblebee (Old) and /work/SRC/openSUSE:Factory/.bumblebee.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "bumblebee" Changes: -------- --- /work/SRC/openSUSE:Factory/bumblebee/bumblebee.changes 2015-01-29 09:57:08.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.bumblebee.new/bumblebee.changes 2016-04-28 16:57:01.000000000 +0200 @@ -1,0 +2,8 @@ +Mon Apr 11 11:21:39 UTC 2016 - bumblebee.obs@gmail.com + +- Update patch to correctly load/unload nvidia-modeset and + nvidia-drm: + * Extended and renamed nvidia-uvm-support.patch + to nvidia-uvm-modeset-drm-support.patch + +------------------------------------------------------------------- Old: ---- nvidia-uvm-support.patch New: ---- nvidia-uvm-modeset-drm-support.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bumblebee.spec ++++++ --- /var/tmp/diff_new_pack.UuAwPU/_old 2016-04-28 16:57:02.000000000 +0200 +++ /var/tmp/diff_new_pack.UuAwPU/_new 2016-04-28 16:57:02.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package bumblebee # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,7 +24,7 @@ Group: Hardware/Other Url: https://github.com/Bumblebee-Project/bumblebee Source0: http://bumblebee-project.org/%{name}-%{version}.tar.gz -Patch0: nvidia-uvm-support.patch +Patch0: nvidia-uvm-modeset-drm-support.patch BuildRequires: glib2-devel BuildRequires: help2man BuildRequires: pciutils ++++++ nvidia-uvm-modeset-drm-support.patch ++++++ diff -urN bumblebee-3.2.1.orig/src/bbsecondary.c bumblebee-3.2.1/src/bbsecondary.c --- bumblebee-3.2.1.orig/src/bbsecondary.c 2013-04-26 17:49:03.000000000 +0200 +++ bumblebee-3.2.1/src/bbsecondary.c 2016-04-11 11:16:03.561478327 +0200 @@ -119,6 +119,24 @@ if (!module_load(module_name, driver_name)) { set_bb_error("Could not load GPU driver"); return false; + } else { + /* XXX NVIDIA UVM-DRM support */ + if (strstr(module_name, "nvidia")) { /* We are using NVIDIA's proprietary driver */ + char drm_module_name[1024]; + sprintf(drm_module_name, "%s-drm", module_name); + if (!module_load(drm_module_name, "nvidia_drm")) { + char log_string[1024]; + sprintf(log_string, "Cannot load DRM module: %s\n", drm_module_name); + bb_log(LOG_ERR, log_string); + } + char uvm_module_name[1024]; + sprintf(uvm_module_name, "%s-uvm", module_name); + if (!module_load(uvm_module_name, "nvidia_uvm")) { + char log_string[1024]; + sprintf(log_string, "Cannot load UVM module: %s\n", uvm_module_name); + bb_log(LOG_ERR, log_string); + } + } } } return true; @@ -232,6 +250,12 @@ } /* unload the driver loaded by the graphica card */ if (pci_get_driver(driver, pci_bus_id_discrete, sizeof driver)) { + /* XXX NVIDIA UVM,MODESET support */ + if (strstr(driver, "nvidia")) { + module_unload("nvidia_drm"); + module_unload("nvidia_modeset"); + module_unload("nvidia_uvm"); + } module_unload(driver); }