On 2017-07-22 22:47+0100 Phil Rosenberg wrote:
Attached is a new patch series in a tarball. I don't see a huge need to keep two separate branches any more. In fact I just tried to disentangle my latest few commits into two branches using git rebase -i and endured a whole world of pain.
Hi Phil: Thanks very much for this third version of your exception handler private topic branch. It does sound like you prefer to keep your development environment simpler (at least for now) with just one branch so I will take that approach as well. After unpacking the tarball here in ~irwin/Phil.Rosenberg/20170722/exception_handler/ I did the following: # Create up-to-date master branch git checkout master git fetch git merge --ff-only origin/master # create new private topic branch from that branch git checkout -b exception_handler3 # Apply _all_ your commits to that branch cat ~irwin/Phil.Rosenberg/20170722/exception_handler/*.patch |git am The result here of that last command was the following: Applying: Added functions that will record memory allocations in the PLStream Applying: Part way through plmalloc implementation Applying: Removed plinitializememorylist and plfreeall calls Applying: Fix issue with growing memorylist Applying: Added missing ; Applying: Added Memory allocation function declarations to plplotP.h Applying: Added some further memory management functions and check for PLStream memory /home/software/plplot/HEAD/plplot.git/.git/rebase-apply/patch:104: trailing whitespace.//Cause a pointer to no longer be managed by plplot, warning: 1 line adds whitespace errors.
Applying: Fixed some problems with memory management and performed style update. /home/software/plplot/HEAD/plplot.git/.git/rebase-apply/patch:98: trailing whitespace. warning: 1 line adds whitespace errors. Applying: moved memory management functions from plstrm.h to plplotP.h removing duplicate definitions. Applying: Removed c_usplparseopts function, which was pollution from another branch Applying: Removed use of plmalloc and plfree from plcont.c. This was pollution from another branch. Applying: Added Exception handling macros/functions/variables Applying: Add some test code for exception handling Applying: Fixed PLENDTRY/PLTHROW bug Applying: Remove plexit calls from advancejumpbuffer and plinitialisememorylist Applying: Added some comments around PLTRY, PLCATCH and PLENDTRY Applying: Free memory from jumpbuffer stack in plend1 Applying: Added PLTRY blocks to all the api functions in core.c Applying: Added use of plmalloc to the contour code. Applying: Restyle only So all your commits applied cleanly on this fresh and up-to-date topic branch aside from some extremely minor trailing whitespace issues which should be easy for me to fix (but I won't do that yet) after the fact by running the (Unix-tools-only) scripts/remove_trailing_whitespace.sh. I tested that branch by setting the environment variable CFLAGS='-g' (to generate line-number information in valgrind reports), making a fresh configuration of PLplot with the -DVALGRIND_ALL_TESTS=ON cmake option, and running make VERBOSE=1 test_c_psc >& test_c_psc.out Unlike my original good benchmark with this test, the result for this branch was not clean, i.e. test_c_psc.out (collected in the attached tarball) ends with an actual valgrind error for example 14. For historical reasons examples 14, 17, and 29 are done last so because of this error for example 14, examples 17 and 29 were not executed, but all the rest of our standard examples from 00 to 33 (except for 32 which we historically do not test because it has not been propagated to languages other than C so there is no interesting basis of comparison) were run and returned success (a 0 exit code). However, the commands software@raven> grep -L "0 errors from 0 contexts" examples/valgrind.x??c.psc.log examples/valgrind.x11c.psc.log examples/valgrind.x14c.psc.log examples/valgrind.x21c.psc.log software@raven> grep -L "no leaks are possible" examples/valgrind.x??c.psc.log examples/valgrind.x14c.psc.log demostrate there are imperfect valgrind results for examples 11, 14, and 21 and actually looking at those three files (also collected in the attached tarball) show those errors are quite serious in nature, e.g., the initial trouble for all three is an invalid write which is normally quite bad. Furthermore, for example 14 that initial error compounded so badly that valgrind itself exited with an error message (and non-zero exit code). I hope these collected valgrind reports with exact source code line numbers will help you debug all these issues so we can get back to perfect valgrind reports for the next iteration. This is already long enough with an attachment for you to respond to as well so I will place my further response to your additional remarks in a separate e-mail. 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 __________________________
exception_handler_report.tar.gz
Description: tarball of error report and valgrind log files concerning your third version of
------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel