site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Thread-index: AcXwtek70hhPz/KYQoOCY2Ijg799hQ== Thread-topic: 10.4, MH_BUNDLE, and DYLD_IMAGE_ADDED dyld_events We have a facility akin to the Apple crash reporter which turns absolute backtrace addresses into module + offset references (and if possible, also symbol + offset references). However, we recently started seeing holes in the backtrace reports it is generating for some libraries, and found that it is only bundles that are having the problem. We treat the offset of a given library in memory as the vmaddr + vmaddr_slide values. For MH_DYLD libraries, vmaddr is set to the base address and vmaddr_slide is set to 0. For MH_BUNDLE libraries (under 10.3 and earlier), vmaddr is 0, and vmaddr_slide is set to the base address. However, in 10.4, vmaddr_slide is set to 0, and we don't have any idea where the bundle is living in memory. We're acquiring this information by calling _dyld_debug_subscribe_to_events and handling DYLD_IMAGE_ADDED events, looking in arg[0].vmaddr_slide. This does not seem to be working any longer. Has anyone else seen this? Is this a known issue? What has changed that would cause this? Are there workarounds and/or is this the right way to go about figuring out the location in memory of a module? Thanks in advance, nh ---- Nathan Herring MacBU SDE/Development _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... This email sent to site_archiver@lists.apple.com