On Mon, 19 Dec 2011 11:56:27 +0200 Pekka Paalanen <ppaala...@gmail.com> wrote:
> Hi Kristian, > > I've been playing a lot with Valgrind the last week, and here are some > results. This patch set adds destructors to toytoolkit so we > explicitly release memory we allocate. To actually Valgrind that, I > added an exit key binding to resizor and used that, since resizor is > possibly the simplest toytoolkit application. > > The difference in the Valgrind reports between "resizor: add exit key > and cleanups" commit and dtors-v2 is: > > vvv LEAK SUMMARY: > -vvv definitely lost: 1,680 bytes in 12 blocks > -vvv indirectly lost: 203,688 bytes in 129 blocks > +vvv definitely lost: 192 bytes in 1 blocks > +vvv indirectly lost: 0 bytes in 0 blocks > vvv possibly lost: 0 bytes in 0 blocks > -vvv still reachable: 7,091 bytes in 17 blocks > -vvv suppressed: 1,223,269 bytes in 30,857 blocks > +vvv still reachable: 2,267 bytes in 8 blocks > +vvv suppressed: 1,187,441 bytes in 30,798 blocks > vvv > -vvv ERROR SUMMARY: 12 errors from 12 contexts (suppressed: 22369 > from 189) +vvv ERROR SUMMARY: 1 errors from 1 contexts (suppressed: > 44292 from 190) > > Lots of custom suppressions were used to catch leaks and errors in > Mesa, libxkbcommon, cairo, glib, gdk, and pixman. > > In addition, I first ran the simple clients with Valgrind and fixed > everything I could. simple-shm is totally Valgrind-clean now, and the > only Valgrind reports on simple-egl are from Mesa. > > The following changes since commit > 7bb92f0c0309d7487c5275b4171ed28bfacd96ac: > > Activate toplevel fullscreen and menu surfaces (2011-12-15 11:31:51 > -0500) > > are available in the git repository at: > git://git.collabora.co.uk/git/user/pq/wayland-demos.git dtors-v2 Hi, there's a rebased version of this branch as dtors-v3. I've also been working on plugging leaks in the compositor, especially compositor-x11, but that work is still unfinished. It is available in a throwaway branch called dtors-wip, in case someone really wants to work on it before I come back. I'm leaving for winter holidays and will be back in the beginning of January. Happy New Year! - pq > > Pekka Paalanen (13): > simple clients: add signal handler for clean exit > simple-shm: implement destructors > simple-egl: implement destructors > simple clients: flush before destroying wl_display > window: add display_exit() > window: add display_destroy() > resizor: add exit key and cleanups > window: remove unused struct members > window: destroy window surfaces and title > window: destroy outputs on display_destroy() > window: destroy misc objects on display_destroy() > window: destroy all inputs on display_destroy() > window: destroy surfaces on display_destroy() > > clients/resizor.c | 44 +++++++++-- > clients/simple-egl.c | 63 ++++++++++++++-- > clients/simple-shm.c | 62 ++++++++++++++-- > clients/window.c | 198 > ++++++++++++++++++++++++++++++++++++++++++++----- > clients/window.h | 6 ++ 5 files changed, 331 insertions(+), 42 > deletions(-) > > > Thanks, > pq _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel