# Full list is tracked through meta bug 793882 #################################### # Leaks in third party libraries # #################################### { Bug 793537 Memcheck:Leak ... obj:/usr/lib64/libpango-1.0.so.0.2800.1 ... } { Bug 793598 Memcheck:Leak ... obj:/lib64/libdbus-1.so.3.4.0 ... } { Bug 793600 Memcheck:Leak fun:realloc obj:/usr/lib64/libfontconfig.so.1.4.4 ... fun:FcDefaultSubstitute fun:_ZN17gfxPangoFontGroup11MakeFontSetEP14_PangoLanguagedP9nsAutoRefI10_FcPatternE ... } # Fontconfig is going fancy with its cache structure and that confuses valgrind. # https://bugs.freedesktop.org/show_bug.cgi?id=8215 # https://bugs.freedesktop.org/show_bug.cgi?id=8428 { Bug 1187649 Memcheck:Leak match-leak-kinds: definite fun:realloc fun:FcPatternObjectInsertElt ... } # With older versions of fontconfig (e.g. 2.8.0 on taskcluster systems), # there's an uninitialized memory usage and leak when loading app fonts. { Bug 1231701 Memcheck:Param write(buf) ... fun:FcDirCacheWrite fun:FcDirCacheScan fun:FcConfigAddDirList fun:FcConfigAppFontAddDir ... } { Bug 1231701 Memcheck:Leak match-leak-kinds: definite fun:malloc fun:FcDirScanConfig fun:FcDirCacheScan fun:FcConfigAddDirList fun:FcConfigAppFontAddDir ... } # Leaks due to either Gtk+3 or cairo, but Gecko is not directly involved with # those cairo interactions. One suspected cause is Gecko not closing the # display to work around a bug in old Gtk+3 versions. See also bug 1228724. { Bug 1187649 Memcheck:Leak match-leak-kinds: definite fun:malloc fun:_cairo_freelist_alloc fun:_cairo_xlib_display_queue_resource fun:_cairo_xlib_surface_finish ... } # The following leak is deep in Gtk+3, and it doesn't seem we're doing # anything wrong on our end with the container objects. This suppression # is purposefully verbose so as to avoid catching actual leaks due to # Gecko code. # Note: valgrind doesn't support more than 24 elements in a suppression stack. { Bug 1187649 Memcheck:Leak match-leak-kinds: definite fun:malloc fun:g_malloc fun:g_slice_alloc fun:g_list_prepend fun:gtk_combo_box_get_path_for_child fun:gtk_container_get_path_for_child fun:gtk_widget_get_path fun:_gtk_widget_update_path fun:reset_style_recurse fun:gtk_widget_reset_style fun:gtk_widget_set_parent fun:gtk_combo_box_add fun:g_cclosure_marshal_VOID__OBJECTv fun:_g_closure_invoke_va fun:g_signal_emit_valist fun:g_signal_emit fun:gtk_combo_box_constructor fun:g_object_newv fun:g_object_new_valist fun:g_object_new ... } # set_color() in gtkstyle.c of GTK version 3.4.4 only can leak GdkRGBA # allocations when the theme has transparent colors: # https://git.gnome.org/browse/gtk+/tree/gtk/deprecated/gtkstyle.c?h=3.4.4#n676 { Bug 1250704 Memcheck:Leak match-leak-kinds: definite fun:malloc fun:g_malloc fun:g_slice_alloc fun:g_slice_copy fun:boxed_proxy_lcopy_value fun:gtk_style_context_get_valist fun:gtk_style_context_get fun:set_color fun:gtk_style_update_from_context fun:gtk_style_constructed fun:g_object_newv fun:g_object_new_valist fun:g_object_new ... } { Bug 794366 Memcheck:Leak ... obj:/usr/lib64/libgtk-x11-2.0.so.0.1800.9 ... } { Bug 794368 Memcheck:Leak ... obj:/usr/lib64/libXrandr.so.2.2.0 ... } { Bug 794373 Memcheck:Leak ... obj:/lib64/libgobject-2.0.so.0.2200.5 ... } { Bug 966673 Memcheck:Leak fun:malloc obj:/lib64/libresolv-2.12.so ... fun:gaih_inet fun:getaddrinfo fun:PR_GetAddrInfoByName ... } { Bug 979242 Memcheck:Leak fun:calloc fun:xcb_connect_to_fd fun:xcb_connect_to_display_with_auth_info fun:_XConnectXCB fun:XOpenDisplay fun:gdk_display_open ... } ################################### # Leaks in short lived precesses # ################################### { Bug 984196 Memcheck:Leak ... fun:glxtest ... } ######################################### # Uninitialised value false positives # ######################################### # This concerns a false positive pertaining to Memcheck's overly- # conservative instrumentation of CPUID. See bug 1288618 comments # 119 through 127. { Bug 1288618 comments 119 through 127 Memcheck:Cond fun:_ZN6SkOptsL4initEv fun:sk_once_no_arg_adaptor } { Bug 1288618 comments 119 through 127 part 2 Memcheck:Cond fun:__get_cpuid fun:cpuid fun:_ZN6SkOptsL4initEv fun:sk_once_no_arg_adaptor } ################################################### # For valgrind-mochitest ("tc-M-V [tier 2]") runs on taskcluster. # See bug 1248365. # These are specific to Ubuntu 12.04.5, 64-bit. ################################################### # Not sure what this is. Is it the well-known # Memcheck-being-confused-by-zlib thing? I suspect so. # # Conditional jump or move depends on uninitialised value(s) # at 0xB6154E0: inflateReset2 (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4) # by 0xB6155D8: inflateInit2_ (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4) # by 0xADDE253: png_create_read_struct_2 # (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0) # Uninitialised value was created by a heap allocation # at 0x4C2D027: malloc (coregrind/m_replacemalloc/vg_replace_malloc.c:298) # by 0xADE960F: png_malloc (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0) # by 0xADD1B95: ??? (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0) # by 0xB6155B6: inflateInit2_ (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4) # by 0xADDE253: png_create_read_struct_2 # (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0) # by 0x15707869: ??? (in /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/ # loaders/libpixbufloader-png.so) { Bug 1248365: mochitest-libz-1 Memcheck:Cond fun:inflateReset2 fun:inflateInit2_ fun:png_create_read_struct_2 } # I don't know what this is. # # Conditional jump or move depends on uninitialised value(s) # at 0x39608257: ??? (in /usr/lib/x86_64-linux-gnu/librsvg-2.so.2.36.1) # by 0x39608E96: rsvg_handle_get_pixbuf_sub (in /usr/lib/x86_64-linux-gnu/l # by 0x37D00D2A: ??? (in /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/lo # by 0x88FF740: gdk_pixbuf_loader_close (in /usr/lib/x86_64-linux-gnu/libgd # by 0x88FBA48: ??? (in /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.26 # by 0x88FD290: gdk_pixbuf_new_from_stream_at_scale (in /usr/lib/x86_64-lin # by 0x6EF96A7: ??? (in /usr/lib/x86_64-linux-gnu/libgtk-3.so.0.400.2) # by 0x6EFC2B1: gtk_icon_info_load_icon (in /usr/lib/x86_64-linux-gnu/libgt # Uninitialised value was created by a stack allocation # at 0xAB786B0: ??? (in /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.30.2) { Bug 1248365: mochitest-librsvg-1 Memcheck:Cond obj:/*/librsvg-2.so.2.36* fun:rsvg_handle_get_pixbuf_sub obj:/*/libpixbufloader-svg.so* fun:gdk_pixbuf_loader_close } # There now follow some suppressions to do with libpixman. There are two # variants, one for errors in the system libpixman, and one for errors in # our in-tree copy. I suspect that all of these sse2 compositing reports # are Memcheck false positives, possibly to do with inaccurate # instrumentation of the function combine1() in # gfx/cairo/libpixman/src/pixman-sse2.c. # # Conditional jump or move depends on uninitialised value(s) # at 0xAB93A10: ??? (in /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.30.2) # by 0xAB78927: ??? (in /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.30.2) # by 0xAB40B0B: pixman_image_composite32 (in /usr/lib/x86_64-linux-gnu/libp # by 0x865C95C: ??? (in /usr/lib/x86_64-linux-gnu/libcairo.so.2.11000.2) # by 0x865E3CB: ??? (in /usr/lib/x86_64-linux-gnu/libcairo.so.2.11000.2) # by 0x865F6EA: ??? (in /usr/lib/x86_64-linux-gnu/libcairo.so.2.11000.2) # by 0x865F968: ??? (in /usr/lib/x86_64-linux-gnu/libcairo.so.2.11000.2) # by 0x867D7C3: ??? (in /usr/lib/x86_64-linux-gnu/libcairo.so.2.11000.2) # Uninitialised value was created by a stack allocation # at 0xAB786B0: ??? (in /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.30.2) { Bug 1248365: mochitest-libpixman-1 Memcheck:Cond obj:/*/libpixman-1.so.0.30* obj:/*/libpixman-1.so.0.30* fun:pixman_image_composite32 } # Conditional jump or move depends on uninitialised value(s) # at 0xF9EA219: sse2_composite_over_8888_8888 # by 0xF9F5B5F: _moz_pixman_image_composite32 # by 0xF96E29E: _clip_and_composite_boxes # by 0xF96F79D: _cairo_image_surface_fill # by 0xF98790C: _cairo_surface_fill # by 0xF96FE2E: _cairo_gstate_fill # by 0xF98B3D9: _moz_cairo_fill_preserve # by 0xE4CF383: mozilla::gfx::DrawTargetCairo::DrawPattern(mozilla::gfx: # Uninitialised value was created by a stack allocation # at 0xB8E46B0: ??? (in /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.30.2) { Bug 1248365: mochitest-libpixman-2 Memcheck:Cond fun:sse2_composite_over_8888_8888 fun:_moz_pixman_image_composite32 fun:_clip_and_composite_boxes fun:_cairo_image_surface_fill } # Conditional jump or move depends on uninitialised value(s) # at 0xF9D56AE: sse2_combine_over_u (in /home/worker/workspace/build/applic # by 0xF9D05D4: general_composite_rect (in /home/worker/workspace/build/app # by 0xF9F5B5F: _moz_pixman_image_composite32 (in /home/worker/workspace/bu # by 0xF96CF63: _clip_and_composite (in /home/worker/workspace/build/applic # by 0xF96D656: _clip_and_composite_boxes.part.32 (in /home/worker/workspac # by 0xF96E328: _clip_and_composite_boxes (in /home/worker/workspace/build/ # by 0xF96F79D: _cairo_image_surface_fill (in /home/worker/workspace/build/ # by 0xF98790C: _cairo_surface_fill (in /home/worker/workspace/build/applic # Uninitialised value was created by a stack allocation # at 0xF9D024D: general_composite_rect (in /home/worker/workspace/build/app # { Bug 1248365: mochitest-libpixman-3 Memcheck:Cond fun:sse2_combine_over_u fun:general_composite_rect fun:_moz_pixman_image_composite32 fun:_clip_and_composite* } # Conditional jump or move depends on uninitialised value(s) # at 0xE626A5C: mozilla::image::imgFrame::Optimize() (in /home/worker/work # by 0xE626C68: mozilla::image::imgFrame::UnlockImageData() (in /home/work # by 0xE608E8F: mozilla::image::RawAccessFrameRef::~RawAccessFrameRef() (i # by 0xE61F5E4: mozilla::image::Decoder::~Decoder() (in /home/worker/works # by 0xE630E32: mozilla::image::nsIconDecoder::~nsIconDecoder() (in /home/ # by 0xE61A5B2: mozilla::image::Decoder::Release() (in /home/worker/worksp # by 0xE61DD73: mozilla::image::NotifyDecodeCompleteWorker::~NotifyDecodeC # by 0xE61DD8F: mozilla::image::NotifyDecodeCompleteWorker::~NotifyDecodeC # Uninitialised value was created by a stack allocation # at 0xB8E46B0: ??? (in /usr/lib/x86_64-linux-gnu/libpixman-1.so.0.30.2) { Bug 1248365: mochitest-libpixman-4 Memcheck:Cond fun:_ZN7mozilla5image8imgFrame8OptimizeEv fun:_ZN7mozilla5image8imgFrame15UnlockImageDataEv fun:_ZN7mozilla5image17RawAccessFrameRefD1Ev fun:_ZN7mozilla5image7DecoderD1Ev } # Not sure what this. I can't reproduce it locally despite much trying. # Syscall param sendmsg(msg.msg_iov[0]) points to uninitialised byte(s) # at 0x4E4533D: ??? (syscall-template.S:82) # by 0xE12C0A7: IPC::Channel::ChannelImpl::ProcessOutgoingMessages() (in /h # by 0xE142FD0: RunnableMethod::InitDecoder() (in /home/wor # by 0xEEAE42B: mozilla::FFmpegVideoDecoder<53>::Init() (in /home/worker/wo # by 0xEEA4C07: mozilla::H264Converter::Init() (in /home/worker/workspace/b # Uninitialised value was created by a heap allocation # at 0x4C2D11F: realloc (vg_replace_malloc.c:785) # by 0x406196: moz_xrealloc (in /home/worker/workspace/build/application/fi # by 0xDEB43AC: nsTArrayInfallibleAllocator::ResultTypeProxy nsTArray_base< # by 0xEEAD850: mozilla::FFmpegDataDecoder<53>::InitDecoder() (in /home/wor # by 0xEEAE42B: mozilla::FFmpegVideoDecoder<53>::Init() (in /home/worker/wo { Bug 1248365: mochitest-libavcodec-1-c Memcheck:Cond obj:/*/libavcodec.so.53* obj:/*/libavcodec.so.53* obj:/*/libavcodec.so.53* obj:/*/libavcodec.so.53* } { Bug 1248365: mochitest-libavcodec-1-v8 Memcheck:Value8 obj:/*/libavcodec.so.53* obj:/*/libavcodec.so.53* obj:/*/libavcodec.so.53* obj:/*/libavcodec.so.53* } # Not sure what this is, but I am inclined to think it is also probably a # SSE2-induced false positive similar to mochitest-libpixman-2 above. # Use of uninitialised value of size 8 # at 0xE4F3E89: FastConvertYUVToRGB32Row (in /home/worker/workspace/build/a # by 0xE4F4A6D: mozilla::gfx::ConvertYCbCrToRGB32(unsigned char const*, uns # by 0xE4F4B17: mozilla::gfx::ConvertYCbCrToRGB(mozilla::layers::PlanarYCbC # by 0xE5227CB: mozilla::layers::PlanarYCbCrImage::GetAsSourceSurface() (in # by 0xE5B2465: mozilla::layers::SharedPlanarYCbCrImage::GetAsSourceSurface # by 0xE52FE44: mozilla::layers::BasicImageLayer::Paint(mozilla::gfx::DrawT # by 0xE5618A1: mozilla::layers::BasicLayerManager::PaintSelfOrChildren(moz # by 0xE560F83: mozilla::layers::BasicLayerManager::PaintLayer(gfxContext*, # Uninitialised value was created by a stack allocation # at 0x434B36B2: ??? (in /usr/lib/x86_64-linux-gnu/libavcodec.so.53.35.0) { Bug 1248365: FastConvertYUVToRGB32Row-1 Memcheck:Value8 fun:FastConvertYUVToRGB32Row fun:_ZN7mozilla3gfx19ConvertYCbCrToRGB32* fun:_ZN7mozilla3gfx17ConvertYCbCrToRGB* fun:_ZN7mozilla6layers16PlanarYCbCrImage18GetAsSourceSurface* } # This is probably a V false positive, due to an insufficiently accurate # description of the ioctl(SIOCETHTOOL) behavior. # Syscall param ioctl(SIOCETHTOOL) points to uninitialised byte(s) # at 0x5D5CBF7: ioctl (syscall-template.S:82) # by 0xF58EB67: nr_stun_get_addrs (in /home/worker/workspace/build/applica # by 0xF594791: nr_stun_find_local_addresses (in /home/worker/workspace/bu # by 0xF58A237: nr_ice_get_local_addresses (in /home/worker/workspace/buil # by 0xF58ADDE: nr_ice_gather (in /home/worker/workspace/build/application # by 0xE43F35F: mozilla::NrIceCtx::StartGathering() (in /home/worker/works # by 0xE419560: mozilla::PeerConnectionMedia::EnsureIceGathering_s() (in / # by 0xE41A11C: mozilla::runnable_args_memfn # by 0xFCD0FDE: ots::ots_post_parse(ots::Font*, unsigned char const*, unsi # by 0xFCCA3D9: (anonymous namespace)::ProcessGeneric(ots::OpenTypeFile*, # by 0xFCCB17E: (anonymous namespace)::ProcessTTF(ots::OpenTypeFile*, ots: # by 0xFCCBA54: ots::OTSContext::Process(ots::OTSStream*, unsigned char co # by 0xE7D7C8D: gfxUserFontEntry::SanitizeOpenTypeData(unsigned char const # by 0xE7E371D: gfxUserFontEntry::LoadPlatformFont(unsigned char const*, u { Bug 1248365: ots::Font::~Font()-1 Memcheck:Free fun:free fun:_ZN3ots13ots_post_free* fun:_ZN3ots4FontD1Ev fun:_ZN3ots10OTSContext7Process* }