On 2011-09-07 11:02+0100 Andrew Ross wrote: > On Tue, Sep 06, 2011 at 10:41:27AM +0100, Andrew Ross wrote: >>> Not calling lt_dlexit at all seems wrong. After all one should tidy up. >>> If marking drivers as resident works then maybe we should do this for all >>> cases? What I have not yet tested is what happens if you call plend >>> the subsquently call plinit again (for example using an interactive >>> driver like octave). I need to check this before we decide on a solution. >> >> I've tried it with my patched Debian version (qt.so marked as resident, >> but still calling lt_dlexit() ) and it seems that repeated plinit / plend >> calls using the qt driver are ok, at least with octave. From this I >> think that marking all drivers as resident is unlikely to have serious >> side effects. > > I've gone ahead and commited the change to mark all drivers as resident. > > I've tested with octave and this finally cures the long standing crash > with the cairo driver when you repeatedly call plinit / do some plot / plend. > The problem in this case was different (reinitialising the library caused a > crash), but by not unloading the library we get round the problem. > > Based on this it seems a sensible thing to do, but please test to make sure > it doesn't break anything on other systems (particularly Windows) and other > drivers.
Hi Andrew: Thanks for working on this issue. I think the change you came up with is a good idea, and I also suspect it will sort out other cairo/plend issues reported on our list from time to time. I do have one question for clarification, however. Is marking all drivers resident the same as not calling lt_dlexit() at all, or are there additional things lt_dlexit does that continue despite all drivers being marked as resident? IOW, does valgrind produce different results between the two cases of not calling lt_dlexit versus calling it with all drivers resident? That question is just for clarification of what is going on. Even if valgrind gives the same results in the two cases, I still like your way of doing it because it adds more flexibility if it turns out one of our drivers does not like being declared resident. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); the Time Ephemerides project (timeephem.sf.net); PLplot scientific plotting software package (plplot.sf.net); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ Using storage to extend the benefits of virtualization and iSCSI Virtualization increases hardware utilization and delivers a new level of agility. Learn what those decisions are and how to modernize your storage and backup environments for virtualization. http://www.accelacomm.com/jaw/sfnl/114/51434361/ _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel