From: Mathieu Desnoyers Date: Thu, 18 Dec 2014 01:45:22 +0000 (-0500) Subject: Refactor sessiond main/cleanup/ht-cleanup X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=4a15001e426da818990dc21f1d423fd04b6cd492;hp=4a15001e426da818990dc21f1d423fd04b6cd492;p=lttng-tools.git Refactor sessiond main/cleanup/ht-cleanup Main reason for this entire patchset: move teardown of ht-cleanup thread _after_ the sessiond cleanup which needs to destroy hash tables. This fixes leaks at sessiond teardown that makes the valgrind output hard to use. As this has been done, various other issues with error handling, leaks, and symmetry of allocation and teardown have been fixed, which makes this a refactoring. - Enforce symmetry between allocation and teardown, - Handle all errors, - Return all errors as EXIT_FAILURE, - Standardize on zero being success, nonzero being error, (rather than < 0 being error), - Fix pthread PERROR: we need to store ret into errno before calling PERROR, since pthread API does not set errno, - Join errors now fall-through, rather than rely on the OS to teardown the rest. Signed-off-by: Mathieu Desnoyers Signed-off-by: Jérémie Galarneau ---