LINUX.ORG.RU

Проблема с Nvidia Optimus. Проприетарный драйвер. systemd-logind: failed to get session:

 ,


0

2

Имеется проприетарный драйвер 364.19. После запуска чёрный экран

Логи:

  • Xorg.log.0
    или
    cat /var/log/Xorg.0.log | grep EE
    [    26.468] Current Operating System: Linux redbirdlin 4.5.4-1-MANJARO #1 SMP PREEMPT Thu May 19 21:47:34 MSK 2016 x86_64
    	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    [    26.730] (EE) systemd-logind: failed to get session: PID 658 does not belong to any known session
    
  • dmesg
  • systemctl status lightdm
    ● lightdm.service - Light Display Manager
       Loaded: loaded (/usr/lib/systemd/system/lightdm.service; enabled; vendor preset: disabled)
       Active: active (running) since Чт 2016-05-19 22:15:59 MSK; 25s ago
         Docs: man:lightdm(1)
     Main PID: 1177 (lightdm)
        Tasks: 9 (limit: 512)
       CGroup: /system.slice/lightdm.service
               ├─1177 /usr/bin/lightdm
               ├─1184 /usr/lib/xorg-server/Xorg :0 -seat seat0 -auth /run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
               └─1251 lightdm --session-child 12 19
    
    май 19 22:15:59 redbirdlin systemd[1]: Starting Light Display Manager...
    май 19 22:15:59 redbirdlin systemd[1]: Started Light Display Manager.
    май 19 22:15:59 redbirdlin lightdm[1177]: ** (lightdm:1177): CRITICAL **: session_get_login1_session_id: assertion 'session != NULL' failed
    май 19 22:16:01 redbirdlin lightdm[1177]: X Error of failed request:  BadValue (integer parameter out of range for operation)
    май 19 22:16:01 redbirdlin lightdm[1177]:   Major opcode of failed request:  140 (RANDR)
    май 19 22:16:01 redbirdlin lightdm[1177]:   Minor opcode of failed request:  35 (RRSetProviderOutputSource)
    май 19 22:16:01 redbirdlin lightdm[1177]:   Value in failed request:  0x1f3
    май 19 22:16:01 redbirdlin lightdm[1177]:   Serial number of failed request:  16
    май 19 22:16:01 redbirdlin lightdm[1177]:   Current serial number in output stream:  17
    май 19 22:16:01 redbirdlin lightdm[1198]: pam_unix(lightdm-greeter:session): session opened for user lightdm by (uid=0)
    
  • xrandr --listproviders
    Providers: number : 2
    Provider 0: id: 0x1f3 cap: 0x0 crtcs: 0 outputs: 0 associated providers: 0 name:NVIDIA-0
    Provider 1: id: 0x44 cap: 0x2, Sink Output crtcs: 3 outputs: 2 associated providers: 0 name:modesetting
    

Конфиг:

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    # Change BusID if necessary. Tips: (lspci | grep 3D) (Change 01:00.0 to 1:0:0)
    BusID "PCI:10:0:0"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration" "Yes"
EndSection

Section "Device"
    Identifier "intel"
    Driver "modesetting"
    # Change BusID if necessary. Tips: (lspci | grep VGA) (Change 00:02.0 to 0:2:0)
    BusID "PCI:0:2:0"
    Option "AccelMethod"  "none"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Что испробовано:

  • rcutree.rcu_idle_gp_delay=1
  • Повышение версии ядра
  • Этот патч в ядро:
    diff --git a/drivers/gpu/vga/vgaarb.c b/drivers/gpu/vga/vgaarb.c
    index 111d956..bd9a01f 100644
    --- a/drivers/gpu/vga/vgaarb.c
    +++ b/drivers/gpu/vga/vgaarb.c
    @@ -507,9 +507,11 @@ static bool vga_arbiter_add_pci_device(struct pci_dev *pdev)
     	struct pci_bus *bus;
     	struct pci_dev *bridge;
     	u16 cmd;
    +	int pci_class = pdev->class >> 8;
     
     	/* Only deal with VGA class devices */
    -	if ((pdev->class >> 8) != PCI_CLASS_DISPLAY_VGA)
    +	if (pci_class != PCI_CLASS_DISPLAY_VGA &&
    +		pci_class != PCI_CLASS_DISPLAY_3D)
     		return false;
     
     	/* Allocate structure */

Bumblebee не предлагать. Заранее спасибо за помощь.

P.S А почему не работает [cut]?

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.