# [Flash, nvidia] Divers problemes

## nevro

Bonjour,

Je viens de réinstaller une distrib flambant neuve,mais un peu boîteuse. Je me suis décidé à installer un noyau hardened 64 bits et j'ai deux problèmes que je ne n'arrive pas à résoudre :

1 ) Pas de flash : j'ai emerge adobe-flash => ne marche pas sous firefox, j'ai essayé nspluginwrapper, même effet

j'ai l'erreur suivante  sous chromium 64 bits non binaire : 

```

*** NSPlugin Wrapper *** WARNING:(/var/tmp/portage/www-plugins/nspluginwrapper-1.2.2-r2/work/nspluginwrapper-1.2.2/src/npw-wrapper.c:1854):invoke_NPP_Destroy: assertion failed: (rpc_method_invoke_possible(plugin->connection))

```

2)  J'ai l'impression que mon openGL ne marche pas, j'ai installé avec succès les drivers nvidia 195 puis 256 depuis le site officiel, j'ai fait mon eselect opengl nvidia, quand je lance glxinfo ca marche mais deux problèmes apparant :

- a chaque fois que je lance glxinfo, je récupère l'erreur suivante :

```
NVIDIA: could not open the device file /dev/nvidiactl (Permission denied).
```

Pour éviter cette erreur je dois chmod 666 /dev/nvidia* et là c'est bon => assez gếnant quoi!

Puis deuxième chose, quand je lance glxgears : l'application plante direct en me renvoyant 

```
~  $ glxgears 

Killed

```

Et si je regarde dans le panneau nvidia settings l'interface glx Info, boom ca plante direct et ferme le panneau..

J'ai eu quelques soucis à cause de ce kernel hardened, par exemple X ne voulait pas se lancé, j'ai du faire un petit :

```

paxctl /usr/bin/X

```

pour désactiver le controle de pax dessus, je ne sais pas si c'est le même problème avec flash et openGL, J'espère que vous une idée!!!

Merci

voici mon emerge --info : 

```
emerge --info

Portage 2.1.8.3 (hardened/linux/amd64/10.0, gcc-4.3.4, glibc-2.11.2-r0, 2.6.28-hardened-r9 x86_64)

=================================================================

System uname: Linux-2.6.28-hardened-r9-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-1.12.13

Timestamp of tree: Sat, 26 Jun 2010 16:45:02 +0000

app-shells/bash:     4.0_p37

dev-java/java-config: 2.1.10

dev-lang/python:     2.6.5-r2, 3.1.2-r3

dev-util/cmake:      2.6.4-r3

sys-apps/baselayout: 1.12.13

sys-apps/sandbox:    1.6-r2

sys-devel/autoconf:  2.13, 2.65

sys-devel/automake:  1.10.3, 1.11.1

sys-devel/binutils:  2.20.1-r1

sys-devel/gcc:       4.3.4

sys-devel/gcc-config: 1.4.1

sys-devel/libtool:   2.2.6b

virtual/os-headers:  2.6.30-r1

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="* -@EULA dlj-1.1 AdobeFlash-10.1 googleearth"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=native -O2 -pipe"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/share/X11/xkb"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"

CXXFLAGS="-march=native -O2 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"

FFLAGS="-march=native -O2 -pipe"

GENTOO_MIRRORS="ftp://ftp.free.fr/mirrors/ftp.gentoo.org/"

LANG="C"

LDFLAGS="-Wl,-O1"

LINGUAS="fr en"

MAKEOPTS="-j9"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync4.fr.gentoo.org/gentoo-portage"

USE="X a52 acl acpi alsa amd64 apache2 apm asf audiofile avi bash-completion berkdb bonobo bzip2 cairo cdr cli consolekit cpdflib cracklib crypt cups cxx dbus device-mapper directfb divx4linux dri dvd dvdr emacs encode esd evdev exif extras ffmpeg fftw flac flash ftp gdbm gdu glx gnome gnutls gpm gstreamer gtk gtk2 hal hardened hddtemp iconv java java6 jpeg justify lm_sensors mmx modules mp3 mpeg mpi msn mudflap multilib mysql ncurses nls nptl nptlonly ogg opengl openmp optimization oss pam pcre perl php pic png policykit pppd python readline reflection samba sensord session sockets spl sqlite sse sse2 sse3 sse4 ssl startup-notification strong-optimization sysfs tcpd tetex threads thunar tiff truetype udev urandom usb videos vlc vorbis wmf wxwindows xcb xcomposite xfce xorg xscreensaver zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="fr en" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

----------

## nevro

Après investigation, j'ai trouvé que le problème de glxgear venait de mon noyau hardened ...

fixed avec un paxctl /usr/bin/glxgears

mais j'ai toujours pas mal de problèmes comme par exemple à l'execution de google-earth :

```

./googleearth

./googleearth-bin: error while loading shared libraries: /usr/lib32/libGLcore.so.1: cannot make segment writable for relocation: Permission denied

```

j'ai bien essayé de réinstaller mes libGL, rien à faire

----------

## guilc

 *nevro wrote:*   

> cannot make segment writable for relocation: Permission denied

 

Ca c'est aussi une restriction de pax (MPROTECT). Tu l'aura sur TOUS les exécutables non PIC (code non position indépendant), et c'est entre autre le cas sur tous les blobs binaires, parce que ceux qui les fournissent (gogole, nvidia et j'en passe) n'ont rien à faire de ces problématiques...

Si tu veux mon avis, tous ces sales blob binaires, tu vas juste te prendre la tête à les faire fonctionner sous grsec/pax.... Et si c'est pour juste systématiquement désactiver les protections quand ça plante, heu... ça rime un peu à rien non tu crois pas ?

Mon avis est que grsec/pax c'est bien pour un serveur (j'utilise moi même sur tous mes serveurs, que ce soit sous gentoo ou debian), mais pour un desktop, c'est une énorme prise de tête pour pas grand chose. Enfin, je veux pas te décourager hein, mais je trouve que c'est un peu chercher les embrouilles.

----------

## nevro

Je vois. En fait oui tu as raison, c'est adapté aux servers, je voulais juste me familiariser avec l'outil et ce nouveau noyau (pour moi) avant de l'installer sur mon server juste histoire de comprendre ce qu'il en retourne et d'après ce que je constate c'est assez restrictif.

J'ai trouvé un patch pour mesa qui permettrer de byppasser le MPROTECT mais après je sais pas comment l'appliquer :/

Ce patch permettrait entre autre de résoudre tous les problèmes liés aux libGL..Merci de tes conseils en tout cas

----------

## guilc

Si tu veux te familiariser à grsec pour installer ensuite un serveur, monte toi une petite machine virtuelle qui te permettra de tester tout ça, de monter tes règles RBAC, etc...

Un truc que tu peux cramer sans flinguer ton desktop  :Wink: 

En plus tu as le genre de config qui te permettra de lancer pleine de machines virtuelles en même temps  :Wink: 

----------

