https://bugs.kde.org/show_bug.cgi?id=383811

--- Comment #3 from FX <fxcoud...@gcc.gnu.org> ---
With valgrind trunk and the patch in comment 1, after having run autogen.sh in
the source tree: configure && make work, and the resulting valgrind appears to
work. For example, it correctly determines on invalid write in a free'd block.
It also correctly detects unfree'd memory when it encounters it.

I have found, so far, two issues:

1. valgrind displays a warning about libsystem_kernel for any executable I run
(valid or invalid):

==90520== Syscall param msg->desc.port.name points to uninitialised byte(s)
==90520==    at 0x100590E76: mach_msg_trap (in
/usr/lib/system/libsystem_kernel.dylib)
==90520==    by 0x10059038F: mach_msg (in
/usr/lib/system/libsystem_kernel.dylib)
==90520==    by 0x100589F3D: task_set_special_port (in
/usr/lib/system/libsystem_kernel.dylib)
==90520==    by 0x1005F701A: _os_trace_create_debug_control_port (in
/usr/lib/system/libsystem_trace.dylib)
==90520==    by 0x1005F72D0: _libtrace_init (in
/usr/lib/system/libsystem_trace.dylib)
==90520==    by 0x1000BD9CC: libSystem_initializer (in
/usr/lib/libSystem.B.dylib)
==90520==    by 0x10000415F: dyld3::kdebug_trace_dyld_duration(unsigned int,
unsigned long long, unsigned long long, void ( block_pointer)()) (in
/usr/lib/dyld)
==90520==    by 0x100019A09:
ImageLoaderMachO::doModInitFunctions(ImageLoader::LinkContext const&) (in
/usr/lib/dyld)
==90520==    by 0x100019C39:
ImageLoaderMachO::doInitialization(ImageLoader::LinkContext const&) (in
/usr/lib/dyld)
==90520==    by 0x10001516F:
ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned
int, char const*, ImageLoader::InitializerTimingList&,
ImageLoader::UninitedUpwards&) (in /usr/lib/dyld)
==90520==    by 0x100015102:
ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned
int, char const*, ImageLoader::InitializerTimingList&,
ImageLoader::UninitedUpwards&) (in /usr/lib/dyld)
==90520==    by 0x1000142A5:
ImageLoader::processInitializers(ImageLoader::LinkContext const&, unsigned int,
ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) (in
/usr/lib/dyld)
==90520==  Address 0x10489f19c is on thread 1's stack
==90520==  in frame #2, created by task_set_special_port (???:)

------------------------------------------------------------------------------------------------------------

2. When running "valgrind --leak-check=full", it issues a warning about dyld:

==90558== 72 bytes in 3 blocks are possibly lost in loss record 26 of 43
==90558==    at 0x1000AB542: calloc (vg_replace_malloc.c:714)
==90558==    by 0x1006C07E2: map_images_nolock (in /usr/lib/libobjc.A.dylib)
==90558==    by 0x1006D37DA: objc_object::sidetable_retainCount() (in
/usr/lib/libobjc.A.dylib)
==90558==    by 0x100007C64: dyld::notifyBatchPartial(dyld_image_states, bool,
char const* (*)(dyld_image_states, unsigned int, dyld_image_info const*), bool,
bool) (in /usr/lib/dyld)
==90558==    by 0x100007E39: dyld::registerObjCNotifiers(void (*)(unsigned int,
char const* const*, mach_header const* const*), void (*)(char const*,
mach_header const*), void (*)(char const*, mach_header const*)) (in
/usr/lib/dyld)
==90558==    by 0x10022284D: _dyld_objc_notify_register (in
/usr/lib/system/libdyld.dylib)
==90558==    by 0x1006C0075: _objc_init (in /usr/lib/libobjc.A.dylib)
==90558==    by 0x1001ACCE0: _os_object_init (in
/usr/lib/system/libdispatch.dylib)
==90558==    by 0x1001ACCC7: libdispatch_init (in
/usr/lib/system/libdispatch.dylib)
==90558==    by 0x1000BD9C2: libSystem_initializer (in
/usr/lib/libSystem.B.dylib)
==90558==    by 0x10000415F: dyld3::kdebug_trace_dyld_duration(unsigned int,
unsigned long long, unsigned long long, void ( block_pointer)()) (in
/usr/lib/dyld)
==90558==    by 0x100019A09:
ImageLoaderMachO::doModInitFunctions(ImageLoader::LinkContext const&) (in
/usr/lib/dyld)


------------------------------------------------------------------------------------------------------------

3. Trying to run /bin/bash under valgrind leads to this error:

--90616-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option
--90616-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option (repeated 2
times)
--90616-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option (repeated 4
times)
--90616-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option (repeated 8
times)
==90616== Syscall param mach_msg("rcv_name") contains uninitialised byte(s)
==90616==    at 0x10076AE76: mach_msg_trap (in
/usr/lib/system/libsystem_kernel.dylib)
==90616==    by 0x10076A38F: mach_msg (in
/usr/lib/system/libsystem_kernel.dylib)
==90616==    by 0x1007D86F2: _os_trace_prefs_and_mode_refresh_slow (in
/usr/lib/system/libsystem_trace.dylib)
==90616==    by 0x1007CEF06: _os_activity_create_addr (in
/usr/lib/system/libsystem_trace.dylib)
==90616==    by 0x10055D219: ds_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CD5B: si_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CE3E: search_item_bynumber (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CD96: search_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CD5B: si_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055C27E: getpwuid (in /usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10002B958: setupvals (in /bin/zsh)
==90616==    by 0x10002D0C5: zsh_main (in /bin/zsh)
==90616== 
eq_SyscallStatus:
  {78 0 43}
  {78 0 40}

valgrind: m_syswrap/syswrap-main.c:438 (Bool eq_SyscallStatus(UInt,
SyscallStatus *, SyscallStatus *)): the 'impossible' happened.

host stacktrace:
==90616==    at 0x2580523BB: ???
==90616==    by 0x25805274C: ???
==90616==    by 0x258052723: ???
==90616==    by 0x2580EB9D4: ???
==90616==    by 0x2580EAFB9: ???
==90616==    by 0x2580E91E0: ???
==90616==    by 0x2580E79A0: ???
==90616==    by 0x2580F985E: ???

sched status:
  running_tid=1

Thread 1: status = VgTs_Runnable (lwpid 771)
==90616==    at 0x10076AEFA: mach_generate_activity_id (in
/usr/lib/system/libsystem_kernel.dylib)
==90616==    by 0x1003A7F57: _voucher_activity_id_allocate_slow (in
/usr/lib/system/libdispatch.dylib)
==90616==    by 0x1003A7209: voucher_activity_create_with_data (in
/usr/lib/system/libdispatch.dylib)
==90616==    by 0x1007CEFE2: _os_activity_create_addr (in
/usr/lib/system/libsystem_trace.dylib)
==90616==    by 0x10055D219: ds_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CD5B: si_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CE3E: search_item_bynumber (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CD96: search_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055CD5B: si_user_byuid (in
/usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10055C27E: getpwuid (in /usr/lib/system/libsystem_info.dylib)
==90616==    by 0x10002B958: setupvals (in /bin/zsh)
==90616==    by 0x10002D0C5: zsh_main (in /bin/zsh)
==90616==    by 0x1003FA144: start (in /usr/lib/system/libdyld.dylib)

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to