[strongSwan-dev] Android x86 crash

Alexander Sbitnev alexander.sbitnev at gmail.com
Thu Oct 23 12:22:39 CEST 2014


Thanks for your response Tobias!
It is also works fine with android 5.0 x86_64.

On 10/20/2014 09:31 PM, Tobias Brunner wrote:
> Hi Alexander,
>
>>     Just tried to compile client for android and found it is not working
>> under x86 emulator.
>> As soon as you try to connect to peer it crash inside native code
>> loading dynamic symbols.
>> I suppose it can be google fault as Qt folks experienced similar kind of
>> problems:
>> https://bugreports.qt-project.org/browse/QTBUG-37211
>>
>> ARM emulator looks to be immune to this problem but it boringly slow. :(
>>
>> My question is it a known problem?
> I wasn't aware of this.  Which is partially due to problems I had in
> getting a 4.4.2 emulator image running at all for a while.
>
>> I/DEBUG   (  924):     #00  pc 00006ac8  /system/bin/linker
>> (__dl__Z19dlsym_linear_lookupPKcPP6soinfoS2_+216)
>> I/DEBUG   (  924):     #01  pc 00001265  /system/bin/linker (__dl_dlsym+325)
>> I/DEBUG   (  924):     #02  pc 000510d7
>> /data/app-lib/org.strongswan.android-2/libstrongswan.so
> The crash happens when the plugin loader tries to resolve the
> constructor function of the first plugin (android_log_plugin_create).
> Apparently dlsym() causes a SIGFPE that crashes the process.
>
> I did some experiments and the only way to avoid the crash and to find
> the symbol on the 4.4.2 x86 emulator image is by dlopen()-ing the
> library and then passing the returned handle to dlsym().  Calling
> dlsym() with RTLD_DEFAULT, as we do, does not work, even though the
> symbol is resolved properly when called directly.  So the loader can
> resolve it it's just dlsym() that fails, which seems to indicate that
> it's really just a bug in dlsym() (could actually be this bug [1]).
>
> As is mentioned in the Qt bug report it works on older x86 images (e.g.
> the ones for 4.3 or 4.2.2).  And fortunately it also works in the new
> Android 5.0 x86 image.  So it looks like this was just a temporary issue
> with the 4.4.2 x86 image.
>
> Regards,
> Tobias
>
> [1] https://code.google.com/p/android/issues/detail?id=61799



More information about the Dev mailing list