# [Xorg Nvidia Intel]Impossible de lancer X config Optimus(OK)

## jaypeche

Amis gentoïstes bonjour,

Je viens de faire l'acquisition d'un laptop ASUS Intel i3 Nvidia 920M, fiche produit içi : http://ftp.pingwho.org/pub/gentoo/ftp/documentation/ASUS_GNU_Intel_Nvidia_HD+/Fiche_Produit.pdf

Ce PC acceuille deux chipsets graphiques, intel i915 et nvidia serie 9, il me semble peut être que je me trompe qu'il s'agit d'une configuration optimus.

J'ai bien pu compiler les drivers proprio pour mon kernel, ainsi que les drivers intel inclus dans le noyau.

J'ai lancé nvidia-xconfig pour générer mon /etc/X11/xorg.conf, seulement au lancement de X, j'ai l'erreur : no device found... no screen found.

Je ne sais pas du tout comment gérer ces deux chipsets, et ainsi faire fonctionner les pilotes nvidia, quelqu'un aurait il une idée sur la façon de faire ?

emerge --info :

https://gist.github.com/0b9f456e0a1078f83051d3431648c97f

lspci -k :

https://gist.github.com/94b419d0ade3e1a6005738d7837a7351

[kernel config :]

https://gist.github.com/88e5c72dd515cf53f3163bd6fc298427

xorg.conf :

https://gist.github.com/f67d724aa81fef8b64535291bcf97640

Mon erreur au lancement de X :

https://gist.github.com/7ab6c6e0e77ad3bc7ec12fca0d51c0bf

lsmod :

https://gist.github.com/3c04f2a463079a746ecbb8ac7b634327

J'obtiens un écran noir et je n'ai pas le pointeur de la souris... rhhhh

En vous remerciant...   :Rolling Eyes: 

----------

## jaypeche

Je me suis tourné vers une configuration optimus : https://wiki.gentoo.org/wiki/NVIDIA/Optimus en suivant scrupuleusement la doc et je touche presque au but mais tjs pas de serveur X fonctionnel, toujours un écran noir au lancement de gdm   :Sad: 

J'utilise un boot uefi sans framebuffer, et j'utilise CMDLINE="..." pour passer les arguments au kernel : https://gist.github.com/anonymous/5df6bec481920adbcca1bfbe23e8fb38

 :Arrow:  Mes derniers logs Xorg : https://gist.github.com/anonymous/ce5fc5d88c9cc364b9b81d01e22ae9b9

 :Arrow:  Mon /etc/X11/xorg.conf : https://gist.github.com/3fe85804b75f8ca886ba97c8da862dad

 :Idea:   Un peu d'entraide ?!   :Rolling Eyes: 

----------

## DuF

Bonjour,

Ce matériel étant un peu spécifique et ne l'ayant pas, je ne suis pas sûr d'être d'une grande aide. Néanmoins je réponds ne serait-ce que pour tu te sentes moins seul  :Wink: 

Ensuite vu la sortie de ton xorg, il faut se focaliser sur : 

```
[    24.121] (EE) modeset(G0): eglGetDisplay() failed

[ 24.122] (EE) modeset(G0): glamor initialization failed
```

En cherchant un peu sur internet on trouve quelques topics sur le sujet dont celui ci-dessous qui semble correspondre précisément à ton problème (mêmes symptômes, mêmes messages d'erreurs) et qui a le mérite d'être résolu (mais en anglais) : 

[SOLVED] Black screen, nvidia optimus, nvidia-drivers-361.28

----------

## jaypeche

Enfin une âme charitable, c'est vrai que je me sentais bien seul...

Merçi DuF pour ton lien ! Je lisais justement de la doc où il stipule qu'il faut bien analyser /etc/X11/Xorg.0.log et la sortie de dmesg !

J'aurais du lancer un :

```
# cat /var/log/Xorg.0.log | grep EE

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

[    64.353] (EE) modeset(G0): eglGetDisplay() failed

[    64.353] (EE) modeset(G0): glamor initialization failed

```

qui aurait été plus causant !

Je vais tenté de compiler xorg-server sans le use flag "glamor" pour voir ...?

Je vais également regarder ton lien en anglais... Merçi pour les pistes !   :Wink: 

----------

## jaypeche

J'ai downgradé vers xorg-server-1.18.4 avec le flag glamor et je n'ai pu d'erreur à présent.

```

dbox2 jay # eix xorg-server

[I] x11-base/xorg-server

     Available versions:  1.12.4-r7(0/1.12.4) 1.15.2-r4(0/1.15.2) 1.18.4(0/1.18.4) [m]1.19.2(0/1.19.2) [m]~1.19.3(0/1.19.3) [m]**9999(0/9999) {debug dmx doc glamor ipv6 kdrive libressl minimal nptl selinux static-libs +suid systemd tslib +udev unwind wayland xephyr xnest xorg xvfb}

     Installed versions:  1.18.4(22:48:44 27/04/2017)(glamor ipv6 kdrive suid systemd udev xorg -dmx -doc -libressl -minimal -selinux -static-libs -tslib -unwind -wayland -xephyr -xnest -xvfb)

     Homepage:            https://www.x.org/wiki/

     Description:         X.Org X servers

```

J'ai installé les pilotes proprio nvidia  :

```
dbox2 jay # eix nvidia-drivers

[I] x11-drivers/nvidia-drivers

     Available versions:  [M]96.43.23-r1(0/96)^msd [M]173.14.39-r1(0/173)^msd [M](~)173.14.39-r2(0/173)^msd 304.134(0/304)^md (~)304.134-r1(0/304)^md 304.135(0/304)^md 340.101(0/340)^md (~)340.101-r1(0/340)^md 340.102(0/340)^md 375.26(0/375)^md [m](~)375.26-r3(0/375)^md [m]375.39(0/375)^md [m]378.13(0/378)^md [m](~)381.09(0/381)^md {+X acpi compat custom-cflags +driver gtk gtk3 +kms multilib pax_kernel static-libs (+)tools uvm wayland ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64" ABI_X86="32 64 x32" KERNEL="FreeBSD linux"}

     Installed versions:  375.26^md(22:55:21 27/04/2017)(X acpi driver gtk3 kms multilib tools -compat -pax_kernel -static-libs -uvm -wayland KERNEL="linux -FreeBSD")

     Homepage:            http://www.nvidia.com/ http://www.nvidia.com/Download/Find.aspx

     Description:         NVIDIA Accelerated Graphics Driver

```

J'ai activé modeset pour intel i915 en passant un argument au kernel qui boot en uefi :

```
dbox2 jay # cat /etc/kernels/kernel-config-x86_64-4.9.16-gentoo | grep -i modeset

CONFIG_CMDLINE="initrd=/boot/initramfs-genkernel-x86_64-4.9.16-gentoo root=PARTUUID=00037e5f-5030-8878-3dae-d201befc0600 rootfstype=ext4 ro init=/usr/lib/systemd/systemd i915.modeset=1"

```

J'ai cette ce message d'avertissement quand je lance un startx :

```
dbox2 jay # cat /var/log/Xorg.0.log | grep WW

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

[ 14282.234] (WW) The directory "/usr/share/fonts/Type1/" does not exist.

[ 14282.234] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi".

[ 14282.234] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi".

[ 14282.234] (WW) The directory "/usr/share/fonts/ghostscript/" does not exist.

[ 14282.234] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/cyrillic".

[ 14282.234] (WW) The directory "/usr/share/fonts/misc/sgi" does not exist.

[ 14282.234] (WW) The directory "/usr/share/fonts/truetype/" does not exist.

[ 14282.234] (WW) The directory "/usr/share/fonts/TTF/" does not exist.

[ 14282.234] (WW) The directory "/usr/share/fonts/OTF/" does not exist.

[ 14282.234] (WW) The directory "/usr/share/fonts/Type1/" does not exist.

[ 14282.234] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".

[ 14282.234] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".

[ 14282.234] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.

[ 14282.234] (WW) Disabling Mouse0

[ 14282.234] (WW) Disabling Keyboard0

[ 14282.441] (WW) NVIDIA(1): Unable to get display device for DPI computation.

```

 :Question:  Je ne sais pas trop comment solutionner ce problème car je ne sais pas trop comment l'interpréter ? Qu'entende t'il par dpi computation  ?

```
dbox2 jay # cat /var/log/Xorg.0.log | grep EE

        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.

[ 14291.364] (EE) systemd-logind: failed to release device: Unknown object '/org

[ 14291.365] (EE) systemd-logind: failed to release device: Unknown object '/org

[ 14291.365] (EE) systemd-logind: failed to release device: Unknown object '/org

[ 14291.366] (EE) systemd-logind: failed to release device: Unknown object '/org

[ 14291.366] (EE) systemd-logind: failed to release device: Unknown object '/org

[ 14291.366] (EE) systemd-logind: failed to release device: Unknown object '/org

[ 14291.412] (EE) systemd-logind: ReleaseControl failed: Unknown object '/org/f
```

 :Question:  J'ai aussi droit au message OUpss, quelquechose s'est mal passé... en tentant de lancer gdm, j'ai un message graphique mais je ne sais pas si c'est le framebuffer qui sert à l'affichage de cette alerte ou Xorg ?

Dmesg : https://gist.github.com/5673d7fdde4688ac1c5641151869c4af

Xorg.0.log : https://gist.github.com/f69cf7febf6b1d547f49af02d6edf0bc

mon xorg.conf : 

```
dbox2 jay # cat /etc/X11/xorg.conf

# cat /etc/X11/xorg.conf

Section "ServerLayout"

    Identifier     "20151230 hadg"

    Screen      0  "ScrIntel" 0 0

    Screen      1  "ScrNV" 0 0

    InputDevice    "Mouse0" "CorePointer"

    InputDevice    "Keyboard0" "CoreKeyboard"

EndSection

Section "Files"

    ModulePath      "/usr/lib64/xorg/modules/updates"

    ModulePath      "/usr/lib64/xorg/modules"

    FontPath        "/usr/share/fonts/misc:unscaled"

    FontPath        "/usr/share/fonts/Type1/"

    FontPath        "/usr/share/fonts/100dpi:unscaled"

    FontPath        "/usr/share/fonts/75dpi:unscaled"

    FontPath        "/usr/share/fonts/ghostscript/"

    FontPath        "/usr/share/fonts/cyrillic:unscaled"

    FontPath        "/usr/share/fonts/misc/sgi:unscaled"

    FontPath        "/usr/share/fonts/truetype/"

    FontPath        "built-ins"

EndSection

Section "Module"

    Load           "glx"

# Note:  you probably want this to be the nVidia GLX module, look for

#        /usr/lib64/xorg/modules/extensions/libglx.so which should be

#        symlinked to nvidia/nvidia-libglx.so rather than the default

#        Xorg GLX module.

#

#        In /var/log/Xorg.0.log look for:

#        (II) Module glx: vendor="NVIDIA Corporation"

#        rather than

#        (II) Module glx: vendor="X.Org Foundation"

EndSection

Section "InputDevice"

    Identifier     "Keyboard0"

    Driver         "kbd"

EndSection

Section "InputDevice"

    Identifier     "Mouse0"

    Driver         "mouse"

    Option         "Protocol" "auto"

    Option         "Device" "/dev/input/mice"

    Option         "ZAxisMapping" "4 5 6 7"

EndSection

Section "Monitor"

    Identifier     "MonIntel"

EndSection

Section "Monitor"

    Identifier     "MonNV"

EndSection

Section "Device"

    Identifier     "CardIntel"

    Driver         "intel"

    BusID          "PCI:0:2:0"

EndSection

Section "Device"

    Identifier     "CardNV"

    Driver         "nvidia"

#   Driver         "nv"

#   Driver         "nouveau"

    BusID          "PCI:1:0:0"

EndSection

Section "Screen"

    Identifier     "ScrIntel"

    Device         "CardIntel"

    Monitor        "MonIntel"

    DefaultDepth    24

EndSection

Section "Screen"

    Identifier     "ScrNV"

    Device         "CardNV"

    Monitor        "MonNV"

    DefaultDepth    24

    SubSection     "Display"

        Depth       24

        Modes      "nvidia-auto-select"

    EndSubSection

EndSection

```

Merçi pour votre aide !   :Wink: 

----------

## DuF

Concernant le message évoquant un problème de DPI, je regarderai le sujet suivant : https://bbs.archlinux.org/viewtopic.php?id=220854

----------

## jaypeche

nvidia-xrun utilise bbswitch et je ne l'utilise pas

du coup tjs un ecran noir sans pointeur souris !

----------

## DuF

j'essaierai de trouver la séquence qui pose problème : depuis une console, si tu parcours chronologiquement la sortie de "journalctl -b" pour identifier les erreurs en relation avec ton affichage, vois-tu des éléments qui pourraient avoir un intérêt ?

----------

## jaypeche

Merçi DuF pour ton aide... Je te joins mon journal systemd :

https://gist.github.com/2d212ca705ca83d3de594517d9eb72b7

 :Idea:  Personnellement je suis pas un expert avec X, mais au vu des logs je pense que mon problème est là :

```

avril 28 22:01:49 dbox2 kernel: nvidia-modeset: Allocated GPU0 (GPU-aaccb9a7-ed1d-b91a-5770-605091ede72b) @ PCI:0000:01:00.0

avril 28 22:01:49 dbox2 kernel: nvidia-modeset: Freed GPU:0 (GPU-aaccb9a7-ed1d-b91a-5770-605091ede72b) @ PCI:0000:01:00.0

avril 28 22:01:51 dbox2 kernel: vgaarb: this pci device is not a vga device
```

J'ai aussi cette erreur liée à gdm [/b] (  :Exclamation:  il fallait reconstruire le module) [b] :

```
avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE)

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) Backtrace:

avril 28 21:54:31 dbox2 gnome-settings-[9188]: gnome-settings-daemon: Fatal IO error 11 (Ressource temporairement non disponible) on X server :0.

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 0: /usr/bin/X (xorg_backtrace+0x56) [0x58bb26]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 1: /usr/bin/X (0x400000+0x18fe09) [0x58fe09]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 2: /lib64/libc.so.6 (0x7f51396b4000+0x330f0) [0x7f51396e70f0]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 3: /usr/lib64/xorg/modules/drivers/nvidia_drv.so (0x7f5133f5d000+0xad93e) [0x7f513400a93e]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 4: /usr/lib64/xorg/modules/drivers/nvidia_drv.so (0x7f5133f5d000+0x4dd9d) [0x7f5133faad9d]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 5: /usr/lib64/xorg/modules/drivers/nvidia_drv.so (0x7f5133f5d000+0x845f5) [0x7f5133fe15f5]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) 6: /usr/lib64/xorg/modules/drivers/nvidia_drv.so (0x7f5133f5d000+0x5998b0) [0x7f51344f68b0]

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE)

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) Segmentation fault at address 0x28

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE)

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: Fatal server error:

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) Caught signal 11 (Segmentation fault). Server aborting

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE)

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: Please consult the The X.Org Foundation support

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]:          at http://wiki.x.org

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]:  for help.

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.

avril 28 21:54:31 dbox2 /usr/libexec/gdm-x-session[9118]: (EE)
```

Xorg.0.log : https://gist.github.com/1f1484a75e87ab5864eadfe2d8992337

----------

## DuF

Première remarque, sans rapport mais comme ça me pique les yeux  :Smile:  Quand tu fais : "cat fichier | grep toto" fais directement "grep toto fichier"   :Laughing: 

Ensuite je pense que le message suivant n'est pas très important : 

 *Quote:*   

> dbox2 kernel: vgaarb: this pci device is not a vga device

 

Par contre la partie sur Xorg et GDM, j'aurai tendance à penser qu'il faut recompiler en cohérence :

 *Quote:*   

> avril 28 21:54:31 dbox2 gdm[9100]: GLib: g_hash_table_find: assertion 'version == hash_table->version' failed

 

On dirait que tu as un problème de librairies (ça ressemble à ce qu'il fallait faire lors du passage de GCC 4.x à GCC 5.x). J'aurai tendance à recompiler tous les paquets avec le même gcc, donc tout ce qui est lié à Xorg, les pilotes vidéos (donc le kernel et ses modules), gnome, gdm et la glibc.

Comme tu as aussi des erreurs sur mutter et gkt, je les recompilerai aussi car gnome-shell et gnome-session ne peuvent démarrer sans et dans ton cas c'est fatal : 

 *Quote:*   

> avril 28 21:53:46 dbox2 kernel: gnome-shell[9153]: segfault at 14 ip 00007fe53c3cc3f8 sp 00007ffec4d7edf0 error 4 in libmutter.so.0.0.0[7fe53c391000+df000]
> 
> avril 28 21:53:47 dbox2 kernel: gnome-session-f[9183]: segfault at 0 ip 00007f6873c3c8a9 sp 00007fffecc903f0 error 4 in libgtk-3.so.0.2200.12[7f687395a000+701000]

 

En résumé, il faut recompiler la majorité des paquets de ton système qui ne paraissent plus en cohérence.

Par contre un truc m'étonnes, il me semblait que tu avais mis glamor, mais quand on regarde la séquence de démarrage de ton X :

 *Quote:*   

> avril 28 21:53:43 dbox2 /usr/libexec/gdm-x-session[9118]: (**) modeset(G0): glamor disabled

 

Ne connaissant vraiment pas ton matériel et comment il est censé fonctionner peut-être que cela n'a aucune incidence mais bon c'est étonnant que dans certaines docs ils en parlent.

Pas très important et à mon avis sans incidence sur ton sujet actuel, tu pourras aussi de creuser ce sujet : 

 *Quote:*   

> avril 28 21:53:43 dbox2 /usr/libexec/gdm-x-session[9118]: (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
> 
> avril 28 21:53:43 dbox2 /usr/libexec/gdm-x-session[9118]: (II) NVIDIA(0):     may not be running or the "AcpidSocketPath" X
> 
> avril 28 21:53:43 dbox2 /usr/libexec/gdm-x-session[9118]: (II) NVIDIA(0):     configuration option may not be set correctly.  When the
> ...

 

Sans rapport mais tu as aussi des erreurs/warning sur l'acpi, j'essaierai de corriger ça aussi :

 *Quote:*   

> avril 28 21:45:01 dbox2 kernel: ACPI: Deprecated procfs I/F for AC is loaded, please retry with CONFIG_ACPI_PROCFS_POWER cleared

 

NB : Je ne sais pas pourquoi il n'a pas voulu des balises [code] du coup j'ai utilisé [quote] à la place.

----------

## jaypeche

J'ai lancé un :

```
emerge -eav gnome-shell
```

pensant que ça aurait pour effet de recompiler toutes les dépendances de gnome-shell, en vain... Tjs cette erreur de segmentation !

J'ai ensuite lancé :

```
revdev-rebuild -iv -L libgtk-3.so.0.2200.12
```

```
revdep-rebuild -iv -L libmutter.so.0.0.0
```

Toujours cette erreur de segmentation ..!

j'ai aussi recompiler la glibc et recompiler mutter et gtk+, idem.

J'utilise gcc-4.9.4 bien que gcc-5.4.0 soit installé depuis qq jours.

```
dbox2 jay # gcc-config -l

 [1] armv7a-hardfloat-linux-gnueabi-5.4.0 *

 [2] x86_64-pc-linux-gnu-4.9.4 *

 [3] x86_64-pc-linux-gnu-5.4.0

```

Je n'ai aucune idée pour solutionner ces problèmes de segfault   :Question: 

 :Idea:  Une idée ?

```
avril 30 17:20:22 dbox2 kernel: gnome-shell[386]: segfault at 14 ip 00007f0fae5123f8 sp 00007ffd04f49670 error 4 in libmutter.so.0.0.0[7f0fae4d7000+df000]

avril 30 17:20:22 dbox2 kernel: gnome-shell[404]: segfault at 14 ip 00007f9e555673f8 sp 00007fff1651d8c0 error 4 in libmutter.so.0.0.0[7f9e5552c000+df000]

avril 30 17:20:23 dbox2 kernel: gnome-session-f[412]: segfault at 0 ip 00007f52219288a9 sp 00007ffe03d5c260 error 4 in libgtk-3.so.0.2200.12[7f5221646000+701000]

avril 30 17:23:49 dbox2 kernel: gnome-shell[578]: segfault at 14 ip 00007fbb3384d3f8 sp 00007ffdb094ce70 error 4 in libmutter.so.0.0.0[7fbb33812000+df000]

avril 30 17:23:50 dbox2 kernel: gnome-shell[587]: segfault at 14 ip 00007fb97f8f63f8 sp 00007ffc0afaa000 error 4 in libmutter.so.0.0.0[7fb97f8bb000+df000]

avril 30 17:23:50 dbox2 kernel: gnome-session-f[595]: segfault at 0 ip 00007fefe7b018a9 sp 00007fff3df3e210 error 4 in libgtk-3.so.0.2200.12[7fefe781f000+701000]

avril 30 17:23:53 dbox2 kernel: gnome-shell[655]: segfault at 14 ip 00007f1d09bb13f8 sp 00007ffe8038a5b0 error 4 in libmutter.so.0.0.0[7f1d09b76000+df000]

avril 30 17:23:53 dbox2 kernel: gnome-shell[663]: segfault at 14 ip 00007f4aabe513f8 sp 00007ffcde3594a0 error 4 in libmutter.so.0.0.0[7f4aabe16000+df000]

avril 30 17:23:54 dbox2 kernel: gnome-session-f[672]: segfault at 0 ip 00007f2402f878a9 sp 00007ffe68ce8a00 error 4 in libgtk-3.so.0.2200.12[7f2402ca5000+701000]

avril 30 17:23:57 dbox2 kernel: gnome-shell[729]: segfault at 14 ip 00007fc3464433f8 sp 00007ffd5e199ff0 error 4 in libmutter.so.0.0.0[7fc346408000+df000]

avril 30 17:23:57 dbox2 kernel: gnome-shell[737]: segfault at 14 ip 00007fd4d74cc3f8 sp 00007ffc20cda5c0 error 4 in libmutter.so.0.0.0[7fd4d7491000+df000]

avril 30 17:23:58 dbox2 kernel: gnome-session-f[745]: segfault at 0 ip 00007f778fe838a9 sp 00007ffed8048750 error 4 in libgtk-3.so.0.2200.12[7f778fba1000+701000]

```

 *Quote:*   

> Je n'ai aucune idée pour solutionner ces problèmes de segfault  
> 
>  Une idée ?

 

Sur les conseils de DuF, je dois d'abord solutionner ce problème de segfault, je me suis aperçu que la libstdc++ nécessite de recompiler pas moins de 90 paquets :

J'ai lancé dans un premier temps :

```
revdep-rebuild --library 'libstdc++.so.6' -- --exclude gcc
```

----------

## DuF

Effectivement, le fait de passer de gcc 4.9.4 à 5.4.0 oblige la recompilation de tout ce qui dépend de ta libstdc++ comme indiqué. A ta place, si tu passes totalement en gcc 5.4 je ferai le gcc-config pour me positionner définitivement sur ce gcc, ensuite les recompilations pour libstdc++ puis enfin les recompilations des paquets avec dépendances qui génèrent les segfault.

----------

## jaypeche

 *Quote:*   

> passes totalement en gcc 5.4 je ferai le gcc-config pour me positionner définitivement sur ce gcc

 

Tout a fait ! ce que je vais faire d'ailleurs... car la recompilation de la chaine de compil, recompilation des libs, des applications, revdep-rebuild n'y ont rien fait   :Sad:   !

La mise à jour de GCC est arrivée au moment de l'installation, je pense que je vais tenter une migration vers GCC 5.

----------

## jaypeche

Migration gcc 5.4 réussie en suivant le wiki !

Dernièrement une mise a jour de gtk-3 et mutter n'ont rien changé à mon problème de segmentation. 

J'ai pourtant executé revdep-rebuild -iv -L libgtk-3.so mais même après la recompilation, le système me renvoie tjs a cette erreur !?   :Rolling Eyes: 

Je me demande si une erreur de segmentation peut apparaitre quand gnome-shell ne se lance pas correctement ? Par rapport à ma configuration graphique pas simple à gérer, par exemple ?

J'ai un peu levé le pied mais si je n'arrive pas à solutionner ce souçi de segfault, je pense repartir de 0, bouhhh !   :Sad: 

----------

## sebB

Peux-tu essayer en suivant le wiki gentoo.

https://wiki.gentoo.org/wiki/NVIDIA/Optimus

Essaye de mettre les mêmes fichiers de conf notamment le xorg.conf

```
Section "Module"

    Load "modesetting"

EndSection

Section "Device"

    Identifier "nvidia"

    Driver "nvidia"

    BusID "<BusID for NVIDIA device here>"

    Option "AllowEmptyInitialConfiguration"

EndSection
```

T'as bien configuré ton xinitrc?

Regarde aussi du coté du wiki arch

https://wiki.archlinux.org/index.php/NVIDIA_Optimus

----------

## jaypeche

Merçi SebB pour ta réponse...

Je vais suivre le wiki oui mais en y allant à taton j'ai peux être modifier des élements qui font doublons ou qui ne sont pas nécessaire car je ne savais pas trop ou je mettais les pieds avec UEFI et Optimus...

Je tiendrai à jour ce post si j'arrive à comprendre comment configurer tout ça.

dmesg et xorg.0.log devrait m'aider à y voir plus clair, comme quoi il faut tjs analyser les logs avant de tenter quoi que ce soit ! Et faire les modifs une par une !

----------

## jaypeche

Bonjour à tous,

Je reviens sur ce post après avoir réussi à faire fonctionner X Intel/Nvidia technologie Optimus ainsi que la plateforme de jeux Steam OS.

Je souhaitais d'abord profiter d'une interface graphique sur mon dernier achat, je me suis donc penché vers une configuration libre, Intel/Nouveau qui fonctionne parfaitement par défaut.

Elle est simple à mettre en place : ajouter à /etc/portage/make.conf 

```
VIDEO_CARDS="intel i915 nouveau"
```

 dans mon cas.

Un simple 

```
emerge -uavDN world
```

 devrait suffire à compiler les paquets nécessaires.

Je me suis ensuite penché sur nvidia optimus.

Nvidia Optimus sur mon laptop est très simple à reproduire quand on connait la démarche

Je viendrai compléter ce post par la suite, afin d'expliquer la marche à suivre !   :Idea: 

----------

## jaypeche

Il faut d'abord partir d'un système stable, et d'un noyau assez complet pour supporter tous les chipsets, je suis parti d'une config SysRescueCD modifiée :

https://gist.github.com/0d4fcb9ac0b24a74dc74929acd44b8bb

Ensuite j'ai configurer portage avec ces options :

```
INPUT_DEVICES="libinput mouse keyboard"

VIDEO_CARDS="intel i965 nvidia"

LINGUAS="fr"

L10N="fr"

# DISTCC for RPI3

#MAKEOPTS="-j13 -l2"

#FEATURES="distcc distcc-pump"

DVB_CARD="usb-dib0700"

SANE_BACKENDS="hp"

# FULL Multilib

ABI_X86="32 64"

# RPI3 chroot support

QEMU_USER_TARGETS="arm"

QEMU_SOFTMMU_TARGETS="x86_64 arm"

# Ruby configuration

RUBY_TARGETS="ruby22"

```

Cette commande vous permettra de visualiser l'état de chargement des modules :

```
dbox2 jay # lspci -kk

00:00.0 Host bridge: Intel Corporation Skylake Host Bridge/DRAM Registers (rev 08)

   Subsystem: ASUSTeK Computer Inc. Skylake Host Bridge/DRAM Registers

   Kernel driver in use: skl_uncore

00:02.0 VGA compatible controller: Intel Corporation HD Graphics 520 (rev 07)

   Subsystem: ASUSTeK Computer Inc. HD Graphics 520

   Kernel driver in use: i915

   Kernel modules: i915

00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 08)

   Subsystem: ASUSTeK Computer Inc. Skylake Processor Thermal Subsystem

   Kernel driver in use: proc_thermal

   Kernel modules: processor_thermal_device

00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP USB 3.0 xHCI Controller

   Kernel driver in use: xhci_hcd

00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP Thermal subsystem

   Kernel driver in use: intel_pch_thermal

   Kernel modules: intel_pch_thermal

00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP Serial IO I2C Controller

   Kernel driver in use: intel-lpss

   Kernel modules: intel_lpss_pci

00:15.1 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #1 (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP Serial IO I2C Controller

   Kernel driver in use: intel-lpss

   Kernel modules: intel_lpss_pci

00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP CSME HECI

   Kernel driver in use: mei_me

   Kernel modules: mei_me

00:17.0 RAID bus controller: Intel Corporation 82801 Mobile SATA Controller [RAID mode] (rev 21)

   Subsystem: ASUSTeK Computer Inc. 82801 Mobile SATA Controller [RAID mode]

   Kernel driver in use: ahci

00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1)

   Kernel driver in use: pcieport

   Kernel modules: shpchp

00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)

   Kernel driver in use: pcieport

   Kernel modules: shpchp

00:1c.5 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #6 (rev f1)

   Kernel driver in use: pcieport

   Kernel modules: shpchp

00:1f.0 ISA bridge: Intel Corporation Sunrise Point-LP LPC Controller (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP LPC Controller

00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP PMC

   Kernel driver in use: intel_pmc_core

00:1f.3 Audio device: Intel Corporation Sunrise Point-LP HD Audio (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP HD Audio

   Kernel driver in use: snd_hda_intel

   Kernel modules: snd_hda_intel

00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)

   Subsystem: ASUSTeK Computer Inc. Sunrise Point-LP SMBus

   Kernel driver in use: i801_smbus

   Kernel modules: i2c_i801

01:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 920MX] (rev a2)

   Subsystem: ASUSTeK Computer Inc. GM108M [GeForce 920MX]

   Kernel driver in use: nvidia

   Kernel modules: nvidia_drm, nvidia

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 10)

   Subsystem: ASUSTeK Computer Inc. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller

   Kernel driver in use: r8169

   Kernel modules: r8169

03:00.0 Network controller: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter (rev 31)

   Subsystem: AzureWave QCA9377 802.11ac Wireless Network Adapter

   Kernel driver in use: ath10k_pci

   Kernel modules: ath10k_pci

dbox2 jay #
```

Le fichier xorg.conf minimaliste devrait patfaitement convenir, il faut toutefois utilser "Xrandr" au dessus de X, pour commuter sur le chipset nvidia :

```
  GNU nano 2.7.5                                                             Fichier : /etc/X11/xorg.conf                                                              Modifié  

Section "ServerLayout"

    Identifier "layout"

    Screen 0 "nvidia"

    Inactive "intel"

EndSection

Section "Device"

    Identifier "nvidia"

    Option "DPMS"

    Option "AddARGBGLXVisual"

    Option "AllowGLXWithComposite" "True"

    Option "RenderAccel" "True"

    Driver "nvidia"

    BusID "PCI:1:0:0"

EndSection

Section "Screen"

    Identifier "nvidia"

    Device "nvidia"

EndSection

Section "Device"

    Identifier "intel"

    Driver "modesetting"

EndSection

Section "Screen"

    Identifier "intel"

    Device "intel"

EndSection

Section "Extensions"

    Option         "Composite" "Enable"

EndSection

```

Tenter de lancer startx en user, avec ce fichier .xinitrc dans votre réportoire personnel :

```

xrandr --setprovideroutputsource modesetting NVIDIA-0

xrandr --auto

exec gnome-shell

```

[/code]Quand X est lancé avec cette config, vous commuter directement sur votre carte nvidia. Un glxgears plein écran sera plus causant :

```
ay@dbox2 ~/Téléchargements $ glxspheres64 -fs

Polygons in scene: 62464 (61 spheres * 1024 polys/spheres)

Visual ID of window: 0x27

Context is Direct

OpenGL Renderer: GeForce 920MX/PCIe/SSE2

338.978341 frames/sec - 353.500173 Mpixels/sec

416.679963 frames/sec - 434.530532 Mpixels/sec

449.312793 frames/sec - 468.561353 Mpixels/sec

405.688260 frames/sec - 423.067945 Mpixels/sec

377.257070 frames/sec - 430.179150 Mpixels/sec

399.075312 frames/sec - 785.480011 Mpixels/sec

323.320275 frames/sec - 637.303060 Mpixels/sec

274.240173 frames/sec - 540.560290 Mpixels/sec

280.425820 frames/sec - 552.752943 Mpixels/sec

280.472015 frames/sec - 552.843998 Mpixels/sec

278.324451 frames/sec - 548.610891 Mpixels/sec

280.476562 frames/sec - 552.852960 Mpixels/sec

282.797323 frames/sec - 557.427459 Mpixels/sec

283.479750 frames/sec - 558.772605 Mpixels/sec

```

 :Rolling Eyes:  Un  grand merçi à ceux qui ont pris le temps de m'aider sur ce fil !

Enjoy !

----------

