Bumblebee-Project / bbswitch

Disable discrete graphics (currently nvidia only)
GNU General Public License v2.0
487 stars 77 forks source link

Bumblebee not working on Lenovo Thinkpad P50 with Centos 6.8-6.9 and 7.3-7.5 #176

Open wrthissell opened 5 years ago

wrthissell commented 5 years ago

Dear Lekensteyn, I am unable to get Bumblebee to work on a Lenovo Thinkpad P50 with the above mentioned Centos Versions. I am currently trying to get it to work on Centos 7.5. gsgatlin is most graciously assisting me in resolving this issue. He now suspects that the issue involves bbswitch and he referred me to this sub-page to submit and issue. Below is a link to the transcript of what we have tried thus far:

https://github.com/Bumblebee-Project/Bumblebee/issues/974

    I want to thank you in advance for your assistance in helping us resolve this issue
wrthissell commented 5 years ago

Dear Colleagues, Are there any bbswitch developers out there that may help us resolve this issue? Thank you in advance for your assistance.

wrthissell commented 5 years ago

Dear Lekensteyn, I have created a src.rpm and rpm from doudou's webpage below:

https://github.com/doudou/bbswitch/tree/nv_card_d3_using_runtime_suspend

I suspect that it will fix the issue I previously had and reported at:

https://github.com/Bumblebee-Project/bbswitch/issues/177

See below for the details: [wrthissell@localhost ~]$ .\load.sh [wrthissell@localhost ~]$ bumblebee-nvidia --check

nvidia.ko compiled into in the kernel tree ok. modinfo output for NVIDIA:

filename: /lib/modules/3.10.0-862.11.6.el7.x86_64/kernel/drivers/video/nvidia.ko alias: char-major-195- version: 390.77 supported: external license: NVIDIA retpoline: Y rhelversion: 7.5 srcversion: 209B1D0CB123DE466F700AD alias: pci:v000010DEd00000E00svsdbc04sc80i00 alias: pci:v000010DEdsvsdbc03sc02i00 alias: pci:v000010DEdsvsdbc03sc00i00 depends: ipmi_msghandler,i2c-core vermagic: 3.10.0-862.11.6.el7.x86_64 SMP mod_unload modversions parm: NVreg_Mobile:int parm: NVreg_ResmanDebugLevel:int parm: NVreg_RmLogonRC:int parm: NVreg_ModifyDeviceFiles:int parm: NVreg_DeviceFileUID:int parm: NVreg_DeviceFileGID:int parm: NVreg_DeviceFileMode:int parm: NVreg_UpdateMemoryTypes:int parm: NVreg_InitializeSystemMemoryAllocations:int parm: NVreg_UsePageAttributeTable:int parm: NVreg_MapRegistersEarly:int parm: NVreg_RegisterForACPIEvents:int parm: NVreg_CheckPCIConfigSpace:int parm: NVreg_EnablePCIeGen3:int parm: NVreg_EnableMSI:int parm: NVreg_TCEBypassMode:int parm: NVreg_UseThreadedInterrupts:int parm: NVreg_EnableStreamMemOPs:int parm: NVreg_EnableBacklightHandler:int parm: NVreg_EnableUserNUMAManagement:int parm: NVreg_EnableIBMNPURelaxedOrderingMode:int parm: NVreg_MemoryPoolSize:int parm: NVreg_IgnoreMMIOCheck:int parm: NVreg_RegistryDwords:charp parm: NVreg_RegistryDwordsPerDevice:charp parm: NVreg_RmMsg:charp parm: NVreg_AssignGpus:charp

Check bbswitch kernel module...

bbswitch is loaded into the current kernel ok.

All checks completed successfully! NVIDIA driver appears to have compiled ok.

Documentation on bumblebee for RHEL / CentOS / fedora can be found at: https://www.linux.ncsu.edu/bumblebee/

[wrthissell@localhost ~]$ optirun --debug glxgears [10118.669931] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf [10118.670178] [INFO]Configured driver: nvidia [10118.670273] [DEBUG]optirun version 3.3.0-:%ci-:%h$ starting... [10118.670284] [DEBUG]Active configuration: [10118.670294] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf [10118.670303] [DEBUG] X display: :8 [10118.670314] [DEBUG] LD_LIBRARY_PATH: /usr/lib64/nvidia-bumblebee:/usr/lib/nvidia-bumblebee:/usr/lib64:/usr/lib [10118.670325] [DEBUG] Socket path: /var/run/bumblebee.socket [10118.670335] [DEBUG] Accel/display bridge: auto [10118.670346] [DEBUG] VGL Compression: proxy [10118.670358] [DEBUG] VGLrun extra options: [10118.670368] [DEBUG] Primus LD Path: /usr/lib/primus:/usr/lib64/primus [10118.670409] [DEBUG]Using auto-detected bridge primus [10118.670532] [INFO]Response: No - error: Could not enable discrete graphics card

[10118.670547] [ERROR]Cannot access secondary GPU - error: Could not enable discrete graphics card

[10118.670562] [DEBUG]Socket closed. [10118.670601] [ERROR]Aborting because fallback start is disabled. [10118.670614] [DEBUG]Killing all remaining processes. [wrthissell@localhost ~]$ sudo dmesg | grep -C 10 bbswitch [ 1.934586] systemd[1]: Reached target Swap. [ 1.934601] systemd[1]: Starting Swap. [ 1.934709] systemd[1]: Listening on udev Control Socket. [ 1.934719] systemd[1]: Starting udev Control Socket. [ 1.934816] systemd[1]: Reached target Local File Systems. [ 1.934826] systemd[1]: Starting Local File Systems. [ 1.934875] systemd[1]: Reached target Slices. [ 1.934883] systemd[1]: Starting Slices. [ 1.934934] systemd[1]: Reached target Timers. [ 1.934943] systemd[1]: Starting Timers. [ 1.935087] bbswitch: loading out-of-tree module taints kernel. [ 1.935131] bbswitch: module verification failed: signature and/or required key missing - tainting kernel [ 1.936088] systemd[1]: Starting Create list of required static device nodes for the current kernel... [ 1.936204] systemd[1]: Listening on udev Kernel Socket. [ 1.936215] systemd[1]: Starting udev Kernel Socket. [ 1.936267] systemd[1]: Reached target Sockets. [ 1.936275] systemd[1]: Starting Sockets. [ 1.936500] version 0.9 [ 1.936976] systemd[1]: Started Load Kernel Modules. [ 1.937098] type=1130 audit(1535322231.656:2): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='unit=systemd-modules-load comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success' [ 1.937733] systemd[1]: Starting Apply Kernel Variables... [ 1.938233] systemd[1]: Started Create list of required static device nodes for the current kernel. [wrthissell@localhost ~]$ systemctl -l status bumblebeed ● bumblebeed.service - Bumblebee C Daemon Loaded: loaded (/usr/lib/systemd/system/bumblebeed.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2018-08-26 22:23:56 EDT; 20h ago Main PID: 1150 (bumblebeed) Tasks: 1 CGroup: /system.slice/bumblebeed.service └─1150 /usr/sbin/bumblebeed --use-syslog

Aug 26 22:23:56 localhost.localdomain bumblebeed[1150]: /usr/sbin/bumblebeed 3.3.0-:%ci-:%h$ started Aug 26 22:23:56 localhost.localdomain systemd[1]: Started Bumblebee C Daemon. Aug 26 22:23:56 localhost.localdomain systemd[1]: Starting Bumblebee C Daemon... Aug 27 18:43:14 localhost.localdomain bumblebeed[1150]: Could not enable discrete graphics card [wrthissell@localhost ~]$ cat /proc/acpi/bbswitch (null) ON [wrthissell@localhost ~]$ sudo tee /proc/acpi/bbswitch <<<OFF OFF [wrthissell@localhost ~]$ cat /proc/acpi/bbswitch (null) OFF [wrthissell@localhost ~]$ yum list installed bumblebee Loaded plugins: fastestmirror, langpacks, nvidia Determining fastest mirrors

You will note that the bumblebee build is from the gsgatlin build of the xpra-backend build of bumblebee, detailed in the:

Bumblebee-Project/Bumblebee#974 thread.

The combination of the two does not resolve my optirun issue, but it does appear to resolve the issue of turning on and off the nvidia card. I am still pursuing a resolution of my optirun issue. I am requesting a pull merge between the xpra-backend and the development branch in order to assist my isolation and resolution of my issue.

  Here are the src.rpm and rpms that I am working with for bbswitch:

20180827 bbswitch-0.9-1.tar.gz

 Thank you in advance for executing the pull request between the xpra-backend and the development branch of bumblebee so that I may continue to execute my debugging whilst incorporating your other debugging.