Bug#1010985: bbswitch-dkms: Error in recognizing discrete and integrated graphic card

Valerio Passini passini.valerio at gmail.com
Sat May 14 19:48:23 BST 2022


Package: bbswitch-dkms
Version: 0.8-12
Severity: important
Tags: upstream
X-Debbugs-Cc: passini.valerio at gmail.com

Dear Maintainer,

In dmesg log there is the following error when bbswitch is loaded:
May 14 16:45:34 Panoramix kernel: [    4.153636] bbswitch: version 0.8
May 14 16:45:34 Panoramix kernel: [    4.153648] bbswitch: Found discrete VGA
device 0000:01:00.0: \_SB_.PCI0.GPP0.PEGP
May 14 16:45:34 Panoramix kernel: [    4.153651] bbswitch: Found discrete VGA
device 0000:06:00.0: \_SB_.PCI0.GP17.VGA_
May 14 16:45:34 Panoramix kernel: [    4.153662] bbswitch: failed to evaluate
\_SB_.PCI0.GP17.VGA_._DSM
{0xF8,0xD8,0x86,0xA4,0xDA,0x0B,0x1B,0x47,0xA7,0x2B,0x60,0x42,0xA6,0xB5,0xBE,
0xE0}
0x100 0x0 {0x00,0x00,0x00,0x00}: AE_NOT_FOUND
May 14 16:45:34 Panoramix kernel: [    4.153666] bbswitch: failed to evaluate
\_SB_.PCI0.GP17.VGA_._DSM
{0xA0,0xA0,0x95,0x9D,0x60,0x00,0x48,0x4D,0xB3,0x4D,0x7E,0x5F,0xEA,0x12,0x9F,
0xD4}
0x102 0x0 {0x00,0x00,0x00,0x00}: AE_NOT_FOUND
May 14 16:45:34 Panoramix kernel: [    4.153667] bbswitch: No suitable _DSM
call found.

Digging around I've found that this error happens to ATI Radeon+Nvidia hybrid
systems.
https://github.com/Bumblebee-Project/bbswitch/issues/187
The workaround is to edit the source code in /usr/src/bbswitch-0.8/bbswitch.c
and change

-if (pdev->vendor == PCI_VENDOR_ID_INTEL) {
    igd_handle = handle;
    pr_info("Found integrated VGA device %s: %s\n",
        dev_name(&pdev->dev), (char *)buf.pointer);
with
+if (pdev->vendor == PCI_VENDOR_ID_ATI) {
    igd_handle = handle;
    pr_info("Found integrated VGA device %s: %s\n",
        dev_name(&pdev->dev), (char *)buf.pointer);
then recompile and install the module.

after such operations that requires root privileges this is the dmesg log:

may 14 20:24:17 panoramix kernel: [    4.129320] bbswitch: version 0.8
may 14 20:24:17 panoramix kernel: [    4.129332] bbswitch: found discrete vga
device 0000:01:00.0: \_sb_.pci0.gpp0.pegp
may 14 20:24:17 panoramix kernel: [    4.129336] bbswitch: found integrated 
vga
device 0000:06:00.0: \_sb_.pci0.gp17.vga_
may 14 20:24:17 panoramix kernel: [    4.129491] bbswitch: detected an optimus
_dsm function
may 14 20:24:17 panoramix kernel: [    4.129517] bbswitch: succesfully loaded.
discrete card 0000:01:00.0 is on
may 14 20:24:17 panoramix kernel: [    4.130260] [drm] [nvidia-drm] [gpu id
0x00000100] unloading driver



-- system information:
debian release: bookworm/sid
  apt prefers unstable-debug
  apt policy: (500, 'unstable-debug'), (500, 'unstable'), (500, 'testing'), 
(500, 'stable'), (1, 'experimental')
architecture: amd64 (x86_64)

kernel: linux 5.17.7-hpomen-amd (smp w/16 cpu threads; preempt)
kernel taint flags: taint_proprietary_module, taint_oot_module, 
taint_unsigned_module
locale: lang=it_IT.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:it:en_US
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages bbswitch-dkms depends on:
ii  dkms  3.0.3-1

bbswitch-dkms recommends no packages.

Versions of packages bbswitch-dkms suggests:
ii  bumblebee  3.2.1-28

-- no debconf information



More information about the pkg-nvidia-devel mailing list