[olpc-software] XRes Improvements

Matthew Allum mallum at openedhand.com
Tue Mar 14 16:42:00 UTC 2006


Hi;

On Tue, 2006-03-14 at 16:04 +0000, Daniel P. Berrange wrote:
> 
> Absolutely this is useful :-) I've been working on this problem from a
> completely different technical angle. I created an LD_PRELOAD hack
> which intercepts the XCreatePixmap & XFreePixmap operations to log
> the timing & all parameters of these two calls, and at time of XFreePixmap
> call auto-dump it to a TIFF file. A little post-processing was used to
> generate HTML pages display all pixmaps at specific points in time,
> along with stack trace of the code allocating / freeing them.
> 

Beware, tracking like that also, like regular XRes, suffers from
ignoring window background pixmaps. I.e, code can do a;

pxm = XCreatePixmap(..)
XSetWindowBackgroundPixmap(win, pxm)
XFreePixmap(pxm);

But the pixmap is still allocated server side as the window background. 

> This extension to XRes is definitely a more pleasent way of capturing
> the list of active pixmaps, since it doesn't require changing the way
> an app runs before hand & thus much simpler for your typical user or 
> developer to use.  
> 

Another big advantage is you can run the test remotely with DISPLAY
pointing at your target device. 

I am wondering if it would be practical to further extend XRes as to
provide events when a client creates or frees a resource and avoid the
need for any LD_PRELOAD-isms. 

Many thanks;

  -- Matthew




More information about the olpc-software mailing list