extra tests: Run OCaml tests under valgrind.
authorRichard W.M. Jones <rjones@redhat.com>
Tue, 29 Nov 2011 12:52:15 +0000 (12:52 +0000)
committerRichard W.M. Jones <rjones@redhat.com>
Fri, 2 Dec 2011 08:33:40 +0000 (08:33 +0000)
(cherry picked from commit aa4eb4cd109dda0dc7dfdd66a5163a18b0be2277)

extratests/Makefile.am
extratests/suppressions

index 9aba6db..9b4e27c 100644 (file)
@@ -42,7 +42,11 @@ GUESTS = $(shell virsh -c $(LIBVIRT_DEFAULT_URI) list --all | \
                 tail -n +3 | \
                 awk '{print $$2}')
 
-extra-tests: test-tools-null test-tools-internal test-tools-real
+extra-tests: \
+       test-tools-null \
+       test-tools-internal \
+       test-tools-real \
+       test-ocaml
 
 # Null invocations of the basic tools shouldn't leak memory.
 test-tools-null:
@@ -91,7 +95,6 @@ test-tools-real:
          if [ $$r -ne 0 ]; then exit $$r; fi; \
        done
 
-
 # XXX Not tested:
 # ../clone/virt-sysprep
 # ../edit/virt-edit
@@ -101,3 +104,7 @@ test-tools-real:
 # ../sparsify/virt-sparsify (OCaml)
 # ../tools/virt-win-reg (Perl)
 # ../tools/virt-make-fs (Perl)
+
+# Test OCaml bindings under valgrind.
+test-ocaml:
+       $(MAKE) -C ../ocaml VG="$(VG)" check
index c573854..97d4b78 100644 (file)
    fun:calloc
    obj:/usr/lib/libnl.so.1.1
 }
+
+# OCaml, by design, doesn't bother to free the major heap before
+# calling exit.  Ignore that leak.
+{
+   ocaml_heap_leak
+   Memcheck:Leak
+   ...
+   fun:caml_alloc_for_heap
+}
+# On the other hand, these seem to be a real bugs in OCaml:
+{
+   ocaml_heap_leak_2
+   Memcheck:Leak
+   fun:malloc
+   fun:caml_thread_new_descriptor
+   fun:caml_thread_new
+}
+{
+   ocaml_heap_leak_3
+   Memcheck:Leak
+   fun:malloc
+   fun:caml_thread_new_descriptor
+   fun:caml_thread_initialize
+}
+{
+   ocaml_heap_leak_4
+   Memcheck:Leak
+   ...
+   fun:pthread_create*
+   ...
+   fun:caml_thread_new
+}