On Sun, Aug 01, 2010 at 03:02:22PM -0400, Ryan Flannery wrote:
> Hello misc,
> 
> I have a small X application I use on my laptop that behaves buggy
> after some suspend+resumes.  Detailed description below, but first...
> 
> HOLY HELL thank you to all the devs who made suspend+resume work!  I
> had almost forgotten what it was like to suspend+walk-to-work+resume
> and be on my way.  Thank you again.
> 
> The application is a small, horizontal stats display-er.   After most
> suspend+resume's it continues to work fine.  It always works fine
> after the first resume.  After 3-5 resume's, there's a ~50% chance the
> display goes "buggy" (details below).  In trying to resolve the
> problem, I am curious about the following:
> 
> 1. Initially, I tried to catch a resume thinking a SIGCONT would be
> issued, and manually clear the display and re-draw.  This doesn't
> appear to happen.  Out of curiosity, on a resume is any signal issued
> to each process?   man'ing and Googling haven't helped.  Digging
> through src/sys/kern/* is rewarding, but so far no help.  It seemed
> like a SIGCONT would be appropriate, but am I correct in that this is
> not the case?
> 
> 2. Should my application have to do anything specific on a resume?  Of
> course this depends on the application, but regarding the X display,
> it doesn't immediately appear to me that my application should have to
> do anything.
> 
> My app is using rudimentary double-buffering: backbuffer is a Pixmap
> that's painted black on each call (XFillRectangle), the graphics are
> drawn, and then XCopyArea'd to the window.  When it goes "buggy", it
> appears some of the backbuffer isn't being cleared, or it's being
> copied at an offset into the window.
> 
> The normal display looks like this:
> http://ryanflannery.net/hacking/xstatbar/barshot.png
> 
> The buggy display looks like this:
> http://ryanflannery.net/hacking/xstatbar/xstatbar-bad.png
> 
> The current code is here, if curious:
> http://ryanflannery.net/hacking/xstatbar/files/xstatbar-current.tar.gz
> 
> You can see where the CPU graphs are duplicated, and the green
> overflows the display.
> 
> Thanks in advance for any help, and thanks to the devs again for 
> suspend+resume!

This would be an X/kernel bug. I have a couple of theories and am
looking into it. Depending on work commitments expect something in a day
or three.

Ta,
-0-
-- 
Nearly all men can stand adversity, but
if you want to test a man's character, give him power.
                -- Abraham Lincoln

Reply via email to