Re: Periodic Fedora 9 system hangs with jumpy mouse

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

 



Deron Meranda wrote:
Steve, your observed Xorg behavior certainly sounds very much like mine.
It is quite frustrating.

It certainly is - I normally have to hard reset my machine once or twice a day, on average. Sounds like you do at least this?

I've been trying to minimize my use of Firefox (painful) and shutting
the app down when I'm not using it; and so far that seems to have
greatly reduced (but not eliminated) the frequency of my hanging.
But still, this almost has to be an interaction between the kernel and
Xorg.  I really wish I knew how to go about debugging the kernel
when it gets in this mode....even if it's just to identify "what" it is
doing.


I became aware of the firefox buffer memory flushing issue when running FF 3.0b5. However, it seems to behave itself very well now on my box, using FF3.0. Here is a link which I found useful in understanding that issue further: http://shaver.off.net/diary/2008/05/25/fsyncers-and-curveballs/

I suspected something was wrong by seeing a high CPU count for kcryptd, which is used to encrypt a hard disk if configured that way (incidentally, high kcryptd CPU was, in that case, a red herring).
First, to compare systems..  It looks like you're running with a 64-bit
kernel; I'm using a 32-bit 2-core processor.  Are you also running
with SMP (multiple CPU cores?).  Do a:   cat /proc/cpuinfo


I'm running on an AMD Turion TL-60.  Sounds like you have an intel?

# cat /proc/cpuinfo

processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 72
model name      : AMD Turion(tm) 64 X2 Mobile Technology TL-60
stepping        : 2
cpu MHz         : 800.000
cache size      : 512 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips        : 1599.46
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

processor       : 1
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 72
model name      : AMD Turion(tm) 64 X2 Mobile Technology TL-60
stepping        : 2
cpu MHz         : 800.000
cache size      : 512 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips        : 1599.46
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

My card is a Diamond Stealth ATI X1050; which is really a
vendor repackaging of an ATI RV350 AS [Radeon 9550],
an AGP version.  It also supposedly has this as its chipset:
"ATI Radeon 9600 AS (AGP)" (ChipID = 0x4153)

My card also has dual-head output capability (one DVI and
one VGA); but I'm only using the DVI output only.  I'm also
not using any of the 3-D stuff.

What does your card identify itself as?  Try doing:
  lspci
Also look in the Xorg.0.log file:
  grep -i chipset /var/log/Xorg.0.log


I'm using the Fedora open source Radeon driver. No 3D desktop effects, etc.. which I couldn't get working on this card without fglrx and downgrading X anyway. Hmm, that now sounds like a nice option. ;-)

# lspci

00:00.0 Host bridge: ATI Technologies Inc RS690 Host Bridge
00:01.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (Internal gfx)
00:04.0 PCI bridge: ATI Technologies Inc Unknown device 7914
00:05.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Port 1) 00:06.0 PCI bridge: ATI Technologies Inc RS690 PCI to PCI Bridge (PCI Express Port 2)
00:12.0 SATA controller: ATI Technologies Inc SB600 Non-Raid-5 SATA
00:13.0 USB Controller: ATI Technologies Inc SB600 USB (OHCI0)
00:13.1 USB Controller: ATI Technologies Inc SB600 USB (OHCI1)
00:13.2 USB Controller: ATI Technologies Inc SB600 USB (OHCI2)
00:13.3 USB Controller: ATI Technologies Inc SB600 USB (OHCI3)
00:13.4 USB Controller: ATI Technologies Inc SB600 USB (OHCI4)
00:13.5 USB Controller: ATI Technologies Inc SB600 USB Controller (EHCI)
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 14)
00:14.1 IDE interface: ATI Technologies Inc SB600 IDE
00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia
00:14.3 ISA bridge: ATI Technologies Inc SB600 PCI to LPC Bridge
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:05.0 VGA compatible controller: ATI Technologies Inc RS690M [Radeon X1200 Series]
02:04.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b6)
02:04.1 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 02) 10:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5787M Gigabit Ethernet PCI Express (rev 02) 30:00.0 Network controller: Broadcom Corporation BCM4312 802.11a/b/g (rev 02)

# grep -i chipset /var/log/Xorg.0.log
(II) RADEON: Driver for ATI Radeon chipsets:
(--) RADEON(0): Chipset: "ATI Radeon X1200" (ChipID = 0x791f)


On Tue, Jul 1, 2008 at 9:26 AM, Steve Dowe <steve.dowe@xxxxxxxxxxx> wrote:
The cause of this problem on my system seems to be when dragging
(resizing) a window.  X then seems to hang, the pointer gets jumpy

Although mine happens (usually) when I'm doing vertical scrolling,
they may be related.  In both cases there is usually a lot of bitmap
moving occurring, which may be a bitblit operation of some sort,
possibly involving 2D acceleration.


This is interesting. It seems, on my system, somewhat related to the speed at which I drag my mouse. If I drag nice and slowly when resizing a window, I (usually, I think) get away with it. If I drag hastily, it hangs. I was going to suggest some kind of timing issue, so it seems we might be homing in on something here.


I should also have added that the  mouse cursor image "sticks" to the
diagonal arrow - it doesn't become the normal arrow/pointer again.

This is probably to be expected.  I believe that the cursor/pointer
movement is "hardware" assisted; which means that it runs within
interrupt code and not in the main Xorg event loop.  Changing the
pointer graphic though must be done outside interrupts; and the Xorg
process appears to be stuck.

See if you see what I do:

$ grep -i cursor /var/log/Xorg.0.log
(II) RADEON(0): Using hardware cursor 0 (scanline 1202)
(II) RADEON(0): Using hardware cursor 1 (scanline 1204)


I get this:

# grep -i cursor /var/log/Xorg.0.log
(II) RADEON(0): Using hardware cursor 0 (scanline 1602)
(II) RADEON(0): Using hardware cursor 1 (scanline 1604)

Presumably this is influenced by the display dimensions and refresh rate?

I have just booted up in the debug kernel and managed to re-hang X in no
time at all, using the method described above... :-/

Hmmm. I should try that too.


Didn't help much when I did it..  :-D

I wonder if there are kernel flags set by the bootloader which can influence debugging level?

The only error message I can find, both in dmesg and messages, is this:

 kernel: ACPI Error (tbfadt-0453): 32/64X address mismatch in
"Pm2ControlBlock": [00008800] [0000000000008100], using 64X [20070126]

I don't know for sure, but this seems like a problem that would
only occur on a 64-bit system.  I only have a 32-bit system.

I don't know if this would be related to your Xorg hanging, but I
would have to guess that such an error would cause a process
(or the kernel) to be completely aborted/panic'd....not get
stuck in a 100% cpu loop.


Fair enough. I suppose also that as this error was detected and presumably correctly identified, it probably has a workaround in place.

Let's consider that item eliminated for now, then.

One thing we could try, is to pass options to the ATI driver
to disable certain features (perhaps like certain forms of
acceleration??).  You can do a "man radeon" to see the
options available.  Those would supposedly go into your
/etc/X11/xorg.conf file.   I don't have any good suggestions
on what to try though; and it's tedious to do the trial and
error thing.


man radeon - excellent intro doc to the driver. The first two options are of primary interest to me:

     Option "SWcursor" "boolean"
             Selects software cursor.  The default is off.

      Option "NoAccel" "boolean"
             Enables or disables all hardware acceleration.
             The default is to enable hardware acceleration.

I'm going to try with both of these options enabled in xorg.conf and see if I can hang the machine again. If so, perhaps we should look at the kernel.

Will get back to you.

Any kernel-savy people have any ideas of how to collect
more information about this?

--
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux