This site has been retired. For up to date information, see handbook.gnome.org or gitlab.gnome.org.


[Home] [TitleIndex] [WordIndex

aka gnomebug:168845

Gnome-settings-daemon allocates a bunch of stuff via GStreamer:

==13696== 64640 bytes in 354 blocks are still reachable in loss record 6489 of 6490
==13696==    at 0x3414AFEE: realloc (in /usr/lib/valgrind/vgpreload_addrcheck.so)
==13696==    by 0x413C3D70: g_realloc (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x413A6185: g_array_maybe_expand (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x413A72E8: g_array_append_vals (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x43ADD4C8: gst_structure_set_field (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43ADEB24: gst_structure_from_string (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AB20F8: gst_caps_from_string_inplace (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AB2B45: gst_caps_from_string (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AFAAF0: gst_xml_registry_parse_padtemplate (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AF7998: gst_xml_registry_text (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x413C3A13: g_markup_parse_context_parse (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x43AF9E79: gst_xml_registry_load (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AEDA58: gst_registry_load (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AEDFA7: _registry_load_func (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x413BA0EE: g_list_foreach (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696== 
==13696== 
==13696== 119552 bytes in 622 blocks are still reachable in loss record 6490 of 6490
==13696==    at 0x3414AFEE: realloc (in /usr/lib/valgrind/vgpreload_addrcheck.so)
==13696==    by 0x413C3D70: g_realloc (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x413A6185: g_array_maybe_expand (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x413A72E8: g_array_append_vals (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x43ADD4C8: gst_structure_set_field (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43ADEB24: gst_structure_from_string (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AB2173: gst_caps_from_string_inplace (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AB2B45: gst_caps_from_string (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AFAAF0: gst_xml_registry_parse_padtemplate (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AF7998: gst_xml_registry_text (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x413C3A13: g_markup_parse_context_parse (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696==    by 0x43AF9E79: gst_xml_registry_load (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AEDA58: gst_registry_load (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x43AEDFA7: _registry_load_func (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==13696==    by 0x413BA0EE: g_list_foreach (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==13696== 
==13696== LEAK SUMMARY:
==13696==    definitely lost: 4810 bytes in 61 blocks.
==13696==    possibly lost:   1856 bytes in 60 blocks.
==13696==    still reachable: 1484690 bytes in 35713 blocks.
==13696==         suppressed: 0 bytes in 0 blocks.

NB: there are tons of other gstreamer allocations. This is only the biggest one. It looks like gstreamer accounts for 20% or more of the allocations around here.

It turns out that this is just to implement changing the volume from Acme!

==19024==    by 0x413BA0EE: g_list_foreach (in /opt/gnome/lib/libglib-2.0.so.0.400.6)
==19024==    by 0x43AD428A: _gst_plugin_initialize (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==19024==    by 0x43AA9662: init_post (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==19024==    by 0x43AA9F9F: gst_init_check_with_popt_table (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==19024==    by 0x43AAA13A: gst_init_with_popt_table (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==19024==    by 0x43AAA189: gst_init (in /opt/gnome/lib/libgstreamer-0.8.so.1.0.0)
==19024==    by 0x8066F8B: acme_volume_gstreamer_class_init (in /opt/gnome/lib/control-center-2.0/gnome-settings-daemon)

How many people actually have a keybinding for volume control? Can we delay GStreamer initialization until that key is actually used?


Note by casual reader: I do. My girlfriend does. I've tought two of my friends to use Linux and Gnome - both of them happen to have multimedia keyboards and both of them use volume control keys. (VitezslavKotrla)


2024-10-23 11:17