Mark Wielaard 0106d3
diff --git a/glibc-2.X.supp.in b/glibc-2.X.supp.in
Mark Wielaard 0106d3
index 126e8b338..eeefa3935 100644
Mark Wielaard 0106d3
--- a/glibc-2.X.supp.in
Mark Wielaard 0106d3
+++ b/glibc-2.X.supp.in
Mark Wielaard 0106d3
@@ -248,3 +248,37 @@
Mark Wielaard 0106d3
    Memcheck:Cond
Mark Wielaard 0106d3
    fun:_dl_runtime_resolve_avx_slow
Mark Wielaard 0106d3
 }
Mark Wielaard 0106d3
+
Mark Wielaard 0106d3
+# The main thread dynamic thread vector, DTV, which contains pointers
Mark Wielaard 0106d3
+# to thread local variables, isn't freed.  There are a couple of call
Mark Wielaard 0106d3
+# patterns that can cause it to be extended.
Mark Wielaard 0106d3
+{
Mark Wielaard 0106d3
+  dtv-addr-tail
Mark Wielaard 0106d3
+  Memcheck:Leak
Mark Wielaard 0106d3
+  match-leak-kinds: possible,reachable
Mark Wielaard 0106d3
+  fun:malloc
Mark Wielaard 0106d3
+  fun:tls_get_addr_tail*
Mark Wielaard 0106d3
+  fun:__tls_get_addr
Mark Wielaard 0106d3
+}
Mark Wielaard 0106d3
+
Mark Wielaard 0106d3
+{
Mark Wielaard 0106d3
+  dtv-addr-resize
Mark Wielaard 0106d3
+  Memcheck:Leak
Mark Wielaard 0106d3
+  match-leak-kinds: possible,reachable
Mark Wielaard 0106d3
+  fun:malloc
Mark Wielaard 0106d3
+  fun:_dl_resize_dtv
Mark Wielaard 0106d3
+  fun:_dl_update_slotinfo
Mark Wielaard 0106d3
+  fun:update_get_addr
Mark Wielaard 0106d3
+  fun:__tls_get_addr
Mark Wielaard 0106d3
+}
Mark Wielaard 0106d3
+
Mark Wielaard 0106d3
+{
Mark Wielaard 0106d3
+  dtv-addr-init
Mark Wielaard 0106d3
+  Memcheck:Leak
Mark Wielaard 0106d3
+  match-leak-kinds: possible,reachable
Mark Wielaard 0106d3
+  fun:malloc
Mark Wielaard 0106d3
+  fun:allocate_dtv_entry
Mark Wielaard 0106d3
+  fun:allocate_and_init
Mark Wielaard 0106d3
+  fun:tls_get_addr_tail*
Mark Wielaard 0106d3
+  fun:__tls_get_addr
Mark Wielaard 0106d3
+}