[cfe-dev] Address sanitizer memory usage

Michael Eisel via cfe-dev cfe-dev at lists.llvm.org
Tue Dec 12 16:23:50 PST 2017


Hi, so when you say "ASAN_OPTIONS=quarantine_size_mb=1:malloc_context_size=5",
do you mean that it's one key-value pair with key "ASAN_OPTIONS" and value "
quarantine_size_mb=1:malloc_context_size=5" ? I tried that, but
unfortunately, the phone still crashes after a few minutes of typical
usage. Here's the trace:

==1020==ERROR: AddressSanitizer failed to allocate 0x80000 (524288) bytes
of SetAlternateSignalStack (error code: 12)
==1020==Process memory map follows:
0x000195805000-0x000195819000
/System/Library/PrivateFrameworks/EmojiFoundation.framework/EmojiFoundation
0x0001b216e458-0x0001b216ee98
/System/Library/PrivateFrameworks/EmojiFoundation.framework/EmojiFoundation
0x0001ae3f0178-0x0001ae3ff328
/System/Library/PrivateFrameworks/EmojiFoundation.framework/EmojiFoundation
0x0001b315cf10-0x0001b315d070
/System/Library/PrivateFrameworks/EmojiFoundation.framework/EmojiFoundation
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/EmojiFoundation.framework/EmojiFoundation
0x0001937e6000-0x0001937f8000
/System/Library/PrivateFrameworks/CoreFollowUp.framework/CoreFollowUp
0x0001b20576f0-0x0001b2058280
/System/Library/PrivateFrameworks/CoreFollowUp.framework/CoreFollowUp
0x0001add00b60-0x0001add06638
/System/Library/PrivateFrameworks/CoreFollowUp.framework/CoreFollowUp
0x0001b31439a8-0x0001b3143c78
/System/Library/PrivateFrameworks/CoreFollowUp.framework/CoreFollowUp
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/CoreFollowUp.framework/CoreFollowUp
0x00019447f000-0x00019448b000
/System/Library/PrivateFrameworks/SetupAssistantSupport.framework/SetupAssistantSupport
0x0001b20bd288-0x0001b20be258
/System/Library/PrivateFrameworks/SetupAssistantSupport.framework/SetupAssistantSupport
0x0001adfc1300-0x0001adfc4b38
/System/Library/PrivateFrameworks/SetupAssistantSupport.framework/SetupAssistantSupport
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/SetupAssistantSupport.framework/SetupAssistantSupport
0x00019448b000-0x0001944b3000
/System/Library/PrivateFrameworks/SetupAssistant.framework/SetupAssistant
0x0001b20be258-0x0001b20bfbc8
/System/Library/PrivateFrameworks/SetupAssistant.framework/SetupAssistant
0x0001adfc4b38-0x0001adfcb630
/System/Library/PrivateFrameworks/SetupAssistant.framework/SetupAssistant
0x0001b30ff0f0-0x0001b30ff5d8
/System/Library/PrivateFrameworks/SetupAssistant.framework/SetupAssistant
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/SetupAssistant.framework/SetupAssistant
0x00019511e000-0x000195138000
/System/Library/PrivateFrameworks/CoreSDB.framework/CoreSDB
0x0001b2121128-0x0001b2121540
/System/Library/PrivateFrameworks/CoreSDB.framework/CoreSDB
0x0001ae21d1b8-0x0001ae21f770
/System/Library/PrivateFrameworks/CoreSDB.framework/CoreSDB
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/CoreSDB.framework/CoreSDB
0x000195819000-0x00019592c000
/System/Library/PrivateFrameworks/IMDPersistence.framework/IMDPersistence
0x0001b216ee98-0x0001b2170ae8
/System/Library/PrivateFrameworks/IMDPersistence.framework/IMDPersistence
2017-12-12 16:18:59.529 [tid=189434][general][info] Download Manager ---
Request is dispatched to download manager --- request key is
/bq/update_events-A0F8564D-26E2-45C2-A1B7-D540A2BFE249
0x0001b3151788-0x0001b31517d8
/System/Library/PrivateFrameworks/IMDPersistence.framework/IMDPersistence
0x0001ae3ff328-0x0001ae4215b0
/System/Library/PrivateFrameworks/IMDPersistence.framework/IMDPersistence
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/IMDPersistence.framework/IMDPersistence
0x000195138000-0x00019518e000
/System/Library/PrivateFrameworks/IMSharedUtilities.framework/IMSharedUtilities
0x0001b2121540-0x0001b21256c8
/System/Library/PrivateFrameworks/IMSharedUtilities.framework/IMSharedUtilities
0x0001ae21f770-0x0001ae239ad8
/System/Library/PrivateFrameworks/IMSharedUtilities.framework/IMSharedUtilities
0x0001b312bf50-0x0001b312bff0
/System/Library/PrivateFrameworks/IMSharedUtilities.framework/IMSharedUtilities
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/IMSharedUtilities.framework/IMSharedUtilities
0x000196745000-0x0001968e4000
/System/Library/PrivateFrameworks/IMCore.framework/IMCore
0x0001b21f60c8-0x0001b21ff2e1
/System/Library/PrivateFrameworks/IMCore.framework/IMCore
0x0001ae607b68-0x0001ae648888
/System/Library/PrivateFrameworks/IMCore.framework/IMCore
0x0001b31352b0-0x0001b3135cc0
/System/Library/PrivateFrameworks/IMCore.framework/IMCore
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/IMCore.framework/IMCore
0x00019868f000-0x0001986ec000
/System/Library/PrivateFrameworks/IMAVCore.framework/IMAVCore
0x0001b23195d0-0x0001b231bf70
/System/Library/PrivateFrameworks/IMAVCore.framework/IMAVCore
0x0001aec98888-0x0001aeca8ae8
/System/Library/PrivateFrameworks/IMAVCore.framework/IMAVCore
0x0001b3158e28-0x0001b3158fe0
/System/Library/PrivateFrameworks/IMAVCore.framework/IMAVCore
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/IMAVCore.framework/IMAVCore
0x0001a7670000-0x0001a7676000
/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI
0x0001b2f184e0-0x0001b2f18a38
/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI
0x0001b31c02a8-0x0001b31c0358
/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI
0x0001b1211ac8-0x0001b1212690
/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/TextInputUI.framework/TextInputUI
0x0001a39f1000-0x0001a3a08000
/System/Library/PrivateFrameworks/CoreAccessories.framework/CoreAccessories
0x0001b2c9e418-0x0001b2c9f070
/System/Library/PrivateFrameworks/CoreAccessories.framework/CoreAccessories
0x0001b06229b0-0x0001b06282b0
/System/Library/PrivateFrameworks/CoreAccessories.framework/CoreAccessories
0x0001b3150a98-0x0001b3150b81
/System/Library/PrivateFrameworks/CoreAccessories.framework/CoreAccessories
2017-12-12 16:18:59.529 [tid=188882][general][info] Download Manager ---
RequestTask is created at download manager --- request key is
/bq/update_events-A0F8564D-26E2-45C2-A1B7-D540A2BFE249,
dispatch_to_task_create delay is 0
0x0001b5366000-0x0001baa0c000
/System/Library/PrivateFrameworks/CoreAccessories.framework/CoreAccessories
0x0001a1361000-0x0001a1616000
/System/Library/CoreServices/RawCamera.bundle/RawCamera
0x0001b2ad2850-0x0001b2aeb838
/System/Library/CoreServices/RawCamera.bundle/RawCamera
0x0001b02b2360-0x0001b02f97d0
/System/Library/CoreServices/RawCamera.bundle/RawCamera
ERROR: Failed to mmap
Warning: hit breakpoint while running function, skipping commands and
conditions to prevent recursion.warning: could not execute support code to
read Objective-C class data in the process. This may reduce the quality of
type information available.
AddressSanitizer report breakpoint hit. Use 'thread info -s' to get
extended information about the report.


On Fri, Dec 8, 2017 at 10:12 AM, Kostya Serebryany <kcc at google.com> wrote:

> + Devin and Kuba from Apple, who may have iOS-specific knowledge.
>
> We've recently made several changes that make asan consume less memory, but
> * these changes are not yet in Xcode 9 (I assume)
> * I am not 100% sure these changes affect iOS (we tested only on Linux,
> Kuba has recently applied related patches for Mac)
> * Your problem might be caused by something else
>
> Typically the biggest source of memory consumption is quarantine and the
> stack trace storage (stack_depot).
> If you are able to set ASAN_OPTIONS env var, please try this:
> ASAN_OPTIONS=quarantine_size_mb=1:malloc_context_size=5
>
> quarantine_size_mb=1 limits the quarantine size (and thus reduces the
> ability to find use-after-free)
> malloc_context_size=5 reduces the length of stack traces that asan stores
> for future bug reporting
>
> If these don't help, we'll need more details (e.g. the iOS's analog of
> /proc/PID/maps for the process at the time of failure)
>
> --kcc
>
>
>
> On Thu, Dec 7, 2017 at 12:56 PM, Michael Eisel via cfe-dev <
> cfe-dev at lists.llvm.org> wrote:
>
>> Hi,
>>
>> I'm working on an iPhone app that rarely runs out of memory normally, but
>> with the address sanitizer on will crash after a couple minutes. I don't
>> remember it crashing this much with Xcode 8's version of clang, but in any
>> case I'm using Xcode 9 now. Although crashing after a couple minutes is
>> fine for testing during development, I would like to distribute the app to
>> internal testers with asan built into it, and I don't want to impact their
>> experience so much. Is there any simple way to reduce memory use, e.g. by
>> turning off some component of asan?
>>
>> Thanks,
>> Michael
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20171212/7ab8d99f/attachment.html>


More information about the cfe-dev mailing list