Red Hat Bugzilla – Bug 472082
Fast User Switching not working with ATI Technologies Inc M56GL
Last modified: 2008-12-08 22:46:01 EST
With F10 preview, yum updated to current rawhide (and rebooted), fast user switching doesn't work at all. I have 2 users on a T60p laptop, plymouth works just fine, I log in as one user, then either clicking on the fast user switching
applet, or locking the screen and selecting Switch User, results in a second X server starting up on another VT, the mouse cursor is visible and moving, but that's about it, GDM doesn't come up. I can Ctrl+Alt+F1 back to the first X server just fine, just the second one doesn't work.
In dmesg I see
allocation failed: out of vmalloc space - use vmalloc=<size> to increase size.
[drm:drm_bo_evict] *ERROR* Buffer eviction failed
[drm:drm_buffer_object_validate] *ERROR* Failed moving buffer.
[drm:drm_buffer_object_validate] *ERROR* Out of aperture space or DRM memory quo
mtrr: base(0xdd9d9000) is not aligned on a size(0x9c4000) boundary
[drm:drm_mode_getfb] *ERROR* invalid framebuffer id
Not sure if that's related.
2773 tty1 Ss+ 0:02 /usr/bin/Xorg :0 -nr -verbose -auth /var/run/gdm/auth-for-gdm-uQGfDr/database -nolisten tcp vt1
3233 ? Z 0:00 [Xsession] <defunct>
3479 tty7 Ss+ 0:05 /usr/bin/Xorg :1 -br -verbose -auth /var/run/gdm/auth-for-gdm-tcrq0R/database -nolisten tcp
Thanks for the bug report. We have reviewed the information you have provided above, and there is some additional information we require that will be helpful in our diagnosis of this issue.
Please attach your X server config file (/etc/X11/xorg.conf) and X server log file (/var/log/Xorg.*.log) to the bug report as individual uncompressed file attachments using the bugzilla file attachment link below.
Could you please also try to run without any /etc/X11/xorg.conf whatsoever and let X11 autodetect your display and video card? Attach to this bug /var/log/Xorg.0.log from this attempt as well, please.
We will review this issue again once you've had a chance to attach this information.
Thanks in advance.
Try adding nomodeset to the kernel command line in grub. Does it help?
Created attachment 324018 [details]
The working X server log.
Created attachment 324019 [details]
The second X server log.
With nomodeset on kernel cmdline, the results are slightly different, different dmesg output and the second X server even in weirder state.
[drm] Loading R500 Microcode
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [<f88edad6>] :radeon:radeon_cp_init_ring_buffer+0x202/0x474
*pde = 7f45d067
Oops: 0000 [#2] SMP
Modules linked in: fuse sunrpc ip6t_REJECT nf_conntrack_ipv6 ip6table_filter ip6_tables ipv6 cpufreq_ondemand acpi_cpufreq dm_multipath uinput snd_hda_intel arc4 snd_seq_dummy ecb snd_seq_oss snd_seq_midi_event thinkpad_acpi snd_seq snd_seq_device hwmon snd_pcm_oss snd_mixer_oss snd_pcm iTCO_wdt pcspkr iTCO_vendor_support iwl3945 joydev yenta_socket i2c_i801 rsrc_nonstatic snd_timer snd_page_alloc nsc_ircc snd_hwdep rfkill video snd e1000e mac80211 irda output soundcore cfg80211 crc_ccitt sha256_generic cbc aes_i586 aes_generic dm_crypt crypto_blkcipher radeon drm i2c_algo_bit i2c_core [last unloaded: microcode]
Pid: 3710, comm: Xorg Tainted: G D W (126.96.36.199-109.fc10.i686 #1)
EIP: 0060:[<f88edad6>] EFLAGS: 00213246 CPU: 0
EIP is at radeon_cp_init_ring_buffer+0x202/0x474 [radeon]
EAX: 00000000 EBX: f644c000 ECX: f644c000 EDX: 00000000
ESI: f6bc3800 EDI: f6bc3800 EBP: f5871f14 ESP: f5871f04
DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process Xorg (pid: 3710, ti=f5871000 task=f2c84ce0 task.ti=f5871000)
Stack: f5871f14 f644c000 f6bc3800 00006458 f5871f24 f88ef9a1 f891f9d0 00000000
f5871f48 f88845f5 f2ca7240 f6bc3800 f88ef924 f6bc3820 f891dd2c f37ca0c0
00000000 f5871f64 c049a0e4 00000000 00006458 00000000 f37ca0c0 f37ca0c0
[<f88ef9a1>] ? radeon_cp_resume+0x7d/0xbc [radeon]
[<f88845f5>] ? drm_ioctl+0x1ad/0x222 [drm]
[<f88ef924>] ? radeon_cp_resume+0x0/0xbc [radeon]
[<c049a0e4>] ? vfs_ioctl+0x50/0x69
[<c049a347>] ? do_vfs_ioctl+0x24a/0x25d
[<c04f7b0c>] ? selinux_file_ioctl+0x35/0x38
[<c049a39a>] ? sys_ioctl+0x40/0x5a
[<c0403c76>] ? syscall_call+0x7/0xb
Code: 66 31 d2 09 c2 89 d8 e8 4b e9 ff ff 8b 83 cc 00 00 00 8b 53 34 03 10 8b 87 68 02 00 00 2b 50 44 eb 14 8b 83 cc 00 00 00 8b 53 34 <03> 10 8b 87 78 02 00 00 2b 50 04 8b 83 74 03 00 00 8b 40 10 05
EIP: [<f88edad6>] radeon_cp_init_ring_buffer+0x202/0x474 [radeon] SS:ESP 0068:f5871f04
---[ end trace a7919e7f17c0a725 ]---
[drm:drm_release] *ERROR* Device busy: 1
mtrr: base(0xd0000000) is not aligned on a size(0xfff8000) boundary
[drm] Setting GART location based on new memory map
[drm] Loading R500 Microcode
[drm] Num pipes: 1
[drm] writeback test succeeded in 2 usecs
I've also tried to boot with vmalloc=256M, but in that case after the second X server got started the mouse cursor didn't move at all and I couldn't switch to the first X server either.
please try the latest -54 ati driver that is in F10 now.
That helped a little bit. In particular, I log in on the first X server, choose FUS applet/Other, another X server now starts and GDM shows up on it, I can log in as a different user. Now, FUS applet/the first user (or Ctrl+Alt+F1) gets me
back to the first user (I have to unlock the screen) and both X servers are still running. Unfortunately if I at this point FUS applet/the second user (or Ctrl+Alt+F7) the second X server dies (ps ax doesn't show it anymore) and I have
to unlock the first users screen again.
By unlocking you mean that you get screensaver asking for password? That's very much intended -- the first user should be certain that somebody to whom he loaned a computer "just to check the email" is not sneaking into his desktop.
Otherwise passing to Dave for further fun.
I've just kicked off a new kernel build in koji.
it'll appear here when finished.
Can you install it and see if it helps?
oops wrong comment got pasted into this bug, that kernel won't help as far as I know.
Are either user running with desktop effects enabled?
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.
More information and reason for this action is here:
There have been bunch of bug fixes
Could you retest with the latest kernel
( -132 at the time of this writing )
You can get the latest kernel build here
And with the latest xorg-x11-drv-ati.
( -60 at the time of this writing )
You can get the latest xorg-x11-drv-ati build here
And report back if it either improves or fixes this issue..
188.8.131.52-132.fc10 kernel + xorg-x11-drv-ati-6.9.0-60.fc10 combo helped on this card, I can now switch between 2 users just fine several times.
I'll test this on the half dozen other boxes where FUS didn't work either later on (and test also with switching among more than 2 users).
Waiting for that report.
This works both on the M56GL even with multiple users logged in and switched between a lot and on ATI Technologies Inc RV370 5B60 as well (in both cases
it didn't work in F10 GA).
It didn't help on PowerPC G5 (#473403) though, switching to another user works, but when trying to switch back, the first user is logged out (could be gdm or session bug though).
I'll close this one and think have a look at the G5 one separatly then.