Bug 21782 - system freeze
Summary: system freeze
Status: RESOLVED INVALID
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: 7.4 (2008.09)
Hardware: x86 (IA32) Linux (All)
: high major
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-17 10:27 UTC by Kudret Güler
Modified: 2016-02-24 05:40 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Xorg log related to a second user (34.34 KB, application/x-trash)
2009-05-17 10:34 UTC, Kudret Güler
no flags Details

Description Kudret Güler 2009-05-17 10:27:17 UTC
Hi, 

Together with the Ubuntu jaunty upgrade i started using radeon driver. After that i started having system freeze. 

This happened once when I was switching users using Fast User Switch Applet 2.24.0. It also happened numerous times when I tried to run Googleearth application. Very small percentage of the times, googleearth manages to run though.

When freeze happens screen goes out of its way and pixels start changing colors slowly. This change stabilizes when colors reach white. Next time it happens, I'll try to update this bug whether I can reach to the consoles or not.

I am attaching Xorg.20.log.old which is most probably the log when freeze happened.

Thank you, Kudret//
Comment 1 Kudret Güler 2009-05-17 10:34:30 UTC
Created attachment 25941 [details]
Xorg log related to a second user
Comment 2 Alex Deucher 2010-10-19 17:20:11 UTC
is this still an issue with KMS or a newer version of the driver?
Comment 3 Holger Lenz 2010-12-06 11:26:53 UTC
Another user with the same problem:
SuSE 11.3 (Xorg 7.5_1.8.0) with ATI HD4650 AGP.
When selecting the radeon driver (no 3d acceleration!) the system (KDE) freezes within very few mouseclicks.
I'm back to fbdev now, since otherwise the box is unusable.
Hardware works fine under vista (even Furmark for hours), but I loathe to use that OS.
This is reproducible, so if there's anything I can do (logs, debug versions, etc), feel free to ask.
BR Holger
Comment 4 Alex Deucher 2010-12-06 11:43:49 UTC
Might be a duplicate of:
https://bugzilla.kernel.org/show_bug.cgi?id=19002
Comment 5 Holger Lenz 2010-12-06 12:06:16 UTC
(In reply to comment #4)
> Might be a duplicate of:
> https://bugzilla.kernel.org/show_bug.cgi?id=19002

Sure sounds like it. Is there anything I can do to verify that?
I.e. try with and without "nomodeset" or "radeon.agpmode=-1" ?

Should the driver be stable without AGP?
Comment 6 Alex Deucher 2010-12-06 12:09:38 UTC
Please try the patch I attached there.
Comment 7 Holger Lenz 2010-12-06 15:14:35 UTC
(In reply to comment #6)
> Please try the patch I attached there.

Sorry, second hunk of the patch does not work on my kernel (2.6.34.7-0.5-desktop) - it has a different version of r600.c.

In r600_ioctl_wait_idle, there is no reference to rdev->vram_scratch.ptr, but only the following code:

void r600_ioctl_wait_idle(struct radeon_device *rdev, struct radeon_bo *bo)
{
        /* r7xx hw bug.  write to HDP_DEBUG1 followed by fb read
         * rather than write to HDP_REG_COHERENCY_FLUSH_CNTL
         */
        if ((rdev->family >= CHIP_RV770) && (rdev->family <= CHIP_RV740)) {
                void __iomem *ptr = (void *)rdev->gart.table.vram.ptr;
                u32 tmp;

                WREG32(HDP_DEBUG1, 0);
                tmp = readl((void __iomem *)ptr);
        } else
                WREG32(R_005480_HDP_MEM_COHERENCY_FLUSH_CNTL, 0x1);
}
Comment 8 Alex Deucher 2010-12-06 20:59:05 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > Please try the patch I attached there.
> 
> Sorry, second hunk of the patch does not work on my kernel
> (2.6.34.7-0.5-desktop) - it has a different version of r600.c.
> 

Your distro does't seem to have ported over all the latest stable patches.

> In r600_ioctl_wait_idle, there is no reference to rdev->vram_scratch.ptr, but
> only the following code:

The patch that checks the scratch pointer may fix your issue.
> 
> void r600_ioctl_wait_idle(struct radeon_device *rdev, struct radeon_bo *bo)
> {
>         /* r7xx hw bug.  write to HDP_DEBUG1 followed by fb read
>          * rather than write to HDP_REG_COHERENCY_FLUSH_CNTL
>          */
>         if ((rdev->family >= CHIP_RV770) && (rdev->family <= CHIP_RV740)) {

For now, just add:
!(rdev->flags & RADEON_IS_AGP)
to the if clause.  E.g.,
	if ((rdev->family >= CHIP_RV770) && (rdev->family <= CHIP_RV740) &&
	    !(rdev->flags & RADEON_IS_AGP)) {



>                 void __iomem *ptr = (void *)rdev->gart.table.vram.ptr;
>                 u32 tmp;
> 
>                 WREG32(HDP_DEBUG1, 0);
>                 tmp = readl((void __iomem *)ptr);
>         } else
>                 WREG32(R_005480_HDP_MEM_COHERENCY_FLUSH_CNTL, 0x1);
> }
Comment 9 Holger Lenz 2010-12-06 22:57:33 UTC
Tried the part of the patch that checked for AGP as you said.
Did not improve things much, system still freezes within the first few windows I open. May have improved somewhat, but is hard to tell.
Is there a way to get the latest patches applied to the kernel I'm using?
BR
Comment 10 Alex Deucher 2010-12-07 07:08:55 UTC
(In reply to comment #9)
> Is there a way to get the latest patches applied to the kernel I'm using?

Easiest method is to try 2.6.37 kernels.  I'm not sure exactly which drm patches each distro kernel is carrying.
Comment 11 Holger Lenz 2010-12-07 15:28:13 UTC
Now using a 2.6.37 kernel.
Vanilla radeon driver (which checks the scratch pointer) still freezes the machine.
Patched driver seems stable (not much uptime yet), but 2D performance seems even worse than fbdev.
Running with nomodeset for historical reasons.
Comment 12 Alex Deucher 2010-12-07 15:31:37 UTC
(In reply to comment #11)
> Patched driver seems stable (not much uptime yet), but 2D performance seems
> even worse than fbdev.
> Running with nomodeset for historical reasons.

This patch only affects kms.  If you are forcing ums, you are seeing some other issue.
Comment 13 Holger Lenz 2010-12-07 15:37:22 UTC
(In reply to comment #12)
> This patch only affects kms.  If you are forcing ums, you are seeing some other
> issue.
Marginal improvement as a side effect ;-)
I'll see if the driver is stable as it is.
Maybe file a new bug against the unpatched driver in ums mode?
Comment 14 Alex Deucher 2010-12-07 15:47:52 UTC
(In reply to comment #13)
> Maybe file a new bug against the unpatched driver in ums mode?

Or we can make this bug about ums.  If you are using ums, you can try adding:
Option "BusType" "PCIE"
to the device section of your xorg.conf
Comment 15 Jerome Glisse 2010-12-08 07:11:41 UTC
Also i think we can say that we don't care about UMS (at least i don't)
Comment 16 Christopher M. Penalver 2016-02-24 05:40:14 UTC
Kudret Güler, Jaunty reached EOL as of October 23, 2010. For more on this, please see https://wiki.ubuntu.com/Releases .

If this is reproducible in a supported release, it will help immensely if you filed a new report with Ubuntu by ensuring you have the package xdiagnose installed, and that you click the Yes button for attaching additional debugging information running the following from a terminal:
ubuntu-bug xorg

Also, please feel free to subscribe me to it.

For more on why this is helpful, please see https://wiki.ubuntu.com/ReportingBugs.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.