I was running e17 under valgrind, and encountered the following error. I'm not all that familiar with the code, but it looks like it may be a race condition in eet, between the main thread clearing the cache when idle, and another thread trying to preload images?
The first two errors (write contains uninitialised bytes) happened immediately after starting e17, and seem to be unrelated. The "invalid read" errors occured when bringing up the Gadget Settings. This was using revision r46451 from subversion. -- Adam Simpkins a...@adamsimpkins.net ==30241== Memcheck, a memory error detector ==30241== Copyright (C) 2002-2009, and GNU GPL'd, by Julian Seward et al. ==30241== Using Valgrind-3.5.0-Debian and LibVEX; rerun with -h for copyright info ==30241== Command: /usr/local/e17/bin/enlightenment -valgrind=1 -valgrind-log-file=/tmp/simpkins/e17-valgrind.log ==30241== Parent PID: 30009 ==30241== ==30241== Syscall param write(buf) points to uninitialised byte(s) ==30241== at 0x4518013: __write_nocancel (in /lib/tls/i686/cmov/libc-2.10.1.so) ==30241== by 0x44C192E: new_do_write (fileops.c:529) ==30241== by 0x44C1C15: _IO_do_write@@GLIBC_2.1 (fileops.c:502) ==30241== by 0x44C25F9: _IO_file_sync@@GLIBC_2.1 (fileops.c:904) ==30241== by 0x44B68FF: fflush (iofflush.c:43) ==30241== by 0x4192AE5: eet_flush2 (eet_lib.c:591) ==30241== by 0x4192C9D: eet_internal_close (eet_lib.c:1325) ==30241== by 0x808D5C7: _e_config_eet_close_handle (e_config.c:1805) ==30241== by 0x808D9A2: e_config_domain_save (e_config.c:1467) ==30241== by 0x7951EB5: e_modapi_save (e_mod_main.c:1328) ==30241== by 0x80A4B65: e_module_save_all (e_module.c:339) ==30241== by 0x808E1DF: _e_config_save_cb (e_config.c:1617) ==30241== Address 0x53bf1f8 is not stack'd, malloc'd or (recently) free'd ==30241== ==30241== Syscall param write(buf) points to uninitialised byte(s) ==30241== at 0x451803B: ??? (in /lib/tls/i686/cmov/libc-2.10.1.so) ==30241== by 0x44C192E: new_do_write (fileops.c:529) ==30241== by 0x44C1C15: _IO_do_write@@GLIBC_2.1 (fileops.c:502) ==30241== by 0x44C25F9: _IO_file_sync@@GLIBC_2.1 (fileops.c:904) ==30241== by 0x44B68FF: fflush (iofflush.c:43) ==30241== by 0x4192AE5: eet_flush2 (eet_lib.c:591) ==30241== by 0x4192C9D: eet_internal_close (eet_lib.c:1325) ==30241== by 0x808D5C7: _e_config_eet_close_handle (e_config.c:1805) ==30241== by 0x808D9A2: e_config_domain_save (e_config.c:1467) ==30241== by 0x7951EB5: e_modapi_save (e_mod_main.c:1328) ==30241== by 0x80A4B65: e_module_save_all (e_module.c:339) ==30241== by 0x808E1DF: _e_config_save_cb (e_config.c:1617) ==30241== Address 0x42641f8 is not stack'd, malloc'd or (recently) free'd ==30241== ==30241== Thread 2: ==30241== Invalid read of size 4 ==30241== at 0x4194059: eet_open (eet_lib.c:1510) ==30241== by 0x53BC8AA: evas_image_load_file_data_eet (evas_image_load_eet.c:86) ==30241== by 0x40C51CC: evas_common_load_rgba_image_data_from_file (evas_image_load.c:243) ==30241== by 0x4089508: _evas_cache_image_async_heavy (evas_cache_image.c:344) ==30241== by 0x408B82F: _evas_preload_thread_worker (evas_preload.c:103) ==30241== by 0x42AC80D: start_thread (pthread_create.c:300) ==30241== by 0x45278DD: clone (clone.S:130) ==30241== Address 0x552af44 is 68 bytes inside a block of size 193 free'd ==30241== at 0x4024836: free (vg_replace_malloc.c:325) ==30241== by 0x4192E46: eet_internal_close (eet_lib.c:1395) ==30241== by 0x4193200: eet_clearcache (eet_lib.c:890) ==30241== by 0x8071E6A: _e_main_cb_x_flusher (e_main.c:1524) ==30241== by 0x410BA74: _ecore_idle_enterer_call (ecore_idle_enterer.c:132) ==30241== by 0x410CE4C: _ecore_main_loop_iterate_internal (ecore_main.c:755) ==30241== by 0x410D1D6: ecore_main_loop_begin (ecore_main.c:155) ==30241== by 0x8070AE3: main (e_main.c:1080) ==30241== ==30241== Invalid read of size 1 ==30241== at 0x4194062: eet_open (eet_lib.c:1512) ==30241== by 0x53BC8AA: evas_image_load_file_data_eet (evas_image_load_eet.c:86) ==30241== by 0x40C51CC: evas_common_load_rgba_image_data_from_file (evas_image_load.c:243) ==30241== by 0x4089508: _evas_cache_image_async_heavy (evas_cache_image.c:344) ==30241== by 0x408B82F: _evas_preload_thread_worker (evas_preload.c:103) ==30241== by 0x42AC80D: start_thread (pthread_create.c:300) ==30241== by 0x45278DD: clone (clone.S:130) ==30241== Address 0x552af60 is 96 bytes inside a block of size 193 free'd ==30241== at 0x4024836: free (vg_replace_malloc.c:325) ==30241== by 0x4192E46: eet_internal_close (eet_lib.c:1395) ==30241== by 0x4193200: eet_clearcache (eet_lib.c:890) ==30241== by 0x8071E6A: _e_main_cb_x_flusher (e_main.c:1524) ==30241== by 0x410BA74: _ecore_idle_enterer_call (ecore_idle_enterer.c:132) ==30241== by 0x410CE4C: _ecore_main_loop_iterate_internal (ecore_main.c:755) ==30241== by 0x410D1D6: ecore_main_loop_begin (ecore_main.c:155) ==30241== by 0x8070AE3: main (e_main.c:1080) ==30241== ==30241== Invalid read of size 4 ==30241== at 0x4194068: eet_open (eet_lib.c:1513) ==30241== by 0x53BC8AA: evas_image_load_file_data_eet (evas_image_load_eet.c:86) ==30241== by 0x40C51CC: evas_common_load_rgba_image_data_from_file (evas_image_load.c:243) ==30241== by 0x4089508: _evas_cache_image_async_heavy (evas_cache_image.c:344) ==30241== by 0x408B82F: _evas_preload_thread_worker (evas_preload.c:103) ==30241== by 0x42AC80D: start_thread (pthread_create.c:300) ==30241== by 0x45278DD: clone (clone.S:130) ==30241== Address 0x552af30 is 48 bytes inside a block of size 193 free'd ==30241== at 0x4024836: free (vg_replace_malloc.c:325) ==30241== by 0x4192E46: eet_internal_close (eet_lib.c:1395) ==30241== by 0x4193200: eet_clearcache (eet_lib.c:890) ==30241== by 0x8071E6A: _e_main_cb_x_flusher (e_main.c:1524) ==30241== by 0x410BA74: _ecore_idle_enterer_call (ecore_idle_enterer.c:132) ==30241== by 0x410CE4C: _ecore_main_loop_iterate_internal (ecore_main.c:755) ==30241== by 0x410D1D6: ecore_main_loop_begin (ecore_main.c:155) ==30241== by 0x8070AE3: main (e_main.c:1080) ==30241== ==30241== Invalid read of size 4 ==30241== at 0x4192C5C: eet_internal_close (eet_lib.c:262) ==30241== by 0x4194078: eet_open (eet_lib.c:1514) ==30241== by 0x53BC8AA: evas_image_load_file_data_eet (evas_image_load_eet.c:86) ==30241== by 0x40C51CC: evas_common_load_rgba_image_data_from_file (evas_image_load.c:243) ==30241== by 0x4089508: _evas_cache_image_async_heavy (evas_cache_image.c:344) ==30241== by 0x408B82F: _evas_preload_thread_worker (evas_preload.c:103) ==30241== by 0x42AC80D: start_thread (pthread_create.c:300) ==30241== by 0x45278DD: clone (clone.S:130) ==30241== Address 0x552af2c is 44 bytes inside a block of size 193 free'd ==30241== at 0x4024836: free (vg_replace_malloc.c:325) ==30241== by 0x4192E46: eet_internal_close (eet_lib.c:1395) ==30241== by 0x4193200: eet_clearcache (eet_lib.c:890) ==30241== by 0x8071E6A: _e_main_cb_x_flusher (e_main.c:1524) ==30241== by 0x410BA74: _ecore_idle_enterer_call (ecore_idle_enterer.c:132) ==30241== by 0x410CE4C: _ecore_main_loop_iterate_internal (ecore_main.c:755) ==30241== by 0x410D1D6: ecore_main_loop_begin (ecore_main.c:155) ==30241== by 0x8070AE3: main (e_main.c:1080) ==30241== ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel