Layar rusak setelah hibernasi - Apakah ada cara lain untuk menyegarkan tampilan X11?

23

Ketika saya mengembalikan dari hibernasi layar sering rusak. Saya menduga memori grafis tidak disimpan. Jika tidak, Suspend-to-ram berfungsi dengan baik.

Ini juga terlihat seperti font-cache rusak, karena semua huruf rusak secara konsisten. Efeknya tampaknya menargetkan font pada ukuran tertentu. Misalnya jika jendela terminal saya terkena, mengubah font dan / atau ukuran font akan memperbaikinya, kecuali font dengan ukuran itu sudah rusak.

Jika font digunakan di tempat lain (aplikasi lain, pengelola jendela, dll.), Maka masalahnya juga ada di sana. Terkadang font yang digunakan untuk judul jendela dipukul, maka semua judul jendela menunjukkan huruf yang sama rusak.

Logout dan kembali lagi memperbaikinya , tetapi saya tidak mau harus melakukan itu. Saya telah log-out kemudian hibernasi, tetapi ini lebih banyak upaya dan menghilangkan sebagian besar manfaat hibernasi.

Apakah ada cara lain untuk menyegarkan tampilan X11? The Ctrl+ Alt+ F1... juga tidak memperbaikinya. Ini beralih terminal tetapi tidak menggambar ulang apa pun: Itu hanya menunjukkan layar rusak lama.

Saya menggunakan Debian 6.

Dalam kesempatan ini judul jendela buruk: font judul jendela rusak

Konten terminal buruk, tetapi judulnya (masih) oke: teks terdistorsi secara sistematis, tetapi hanya beberapa font yang terpengaruh

ctrl-alt-delor
sumber
1
Chip / driver grafis apa yang Anda gunakan? Distro?
Caleb
1
Debian 6, acer bercita-cita 5338 grafis terintegrasi. Saya telah membuatnya bekerja di Ubuntu, dan menunda untuk ram berfungsi dengan sangat baik. Saya curiga kita tidak menyimpan ram grafis ke disk.
ctrl-alt-delor
1
Itu tidak cukup menjawab pertanyaan karena model itu tampaknya telah dikirim dengan Intel, Nvidia, dan opsi kartu video ATI. Dengan "terintegrasi", maksud Anda, Anda memiliki kartu video Intel GMA?
Caleb
Tidak jelas dari apa yang Anda katakan - pernahkah Anda mencoba melakukan ctrl-alt-F1 sebelum hibernasi (yaitu hibernasi dari mode teks, dan hanya beralih kembali ke X11 setelah melanjutkan)? Anda mungkin perlu mengetahui perintah untuk hibernasi dari baris perintah.
Random832
1
Saya telah memperbarui ke debian7, sekarang berfungsi. @terdon tangkapan layar ditambahkan ke pertanyaan, terlihat mirip dengan apa yang saya miliki.
ctrl-alt-delor

Jawaban:

12

Saya memiliki situasi yang serupa dengan laptop saya. Layar sering kali tetap hitam ketika terbangun dari penundaan. Solusi saya adalah menggunakan xrandruntuk mengatur ulang tampilan saya. Anda perlu menemukan xrandrperintah yang mengatur tata letak Anda dan menjalankannya. Sebagai contoh, pada sistem saya, saya memiliki dua layar dan mengaturnya seperti yang saya inginkan:

xrandr --output DP-3 --auto --output VGA-0 --auto --right-of DP-3 --primary

Jika Anda hanya memiliki satu layar, Anda dapat mematikan dan menghidupkannya kembali:

xrandr --output VGA-1 --off; xrandr --output VGA-1 --auto;

Anda dapat melihat nama layar Anda dengan menjalankan xrandrtanpa argumen. Pada sistem yang saya gunakan sekarang (satu layar VGA), saya mendapatkan:

$ xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
VGA-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080      60.0*+
   1680x1050      60.0  
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
DVI-I-1 disconnected (normal left inverted right x axis y axis)

Setelah Anda menemukan perintah yang tepat, tetapkan pintasan sehingga Anda dapat menjalankannya meskipun layar kosong.

terdon
sumber
Saya tidak melihat bagaimana ini bisa berhasil. Anda mendapatkan layar hitam dan tidak memiliki antarmuka ... tetapi Anda menjalankan perintah? Bagaimana? Melakukan alt + Fn tidak akan berhasil karena bahkan semua perintah X melempar kesalahan "Tidak dapat membuka tampilan". Mencoba export DISPLAY=:0triknya hanya menghasilkan kesalahan yang berbeda.
Cerin
@Cerin di sistem saya, saya telah menetapkan cara pintas ke perintah itu sehingga saya dapat menjalankannya secara membabi buta dengan menekan Alt + F.
terdon
Terima kasih, itu berhasil untuk saya (mendapatkan gangguan layar mewah sejak saya mulai menggunakan penerima citrix; yang memperbaikinya ketika semuanya gagal). Perhatikan bahwa jika Anda menjalankan perintah dari VT yang berbeda di komputer yang sama Anda mungkin mendapatkan Configure crtc 0 failedkesalahan; tambahkan saja sleep kecil sebelum perintah dan alihkan VT agar aktif ketika xrandr berjalan. @ Cerin itu mungkin masalah Anda. sleep 5; xrandr --output VGA-1 --off; xrandr --output VGA-1 --auto
Thomas Guyot-Sionnest
Ternyata itu bukan masalah saya; ketika beralih VTs itu muncul manajer windows atau shell gnome mengejar peristiwa dan tetap tidak responsif untuk beberapa waktu; waktu yang dihabiskan untuk melakukan tindakan ini sudah cukup untuk mengejar dan menyegarkan layar. OTOH itu membantu sekali ketika saya menemukan masalah fokus di mana saya tidak bisa mengklik apa pun & dan pintasan keyboard diabaikan - MATI lalu HIDUP tampilan yang memperbaikinya.
Thomas Guyot-Sionnest
Apakah normal untuk perintah di atas (untuk satu tampilan) untuk meninggalkan Anda dengan layar res rendah (hitam) dengan pointer mouse? Jika demikian, bagaimana cara memperbaikinya?
Cool Charac
7

Apakah Anda mencoba xrefreshperintahnya?

Keith Thompson
sumber
Ya, tidak bekerja,
ctrl-alt-delor
Saya akan mencoba itu lain kali ... FWIW sebagian besar waktu saya mendapatkan kesalahan yang mempengaruhi tampilan, baik beralih antara teks dan GUI VT atau menggunakan opsi pengguna beralih (yang mengunci satu VT dan membuka kunci yang lain) memperbaiki masalah saya ... tetapi pada kesempatan langka tampaknya hanya xrandr yang dapat memperbaikinya. Saya biasanya beralih menggunakan VT CTRL-ALT-F<n>jadi saya tidak perlu membuka kunci sepanjang waktu.
Thomas Guyot-Sionnest
6

Di GNOME 3 , AltF2rentermenyegarkan GUI. AltF2meluncurkan prompt Run Command , dan rperintah memaksa refresh.

Severyn Kozak
sumber
Kedengarannya Anda juga bisa lari rdari konsol. Saya belum rmenginstal. - Apa yang harus dijalankan, katamu? Yaitu paket yang mana? Apa nama lengkap dari rprogram itu?
Robert Siemer
1
@RobertSiemer itu bukan program, ini adalah hal internal GNOME yang me-restart DE. Saya menduga itu berjalan gnome --replacedi latar belakang tetapi saya tidak tahu.
terdon
3
ratau restart(sama). Setara konsol akan menjadi gnome-shell --replace.
don_crissti
Saya menjalankan gnome-panel dengan metacity.
Robert Siemer
@ Richard, apakah ini berhasil?
Severyn Kozak
5

Saya mengalami masalah ini juga (Debian Squeeze dan Wheezy).

Dalam pengalaman saya, ini terjadi terutama ketika sebagian besar memori penuh dan sistem menggunakan memori swap.

Sebagai solusi parsial: jika saya mengubah font default, korupsi hilang. (Tapi tidak untuk selamanya, saya harus berubah lagi ketika korupsi muncul kembali.)

(Pada Debian Wheezy ini dilakukan oleh gnome-tweak-tool.)

Robert
sumber
4

Tingkatkan ke Kernel 3.19. - Saya menggunakan paket kernel arus utama Ubuntu , yang dapat ditemukan di sini:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/ (juga bisa dijalankan di Ubuntu 14.04)

Komentar laporan bug berikut menyebutkannya

https://bugs.freedesktop.org/show_bug.cgi?id=45092#c37

... dan melacak komit dengan pesan berikut:

https://github.com/torvalds/linux/commit/656bfa3afc14e45e2d9e1624bf60d79b3beb12f2

"... karena kita hanya pernah melihat ini di gm45 dan i965gm."

Saya memiliki chipset mobile Intel GM45 dengan grafik terintegrasi. Laptop Acer dari OP juga dijual dengan chipset itu (tidak semuanya).

(Itu tidak ada hubungannya dengan penangguhan.)

Robert Siemer
sumber
3

Jika driver gagal melanjutkan perangkat dengan benar, maka saya percaya satu-satunya solusi yang akan Anda temukan adalah debugging dan mengidentifikasi di mana masalahnya adalah sehingga Anda dapat memutuskan apa yang harus dilakukan dari sana. Misalnya, saya tidak melihat bagaimana Anda dapat menyegarkan jika kartu video tidak diinisialisasi ulang.

ACPI menangani penangguhan / resume dan tampilan. Misalnya, masalah ACPI berikut yang terjadi pada beberapa ThinkPads dapat mengatasi gejala yang Anda gambarkan:

Saat melanjutkan dari suspend-to-ram, tampilan konsol teks mungkin menampilkan sampah, bukan teks yang sebenarnya. Mesin itu jika masih responsif dan X menampilkan baik-baik saja. Jika semua ini benar, maka menambahkan opsi kernel acpi_sleep = s3_bios, s3_mode di menu.lst Anda atau lilo.conf dapat menyelesaikan masalah.

Masalah dengan ACPI suspend-to-ram - ThinkWiki

Jika Anda menggunakan thinkpad_acpimodul yang ditangani oleh kutipan di atas, mungkin itu yang Anda butuhkan. Untuk info lebih lanjut tentang solusi ini, lihat Suspend2Ram - Dokumentasi Powersave

Pertama, ada beberapa parameter kernel yang dapat dicoba. Tambahkan saja ke "kernel" -line Anda di /boot/grub/menu.lst . Informasi lebih lanjut tentang hal itu dapat ditemukan di /usr/src/linux/Documentation/power/video.txt .

Dari video.txt:

Selama resume S3, perangkat keras perlu diinisialisasi ulang. Untuk sebagian besar perangkat, ini mudah, dan driver kernel tahu bagaimana melakukannya. Sayangnya ada satu pengecualian: kartu video. Itu biasanya diinisialisasi oleh BIOS, dan kernel tidak memiliki cukup informasi untuk mem-boot kartu video. (Kernel biasanya bahkan tidak mengandung driver kartu video - vesafb dan vgacon banyak digunakan).

Lebih banyak di video.txt Lihat tabel di sini untuk melihat apakah yang dikenal acpi_sleep=<hack>terdaftar untuk model kartu video Anda.

Debian Suspend dan KMS Wiki Debian menyarankan penonaktifan KMS untuk masalah "video yang rusak pada resume". 1

Masalah yang sangat umum ditemukan setelah komputer melanjutkan adalah video yang rusak (atau layar hitam, atau tidak ada LCD backlight). Langkah pertama adalah memeriksa apakah sistem masih berjalan, yang dapat dilakukan dengan menekan tombol Capslock dan memeriksa apakah LED Capslock berubah. Jika sistem masih berjalan, dalam kebanyakan kasus kami perlu menambahkan kekhasan video untuk kartu video Anda.

Debian sekarang memiliki pengaturan mode kernel (KMS) yang diaktifkan secara default untuk sebagian besar kartu video Intel, nVidia dan ATI. Tapi quirk video pm-utils 'belum mendukung KMS. Jadi dalam kebanyakan kasus, Anda harus mencoba menonaktifkan KMS terlebih dahulu. Langkah-langkah detail untuk kartu video spesifik Anda dapat ditemukan di halaman KernelModesetting.

Setelah KMS dinonaktifkan, jika video setelah melanjutkan masih rusak, Anda dapat mencoba menangguhkan sistem dengan menggunakan beberapa kebiasaan video. Baca halaman manual dari program pm-suspend untuk penjelasan yang sangat detail dari semua quirks yang tersedia, dan coba kombinasi keduanya dari commandline. Jika Anda berhasil menemukan satu kombinasi quirks yang berfungsi untuk sistem Anda, Anda dapat menambahkannya ke / usr / lib / pm-utils / video-quirks untuk menjadikannya permanen. Pada saat yang sama, tolong bantu untuk mengajukan bug terhadap paket pm-utils dengan tambalan tentang perubahan Anda sehingga dapat menguntungkan massa.

Masalah umum yang ditemukan pada peningkatan sistem dari versi lama Debian adalah mengaktifkan quirk-s3-bios membekukan sistem selama penangguhan. Jika sistem Anda membeku selama penundaan, periksa pm-suspend.log dengan hati-hati setelah mengaktifkan debugging dan pastikan quirk-s3-bios tidak digunakan.

Jika Anda merasa ini terkait dengan masalah Anda, Anda dapat mencoba menonaktifkan KMS seperti yang disarankan. Untuk penambahan kartu Anda, lihat KernelModesetting - Debian Wiki

Debugging Suspend

Log proses penangguhan dan melanjutkan dalam file /var/log/pm-suspend.log. Ini berisi informasi cukup verbose secara default. Informasi lebih lanjut dapat diaktifkan untuk debugging dengan memasukkan ekspor baris PM_DEBUG = true ke awal file / usr / lib / pm-utils / pm-functions .

Untuk lebih lanjut, lihat info tentang fasilitas pengujian Kernel yang disebutkan di Suspend - Debian Wiki juga. Ini dapat membantu Anda men-debug dan mengisolasi masalah.

Beberapa contoh dan info debugging lebih mendalam yang dapat membantu Anda "driver yang gagal menangguhkan atau melanjutkan perangkat mereka" tersedia di https://www.kernel.org/doc/Documentation/power/basic-pm-debugging.txt

Beberapa ide debug lain untuk pm-utilsdi pm-utils - ArchWiki dan /unix//a/29090/87728

Berikut daftar lengkap Parameter Kernel yang relevan dengan acpi dan suspend.

Semoga berhasil.

iyrin
sumber
Tampilan X tidak baik; terminal teks virtual baik-baik saja
Robert Siemer
Apakah kamu memeriksa /var/log/pm-suspend.log? Apakah Anda mengaktifkan debugging /usr/lib/pm-utils/pm-functionsdan memeriksanya setelah itu?
iyrin
Anda dapat menguji penangguhan dengan kebiasaan dari terminal menggunakan pm-suspend --quirk-s3-bios --quirk-s3-mode. Lihat bagian opsi di man pm-action.
iyrin
Saya sudah memeriksa /var/log/pm-suspend.log. Tidak ada yang aneh. Saya menggunakan KMS. - Menonaktifkan KMS bukanlah pilihan saat ini (driver xorg intel membutuhkannya); wiki yang Anda tunjuk terakhir diperbarui 2012.
Robert Siemer
Hanya ingin mengatakan bahwa dmesg | tail -50perintah dapat bermanfaat untuk debugging. Saya benar-benar menemukan korupsi memori rendah terkait untuk menunda yang saya dapat atasi dengan parameter kernel di grub memmap=64K$0 memory_corruption_check=0. Saya yakin ini akan memberi tahu Anda jika ada kesalahan saat menginisialisasi kartu video.
iyrin
2

Tampaknya ini adalah bug yang dilaporkan, periksa tautan yang mengikuti.

Dalam kasus Ubuntu, periksa tautan ini

Dalam kasus Debian baca tautan lain ini khususnya Memperbaiki video yang rusak pada bagian resume

Seandainya masalahnya ada di konsol teks: Sudahkah Anda mencoba menyegarkan cache font?

fc-cache -f -v

YoMismo
sumber
Tidak membantu ...
Robert Siemer
1
Tampaknya ini adalah bug yang dilaporkan, periksa tautan yang mengikuti. Jika distro Anda bukan Ubuntu, bug mungkin tidak spesifik untuk distro tetapi beberapa perpustakaan yang dapat mempengaruhi distro lain. Galilah bug / s dan lihat apakah sudah dipecahkan untuk distro Anda ... bugs.launchpad.net/ubuntu/+source/linux/+bug/659434
YoMismo
Maaf saya tidak melihat distro Anda adalah Debian. Periksa tautan berikutnya: wiki.debian.org/Suspend khusus Memperbaiki video yang rusak pada bagian resume .
YoMismo
Saya memiliki Ubuntu 14,04.
Robert Siemer
Oke, pertanyaan menyatakan "Saya menggunakan Debian 6." sebelum screenshot pertama. Maka saya kira Anda akan menemukan jawaban Anda di bug launchpad ... Bagaimanapun, Ubuntu didasarkan pada Debian jadi mungkin solusi dari tautan Debian dapat membantu Anda.
YoMismo
0

Ini hampir pasti karena driver grafis memiliki bug untuk perangkat layar. Mungkin tidak akan terlalu menjadi masalah, karena bagaimanapun itu bukanlah sesuatu yang bisa Anda perbaiki. Tetapi Anda harus mengajukan bug tentang driver kernel untuk perangkat (setelah Anda mengetahui apa itu ( lspcidapat membantu di sini)).

Namun, sesuatu yang dapat Anda coba sebagai solusi: ketika keluar dari hibernate, coba tekan "ctrl-alt-F4" untuk beralih ke terminal virtual lain dan kemudian beralih kembali (yang kemungkinan ctrl-alt-F1 atau ctrl- alt-F7 atau mungkin F8). Ini mungkin cukup menyegarkan layar sehingga akan membuat tampilan pulih. Mungkin.

Wes Hardaker
sumber
sudah mencoba ctrl-alt-F1 tidak berhasil.
ctrl-alt-delor
0

Ctrl + Alt + F1 ... tidak berfungsi

Baiklah ... lalu coba menerbitkan sudo chvt 1, lalu kembali ke Xorg's vty menggunakan Ctrl_Alt_Fn atau sudo chvt N(di mana N biasanya 7 atau 8). Jika chvtbekerja, Anda bahkan dapat mencoba menulisnya.

poige
sumber
maaf saya tidak jelas ctrl + alt + f1 berfungsi. Ini adalah solusi ctrl + alt + f1 yang tidak. Saya dapat mengganti terminal virtual, tetapi tidak memperbaiki korupsi. Terima kasih.
ctrl-alt-delor
0

Cobalah memutar atau membalik layar Anda dengan xrandr, misalnya terbalik dan kemudian kembali normal. Ini mungkin cukup untuk membuatnya sepenuhnya digambar ulang.

9000
sumber
-1

Cobalah Crtlalt-kemudian Crtlalt+. Itu mengubah resolusi layar bolak-balik.

Nils
sumber
tidak ada. Mungkin kuncinya tidak terikat.
ctrl-alt-delor