Chrome sta bloccando Ubuntu quando si apre una scheda o si riavvia


23

È appena iniziato a succedere ieri. Non ho modificato consapevolmente nulla anche se ho abilitato l'aggiornamento automatico in Ubuntu.

Posso iniziare Chrome bene, funzionerà per un po ', ma poi apro una scheda e bloccherà tutto tranne il mouse che posso ancora spostare. Non posso fare nulla (incluso il passaggio a ctrl-alt-fX) quindi l'unica opzione è REISUB (o hard-reset). Il riavvio di Chrome dopo un po 'di solito ha lo stesso effetto dell'apertura di una scheda.

Ho provato a eliminare completamente Chrome e a rimuovere la cartella delle impostazioni prima di reinstallare l'ultima versione, ma non mi è stato di aiuto. La disabilitazione di tutte le estensioni non ha aiutato.

Sto eseguendo l'ultima versione stabile di Ubuntu 14. 15 GB di RAM, Intel i7

Un'altra stranezza sono le piccole finestre di notifica che ottengo da Chrome, che di solito mostrano informazioni su una nuova e-mail o una qualsiasi delle notifiche del plug-in, ora è solo un blocco nero, nessun contenuto.

C'è un registro in cui posso cercare per trovare qualcosa sull'incidente? Ho controllato dmesg ma non significa molto per me:

dmesg | grep chrome

[  132.889813] nouveau E[chrome[2606]] multiple instances of buffer 125 on validation list
[  132.889818] nouveau E[chrome[2606]] validate_init
[  132.889819] nouveau E[chrome[2606]] validate: -22
[  422.162086] nouveau E[chrome[2606]] multiple instances of buffer 121 on validation list
[  422.162092] nouveau E[chrome[2606]] validate_init
[  422.162094] nouveau E[chrome[2606]] validate: -22
[  422.178322] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.201707] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.202702] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.220245] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.236486] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.269815] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.302031] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.334962] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.336436] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.351666] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.368438] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]

Non ho testato il cromo, ho letto che succede qualcosa di simile in quello. Altri argomenti che ho letto suggeriscono di passare a Firefox o Chrome, ma questo non risolve il problema. Ho bisogno di Chrome per numerosi motivi di lavoro e poiché funziona perfettamente a casa sulla stessa versione di Ubuntu, la logica suggerisce che sia riparabile.

Penso che sia più legato alla durata in cui Chrome è stato in esecuzione e non a Ubuntu. Se avvio Ubuntu e lancio Chrome immediatamente, si arresta in modo anomalo su una nuova scheda dopo alcuni minuti. Se non avvio Chrome dopo l'avvio e lo avvio solo in seguito, si avvierà correttamente, quindi si arresterà in modo anomalo dopo essere stato in esecuzione per gli stessi minuti.

Grazie molto


Il tuo driver grafico sta funzionando. Quale scheda grafica hai nel tuo sistema? Se Nvidia, rimuovere il driver noveau e installare il driver nvidia.
Siamo Borg il

Risposte:


18

Il problema è con Google Chrome v44. Puoi continuare a lavorare avviando Chrome senza accelerazione della gpu:

google-chrome --disable-gpu

O rimuovendo Chrome e installando la versione appena precedente a quella:

sudo apt-get remove google-chrome-stable
wget http://mirror.pcbeta.com/google/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_43.0.2357.81-1_amd64.deb
sudo dpkg -i google-chrome-stable_43.0.2357.81-1_amd64.deb

Ciò ti consentirà di utilizzare Chrome fino a quando non sarà disponibile una correzione.

Nota: non è possibile disabilitare l'accelerazione della gpu dall'URL delle impostazioni, poiché bloccherà immediatamente il sistema:

# DON'T go to (this might crash the system):
chrome://gpu
# or (this will definitely crash the system)
chrome://flags

/ gpu non ha provocato l'arresto anomalo del mio browser (contenuti di seguito) ma / flags. Chrome disinstallato (sudo apt-get remove google-chrome-stable) e provando la versione precedente, riporterà tra poco.
Thomas Smart,

Grazie, non posso provarlo da solo ora, ma è meglio prevenire che curare (usando però il --disable-gpu! Lo sto usando adesso)
Fabio

2
testato questo negli ultimi giorni e sembra aver fatto il trucco, senza crash più. Grazie molto!
Thomas Smart,

Mi sta succedendo, versione 46.0.2490.86 (64 bit). Ma sono in grado di accedere a / gpu e / flags.
Falci,

1
succede nella versione 48.0.2564.116 Ubuntu 14.04 (64 bit) Chromium e nella versione 48.0.2564.116 (64 bit) Chrome
Elzo Valugi

6

Ho avuto lo stesso problema con Ubuntu 14.04 e Chrome. Ho una scheda grafica NVIDIA Geforce GTX 650. Il problema sembra in effetti essere il nuovo driver della scheda grafica di Ubuntu. La soluzione per me era andare su Impostazioni di sistema -> Software e aggiornamenti -> Driver aggiuntivi e scegliere un driver nvidia proprietario (o quale scheda hai mai) invece di nouveau. Questa modifica sembra anche aver risolto un problema che ho avuto con il lettore multimediale di YouTube (può o meno essere applicato ad altri lettori multimediali). In particolare, l'immagine video in rapido movimento sembrava aggiornarsi in sezioni con "linee di faglia" orizzontali. Sembra anche sparito.


Sembra che funzioni bene.
Falci,

2

Disinstalla Chrome e quindi elimino tutti i miei file di configurazione, e nulla ha avuto lo stesso problema. Questo funziona per me in Ubuntu 14.04 64 bit

google-chrome --disable-gpu

1

Assicurati di avere un buono stato con Graphics Feature Statusnel browser. Segui questo link per verificare:

chrome://gpu/

Dovresti vedere tutte le opzioni verdi Hardware accelerated. In caso contrario, vai a

chrome://flags/

La prima riga è la tua bandiera per abilitare Override software rendering list # ignore-gpu-blacklist .

Riavvia il browser e ricontrolla il tuo Hardware acceleratedstato.

Inoltre, assicurati di avere abbastanza memoria libera durante l'esecuzione del browser

$ free

/ gpu mostra questo: Area grafica dello stato delle funzioni grafiche: solo software, accelerazione hardware non disponibile Flash: accelerazione hardware Flash Stage3D: profilo accelerato hardware Flash Stage3D Profilo base: accelerazione hardware Composizione: accelerazione hardware Più thread raster: abilitazione rasterizzazione: solo software. Accelerazione hardware disabilitata Rasterizzazione filettata: abilitata Decodifica video: solo software, accelerazione hardware non disponibile Codifica video: accelerazione hardware WebGL: accelerazione hardware / flag si arresta in modo anomalo nel sistema
Thomas Smart

@ThomasSmart segui le istruzioni sulla mia risposta. --- dopo, Abilita flag Sostituisci elenco rendering software riavvia browser e ricontrolla.
Vitaliy Kulikov,

1
impossibile seguire perché l'accesso a / flags ha provocato l'arresto anomalo del browser. la risposta sopra sull'installazione di un vecchio Chrome ha risolto il problema.
Thomas Smart,

1

L'ho risolto sostituendo il driver video nouveau con i driver nvidia come descritto qui .

Non google-chrome --disable-gpurichiesto


1

Ho pubblicato una patch su LKML per aggirare questo bug e mi è stato detto che il problema era stato identificato come un bug libdrm (non Chrome).

https://bugs.freedesktop.org/show_bug.cgi?id=89842#c19

Questo problema è relativo libdrm 2.40.6solo e dal link sopra non ci sono altre applicazioni, solo Chrome che può riscontrare lo stesso errore con nouveau.

È possibile eseguire il downgrade alla versione precedente di libdrm.

sudo apt-get install libdrm2=2.4.56-1~ubuntu2

Se si desidera "bloccare", ovvero interrompere nuovamente l'aggiornamento automatico del sistema alla 2.6.40

sudo echo "package libdrm2" | sudo dpkg –set-selections

Ho effettuato il downgrade con successo alla versione 2.4.56 e posso verificare che Chrome funzioni come previsto, con l'accelerazione GPU attivata.


Ops. Ho parlato troppo presto. Ho seguito il consiglio delle persone di freedesktop e sono passato da libdrm 2.40.6, ma ricevo ancora il messaggio di errore ..... Ho modificato il mio driver video per consentire a Chrome di farlo e sembra buono ... una cosa non è chiaro però se 2.4.56 non dovrebbe contenere questo errore. Mi è stato detto di passare da 2.40.6 - ma ciò non significa necessariamente che non siamo sfortunati e 2.4.56 ~ 1 non soffre dello stesso problema.
Bryan O'Donoghue,

0

L'ho visto un po 'di tempo fa sul mio sistema LFS completamente auto-costruito completamente non-Ubuntu-edge ( sono un tipo strano senza vita, lo ammetto). Indica un sacco di urla nel registro di dmesg su bos corrotto ecc.

Per me, un'altra soluzione che mi ha permesso di conservare il rendering con accelerazione hardware nella maggior parte delle situazioni era esportare LIBGL_DRI3_DISABLE=1nell'ambiente prima di avviare Chromium. Sembra che DRI3 non sia ancora pronto per la prima serata ...


0

Rimuovere e installare la versione precedente ha aiutato a usare i seguenti comandi. Ho sostituito i386 invece di amd64 e l'installazione è andata bene. grazie per l'aiuto.

sudo apt-get remove google-chrome-stable
wget http://mirror.pcbeta.com/google/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_43.0.2357.81-1_amd64.deb
sudo dpkg -i google-chrome-stable_43.0.2357.81-1_amd64.deb

0

Per me il problema è stato risolto pulendo da Chrome Password Manager tutte le password che erano duplicate, scadute, esagerate a lungo, inutilizzate e così via. Sembra che la scelta di password molto complesse tende a bloccarsi o bloccare l'intero sistema operativo e ciò accade anche in Windows OS. Un'altra cosa che ho fatto ho impostato il mio swapiness su 0.


0

Ho affrontato lo stesso problema sul mio Ubuntu 14.10, la soluzione è semplicemente uccidere Chrome ogni volta che mangia la CPU, ecco il mio script per farlo, ha funzionato sul mio caso.

#!/bin/sh

#ps aux  | awk 'BEGIN { sum = 0 }  { sum += $3 }; END { print sum }'

# DON VI PHAN TRAM
MAX_ALLOWED_CPULOAD=50
MAX_ALLOWED_MEMLOAD=50
core_num=$(nproc)
MAX_ALLOWED_CPULOAD=$(expr $MAX_ALLOWED_CPULOAD \* $core_num)

counter=0
continue_high_cpuload_count=0
max_continue_alowed=10

print_cpu_load_with_pid(){
    cpuload=$(ps aux  | awk 'BEGIN { sum = 0 }  { sum += $3 }; END { print sum }')
    cpuloadpercent=$(echo "100 * $cpuload / $MAX_ALLOWED_CPULOAD" | bc)
    echo "checked at $counter times, cpuload = $cpuloadpercent %"
    counter=$((counter+1))
    #$(echo 12.45 10.35 | awk '{if ($1 < $2) print $1; else print $2}')
    decide=$(echo $cpuload $MAX_ALLOWED_CPULOAD | awk '{if ($1 > $2) print "true"; else print "false"}')
    if [ "true" = "$decide" ] ; then
        continue_high_cpuload_count=$((continue_high_cpuload_count+1))  
        echo "High cpuload detected, continue_counter = $continue_high_cpuload_count"
    elif [$continue_high_cpuload_count -gt 0 ]; then
        continue_high_cpuload_count=0
        echo "No longer detect hight cpu, reseting continue_counter..."
    fi

    if [ "$continue_high_cpuload_count" = "$max_continue_alowed"  ] ; then
        echo "Killing chrome..."
        kill -9 `ps -aux|grep chrome|awk '{print$2}'`
    fi
}

while [ : ];do
    print_cpu_load_with_pid
    sleep 2
done

0

In genere mi piace usare Chrome, ma è l'unico software sul mio Ubuntu che è garantito per bloccare l'intero sistema operativo se viene concesso abbastanza tempo. E in alcune occasioni, non posso letteralmente fare nulla al di fuori di un riavvio a freddo. Se avessi già aperto un altro TTY ( Alt+ Ctrl+ Fn), potrei o meno essere in grado di passare al problemakillall chrome , che risolverà immediatamente il sistema operativo. Lo stesso, se avessi già una connessione SSH in sospeso. A volte il cursore del mouse si sposta sullo schermo ma nient'altro sarà reattivo. A volte nemmeno il cursore del mouse.

Comunque, ho scoperto sperimentalmente che la RAM si esaurisce con Chrome appena in uso; Alcune orribili perdite di memoria. Quindi quello che ho fatto per evitare di avere il mio sistema operativo completamente bloccato fino al punto di non salvataggio, è in qualche modo un fai-da-te. Ho creato un semplice script bash e installato sotto crontab del mio utente. Lo eseguo ogni minuto. Verifica la quantità di RAM libera e, se supera il limite definito (utilizzo 200 MB), emette killall chrome3 volte consecutive (per ogni evenienza). Successivamente si finisce con Chrome sparito dallo schermo ma appare una finestra di dialogo che ti dice cosa è successo, quanta memoria ti era rimasta e quanto hai ora dopo averlo recuperato da Chrome. Lo script è il seguente:

#!/bin/sh
#SETTINGS:
MIN_RAM_BEFORE_KILLING_CHROME_MB=200
#DATA COLLECTION:
FREE_RAM=$(free -mo | tr -s ' ' | cut -d ' ' -f 4 | awk '$0 == "free" {i=1;next};i && i++ <= 1')
echo "Free RAM: $FREE_RAM"
#ACTION:
if [ $FREE_RAM -lt $MIN_RAM_BEFORE_KILLING_CHROME_MB ]; then
    echo "time to kill chrome...";
    killall chrome &
    sleep 1
    killall chrome &
    sleep 1
    killall chrome &
    FREE_RAM2=$(free -mo | tr -s ' ' | cut -d ' ' -f 4 | awk '$0 == "free" {i=1;next};i && i++ <= 1')
    DISPLAY=:0 nohup zenity --info --text="Chrome was killed, because your RAM had only $FREE_RAM MB free.\nNow you have $FREE_RAM2 MB free."  2>/dev/null &
else
    echo "Not yet. Will kill chrome when RAM goes under $MIN_RAM_BEFORE_KILLING_CHROME_MB.";    
fi;
#INSTALLATION:
# crontab -u <username> -e
# then add this script

Quindi quando raggiungo un livello critico basso nella mia RAM, il mio Chrome viene ucciso e vedo questo: inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.