Bug 246421 - nv driver has redraw problems
Summary: nv driver has redraw problems
Status: RESOLVED FIXED
: 157581 (view as bug list)
Alias: None
Product: openSUSE 10.2
Classification: openSUSE
Component: X.Org (show other bugs)
Version: Final
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Lonni Friedman
QA Contact: Stefan Dirsch
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-02-16 18:25 UTC by Bernhard Walle
Modified: 2007-03-16 07:33 UTC (History)
4 users (show)

See Also:
Found By: Other
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
Screenshot (1.20 KB, image/png)
2007-02-16 18:38 UTC, Bernhard Walle
Details
Hardware information (855.31 KB, text/plain)
2007-02-16 18:39 UTC, Bernhard Walle
Details
xorg.conf (4.60 KB, text/plain)
2007-02-16 20:15 UTC, Bernhard Walle
Details
Xorg.0.log (46.48 KB, text/plain)
2007-02-16 20:17 UTC, Bernhard Walle
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernhard Walle 2007-02-16 18:25:02 UTC
The attached screenshot says all. This is just Firefox with the cursor moved back. Dragging window etc. which forces a redraw solves the problem. Of course, it doesn't depend on the windowmanager. Hardware information is also attached.
Comment 1 Bernhard Walle 2007-02-16 18:38:14 UTC
Created attachment 119723 [details]
Screenshot

Sorry, my computer crashed while 'hwinfo'. Maybe I shouldn't run two different X sessions with different drivers ...
Comment 2 Bernhard Walle 2007-02-16 18:39:07 UTC
Created attachment 119725 [details]
Hardware information
Comment 3 Stefan Dirsch 2007-02-16 19:39:35 UTC
Could you also attach /etc/X11/xorg.conf and /var/log/Xorg.0.log? Thanks.
Comment 4 Bernhard Walle 2007-02-16 20:15:29 UTC
Created attachment 119742 [details]
xorg.conf
Comment 5 Bernhard Walle 2007-02-16 20:17:10 UTC
Created attachment 119743 [details]
Xorg.0.log
Comment 7 Stefan Dirsch 2007-02-16 20:30:15 UTC
Configuration looks ok to me. Nothing obvious in logfile. Probably it's one of the accelerated function which is broken. Check with 

  Option "NoAccel"

in Section "Device" of your /etc/X11/xorg.conf if this is correct. If the problem no longer occurs with this option active it would be good to figure
out which XAA function is broken. Available options to disable these:

XaaNoCPUToScreenColorExpandFill
XaaNoColor8x8PatternFillRect
XaaNoColor8x8PatternFillTrap
XaaNoDashedBresenhamLine
XaaNoDashedTwoPointLine
XaaNoImageWriteRect
XaaNoMono8x8PatternFillRect
XaaNoMono8x8PatternFillTrap
XaaNoOffscreenPixmaps
XaaNoPixmapCache
XaaNoScanlineCPUToScreenColorExpandFill
XaaNoScanlineImageWriteRect
XaaNoScreenToScreenColorExpandFill
XaaNoScreenToScreenCopy
XaaNoSolidBresenhamLine
XaaNoSolidFillRect
XaaNoSolidFillTrap
XaaNoSolidHorVertLine
XaaNoSolidTwoPointLine

Begin with XaaNoOffscreenPixmaps, XaaNoPixmapCache, XaaNoScreenToScreenCopy,
XaaNoSolidFillRect.
Comment 8 Bernhard Walle 2007-02-19 09:56:18 UTC
It's XaaNoSolidFillRect.
Comment 9 Stefan Dirsch 2007-02-19 10:11:58 UTC
Thanks for testing! As expected, it's a function, which to disable, makes the driver pretty unusable.
Comment 10 Stefan Dirsch 2007-02-19 10:13:33 UTC
Model: "Micro-Star International GeForce 6200 TurboCache(TM)"
Vendor: pci 0x10de "nVidia Corporation"
Device: pci 0x0161 "GeForce 6200 TurboCache(TM)"
SubVendor: pci 0x1462 "Micro-Star International Co., Ltd."
SubDevice: pci 0x0271 
Comment 12 Matthias Hopf 2007-02-20 14:12:21 UTC
I remember we had this issue some time ago. AFAIR this couldn't be reproduced in-house at that time, and as the binary driver fixed the issue it was closed.

Adding Andy Ritger. Andy, is this a known issue to you?
Comment 13 Stefan Dirsch 2007-02-21 12:37:41 UTC
Adding Lonni to Cc as well.
Comment 14 Stefan Dirsch 2007-02-28 11:39:02 UTC
*** Bug 157581 has been marked as a duplicate of this bug. ***
Comment 15 Stefan Dirsch 2007-03-01 22:06:12 UTC
Lonni, can you reproduce this problem with any of your 6200 TC cards?
Comment 16 Lonni Friedman 2007-03-01 22:16:25 UTC
No, I cannot.  If you'd like me to look into this further, I'll need you to ship me the card(s) that exhibit this behavior.  thanks.
Comment 17 Stefan Dirsch 2007-03-02 03:41:45 UTC
Yes, would be fair. Any of the reporters, who volunteers to give his card to NVIDIA? I'll try to find a replacement for this time. Bernhard, Martin, Jiri?
Comment 18 Stefan Dirsch 2007-03-07 16:24:55 UTC
Lonni, I'll send you the card of Bernhard after testing it on another machine to verify that it doesn't depend on the machine.
Comment 19 Stefan Dirsch 2007-03-08 14:26:47 UTC
I could easily reproduce this issue (using firefox type something in a Novell Buzilla comment field and try to go back with cursor left --> result is the screenshot of comment #1) on openSUSE 10.3 Alpha with xserver 1.2.99.901 and nv driver 1.2.2.
Comment 20 Stefan Dirsch 2007-03-08 14:44:23 UTC
Indeed, the only XaaNo* option, which workarounds this issue - by making the driver pretty useless - is "XaaNoSolidFillRect".
Comment 21 Stefan Dirsch 2007-03-08 14:48:52 UTC
Lonni, could you give me an detailed adress (private email) where to send the card? Thanks.

Even more easier to reproduce this issue is 

  xinit /usr/bin/firefox http://www.opensuse.org

Type something into the search field and go back with cursor left.
Comment 22 Lonni Friedman 2007-03-08 15:56:34 UTC
Private email sent with shipping address.   thanks
Comment 23 Stefan Dirsch 2007-03-08 21:08:52 UTC
Thanks. I'll send the card to you ASAP.
Comment 24 Lonni Friedman 2007-03-15 17:41:36 UTC
I've received the graphics card and reproduced the problem.  Bug 298152 has been opened for this issue. 

thanks
Comment 25 Stefan Dirsch 2007-03-15 17:44:59 UTC
Sounds good. Thanks!
Comment 27 Stefan Dirsch 2007-03-16 07:24:44 UTC
To: xorg-commit@lists.freedesktop.org
Date: Thu, 15 Mar 2007 18:37:53 -0700 (PDT)
From: Aaron Plattner <aplattner@kemper.freedesktop.org>
Subject: xf86-video-nv: 2 commits - src/nv_driver.c src/nv_hw.c

 src/nv_driver.c |    2 ++
 src/nv_hw.c     |    1 +
 2 files changed, 3 insertions(+)

New commits:
diff-tree 90c53c5322e50bce06996e3c857e6bf7531235d4 (from
+9763b9dcef144f649ccbcfd302601769bc940ffb)
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Thu Mar 15 17:07:25 2007 -0700

    Fix GXxor corruption on nv4x.

    SUSE bug #246421.

diff --git a/src/nv_hw.c b/src/nv_hw.c
index 6232cd6..d7a0c19 100644
--- a/src/nv_hw.c
+++ b/src/nv_hw.c
@@ -1190,6 +1190,7 @@ void NVLoadStateExt (
               pNv->PGRAPH[0x008C/4] = 0x60de8051;
               pNv->PGRAPH[0x0090/4] = 0x00008000;
               pNv->PGRAPH[0x0610/4] = 0x00be3c5f;
+              pNv->PGRAPH[0x0bc4/4] |= 0x00008000;

               j = pNv->REGS[0x1540/4] & 0xff;
               if(j) {
Comment 28 Stefan Dirsch 2007-03-16 07:33:38 UTC
Fixed for STABLE/Factory. Check for xorg-x11-driver-video RPM changelog:

-------------------------------------------------------------------
Fri Mar 16 08:28:10 CET 2007 - sndirsch@suse.de

- xf86-video-nv-corruption-cursor.diff:
  * fix GXxor corruption on nv4x (Bug #246421)
  * Hide the cursor in CloseScreen. Otherwise, if we're restoring a
    graphical framebuffer mode the cursor will still be visible.