https://bugs.kde.org/show_bug.cgi?id=441615
Bug ID: 441615 Summary: Unsupported clone() flags: 0x1210900 Product: valgrind Version: 3.15 SVN Platform: Android OS: Android 9.x Status: REPORTED Severity: normal Priority: NOR Component: memcheck Assignee: jsew...@acm.org Reporter: yitu...@163.com Target Milestone: --- I tried to compile valgrind (version 3.17.0) with aarch64-linux-android-gcc (ndkr10c), and I was totally following the steps from README.android. The compiling process was correct though, the Valgrind seeems crashed with error information `Unsupported clone() flags: 0x1210900` (the full error information is listed as below). I also tested it in x86-64 platform, in which it works well. In addition, I modified some part of valgrind according to ctgring in order to test if a program is constant time. Therefore I tested pure valgrind with the same program on the android platform, it also crashed with the same error unfortunately. Does anyone get the solution yet? $ valgrind ./a.out ==11685== Memcheck, a memory error detector ==11685== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==11685== Using Valgrind-3.17.0 and LibVEX; rerun with -h for copyright info ==11685== Command: ./a.out ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D1D9C: __dl_strchr (in /system/bin/linker64) ==11685== by 0x40F8B53: __dl__ZNK7android10properties16PropertyInfoArea22GetPropertyInfoIndexesEPKcPjS4_ (in /system/bin/linker64) ==11685== by 0x40F5DBB: __dl__ZN18ContextsSerialized18GetPropAreaForNameEPKc (in /system/bin/linker64) ==11685== by 0x40E8BF7: __dl__ZN16SystemProperties4FindEPKc (in /system/bin/linker64) ==11685== by 0x4036B97: __dl__ZN7android4base11GetPropertyERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES9_ (in /system/bin/linker64) ==11685== by 0x402796F: __dl__ZN6Config23get_vndk_version_stringEc (in /system/bin/linker64) ==11685== by 0x401C0B3: __dl__Z23init_default_namespacesPKc (in /system/bin/linker64) ==11685== by 0x402B633: __dl___linker_init (in /system/bin/linker64) ==11685== by 0x40320DF: __dl__start (in /system/bin/linker64) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D1D9C: __dl_strchr (in /system/bin/linker64) ==11685== by 0x40F652F: __dl__ZN9prop_area13find_propertyEP7prop_btPKcjS3_jb (in /system/bin/linker64) ==11685== by 0x4036B97: __dl__ZN7android4base11GetPropertyERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES9_ (in /system/bin/linker64) ==11685== by 0x402796F: __dl__ZN6Config23get_vndk_version_stringEc (in /system/bin/linker64) ==11685== by 0x401C0B3: __dl__Z23init_default_namespacesPKc (in /system/bin/linker64) ==11685== by 0x402B633: __dl___linker_init (in /system/bin/linker64) ==11685== by 0x40320DF: __dl__start (in /system/bin/linker64) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D2070: __dl_strlen (in /system/bin/linker64) ==11685== by 0x40335C3: __dl_async_safe_write_log (in /system/bin/linker64) ==11685== by 0x403382B: __dl_async_safe_format_log (in /system/bin/linker64) ==11685== by 0x40168CB: __dl__ZN6soinfo13prelink_imageEv (in /system/bin/linker64) ==11685== by 0x4015C07: __dl__Z14find_librariesP19android_namespace_tP6soinfoPKPKcmPS2_PNSt3__16vectorIS2_NS8_9allocatorIS2_EEEEmiPK17android_dlextinfobbPNS9_IS0_NSA_IS0_EEEE (in /system/bin/linker64) ==11685== by 0x402B7EF: __dl___linker_init (in /system/bin/linker64) ==11685== by 0x40320DF: __dl__start (in /system/bin/linker64) ==11685== ==11685== Syscall param writev(vector) points to uninitialised byte(s) ==11685== at 0x40DB968: __dl_writev (in /system/bin/linker64) ==11685== by 0x40335DB: __dl_async_safe_write_log (in /system/bin/linker64) ==11685== by 0x403382B: __dl_async_safe_format_log (in /system/bin/linker64) ==11685== by 0x40168CB: __dl__ZN6soinfo13prelink_imageEv (in /system/bin/linker64) ==11685== by 0x4015C07: __dl__Z14find_librariesP19android_namespace_tP6soinfoPKPKcmPS2_PNSt3__16vectorIS2_NS8_9allocatorIS2_EEEEmiPK17android_dlextinfobbPNS9_IS0_NSA_IS0_EEEE (in /system/bin/linker64) ==11685== by 0x402B7EF: __dl___linker_init (in /system/bin/linker64) ==11685== by 0x40320DF: __dl__start (in /system/bin/linker64) ==11685== Address 0x1ffeffe990 is on thread 1's stack ==11685== in frame #1, created by __dl_async_safe_write_log (???:) ==11685== WARNING: linker: Warning: "/data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/vgpreload_core-arm64-linux.so" has unsupported flags DT_FLAGS_1=0x421 (ignoring unsupported flags) WARNING: linker: Warning: "/data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/vgpreload_memcheck-arm64-linux.so" has unsupported flags DT_FLAGS_1=0x421 (ignoring unsupported flags) ==11685== Source and destination overlap in memcpy(0x4baf768, 0x4baf768, 104) ==11685== at 0x4A62F60: memcpy (vg_replace_strmem.c:1051) ==11685== by 0x4B625E3: ??? (in /system/lib64/libc.so) ==11685== ==11685== Invalid read of size 16 ==11685== at 0x4ABBD78: ??? (in /system/lib64/libc.so) ==11685== Address 0x4c4aba0 is 16 bytes before a block of size 4,096 alloc'd ==11685== at 0x4A5AA48: malloc (vg_replace_malloc.c:380) ==11685== by 0x4B15A6B: ??? (in /system/lib64/libc.so) ==11685== ==11685== Invalid read of size 8 ==11685== at 0x4B51DF4: ??? (in /system/lib64/libc.so) ==11685== Address 0x4c00260 is not stack'd, malloc'd or (recently) free'd ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D2000: __dl_strlen (in /system/bin/linker64) ==11685== by 0x4032667: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x4032688: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x4032740: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D1540: __dl_memcpy (in /system/bin/linker64) ==11685== by 0x403278B: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D1584: __dl_memcpy (in /system/bin/linker64) ==11685== by 0x403278B: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Use of uninitialised value of size 8 ==11685== at 0x40D158C: __dl_memcpy (in /system/bin/linker64) ==11685== by 0x403278B: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Use of uninitialised value of size 8 ==11685== at 0x40D1594: __dl_memcpy (in /system/bin/linker64) ==11685== by 0x403278B: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Use of uninitialised value of size 8 ==11685== at 0x4032798: __dl__ZL11out_vformatI18BufferOutputStreamEvRT_PKcSt9__va_list (in /system/bin/linker64) ==11685== by 0x4032B7F: __dl_async_safe_format_buffer (in /system/bin/linker64) ==11685== by 0x4033F5F: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Conditional jump or move depends on uninitialised value(s) ==11685== at 0x40D2070: __dl_strlen (in /system/bin/linker64) ==11685== by 0x40335C3: __dl_async_safe_write_log (in /system/bin/linker64) ==11685== by 0x403382B: __dl_async_safe_format_log (in /system/bin/linker64) ==11685== by 0x4034043: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== ==11685== Syscall param writev(vector) points to uninitialised byte(s) ==11685== at 0x40DB968: __dl_writev (in /system/bin/linker64) ==11685== by 0x40335DB: __dl_async_safe_write_log (in /system/bin/linker64) ==11685== by 0x403382B: __dl_async_safe_format_log (in /system/bin/linker64) ==11685== by 0x4034043: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) ==11685== Address 0x4143b50 is on thread 1's stack ==11685== in frame #1, created by __dl_async_safe_write_log (???:) ==11685== ==11685== Unsupported clone() flags: 0x1210900 ==11685== ==11685== The only supported clone() uses are: ==11685== - via a threads library (LinuxThreads or NPTL) ==11685== - via the implementation of fork or vfork ==11685== ==11685== Valgrind detected that your program requires ==11685== the following unimplemented functionality: ==11685== Valgrind does not support general clone(). ==11685== This may be because the functionality is hard to implement, ==11685== or because no reasonable program would behave this way, ==11685== or because nobody has yet needed it. In any case, let us know at ==11685== www.valgrind.org and/or try to work around the problem, if you can. ==11685== ==11685== Valgrind has to exit now. Sorry. Bye! ==11685== sched status: running_tid=1 Thread 1: status = VgTs_Runnable syscall 220 (lwpid 11685) ==11685== at 0x40E899C: __dl___bionic_clone (in /system/bin/linker64) ==11685== by 0x40D3297: __dl_clone (in /system/bin/linker64) ==11685== by 0x40340CB: __dl__ZL24debuggerd_signal_handleriP7siginfoPv (in /system/bin/linker64) ==11685== by 0x4C6DBF: ??? (in /data/local/tmp/security-check/constant-time/valgrind-ctgrind-android-out/libexec/valgrind/memcheck-arm64-linux) -- You are receiving this mail because: You are watching all bug changes.