Bug video in Flash fullscreen su Ubuntu 9.04 risolto

3 giu
2009

Su Ubuntu 9.04 Jaunty Jackalope è presente un bug che, in caso di utilizzo di schede grafiche Intel, riduce drasticamente le prestazioni durante la visualizzazione in fullscreen dei filmati in Flash, come quelli che troviamo su YouTube. In attesa di un bug fix, ho risolto il problema seguendo le istruzioni presenti qui ed integrandole con altre informazioni recuperate in rete.
Ecco, in breve, i passaggi da seguire:

  1. Si lancia in una console il comando ‘lspci -vvnn‘. Nell’output del comando si cerca la sezione relativa al controller grafico (VGA compatible controller) e si individua la riga della Region prefetchable. Segniamoci l’indirizzo e le dimensioni di questa Region: nel mio caso la riga completa è ‘Region 2: Memory at c0000000 (32-bit, prefetchable) [size=256M]‘, quindi l’indirizzo è c0000000 mentre le dimensioni risultano essere di 256M. Per scovare rapidamente la riga incriminata possiamo lanciare, al posto del semplice comando lspci, una comoda pipe con grep: ‘lspci -vvnn|grep “, prefetchable”‘.
  2. Ora, per risolvere il bug, dobbiamo usare queste informazioni per aggiungere una Region al file /proc/mtrr. Le informazioni ricavate nel passaggio precedente devono essere leggermente manipolate: all’indirizzo dobbiamo aggiungere ‘0x‘ mentre le dimensioni vanno tradotte in notazione esadecimale. Per questa traduzione possiamo usare la calcolatrice di Gnome: avviamola (menu Applicazioni > Accessori > Calcolatrice) e passiamo in modalità Programmazione (Visualizza > Programmazione). A questo punto prendiamo il valore delle dimensioni e moltiplichiamolo due volte per 1024: ad esempio, se il valore è 256 scriviamo 256 x 1024 x 1024 e battiamo Invio. Ottenuto il risultato, selezioniamo l’opzione Hex nella calcolatrice: aggiungiamo ‘0x‘ al valore che otteniamo (ad esempio, ‘0×10000000‘) e segniamoci il tutto.
  3. Per finire, apriamo con un editor da root il file /etc/gdm/PreSession/Default: se usiamo l’editor gedit, quindi, lanciamo il comando “gksudo gedit /etc/gdm/PreSession/Default“. Inseriamo la password del nostro utente e comparirà la finestra dell’editor. Qui raggiungiamo la fine del file e, prima della riga conclusiva ‘exit 0‘ inseriamo le linee seguenti:
    # Add the missing register to /proc/mtrr
    if test ! "x$(cat /proc/mtrr | grep write-combining)" = "" ; then
    echo "base=0xc0000000 size=0x10000000 type=write-combining" > /proc/mtrr
    fi

    Inseriamo al posto di 0xc0000000 l’indirizzo valido nel nostro caso ed al posto di 0×10000000 le dimensioni corrette per la nostra scheda.
  4. Salviamo il file (CTRL + S) e chiudiamo l’editor (CTRL + Q). Chiudiamo la sessione del nostro utente. Dalla sessione successiva proviamo ad aprire un video su YouTube ed a visualizzarlo a pieno schermo: il bug sarà miracolosamente scomparso.

Altri post su argomenti simili:

1 Response to Bug video in Flash fullscreen su Ubuntu 9.04 risolto

Avatar

Bug video in Flash fullscreen su Ubuntu 9.04 risolto | Il Dente …

giugno 3rd, 2009 at 13:18

[...] fonte: Bug video in Flash fullscreen su Ubuntu 9.04 risolto | Il Dente … Articoli correlati: Ubuntu 9.04 LTS Jaunty Jackalope Alpha 5 | Google Hack [...]

Comment Form

top