GNU/Linux >> Belajar Linux >  >> Linux

Beralih ke Sesi X Kedua Membunuh Yang Pertama?

Saya mengalami masalah aneh di sini. Saya memiliki kotak Linux dengan konfigurasi (ringkasan) berikut:

  • Dell Inspiron i5
  • NVIDIA GP108M
  • Pengujian Debian GNU/Linux
  • xorg-server 2:1.20.0-3

Menurut Xorg.0.log saya , driver yang saya jalankan adalah "nouveau":

[ 30442.522] (II) LoadModule: "nouveau"  
<SNIP>
[ 30442.777] (--) NOUVEAU(G0): Chipset: "NVIDIA NV138"

Penyambut saya adalah LightDM dan DM saya adalah Xfce. Saya mencoba memulai sesi kedua dengan user2 dengan prosedur sebagai berikut:

  1. Beralih ke VT-1 (Ctrl +Alt +F1 )
  2. Masuk dengan user2
  3. Jalankan startx -- :1

Tidak ada penyambut. user2 sesi Xfce sedang berjalan. Saya dapat memverifikasi bahwa kedua sesi berjalan dengan htop .

Namun, ketika saya beralih kembali ke VT-7 (Ctrl +Alt +F7 ) Saya melihat bahwa user1 sesi telah dihentikan. VT-7 kembali ke penyambut.

Informasi dari log

Setiap kali saya beralih di antara VT, ada jejak tumpukan di syslog . Namun ini tidak berarti sesi X telah dihentikan.

Misalnya, saya memulai sesi Xfce saya dengan user1 pada VT-7. Kemudian saya beralih ke VT-1 dan kembali ke VT-7. Kesalahan (ringkasan) berikut muncul dua kali di syslog :

kernel: ------------[ cut here ]------------
kernel: nouveau 0000:01:00.0: timeout
kernel: WARNING: CPU: 0 PID: 1783 at /build/linux-0buYvw/linux-4.17.8/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c:86 nvkm_pmu_reset+0x14c/0x160 [nouveau]
---[ cut 4 lines ]---
kernel: Hardware name: Dell Inc. Inspiron 7472/0WFX2M, BIOS 1.1.3 01/25/2018
kernel: RIP: 0010:nvkm_pmu_reset+0x14c/0x160 [nouveau]
---[ cut 9 lines ]---
kernel: Call Trace:
kernel:  nvkm_pmu_init+0x16/0x40 [nouveau]
kernel:  nvkm_subdev_init+0xb2/0x1f0 [nouveau]
kernel:  nvkm_device_init+0x132/0x270 [nouveau]
kernel:  nvkm_udevice_init+0x41/0x60 [nouveau]
kernel:  nvkm_object_init+0x3d/0x180 [nouveau]
kernel:  nvkm_object_init+0xa0/0x180 [nouveau]
kernel:  nvkm_object_init+0xa0/0x180 [nouveau]
kernel:  ? pci_restore_standard_config+0x40/0x40
kernel:  nouveau_do_resume+0x28/0x140 [nouveau]
kernel:  nouveau_pmops_runtime_resume+0x88/0x150 [nouveau]
kernel:  pci_pm_runtime_resume+0x78/0xb0
kernel:  __rpm_callback+0xc7/0x200
kernel:  ? pci_restore_standard_config+0x40/0x40
kernel:  rpm_callback+0x1f/0x70
kernel:  ? pci_restore_standard_config+0x40/0x40
kernel:  rpm_resume+0x4c4/0x790
kernel:  ? do_wp_page+0x154/0x500
kernel:  __pm_runtime_resume+0x47/0x70
kernel:  nouveau_drm_ioctl+0x35/0xc0 [nouveau]
kernel:  do_vfs_ioctl+0xa4/0x630
kernel:  ? handle_mm_fault+0xdc/0x210
kernel:  ksys_ioctl+0x70/0x80
kernel:  __x64_sys_ioctl+0x16/0x20
kernel:  do_syscall_64+0x55/0x110
kernel:  entry_SYSCALL_64_after_hwframe+0x44/0xa9
----[ cut 8 lines ]--- 
kernel: ---[ end trace 81b347516b37c927 ]---

Sekarang saya beralih ke VT-1, login dengan user2 dan jalankan startx -- :0 . Namun, belum ada sesi yang dihentikan, dan saya dapat mengonfirmasinya dengan htop .

Tapi , jika sekarang saya beralih dari sesi X di VT-1 ke sesi X lain di VT-7, ini muncul di syslog

pulseaudio[3372]: XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
pulseaudio[3372]:       after 17 requests (17 known processed) with 0 events remaining.
xfce4-notifyd[3565]: xfce4-notifyd: Fatal IO error 11 (Resource temporarily unavailable) on X server :0. 
at-spi-bus-launcher[1368]: XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
at-spi-bus-launcher[1368]:       after 443 requests (443 known processed) with 0 events remaining.
systemd[1308]: xfce4-notifyd.service: Main process exited, code=exited, status=1/FAILURE
systemd[1308]: xfce4-notifyd.service: Failed with result 'exit-code'.
systemd[1308]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
systemd[1308]: pulseaudio.service: Failed with result 'exit-code'.
systemd[1308]: pulseaudio.service: Service RestartSec=100ms expired, scheduling restart.
systemd[1308]: pulseaudio.service: Scheduled restart job, restart counter is at 3.
systemd[1308]: Stopped Sound Service.
systemd[1308]: Starting Sound Service...
rtkit-daemon[1552]: Successfully made thread 3898 of process 3898 (n/a) owned by '1000' high priority at nice level -11.
rtkit-daemon[1552]: Supervising 4 threads of 2 processes of 2 users.
pulseaudio[3898]: W: [pulseaudio] pid.c: Stale PID file, overwriting.
avahi-daemon[644]: Withdrawing address record for ---[ IPv6 redacted ]--- on enp2s0.
lightdm[3907]: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files

VT-7 kembali ke penyambut. Server X dimulai ulang (?).

Terkait:Switching DC dengan MOSFET:p-Channel atau n-Channel; Beban Sisi Rendah atau Beban Sisi Tinggi?

Mengenai Xorg.0.log , baris berikut ditambahkan saat saya beralih dari VT-1 ke VT-7 dan sesi dihentikan.

[ 15945.806] (II) event7  - Power Button: device removed
[ 15945.832] (II) event10 - Video Bus: device removed
[ 15945.848] (II) event11 - Video Bus: device removed
[ 15945.877] (II) event5  - Power Button: device removed
[ 15945.908] (II) event6  - Sleep Button: device removed
[ 15945.933] (II) event1  - Microsoft Wired Keyboard 600: device removed
[ 15945.953] (II) event20 - PixArt Microsoft USB Optical Mouse: device removed
[ 15945.972] (II) event12 - Integrated Webcam: Integrated W: device removed
[ 15945.988] (II) event8  - DELL0828:00 06CB:7E7E Touchpad: device removed
[ 15946.021] (II) event3  - Intel HID events: device removed
[ 15946.044] (II) event9  - Dell WMI hotkeys: device removed
[ 15946.068] (II) event0  - AT Translated Set 2 keyboard: device removed
[ 15946.084] (II) event21 - PS/2 Generic Mouse: device removed
[ 15946.101] (II) event2  - Microsoft Wired Keyboard 600: device removed
[ 15946.116] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 15946.117] (II) NOUVEAU(G0): NVLeaveVT is called.

Jawaban yang Diterima:

Anda mengalami kerusakan kernel di nouveau modul, yang akan mengacaukan modul DRM, yang pada gilirannya akan mengacaukan server X yang terhubung ke modul itu ketika mencapai kondisi buruk.

Tingkatkan ke kernel terbaru dan cocokkan nouveau modul mungkin. Jika Anda masih mendapatkan error yang sama, ajukan laporan bug dengan nouveau pengembang. Pastikan untuk menyertakan dmesg lengkap dan Xorg.*.log .


Linux
  1. Pengujian integrasi berkelanjutan untuk kernel Linux

  2. Yang pertama disiarkan seluruhnya di Linux

  3. Partisi /boot Benarkah Untuk?

  1. Linux – Mengapa Kernel Tidak Dapat Menjalankan Init?

  2. Bagaimana cara memeriksa HZ di terminal?

  3. Bagaimana cara menukar aliran audio pertama dan kedua dalam MKV di sistem berbasis Linux?

  1. Kernel Linux:5 inovasi teratas

  2. Siklus hidup pengujian kernel Linux

  3. Multi-Tugas di baris perintah dengan screenie