Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

engine: android build SEGFAULTs #2404

Closed
bassosimone opened this issue Feb 2, 2023 · 0 comments · Fixed by ooni/probe-cli#1071
Closed

engine: android build SEGFAULTs #2404

bassosimone opened this issue Feb 2, 2023 · 0 comments · Fixed by ooni/probe-cli#1071
Assignees
Labels
bug Something isn't working interrupt needs investigation This issue needs extra data and investigation ooni/probe-engine ooni/probe-mobile issues related to OONI Probe mobile platform/android priority/high technical task technical tasks e.g. deployment testing

Comments

@bassosimone
Copy link
Contributor

The Android build for 3.17.0-alpha.1 published at 2023.01.27-095434 is completely broken. As soon as you load the shared library, there is a segfault in the app.

I have already investigated. The reason why this happens is that we're using hardening flags involving sanitizers. It seems building using sanitizers produces this SEGFAULT. A previous attempt of mine that was not using sanitizers was WAI.

To fix this issue, therefore, we should recompile without using sanitizers. Ideally, we should use the same hardening flags used by the ndk-build tool. Copying what ndk-build would do is definitely going to be safe.

@bassosimone bassosimone added bug Something isn't working testing ooni/probe-mobile issues related to OONI Probe mobile priority/high technical task technical tasks e.g. deployment platform/android needs investigation This issue needs extra data and investigation ooni/probe-engine labels Feb 2, 2023
@bassosimone bassosimone self-assigned this Feb 2, 2023
bassosimone added a commit to ooni/probe-cli that referenced this issue Feb 3, 2023
It seems using sanitizers leads to builds that SEGFAULT
as soon as we attempt to use the AAR generated by go mobile.

So, let's sync up with the flags used by ndk-build, which
have still some hardening but don't use sanitizers.

While there, run the libtorlinux.yml workflow less frequently
now that we have some confidence it's WAI.

Also, fix the MONOREPO workflow to produce an Android build,
which was using an old makefile target.

Closes ooni/probe#2404
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working interrupt needs investigation This issue needs extra data and investigation ooni/probe-engine ooni/probe-mobile issues related to OONI Probe mobile platform/android priority/high technical task technical tasks e.g. deployment testing
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant