Hello there,

We've reproduced this bug with Chromium code (see
https://code.google.com/p/address-sanitizer/issues/detail?id=274)
Can you please update to Clang r203916 and verify that it's fixed?

On Tue, Feb 18, 2014 at 3:38 PM, Alexander Potapenko <gli...@google.com> wrote:
>> Thanks very much for your quickly help. For #1, you mean it is my program
>> bug?
> Not sure yet. There is much library code involved, and something wrong
> is going on with the globals (see below).
>
>>
>> For #2, I have set the ASAN_SYMBOLIZER_PATH  to point to the llvm-symbolizer
>> binary, so that the report can only show function name. But no line number,
>> could you please review the full report below?
> Can you please run dsymutil on your program and check whether it helps
> to get line numbers?
>
>> ==12807==ERROR: AddressSanitizer: global-buffer-overflow on address
>> 0x0001007784c0 at pc 0x100a3f594 bp 0x7fff5fbfe310 sp 0x7fff5fbfe2d8
>> READ of size 18 at 0x0001007784c0 thread T0
>>     #0 0x100a3f593 in wrap_memcmp
>> (/Users/oupeng/llvm/Release+Asserts/lib/clang/3.5/lib/darwin/libclang_rt.asan_osx_dynamic.dylib+0x16593)
>>     #1 0x7fff8f40cd56 in __CFStringEqual
>> (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0xfd56)
> ...
>>
>>     #25 0x100001fad in main (/path/myapp+0x100001fad)
>>
>>     #26 0x100001d33 in start (/path/myapp+0x100001d33)
>>
>>     #27 0x0 (/path/myapp+0x0)
>>
>>
>> 0x0001007784c0 is located 32 bytes to the left of global variable '.str5'
>> from '/path/myapp/Controller.m' (0x1007784e0) of size 13
>>
>>   '.str5' is ascii string 'ctestString'
>>
>> 0x0001007784c0 is located 0 bytes inside of global variable '.str3' from
>> '/path/myapp/Controller.m' (0x1007784c0) of size 19
>>
>>   '.str3' is ascii string 'ctestOptions'
>>
>> 0x0001007784c0 is located 4 bytes to the right of global variable '.str1'
>> from '/path/myapp/Controller.m' (0x1007784a0) of size 28
>>
>>   '.str1' is ascii string 'appMode'
>>
>> SUMMARY: AddressSanitizer: global-buffer-overflow ??:0 wrap_memcmp
>>
>> Shadow bytes around the buggy address:
>>
>>   0x1000200ef040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef060: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef070: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>> =>0x1000200ef090: 00 00 05 f9 f9 f9 f9 04[f9]f9 03 f9 f9 05 f9 f9
>>
>>   0x1000200ef0a0: f9 f9 01 f9 f9 06 f9 f9 01 f9 f9 f9 04 f9 f9 f9
>>
>>   0x1000200ef0b0: f9 f9 f9 f9 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef0c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef0d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>>   0x1000200ef0e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>>
>> Shadow byte legend (one shadow byte represents 8 application bytes):
>
> This is weird. According to the report, there are three globals
> aligned on 32 bytes:
> str1 of size 28 starting at 0x1007784a0 and containing "appMode"
> (shadow bytes f9f9f904)
> str3 of size 19 starting at 0x1007784c0 and containing "ctestOptions"
> (shadow bytes f9f903f9)
> str5 of size 13 starting at 0x1007784e0 and containing "ctestString"
> (shadow bytes f905f9f9)
>
> For some reason the leading shadow bytes of the globals are set to f9
> instead of 00.
>
> Do you have a reproducer that doesn't contain proprietary code?
>
>>   Addressable:           00
>>
>>   Partially addressable: 01 02 03 04 05 06 07
>>
>>   Heap left redzone:       fa
>>
>>   Heap right redzone:      fb
>>
>>   Freed heap region:       fd
>>
>>   Stack left redzone:      f1
>>
>>   Stack mid redzone:       f2
>>
>>   Stack right redzone:     f3
>>
>>   Stack partial redzone:   f4
>>
>>   Stack after return:      f5
>>
>>   Stack use after scope:   f8
>>
>>   Global redzone:          f9
>>
>>   Global init order:       f6
>>
>>   Poisoned by user:        f7
>>
>>   Contiguous container OOB:fc
>>
>>   ASan internal:           fe
>>
>> ==13800==ABORTING
>>
>> On Monday, February 17, 2014 11:53:37 PM UTC+8, Alexander Potapenko wrote:
>>>
>>> 1. This is an actual global buffer overflow. This means that the
>>> program tried to read past the end of a global string.
>>> fun:memcmp won't help because we don't compile memcmp (it's in the
>>> system library), but wrap in with our interceptor (aka wrap_memcmp)
>>> that checks the validity of memory.
>>> You can disable checks in memcmp by setting the ASAN_OPTIONS env var
>>> to "replace_intrin=0", but this may mask other bugs.
>>>
>>> 2. Please refer to http://clang.llvm.org/docs/AddressSanitizer.html
>>> for the instructions on report symbolization.
>>> Note that your report contains only library functions for which Apple
>>> doesn't provide the debug information. Is this a full report?
>>>
>>>
>>> On Mon, Feb 17, 2014 at 7:29 AM, laser <sjzw...@gmail.com> wrote:
>>> > I got the flollowing global-buffer-overflow issue after I replace the
>>> > clang
>>> > from pre-built binary build to build a llvm/clang with my-self
>>> >
>>> > I have two questions:
>>> >
>>> > 1. What's the problem, how to bypass the issue?
>>> > I have set fun:wrap_memcmp in the blacklist
>>> > -fsanitize-blacklist=blacklist.txt but still doesnt' work.
>>> >
>>> > 2. How can I get the code line number?
>>> >  -gdwarf-2 -g  have set in compile flag.
>>> >
>>> > Many Thanks!
>>> >
>>> > =================================================================
>>> > ==12807==ERROR: AddressSanitizer: global-buffer-overflow on address
>>> > 0x0001007784c0 at pc 0x100a3f594 bp 0x7fff5fbfe310 sp 0x7fff5fbfe2d8
>>> > READ of size 18 at 0x0001007784c0 thread T0
>>> >     #0 0x100a3f593 in wrap_memcmp
>>> >
>>> > (/Users/oupeng/llvm/Release+Asserts/lib/clang/3.5/lib/darwin/libclang_rt.asan_osx_dynamic.dylib+0x16593)
>>> >     #1 0x7fff8f40cd56 in __CFStringEqual
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0xfd56)
>>> >     #2 0x7fff8f40cbd7 in CFEqual
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0xfbd7)
>>> >     #3 0x7fff8f40c928 in __CFDictionaryStandardEquateKeys
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0xf928)
>>> >     #4 0x7fff8f3ff404 in CFBasicHashFindBucket
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x2404)
>>> >     #5 0x7fff8f3fec05 in CFDictionaryGetValue
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x1c05)
>>> >     #6 0x7fff8f576aac in -[CFPrefsPlistSource copyValueForKey:]
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x179aac)
>>> >     #7 0x7fff8f575a32 in -[CFPrefsSearchListSource copyValueForKey:]
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x178a32)
>>> >     #8 0x7fff8f57189f in __CFPreferencesCopyAppValue_block_invoke_0
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x17489f)
>>> >     #9 0x7fff8f575007 in +[CFPrefsSearchListSource
>>> > withSearchListForIdentifier:perform:]
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x178007)
>>> >     #10 0x7fff8f44a9c9 in CFPreferencesCopyAppValue
>>> >
>>> > (/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation+0x4d9c9)
>>> >     #11 0x7fff8efe9aef in -[NSUserDefaults(NSUserDefaults)
>>> > objectForKey:]
>>> >
>>> > (/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation+0x49aef)
>>> >     #12 0x7fff8efeca88 in -[NSUserDefaults(NSUserDefaults)
>>> > integerForKey:]
>>> >
>>> > (/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation+0x4ca88)
>>> >
>>> > --------------------------
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > On Friday, February 14, 2014 8:17:34 AM UTC+8, laser wrote:
>>> >>
>>> >> Load command 0
>>> >>       cmd LC_SEGMENT_64
>>> >>   cmdsize 72
>>> >>   segname __PAGEZERO
>>> >>    vmaddr 0x0000000000000000
>>> >>    vmsize 0x0000000100000000
>>> >>   fileoff 0
>>> >>  filesize 0
>>> >>   maxprot 0x00000000
>>> >>  initprot 0x00000000
>>> >>    nsects 0
>>> >>     flags 0x0
>>> >> Load command 1
>>> >>       cmd LC_SEGMENT_64
>>> >>   cmdsize 1032
>>> >>   segname __TEXT
>>> >>    vmaddr 0x0000000100000000
>>> >>    vmsize 0x00000000008b6000
>>> >>   fileoff 0
>>> >>  filesize 9134080
>>> >>   maxprot 0x00000007
>>> >>  initprot 0x00000005
>>> >>    nsects 12
>>> >>     flags 0x0
>>> >> Section
>>> >>   sectname __text
>>> >>    segname __TEXT
>>> >>       addr 0x0000000100002080
>>> >>       size 0x00000000007159c7
>>> >>     offset 8320
>>> >>      align 2^6 (64)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x80000400
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __stubs
>>> >>    segname __TEXT
>>> >>       addr 0x0000000100717a48
>>> >>       size 0x00000000000011ca
>>> >>     offset 7436872
>>> >>      align 2^1 (2)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x80000408
>>> >>  reserved1 0 (index into indirect symbol table)
>>> >>  reserved2 6 (size of stubs)
>>> >> Section
>>> >>   sectname __stub_helper
>>> >>    segname __TEXT
>>> >>       addr 0x0000000100718c14
>>> >>       size 0x0000000000001370
>>> >>     offset 7441428
>>> >>      align 2^2 (4)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x80000400
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __const
>>> >>    segname __TEXT
>>> >>       addr 0x0000000100719fa0
>>> >>       size 0x000000000008d204
>>> >>     offset 7446432
>>> >>      align 2^5 (32)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __cstring
>>> >>    segname __TEXT
>>> >>       addr 0x00000001007a71b0
>>> >>       size 0x000000000005f79a
>>> >>     offset 8024496
>>> >>      align 2^4 (16)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000002
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_methname
>>> >>    segname __TEXT
>>> >>       addr 0x000000010080694a
>>> >>       size 0x000000000000654e
>>> >>     offset 8415562
>>> >>      align 2^0 (1)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000002
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_classname
>>> >>    segname __TEXT
>>> >>       addr 0x000000010080ce98
>>> >>       size 0x00000000000005f7
>>> >>     offset 8441496
>>> >>      align 2^0 (1)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000002
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_methtype
>>> >>    segname __TEXT
>>> >>       addr 0x000000010080d48f
>>> >>       size 0x0000000000001f74
>>> >>     offset 8443023
>>> >>      align 2^0 (1)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000002
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __gcc_except_tab
>>> >>    segname __TEXT
>>> >>       addr 0x000000010080f404
>>> >>       size 0x000000000000bcd4
>>> >>     offset 8451076
>>> >>      align 2^2 (4)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __ustring
>>> >>    segname __TEXT
>>> >>       addr 0x000000010081b0e0
>>> >>       size 0x00000000000000ce
>>> >>     offset 8499424
>>> >>      align 2^4 (16)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __unwind_info
>>> >>    segname __TEXT
>>> >>       addr 0x000000010081b1ae
>>> >>       size 0x0000000000006df4
>>> >>     offset 8499630
>>> >>      align 2^0 (1)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __eh_frame
>>> >>    segname __TEXT
>>> >>       addr 0x0000000100821fa8
>>> >>       size 0x0000000000094050
>>> >>     offset 8527784
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Load command 2
>>> >>       cmd LC_SEGMENT_64
>>> >>   cmdsize 1752
>>> >>   segname __DATA
>>> >>    vmaddr 0x00000001008b6000
>>> >>    vmsize 0x0000000000089000
>>> >>   fileoff 9134080
>>> >>  filesize 528384
>>> >>   maxprot 0x00000007
>>> >>  initprot 0x00000003
>>> >>    nsects 21
>>> >>     flags 0x0
>>> >> Section
>>> >>   sectname __program_vars
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b6000
>>> >>       size 0x0000000000000028
>>> >>     offset 9134080
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __nl_symbol_ptr
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b6028
>>> >>       size 0x0000000000000010
>>> >>     offset 9134120
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000006
>>> >>  reserved1 759 (index into indirect symbol table)
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __got
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b6038
>>> >>       size 0x0000000000000298
>>> >>     offset 9134136
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000006
>>> >>  reserved1 761 (index into indirect symbol table)
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __la_symbol_ptr
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b62d0
>>> >>       size 0x00000000000017b8
>>> >>     offset 9134800
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000007
>>> >>  reserved1 844 (index into indirect symbol table)
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __mod_init_func
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b7a88
>>> >>       size 0x00000000000004d8
>>> >>     offset 9140872
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000009
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __mod_term_func
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b7f60
>>> >>       size 0x00000000000003d8
>>> >>     offset 9142112
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x0000000a
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_classlist
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b8338
>>> >>       size 0x0000000000000198
>>> >>     offset 9143096
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x10000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_catlist
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b84d0
>>> >>       size 0x0000000000000030
>>> >>     offset 9143504
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x10000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_protolist
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b8500
>>> >>       size 0x0000000000000028
>>> >>     offset 9143552
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_imageinfo
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b8528
>>> >>       size 0x0000000000000008
>>> >>     offset 9143592
>>> >>      align 2^2 (4)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_const
>>> >>    segname __DATA
>>> >>       addr 0x00000001008b8530
>>> >>       size 0x000000000000ca78
>>> >>     offset 9143600
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_selrefs
>>> >>    segname __DATA
>>> >>       addr 0x00000001008c4fa8
>>> >>       size 0x0000000000001c38
>>> >>     offset 9195432
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x10000005
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_classrefs
>>> >>    segname __DATA
>>> >>       addr 0x00000001008c6be0
>>> >>       size 0x0000000000000300
>>> >>     offset 9202656
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x10000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_superrefs
>>> >>    segname __DATA
>>> >>       addr 0x00000001008c6ee0
>>> >>       size 0x0000000000000178
>>> >>     offset 9203424
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x10000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_data
>>> >>    segname __DATA
>>> >>       addr 0x00000001008c7058
>>> >>       size 0x0000000000000ff0
>>> >>     offset 9203800
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __data
>>> >>    segname __DATA
>>> >>       addr 0x00000001008c8060
>>> >>       size 0x000000000003eccc
>>> >>     offset 9207904
>>> >>      align 2^5 (32)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __cfstring
>>> >>    segname __DATA
>>> >>       addr 0x0000000100906d30
>>> >>       size 0x0000000000001760
>>> >>     offset 9465136
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __objc_ivar
>>> >>    segname __DATA
>>> >>       addr 0x0000000100908490
>>> >>       size 0x00000000000006f0
>>> >>     offset 9471120
>>> >>      align 2^3 (8)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __const
>>> >>    segname __DATA
>>> >>       addr 0x0000000100908b80
>>> >>       size 0x000000000002d9b8
>>> >>     offset 9472896
>>> >>      align 2^5 (32)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000000
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __common
>>> >>    segname __DATA
>>> >>       addr 0x0000000100936540
>>> >>       size 0x00000000000000d4
>>> >>     offset 0
>>> >>      align 2^5 (32)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000001
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Section
>>> >>   sectname __bss
>>> >>    segname __DATA
>>> >>       addr 0x0000000100936620
>>> >>       size 0x0000000000008560
>>> >>     offset 0
>>> >>      align 2^5 (32)
>>> >>     reloff 0
>>> >>     nreloc 0
>>> >>      flags 0x00000001
>>> >>  reserved1 0
>>> >>  reserved2 0
>>> >> Load command 3
>>> >>       cmd LC_SEGMENT_64
>>> >>   cmdsize 72
>>> >>   segname __LINKEDIT
>>> >>    vmaddr 0x000000010093f000
>>> >>    vmsize 0x00000000001dd000
>>> >>   fileoff 9662464
>>> >>  filesize 1951076
>>> >>   maxprot 0x00000007
>>> >>  initprot 0x00000001
>>> >>    nsects 0
>>> >>     flags 0x0
>>> >> Load command 4
>>> >>             cmd LC_DYLD_INFO_ONLY
>>> >>         cmdsize 48
>>> >>      rebase_off 0
>>> >>     rebase_size 0
>>> >>        bind_off 9662464
>>> >>       bind_size 5520
>>> >>   weak_bind_off 9667984
>>> >>  weak_bind_size 14616
>>> >>   lazy_bind_off 9682600
>>> >>  lazy_bind_size 11264
>>> >>      export_off 9693864
>>> >>     export_size 208200
>>> >> Load command 5
>>> >>      cmd LC_SYMTAB
>>> >>  cmdsize 24
>>> >>   symoff 9921608
>>> >>    nsyms 47112
>>> >>   stroff 10681812
>>> >>  strsize 931728
>>> >> Load command 6
>>> >>             cmd LC_DYSYMTAB
>>> >>         cmdsize 80
>>> >>       ilocalsym 0
>>> >>       nlocalsym 38097
>>> >>      iextdefsym 38097
>>> >>      nextdefsym 8376
>>> >>       iundefsym 46473
>>> >>       nundefsym 639
>>> >>          tocoff 0
>>> >>            ntoc 0
>>> >>       modtaboff 0
>>> >>         nmodtab 0
>>> >>    extrefsymoff 0
>>> >>     nextrefsyms 0
>>> >>  indirectsymoff 10675400
>>> >>   nindirectsyms 1603
>>> >>       extreloff 0
>>> >>         nextrel 0
>>> >>       locreloff 0
>>> >>         nlocrel 0
>>> >> Load command 7
>>> >>           cmd LC_LOAD_DYLINKER
>>> >>       cmdsize 32
>>> >>          name /usr/lib/dyld (offset 12)
>>> >> Load command 8
>>> >>      cmd LC_UUID
>>> >>  cmdsize 24
>>> >>     uuid D90F6E36-AC16-38F7-AE77-B0134B774146
>>> >> Load command 9
>>> >>       cmd LC_VERSION_MIN_MACOSX
>>> >>   cmdsize 16
>>> >>   version 10.6
>>> >>       sdk n/a
>>> >> Load command 10
>>> >>         cmd LC_UNIXTHREAD
>>> >>     cmdsize 184
>>> >>      flavor x86_THREAD_STATE64
>>> >>       count x86_THREAD_STATE64_COUNT
>>> >>    rax  0x0000000000000000 rbx 0x0000000000000000 rcx
>>> >> 0x0000000000000000
>>> >>    rdx  0x0000000000000000 rdi 0x0000000000000000 rsi
>>> >> 0x0000000000000000
>>> >>    rbp  0x0000000000000000 rsp 0x0000000000000000 r8
>>> >> 0x0000000000000000
>>> >>     r9  0x0000000000000000 r10 0x0000000000000000 r11
>>> >> 0x0000000000000000
>>> >>    r12  0x0000000000000000 r13 0x0000000000000000 r14
>>> >> 0x0000000000000000
>>> >>    r15  0x0000000000000000 rip 0x0000000100002080
>>> >> rflags  0x0000000000000000 cs  0x0000000000000000 fs
>>> >> 0x0000000000000000
>>> >>     gs  0x0000000000000000
>>> >> Load command 11
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 80
>>> >>          name @executable_path/../Frameworks/libglib-2.0.0.dylib
>>> >> (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 2201.1.0
>>> >> compatibility version 2201.0.0
>>> >> Load command 12
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 80
>>> >>          name @executable_path/../Frameworks/libgobject-2.0.0.dylib
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 2201.1.0
>>> >> compatibility version 2201.0.0
>>> >> Load command 13
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 80
>>> >>          name @executable_path/../Frameworks/libgmodule-2.0.0.dylib
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 2201.1.0
>>> >> compatibility version 2201.0.0
>>> >> Load command 14
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 80
>>> >>          name @executable_path/../Frameworks/libgthread-2.0.0.dylib
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 2201.1.0
>>> >> compatibility version 2201.0.0
>>> >> Load command 15
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 80
>>> >>          name @executable_path/../Frameworks/libintl.8.0.2.dylib
>>> >> (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 9.2.0
>>> >> compatibility version 9.0.0
>>> >> Load command 16
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 56
>>> >>          name /usr/lib/libSystem.B.dylib (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 1197.1.1
>>> >> compatibility version 1.0.0
>>> >> Load command 17
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 72
>>> >>          name @executable_path/../Frameworks/libcrtbora.dylib (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 0.0.0
>>> >> compatibility version 0.0.0
>>> >> Load command 18
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 56
>>> >>          name /usr/lib/libxml2.2.dylib (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 10.9.0
>>> >> compatibility version 10.0.0
>>> >> Load command 19
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 48
>>> >>          name /usr/lib/libz.1.dylib (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 1.2.5
>>> >> compatibility version 1.0.0
>>> >> Load command 20
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 56
>>> >>          name /usr/lib/libstdc++.6.dylib (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 60.0.0
>>> >> compatibility version 7.0.0
>>> >> Load command 21
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 88
>>> >>          name
>>> >> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 1265.0.0
>>> >> compatibility version 45.0.0
>>> >> Load command 22
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 88
>>> >>          name
>>> >> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 157.0.0
>>> >> compatibility version 2.0.0
>>> >> Load command 23
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 88
>>> >>          name
>>> >> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 20.0.0
>>> >> compatibility version 1.0.0
>>> >> Load command 24
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 96
>>> >>          name
>>> >> /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
>>> >> (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 481.0.0
>>> >> compatibility version 1.0.0
>>> >> Load command 25
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 104
>>> >>          name
>>> >>
>>> >> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 59.0.0
>>> >> compatibility version 1.0.0
>>> >> Load command 26
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 104
>>> >>          name
>>> >>
>>> >> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 855.11.0
>>> >> compatibility version 150.0.0
>>> >> Load command 27
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 96
>>> >>          name
>>> >> /System/Library/Frameworks/Security.framework/Versions/A/Security
>>> >> (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 55471.0.0
>>> >> compatibility version 1.0.0
>>> >> Load command 28
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 112
>>> >>          name
>>> >>
>>> >> /System/Library/Frameworks/SecurityInterface.framework/Versions/A/SecurityInterface
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 55047.0.0
>>> >> compatibility version 1.0.0
>>> >> Load command 29
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 112
>>> >>          name
>>> >>
>>> >> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 596.12.0
>>> >> compatibility version 1.0.0
>>> >> Load command 30
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 128
>>> >>          name
>>> >>
>>> >> /users/laser/Downloads/clang3.4-darwin/lib/clang/3.4/lib/darwin/libclang_rt.asan_osx_dynamic.dylib
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 0.0.0
>>> >> compatibility version 0.0.0
>>> >> Load command 31
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 56
>>> >>          name /usr/lib/libobjc.A.dylib (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 228.0.0
>>> >> compatibility version 1.0.0
>>> >> Load command 32
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 104
>>> >>          name
>>> >>
>>> >> /System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 600.0.0
>>> >> compatibility version 64.0.0
>>> >> Load command 33
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 96
>>> >>          name
>>> >> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
>>> >> (offset 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 1056.0.0
>>> >> compatibility version 300.0.0
>>> >> Load command 34
>>> >>           cmd LC_LOAD_DYLIB
>>> >>       cmdsize 96
>>> >>          name
>>> >> /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
>>> >> (offset
>>> >> 24)
>>> >>    time stamp 2 Thu Jan  1 08:30:02 1970
>>> >>       current version 673.0.3
>>> >> compatibility version 1.0.0
>>> >> Load command 35
>>> >>       cmd LC_FUNCTION_STARTS
>>> >>   cmdsize 16
>>> >>   dataoff 9902064
>>> >>  datasize 19544
>>> >>
>>> >> On Thursday, February 13, 2014 7:57:14 PM UTC+8, Alexander Potapenko
>>> >> wrote:
>>> >>>
>>> >>> Can you please attach the output of otool -l for you binary?
>>> >>>
>>> >>> On Thu, Feb 13, 2014 at 3:47 PM, laser <sjzw...@gmail.com> wrote:
>>> >>> > Hi experts,
>>> >>> >
>>> >>> > I got the following error when run my app with Asan in Mac OS, Could
>>> >>> > you
>>> >>> > take a look what's the problem? It is likely a asan related issue,
>>> >>> > how
>>> >>> > to
>>> >>> > bypass it?
>>> >>> >
>>> >>> >
>>> >>> > ==23202==ERROR: AddressSanitizer: heap-use-after-free on address
>>> >>> > 0x6110000f4450 at pc 0x10019379f bp 0x7fff5fbfa190 sp 0x7fff5fbfa188
>>> >>> > WRITE of size 8 at 0x6110000f4450 thread T0
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_common.cc:215
>>> >>> > "((n_ranges_)) < ((kMaxNumberOfAddressRanges))" (0x6, 0x6)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > ==23202==AddressSanitizer CHECK failed:
>>> >>> >
>>> >>> >
>>> >>> > /Users/macs/Developer/llvm/final/llvm.src/projects/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc:335
>>> >>> > "((owner_)) != (((uptr)pthread_self()))" (0x7fff7c459180,
>>> >>> > 0x7fff7c459180)
>>> >>> > Segmentation fault: 11
>>> >>> >
>>> >>> > Thanks!
>>> >>> >
>>> >>> > --
>>> >>> > You received this message because you are subscribed to the Google
>>> >>> > Groups
>>> >>> > "address-sanitizer" group.
>>> >>> > To unsubscribe from this group and stop receiving emails from it,
>>> >>> > send
>>> >>> > an
>>> >>> > email to address-saniti...@googlegroups.com.
>>> >>> > For more options, visit https://groups.google.com/groups/opt_out.
>>> >>>
>>> >>>
>>> >>>
>>> >>> --
>>> >>> Alexander Potapenko
>>> >>> Software Engineer
>>> >>> Google Moscow
>>> >
>>> > --
>>> > You received this message because you are subscribed to the Google
>>> > Groups
>>> > "address-sanitizer" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send
>>> > an
>>> > email to address-saniti...@googlegroups.com.
>>> > For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>>
>>>
>>> --
>>> Alexander Potapenko
>>> Software Engineer
>>> Google Moscow
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "address-sanitizer" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to address-sanitizer+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>
> --
> Alexander Potapenko
> Software Engineer
> Google Moscow



-- 
Alexander Potapenko
Software Engineer
Google Moscow

-- 
You received this message because you are subscribed to the Google Groups 
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to address-sanitizer+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to