Bug 150146

Summary: Updating new radeon memory map fixes by Benjamin Herrenschmidt once more?
Product: [openSUSE] SUSE Linux 10.1 Reporter: Stefan Dirsch <sndirsch>
Component: X.OrgAssignee: Stefan Dirsch <sndirsch>
Status: RESOLVED FIXED QA Contact: Stefan Dirsch <sndirsch>
Severity: Critical    
Priority: P5 - None CC: aj, behlert, dmueller, eich, evan_ochs, forgotten_OS1JNCFbCX, gchristensen, j.glisse, marc.ruehrschneck, suse-beta, wwlinuxengineering
Version: Beta 3.5internal   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: xorg-x11-driver-video-6.9.0-16.i586.rpm
xorg-x11-driver-video-6.9.0-16.x86_64.rpm
Another important patch
New RPM, which includes also patch from comment #8
New RPM, which includes also patch from comment #8

Description Stefan Dirsch 2006-02-11 10:42:20 UTC
I wonder whether we should try to update to the new radeon driver fixes by Benjamin Herrenschmidt once more? Looks like the vt switch crashes of

  http://gate.crashing.org/~benh/radeon-memmap-7.0-2.diff

have been fixed.

Against "radeon-memmap-7.0-2.diff" Kevin Shanahan reported:

http://lists.freedesktop.org/archives/xorg/2006-January/012594.html
[...]
However, with this version the server crashes when I switch to a VT and back again. Log with backtrace attached. Otherwise it works well, including DRI / 3D apps.

Against radeon-memmap-7.0-3.diff Kevin Shanahan reported:

http://lists.freedesktop.org/archives/xorg/2006-February/012868.html
[...]
All seems good. No regressions on my Radeon Mobility M6 LY and Radeon
64MB DDR (7200). VT switch problems from #2 now fixed. Radeon 9800 Pro
still locks up with 3D, but that's not a regression.
Comment 1 Stefan Dirsch 2006-02-11 10:46:00 UTC
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Discuss issues related to the xorg tree <xorg@lists.freedesktop.org>
Date: Fri, 10 Feb 2006 18:12:24 +1100
Cc: dri-devel@lists.sourceforge.net
Subject: [PATCH] new radeon memory map fixes (#3)

Here's a 3rd set of patches. Please report regressions ASAP as I intend
to merge those in the various CVS trees real soon now.

I fixed a couple of possible segfaults I found due to initialisation
issues (places relying on pScrn->pScreen from within ScreenInit() and
incorrect ordering of colormap vs. cursor inits for example).

Also, I fixed a potential issue in the DRM with machines where AGP
writeback doesn't work (we would still rely on AGP writeback for the
ring read ptr instead of reading it from a register).

Patches are at:

Xorg driver patch:
http://gate.crashing.org/~benh/radeon-memmap-7.0-3.diff

DRM patch:
http://gate.crashing.org/~benh/radeon-memmap-drm-4.diff

Cheers,
Ben.
Comment 2 Stefan Dirsch 2006-02-11 11:03:10 UTC
Created attachment 67755 [details]
xorg-x11-driver-video-6.9.0-16.i586.rpm
Comment 3 Stefan Dirsch 2006-02-11 11:04:31 UTC
Created attachment 67756 [details]
xorg-x11-driver-video-6.9.0-16.x86_64.rpm
Comment 4 Stefan Dirsch 2006-02-11 11:06:07 UTC
Pleast test the new driver, especially if it fixes the vt switch crash issue!
Comment 6 Joe Harmon 2006-02-14 16:49:06 UTC
I have a new Dell D610 with the ATI Radeon X300 gfx chipset. I ran into issues on with the display as well. I backreved my driver to the one that is listed in comment #2 and it worked for that laptop.
Comment 7 Matthias Hopf 2006-02-15 14:06:28 UTC
backreved? The driver in comment #2 is the newest available...
Comment 8 Stefan Dirsch 2006-02-16 11:01:17 UTC
Created attachment 68790 [details]
Another important patch

To: xorg-commit@lists.freedesktop.org
From: Benjamin Herrenschmidt <xorg-commit@cvs.freedesktop.org>
Date: Wed, 15 Feb 2006 15:36:55 -0800 (PST)
Subject: CVS Update: driver (branch: trunk)

CVSROOT:        /cvs/xorg
Module name:    driver
Changes by:     benh@gabe.freedesktop.org       06/02/15 15:36:55

Log message:
  2006-02-16  Benjamin Herrenschmidt  <benh@kernel.crashing.org>

          * src/radeon_accel.c: (RADEONEngineRestore):
          The engine setup would trigger a bogus line write before the proper
          addresses are setup, thus causing the card to try to bus master over
          the system bus to some stale location (usually 0 but could depend on
          whatever was used before X). Remove that useless init bit, and always
          setup some good enough engine source & destination pointers in case we
          have some other spurrious engine activity going on.

Modified files:
      driver/xf86-video-ati/:
        ChangeLog
      driver/xf86-video-ati/src/:
        radeon_accel.c

  Revision      Changes    Path
  1.21          +10 -0     driver/xf86-video-ati/ChangeLog
  http://cvs.freedesktop.org/xorg/driver/xf86-video-ati/ChangeLog
  1.23          +8 -10     driver/xf86-video-ati/src/radeon_accel.c
  http://cvs.freedesktop.org/xorg/driver/xf86-video-ati/src/radeon_accel.c
Comment 9 Stefan Dirsch 2006-02-16 11:05:19 UTC
Created attachment 68792 [details]
New RPM, which includes also patch from comment #8
Comment 10 Stefan Dirsch 2006-02-16 11:05:51 UTC
Created attachment 68793 [details]
New RPM, which includes also patch from comment #8
Comment 11 Stefan Dirsch 2006-02-16 11:24:42 UTC
Adding all CC's of Bug #127757 to Cc in the hope to receive some more feedback ...
Comment 12 Dirk Mueller 2006-02-16 11:30:16 UTC
the new one is better, the one before crashed with SIGSEGV when swcursor is on
Comment 13 Peter Bowen 2006-02-16 14:13:47 UTC
I have been running xorg-x11-driver-video-6.9.0-10 for about a week without any issues, so I haven't been following new fixes.  For the record, I'm running a ThinkPad T41p with a FireGL Mobility T2.
Comment 14 Stefan Dirsch 2006-02-16 14:19:12 UTC
What's the latest changelog entry for xorg-x11-driver-video-6.9.0-10? Anyway it would be helpful for us to test this new RPM as well.
Comment 15 Forgotten User ZhJd0F0L3x 2006-02-16 15:14:33 UTC
* Do Feb 16 2006 - sndirsch@suse.de
- radeon-memmap-7.0-3.diff:
  * obsoletes p_radeon-memmap.diff/p_radeon-memmap-fix.diff
  (Bug #150146)

works fine on a machine that crashed before reliably on every console switch.
(yes, i have changed radeonold back to radeon :)
Comment 16 Stefan Dirsch 2006-02-16 17:46:37 UTC
seife finally convinced me. Submitted for STABLE now.
Comment 17 Stefan Dirsch 2006-02-17 07:26:35 UTC
BTW, Benjamin finally submitted this patch now also for X.Org CVS.

CVSROOT:        /cvs/xorg
Module name:    driver
Changes by:     benh@gabe.freedesktop.org       06/02/16 15:27:44

Log message:
  2006-02-17  Benjamin Herrenschmidt  <benh@kernel.crashing.org>
        [...]
         Memory map and misc fixes. This completely reworks the way the driver
         detects available & accessible video memory and initializes the card
         internal memory map. Along the way, I re-ordered some of the stuffs
         in pre-init in order to remove some dodgy codepath, fixed various
         init, exit and vt switch issues, and overall made the driver more
         robust. The full memory map fix requires an updated DRM. The X driver
         no longer tries to position the AGP aperture, this becomes entirely
         DRM responsibility.