[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#274142: SEGV: run "kq" in fullscreen mode, switch to a VC, killall kq



Josh Triplett wrote:
> I can no longer reproduce the X server segfault.  However, killing a
> fullscreen kq still leaves the X server in a broken state: it remains in the
> video resolution that kq set, and xrandr cannot change modes (but it does not
> complain or generate log messages either).  If I subsequently log out,
> returning to gdm, the display becomes severely corrupted, possibly due to the
> inability to restore the video mode.
>   

I partially reproduced the problem on a Radeon X300 and on a Intel
945GM, by killing enigma, xmoto or kq in fullscreen from a VT.

* On the Radeon (with the free driver), usually in 1400x1050, and
playing the fullscreen game in something like 800x600: I get the screen
back, apparently working fine. But the actual resolution is still
640x480 while the window manager (gnome/metacity) still thinks it is
1400x1050. xrandr also thinks it's 1400x1050. Forcing xrandr to
1400x1050 restore the right resolution.

So basically, everything looks fine except that xrandr and gnome are
confused, easily solved with xrandr. I never got any corruption on the
screen.

When killed, the game generates the following output in the terminal:
    X Error of failed request:  BadValue (integer parameter out of range
for operation)
      Major opcode of failed request:  135 (XFree86-VidModeExtension)
      Minor opcode of failed request:  10 (XF86VidModeSwitchToMode)
      Value in failed request:  0x3a00001
      Serial number of failed request:  48795
      Current serial number in output stream:  48800

I once got the following warning in dmesg when switching between VT and
X while the fullscreen game was running:
    [drm] Loading R300 Microcode
    Uhhuh. NMI received for unknown reason a0 on CPU 0.
    You have some hardware problem, likely on the PCI bus.
    Dazed and confused, but trying to continue
The system was still working fine...

* On the Intel, it is more fun. X runs in 1280x1024 and the fullscreen
game in 1024x768. First, switching to VT and back to X sometimes gives
1280x800 back with the fullscreen game in the top-left of the screen and
the WM on the right and at the bottom.
When killing the fullscreen game from a VT, I get the screen back
apparently working fine. The resolution is still 1280x800. But,
sometimes the window manager thinks it is 1024x768. So I have black on
the bottom and on the right of the screen. Additionally, xrandr only
remembers about 1280x1024, not about 1024x768. I have to restart X to
get all resolutions back in xrandr.
Also sometimes, it behaves as the Radeon...

So, it looks like something got broken in xrandr, probably related to
the Intel driver.

Also, I often loose control of the mouse. It comes back later when
switching between fullscreen game and the window manager.


So I can't confirm your exact bug, but at least I can confirm that there
are some problems :)
Brice




Reply to: