Update to Android NDK r26
Categories
(GeckoView :: General, task, P3)
Tracking
(firefox125 fixed)
Tracking | Status | |
---|---|---|
firefox125 | --- | fixed |
People
(Reporter: cpeterson, Assigned: RyanVM)
References
(Blocks 1 open bug, )
Details
(Whiteboard: [geckoview:2023q4] [geckoview:m122?], [wptsync upstream])
Attachments
(4 files)
The next NDK LTS after r25 (bug 1814734) will be r26, which Google plans to release in 2023 Q3:
https://github.com/android/ndk/wiki#ndk-r26-lts
According to r25's release notes, r26 will drop support for API levels < 21 and the minimum OS supported will be API level 21 (Lollipop 5.0), same as Fenix:
https://github.com/android/ndk/wiki/Changelog-r25
See NDK issue 1751 for details.
Reporter | ||
Updated•10 months ago
|
Reporter | ||
Comment 1•7 months ago
|
||
NDK r26b LTS is now available:
Comment 2•7 months ago
|
||
We have to update webrtc build script when we support NDK r26. I guess that webrtc's BUILD.gn
is a copy from Chromium's, but this doesn't support r26c. From r26, andorid_support is removed.
Updated•7 months ago
|
Assignee | ||
Comment 3•4 months ago
|
||
I'm a bit confused about the status on Google's end now, but it looks like Chromium (and by extension, libwebrtc) is using r26b now?
Comment 4•4 months ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #3)
I'm a bit confused about the status on Google's end now, but it looks like Chromium (and by extension, libwebrtc) is using r26b now?
Yes, now. Actually, webrtc build fiels (into third_party/libwebrtc/build/config
) seems to be from Chromium's build config files. Since NDK r26 removes some shard libraries, we need to modify it. https://searchfox.org/mozilla-central/rev/a030f2013ac6a6b1bd0c95c617899abb7f10f749/third_party/libwebrtc/build/config/android/BUILD.gn#92-98 is removed when upgrading NDK r26 in Chromium.
Assignee | ||
Comment 5•4 months ago
|
||
Assignee | ||
Comment 6•4 months ago
|
||
Assignee | ||
Comment 7•4 months ago
|
||
Assignee | ||
Comment 8•4 months ago
|
||
Updated•4 months ago
|
Assignee | ||
Comment 9•4 months ago
|
||
Comment 10•4 months ago
|
||
Pushed by rvandermeulen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/577745e56c02 Update Android bundletool and commandlinetools to the latest releases. r=geckoview-reviewers,m_kato https://hg.mozilla.org/integration/autoland/rev/072153b2a9fe Update NDK to r26c. r=geckoview-reviewers,m_kato https://hg.mozilla.org/integration/autoland/rev/126552a59648 Remove android_support dependency from libwebrtc. r=webrtc-reviewers,mjf https://hg.mozilla.org/integration/autoland/rev/ba5550494437 Remove android_support dependency from libwebrtc. - moz.build file updates r=webrtc-reviewers,mjf
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/44653 for changes under testing/web-platform/tests
![]() |
||
Comment 12•4 months ago
|
||
Backed out for frequent or permanent task failures on Android:
https://hg.mozilla.org/integration/autoland/rev/cedd2977706a535a83082833fbddbd71e0882d2e
[task 2024-02-19T17:11:24.746Z] Setting test_root to /data/local/tmp/test_root
[task 2024-02-19T17:11:25.741Z] 17:11:25 INFO - Running post-action listener: _resource_record_post_action
[task 2024-02-19T17:11:25.741Z] 17:11:25 INFO - [mozharness: 2024-02-19 17:11:25.741088Z] Finished verify-device step (failed)
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - Uncaught exception: Traceback (most recent call last):
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/mozharness/mozharness/base/script.py", line 2384, in run
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - self.run_action(action)
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/mozharness/mozharness/base/script.py", line 2318, in run_action
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - self._possibly_run_method(method_name, error_if_missing=True)
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/mozharness/mozharness/base/script.py", line 2270, in _possibly_run_method
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - return getattr(self, method_name)()
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/mozharness/mozharness/mozilla/testing/android.py", line 682, in verify_device
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - self.dump_perf_info()
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/mozharness/mozharness/mozilla/testing/android.py", line 318, in dump_perf_info
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - out = self.shell_output(cmd)
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/mozharness/mozharness/mozilla/testing/android.py", line 472, in shell_output
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - return self.device.shell_output(
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 2217, in shell_output
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - raise ADBProcessError(adb_process)
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - mozdevice.adb.ADBProcessError: args: /builds/worker/fetches/android-sdk-linux/platform-tools/adb wait-for-device shell cat /proc/cpuinfo; echo adb_returncode=$?, exitcode: 255, stdout:
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - Running post_fatal callback...
[task 2024-02-19T17:11:25.742Z] 17:11:25 FATAL - Exiting -1
Permanent XPCshell failure log
[task 2024-02-19T17:52:50.405Z] 17:52:50 INFO - TEST-PASS | netwerk/test/unit/test_bug261425.js | took 736ms
[task 2024-02-19T17:52:50.462Z] 17:52:50 INFO - Cleaning up profile for /builds/worker/workspace/build/tests/xpcshell/tests/netwerk/test/unit/test_bug261425.js folder: /data/local/tmp/test_root/xpc/p/2dec126e-1117-4a77-97e5-eea0d845078e
[task 2024-02-19T17:52:50.618Z] 17:52:50 INFO - Following exceptions were raised:
[task 2024-02-19T17:52:50.618Z] 17:52:50 INFO - Traceback (most recent call last):
[task 2024-02-19T17:52:50.618Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/runxpcshelltests.py", line 252, in run
[task 2024-02-19T17:52:50.618Z] 17:52:50 INFO - self.run_test()
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/runxpcshelltests.py", line 1008, in run_test
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - if self.checkForCrashes(self.tempDir, self.symbolsPath, test_name=name):
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/remotexpcshelltests.py", line 346, in checkForCrashes
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - self.device.pull(self.remoteMinidumpDir, dumpDir)
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 3067, in pull
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - self._sync(timeout=timeout)
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 1277, in _sync
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - self.shell_output("sync", timeout=timeout)
[task 2024-02-19T17:52:50.619Z] 17:52:50 INFO - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 2217, in shell_output
[task 2024-02-19T17:52:50.619Z] 17:52:50 CRITICAL - raise ADBProcessError(adb_process)
[task 2024-02-19T17:52:50.619Z] 17:52:50 CRITICAL - mozdevice.adb.ADBProcessError: args: adb wait-for-device shell sync; echo adb_returncode=$?, exitcode: 255, stdout:
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - Traceback (most recent call last):
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/remotexpcshelltests.py", line 790, in <module>
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - main()
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/remotexpcshelltests.py", line 783, in main
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - if not xpcsh.runTests(
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/runxpcshelltests.py", line 1995, in runTests
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - status = self.runTestList(
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/runxpcshelltests.py", line 2236, in runTestList
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - raise exceptions[0]
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/runxpcshelltests.py", line 252, in run
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - self.run_test()
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/runxpcshelltests.py", line 1008, in run_test
[task 2024-02-19T17:52:50.620Z] 17:52:50 INFO - if self.checkForCrashes(self.tempDir, self.symbolsPath, test_name=name):
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - File "/builds/worker/workspace/build/tests/xpcshell/remotexpcshelltests.py", line 346, in checkForCrashes
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - self.device.pull(self.remoteMinidumpDir, dumpDir)
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 3067, in pull
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - self._sync(timeout=timeout)
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 1277, in _sync
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - self.shell_output("sync", timeout=timeout)
[task 2024-02-19T17:52:50.621Z] 17:52:50 INFO - File "/builds/worker/workspace/build/venv/lib/python3.8/site-packages/mozdevice/adb.py", line 2217, in shell_output
[task 2024-02-19T17:52:50.621Z] 17:52:50 CRITICAL - raise ADBProcessError(adb_process)
[task 2024-02-19T17:52:50.621Z] 17:52:50 CRITICAL - mozdevice.adb.ADBProcessError: args: adb wait-for-device shell sync; echo adb_returncode=$?, exitcode: 255, stdout:
[task 2024-02-19T17:52:50.647Z] 17:52:50 INFO - Return code: 1
[task 2024-02-19T17:52:50.647Z] 17:52:50 ERROR - No tests run or test summary not found
Comment 13•4 months ago
|
||
Backed out for causing android failures with "Uncaught exception: Traceback (most recent call last):"
Assignee | ||
Comment 14•4 months ago
•
|
||
Looking at the logs for toolchain-linux64-android-sdk-linux-repack
, we appear to be installing the newly-released release of the Android SDK Platform Tools (34.0.5 was the previous official release). These failures would have presumably burned whoever did the next push that triggered this toolchain to rebuild.
platform-tools | 35.0.0 | Android SDK Platform-Tools | platform-tools
https://firefoxci.taskcluster-artifacts.net/QOGkqQPuS7-EJR6KERLLmA/0/public/logs/live_backing.log
Assignee | ||
Comment 15•4 months ago
•
|
||
Geoff, can you help me debug this? We either need to figure out why android.py doesn't like this new adb version or pin ourselves to the last known-good 34.0.5 release for now (hard to say if this is a bug with the new adb that will get fixed down the road or a real behavior change we'll need to deal with eventually).
Assignee | ||
Comment 16•4 months ago
•
|
||
I can confirm that it's the new platform-tools 35.0.0 package we're picking up transiently in the toolchain rebuild that's breaking things here. The same patch stack which was green on Try last week and shows version 34.0.5 in the build logs is now hitting the same failures this week with version 35.0.0 in the logs. Also, it looks like we have the same issue with the platform-tools package that we had previously with the emulator where older versions are made unavailable when a newer one is released.
Warning: Failed to find package 'platform-tools;34.0.5'
Comment 17•4 months ago
|
||
Pushed by rvandermeulen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/5e5ee04a093c Update Android bundletool and commandlinetools to the latest releases. r=geckoview-reviewers,m_kato https://hg.mozilla.org/integration/autoland/rev/b8c26e3455ec Update NDK to r26c. r=geckoview-reviewers,m_kato https://hg.mozilla.org/integration/autoland/rev/f5c9cd6cc881 Remove android_support dependency from libwebrtc. r=webrtc-reviewers,mjf https://hg.mozilla.org/integration/autoland/rev/6c92ce640dc6 Remove android_support dependency from libwebrtc. - moz.build file updates r=webrtc-reviewers,mjf
Comment 18•4 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/5e5ee04a093c
https://hg.mozilla.org/mozilla-central/rev/b8c26e3455ec
https://hg.mozilla.org/mozilla-central/rev/f5c9cd6cc881
https://hg.mozilla.org/mozilla-central/rev/6c92ce640dc6
![]() |
||
Comment 19•4 months ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #15)
Geoff, can you help me debug this? We either need to figure out why android.py doesn't like this new adb version or pin ourselves to the last known-good 34.0.5 release for now (hard to say if this is a bug with the new adb that will get fixed down the road or a real behavior change we'll need to deal with eventually).
Thanks Ryan. I am looking at this in bug 1881158.
Upstream PR was closed without merging
Upstream PR merged by moz-wptsync-bot
Comment 22•4 months ago
|
||
Pushed by archaeopteryx@coole-files.de: https://hg.mozilla.org/mozilla-central/rev/61cb2b6b27f5 remove android_support dependency from libwebrtc v121. a=bustage-fix
Description
•