Fullscreen applications wrong behaviour

Bug #323619 reported by Denis Rut'kov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
xserver-xorg-video-nouveau (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Nouveau driver works fine in 2D mode except fullscreen applications handling.

It has two issues:

1) Application tries to start in fullscreen with resolution less than current desktop resolution (for example 800x600 application on 1280x1024 desktop). Instead of changing the resolution, application is launched in an ugly small area (not a window, more like 800x600 square) within desktop. Changing application settings helps to switch to normal fullscreen mode, but at startup this bug happens again.

2) You got the application to work in normal fullscreen mode as described above. When you exit this application your desktop (1280x1024) becomes trimmed to the application resolution (800x600). Moreover, it is not an X screen resizing - you cannot get to the desktop elements outside this area (800x600). Changing resolution back to normal is hard under these conditions.

These issues don't happen when I'm using nv driver.

When this bug is fixed the nouveau driver will be a great replacement for the ugly nv.

Revision history for this message
Chris Halse Rogers (raof) wrote :

Thanks for your bug report, and for helping to make the nouveau drivers better. We are not supporting the nouveau drivers in Ubuntu, but we can get the relevant information here and forward the bug to the nouveau project.

At least two things will be necessary: A copy of your /var/log/Xorg.0.log file from an X session where you have exhibited this bug, and (preferably) the name of an actual application with which you found this bug, so that others can easily duplicate.

Changed in xserver-xorg-video-nouveau:
status: New → Incomplete
Revision history for this message
Denis Rut'kov (dendron2000) wrote :

Ok, here is my xorg.conf.

This bug happened in almost all games I tested, which includes:
Lincity NG (slow)
SDL-BALL (sluggsih)
The Battle for Wesnoth (the easiest one to test as it offers a variety of video modes)
Secret Maryo Chronicles (sluggsih)
Pingus
Planet Penguin Racer (sluggish)

This bug does NOT happen in Teeworlds, but this one requires restart to change the in-game resolution. It runs very slow, too.

All applications above are open-source, so I hope this bug will be fixed soon.

Changed in xserver-xorg-video-nouveau:
status: Incomplete → New
Revision history for this message
Chris Halse Rogers (raof) wrote :

Thank you. Could you also include your /var/log/Xorg.0.log file? That's where all the interesting information is likely to be.

I'll see if I can reproduce this, then forward it upstream.

Note that it's expected that 3d apps will be sluggish; nouveau doesn't provide any 3d acceleration.

Revision history for this message
Denis Rut'kov (dendron2000) wrote :

Here you are.

I didn't expect 3d apps to be fast, but some of the games I listed don't seem to be 3d (although they may use OpenGL).

Revision history for this message
Denis Rut'kov (dendron2000) wrote :

Oh, here is an updated log. Here's what happened.

I launched 'Battle for Wesnoth' in fullscreen (800x600) and exited it. My native desktop resolution was 1280x1024@85, it got corrupted after exit. I launched 'xfce-setting-show' and reverted the corrupted resolution back to normal. I saw that something showed up in the log after that.

Revision history for this message
Chris Halse Rogers (raof) wrote :

I think this is fixed upstream already; a new snapshot should be ready soonish. I'll ask you to test again when it hits the archives.

Bryce Harrington (bryce)
Changed in xserver-xorg-video-nouveau (Ubuntu):
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
Denis Rut'kov (dendron2000) wrote :

Still not fixed.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (9.5 KiB)

This bug was fixed in the package xserver-xorg-video-nouveau - 1:0.0.10~git+20090327+f1907dc-0ubuntu1

---------------
xserver-xorg-video-nouveau (1:0.0.10~git+20090327+f1907dc-0ubuntu1) jaunty; urgency=low

  * New upstream snapshot. Standing FFe is (LP: #346621).
    - New snapshot fixes crash in NoAccel code path (LP: #345530)
    - New snapshot fixes incorrect resolution after exit from some
      fullscreen applications, such as Battle for Westnoth (LP: #323619)
    - f1907dc... nv50: add default modes to mode pool for LVDS panel
    - 7da6fdb... kms: fix bug which prevented getting edid from the kernel
    - f431e20... randr: fix crash when rotation requested
    - 36dedd0... kms: check for mm_enabled as an additional test for kms
      presence
    - a923bc1... nv50/xv: correct rendering to partically obscured windows
    - 01cee29... nv50: call NVSync() in CloseScreen() before restoring
      video mode
    - aa7c037... kms: implement AdjustFrame, should fix crash in fdo#24236
    - 61879b8... kms: drm_mode_modeinfo struct changed names at some point
    - 79306fc... dri: fail harder
    - da1ba93... device close doesn't belong in DRI close, can have DRM
      without DRI
    - 56b11c7... Fix mouse cursor disappearing when near top/left edge of
      screen.
    - 4067ab4... another ppc fix
    - 862dba8... more ppc..
    - 3063486... fix ppc build
    - d80fe78... Fix nouveau_hw_decode_pll on NV30/35.
    - 62aa81d... Some laptop mode finding fixes resulting from rh#487456
    - aa6edfa... randr12: name VGA CRTC fields
    - 7b7c44c... randr12: rename reg state members to follow reg names
    - 4ae6c22... randr12: name some FP flags, move some unrelated stuff
      out from nvreg.h
    - b50b49f... pre-nv50: use nvidia's names for PRAMDAC regs where known
    - a9df304... pre-nv50: use nvidia's names for PCRTC regs where known
    - 2c0710d... Separate maximum limits for encoder devices and i2c
      records, DCB_ prefixes
    - 0db27a6... Add DCB 1.5 entry from a GeForce2 Go reported by Martin
      Ketzer on the ML
    - 3e7fa97... dri: pass object handle instead of offset if using real mm
    - 88efe40... dri2: initial implementation, only with driver pixmaps
    - 675126e... kms: support framebuffer resize if driver pixmaps enabled
    - 8b354b9... kms: copy old fb to new fb on modeset
    - 6658403... Call NVEnterVT from NVScreenInit rather than duplicating it.
    - f59fef1... exa: fix multiple prepare/finish_access on a pixmap
    - 75a1c41... Wrap bios endian casting
    - 3666d73... Switch to using pll_vals struct for passing pll stuff around
    - a3dbc06... randr12: cull old unused pll code
    - 71c821b... Don't pointlessly overallocate cursor storage
    - 7284c07... randr12: nv10 hw cursor fixes/changes
    - bcc3a14... randr12: use nv0x cursor colour expansion funcs on later
      cards, unify argb paths
    - b21c807... randr12: store nv0x hw cursor image in VRAM
    - 3ea4b19... Kill pre-randr12 hwcursor code, and tidy randr12 hwcursor code
    - b988160... Remove calls to load ddc and i2c modules -- they're
      built-in since server 1.3
    - d5893ec... Hack around missing display table in rdivacky's GeForce
    ...

Read more...

Changed in xserver-xorg-video-nouveau:
status: Confirmed → Fix Released
Revision history for this message
Denis Rut'kov (dendron2000) wrote :

No, unfortunately it's not fixed.

Changed in xserver-xorg-video-nouveau:
status: Fix Released → Confirmed
Revision history for this message
Denis Rut'kov (dendron2000) wrote :
Revision history for this message
Denis Rut'kov (dendron2000) wrote :

This is a part of the previous log after launching and exiting Wesnoth in 800x600 fullscreen mode. The desktop has a 1024x768 resolution.

After exiting Wesnoth the actual view area shows only small part of the desktop. It is also not scrollable like in case of "normal" xorg small view area on a large screen. XrandR reports the resolution used is 1024 x 768.

Revision history for this message
Denis Rut'kov (dendron2000) wrote :
Revision history for this message
Chris Halse Rogers (raof) wrote :

Darn. I was sure I couldn't reproduce this with the new snapshot. I'll try again, and press the 'upstream' button...

Revision history for this message
Denis Rut'kov (dendron2000) wrote :

Actually, since the last driver version things changed a bit, I just didn't fully realize that. The resolution and the refresh rate are restored correctly now, but the screen is mispositioned (it shows only lower part of the desktop). When I switch to VT (alt+F1) and back to X - the screen position becomes correct. I hope this will help to hunt the bug.

Revision history for this message
Bryce Harrington (bryce) wrote :

We've uploaded a new -nouveau to Lucid which should no longer be experiencing this problem.

Changed in xserver-xorg-video-nouveau (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Denis Rut'kov (dendron2000) wrote :

Yes, it's true, thank you.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.