Red Hat Bugzilla – Bug 63916
screensaver "Critical" completely freezes my laptop
Last modified: 2008-05-01 11:38:02 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.9) Gecko/20020408
Description of problem:
the screensaver "Critical" totally freezes my system when I start it from
Version-Release number of selected component (if applicable):
Steps to Reproduce:
2. choose the screensaver "Critical"
3. press the button "Demo"
Actual Results: the system freezes right away
Expected Results: the demo of a screensaver
I have an IBM Thinkpad T20 2647rr3 laptop.
with default installation of skipjack2 and all updates applied.
the default installation of my RH Linux is not stable since it has "Random
Screensaver" installed by default and when I leave laptop unattended it totally
freezes after some period of time.
so i had do disable my screensaver.
i just found out that the "Blaster" screensaver also freezes my laptop.
but it takes about 3 seconds to freeze the laptop as opposed to the "Critical"
screensaver which freezes the laptop immediately.
Same results on my Dual Pentium II 233 custom-built desktop with savage4 card.
Original code in critical does not initialize the starting coordinate used in
XDrawLine for each simulation which causes the immediate freeze. I have created
a patch that not only fixes that problem, but also a misallocation in memory [in
the case of sizeof (int) != sizeof (short)], writing an unused value to an
element beyond the end of allocated memory, and a memory leak growing with each
I have tested the patched code with extreme command parameter values for several
hours without lockup or increase in allocated memory.
Created attachment 55844 [details]
Patch for xscreensaver's critical
don't you think that this sould be considered an XFree4 bug and not an
xsreensaver bug ?
a computer is not supposed to freeze completely just because some program passed
wrong coordinates to XDrawLine function.
I agree with you, XFree has a bug that needs to be fixed. A server of any
kind should either report an error condition or handle it somehow without
crashing. I'm an X newbie, so I'll dig into the XFree86 source and write some
test programs for XDrawLine and come up with something to report.
However, even if XDrawLine was working properly; the xscreensaver code would
start off not looking quite the way the author intended, may crash when
compiled with short-sized ints, but definitely crash with the memory leak if
left running. So it still an xscreensaver bug.
Please try disabling 2D acceleration to see if that solves the problem.
Use Option "noaccel" in the device section of your config file. Report
back if that prevents the problem or not, and we can continue troubleshooting
Option "noaccel" solves the problem.
both screensavers (critical and blaster) work without freezing the computer.
the X Window System started to work noticeably slower without acceleration.
Sorry for the delay in responding. "noaccel" was just a test to see if
2D acceleration was causing the problem.
In order to fix the problem, and in the mean time find a better workaround
for you, here is what you can do:
Read the XF86Config manpage, and look for the options "XaaNoxxxxxx".
Comment out noaccel, and try the XaaNo options one at a time. This may take
quite some time to test, but is necessary in order to determine where the bug
is. Use only one XaaNo option at a time, and restart X and test the
screensavers which trigger this out. Even if you find one option that fixes
the problem, please continue through the full list one at a time.
Please report back which individual option or options solve the problem on
their own. Once you've done this, you'll have much faster video in the
mean time, we will be able to default the card to this configuration, and
we also can report the troubled code area to Tim Roberts, the Savage
driver maintainer <email@example.com>.
Oh, please attach your X server log file and config file to the report
using the link below as well, and the output of "lspci" and also "lspci -n".
Bill, you might want to check out the xscreensaver patch...
I tried all the XaaNoxxx one at a time and none of the options fixed the problem.
then I tried looking at multiple XaaNoxxxx options and finally found out two
options that eliminate the problem. these options are:
one should choose _both_ of these options in order to solve the problem.
this is also consistent with what firstname.lastname@example.org found out in the
source code of "Critical" screensaver.
Created attachment 61744 [details]
my X server configuration file
Created attachment 61745 [details]
X log file
Created attachment 61746 [details]
Created attachment 61747 [details]
"/sbin/lspci -n" output
"Critical" and "Blaster" seem to be working fine in the latest release of Limbo
so i am closing this bug