bbswitch: fails to find ACPI handle for discrete card

Bug #1338404 reported by hamish
18
This bug affects 4 people
Affects Status Importance Assigned to Milestone
bbswitch (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Hi,

I have a GeForce 9600 GT discrete card providing a third monitor on my 14.04 Trusty system. The first two monitors are connected to the onboard Intel i7-3770 HD graphics.

This is a contiunation of launchpad bug #1310023, where Alberto Milone wrote:

"""
@Hamish: that is a problem with bbswitch:

[ 17.706791] bbswitch: cannot find ACPI handle for VGA device 0000:01:00.0
[ 17.706792] bbswitch: No discrete VGA device found

Please file a bug report against bbswitch.
"""

You can find full debug logs in ticket #1310023, but briefly,

bbswitch-dkms package version 0.7-2ubuntu1

dmesg:
"""
[ 17.693825] bbswitch: version 0.7
[ 17.693830] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.GFX0
[ 17.693844] bbswitch: cannot find ACPI handle for VGA device 0000:01:00.0
[ 17.693845] bbswitch: No discrete VGA device found
[ 17.706786] bbswitch: version 0.7
[ 17.706789] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.GFX0
[ 17.706791] bbswitch: cannot find ACPI handle for VGA device 0000:01:00.0
[ 17.706792] bbswitch: No discrete VGA device found
"""

$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation G94 [GeForce 9600 GT] (rev a1)

fyi as per the previous ticket I upgraded ubuntu-drivers-common to version 1:0.2.91.6 from trusty-proposed, but as in comment 23 there the same "cannot find ACPI handle" was present in dmesg before upgrading that package.

The machine is dual boot with Windows 7, on the Windows side of things the three monitor setup works fine.

?

thanks,
Hamish

Revision history for this message
hamish (hamish-b) wrote :

$ dpkg -l | grep -i nvidia
ii bbswitch-dkms 0.7-2ubuntu1 amd64
ii libcuda1-331 331.38-0ubuntu7 amd64
ii nvidia-331 331.38-0ubuntu7 amd64
ii nvidia-libopencl1-331 331.38-0ubuntu7 amd64
ii nvidia-opencl-icd-331 331.38-0ubuntu7 amd64
ii nvidia-prime 0.6.2 amd64
ii nvidia-settings 331.20-0ubuntu8 amd64

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in bbswitch (Ubuntu):
status: New → Confirmed
Revision history for this message
Valdemar Lemche (atterdag) wrote :

Have the same problem with ThinkPad W520:

# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108GLM [Quadro 1000M] (rev a1)

Revision history for this message
hamish (hamish-b) wrote :

add'l info as requested by "Reporting bugs" section of https://github.com/Bumblebee-Project/bbswitch :

trusty$ dmesg | grep -C 10 bbswitch:
[ 15.775994] Bluetooth: HCI device and connection manager initialized
[ 15.776001] Bluetooth: HCI socket layer initialized
[ 15.776003] Bluetooth: L2CAP socket layer initialized
[ 15.776007] Bluetooth: SCO socket layer initialized
[ 15.778085] Bluetooth: RFCOMM TTY layer initialized
[ 15.778091] Bluetooth: RFCOMM socket layer initialized
[ 15.778094] Bluetooth: RFCOMM ver 1.11
[ 15.778277] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 15.778278] Bluetooth: BNEP filters: protocol multicast
[ 15.778281] Bluetooth: BNEP socket layer initialized
[ 16.277046] bbswitch: version 0.7
[ 16.277051] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.GFX0
[ 16.277055] bbswitch: cannot find ACPI handle for VGA device 0000:01:00.0
[ 16.277056] bbswitch: No discrete VGA device found
[ 16.288193] bbswitch: version 0.7
[ 16.288197] bbswitch: Found integrated VGA device 0000:00:02.0: \_SB_.PCI0.GFX0
[ 16.288199] bbswitch: cannot find ACPI handle for VGA device 0000:01:00.0
[ 16.288200] bbswitch: No discrete VGA device found
[ 17.400638] ip_tables: (C) 2000-2006 Netfilter Core Team
[ 17.522570] init: plymouth-upstart-bridge main process ended, respawning
[ 26.284102] init: Failed to spawn nvidia-persistenced main process: unable to execute: No such file or directory
[ 36.289803] init: Failed to spawn nvidia-persistenced main process: unable to execute: No such file or directory

trusty$ uname -a
Linux spelga 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

This is on xUbuntu 14.04 LTS on amd64 workstation (Intel i7-3770), and as the original report notes using two monitors on the i7's GPU and a plug in nVidia GeForce 9600 for the third monitor. Machine is dual boot with Windows7, triple head works fine there.

xorg package version 1:7.7+1ubuntu8
nvidia-331 package version 331.38-0ubuntu7
nvidia-prime package version 0.6.2
nvidia-settings package version 331.20-0ubuntu8

results of get-acpi-info.sh posted to launchpad bug #752542.

git://github.com/Lekensteyn/acpi-stuff.git 's acpi_dump_info.c fails to build due to missing DEVICE_ACPI_HANDLE(), which was removed in linux 3.13; see launchpad bug #1267437.

thanks,
Hamish

Revision history for this message
hamish (hamish-b) wrote :

Hamish wrote:
> git://github.com/Lekensteyn/acpi-stuff.git 's acpi_dump_info.c
> fails to build due to missing DEVICE_ACPI_HANDLE(), which was
> removed in linux 3.13; see launchpad bug #1267437.

ok, adding this to the top of acpi_dump_info.c allows it to build.

"""
#include <linux/version.h>
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 13, 0) && defined(ACPI_HANDLE)
#define DEVICE_ACPI_HANDLE(a) ACPI_HANDLE(a)
#endif
"""

result:
trusty$ cat /proc/acpi/dump_info
0000:00:00.0 060000
0000:00:01.0 060400 \_SB_.PCI0.PEG0
0000:00:02.0 030000 \_SB_.PCI0.GFX0
0000:00:14.0 0c0330 \_SB_.PCI0.XHC_
0000:00:16.0 078000
0000:00:1a.0 0c0320 \_SB_.PCI0.EHC2
0000:00:1b.0 040300 \_SB_.PCI0.HDEF
0000:00:1c.0 060400 \_SB_.PCI0.RP01
0000:00:1c.4 060400 \_SB_.PCI0.RP05
0000:00:1c.5 060401 \_SB_.PCI0.RP06
0000:00:1c.6 060400 \_SB_.PCI0.RP07
0000:00:1c.7 060400 \_SB_.PCI0.RP08
0000:00:1d.0 0c0320 \_SB_.PCI0.EHC1
0000:00:1f.0 060100 \_SB_.PCI0.LPCB
0000:00:1f.2 010601 \_SB_.PCI0.SAT0
0000:00:1f.3 0c0500 \_SB_.PCI0.SBUS
0000:01:00.0 030000
0000:03:00.0 0c0330 \_SB_.PCI0.RP05.PXSX
0000:04:00.0 060401 \_SB_.PCI0.RP06.PXSX
0000:06:00.0 020000 \_SB_.PCI0.RP07.PXSX
0000:07:00.0 010601 \_SB_.PCI0.RP08.PXSX

thanks,
Hamish

Revision history for this message
Peter Wu (lekensteyn) wrote :

bbswitch is a module for Optimus laptops, not desktops (except an odd, single all-in-one). The i7-3770 is a desktop processor, so bbswitch will not work here.

Changed in bbswitch (Ubuntu):
status: Confirmed → Invalid
Revision history for this message
hamish (hamish-b) wrote :

probable reason for confusion:

The X/Config/HybridGraphics page in the Ubuntu Wiki does not define what "hybrid"
means, and indicates that nvidia-prime is the right thing to use for multihead
workstations with both integrated and discrete video, at least by my reading of
the introduction.
...
https://wiki.ubuntu.com/X/Config/HybridGraphics

specifically the "Hardware Requirements" section, which could be interpreded as covering desktop setups as well.

Revision history for this message
hamish (hamish-b) wrote :

I've now updated the wiki to explain that HybridGraphics is only for the either-or laptop GPUs.

regards,
Hamish

Revision history for this message
Andreas C. Osowski (th0br0) wrote :

@atterdag:
On the W520 I also ran into this issue. After removing the "pci=noacpi" kernel parameters required to boot the discrete device bumblebee works again.
Maybe other NVIDIA cards also required this in the past?

- Andreas

Revision history for this message
Eduardo Gäedke (euduvda) wrote :

Hello!

Today, after an update of Ubuntu 14.04 I had the error message reported in this bug: "bbswitch: No discrete VGA device found".
Yesterday when I installed the latest updates availble I noticed that it was installing nvidia-331-updates*, nvidia-libopencl-*, nvidia-prime and nvidia settings.

Ok, the problem is that I don't have a NVIDIA card, but an AMD... I'm not using the proprietary blob.
To "solve" the problem, just purged the nvidia packages, rebooted and now the system is working again!

To others with the same problem:
If you were unable to login because you card was not recognized and you dont have a NVIDIA card like me do the following steps.
1 - Use ctrl + alt + 1 to jump to a terminal window (mine was still working).
2 - Login with your accout
3 - Type the command: sudo apt-get purge nvidia* and accept
4 - Reboot the system.

I hope this will help somebody!
Bye!

Revision history for this message
kolawole olulana (kolawolegolulana) wrote :

Eduardo It helped

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.