chromium: update to 117.0.5938.132#757
Conversation
|
@nrpt-m as always, testing would be greatly appreciated! |
bc51b3e to
73455f9
Compare
|
@MaxIhlenfeldt @rakuco
** Have built the rpi4 image successfully & @rwmacleod is testing it on rpi4 board, once done will update here. Next, starting with kirkstone, dunfell & mickledore branches. |
is musl build also part of your test matrix ? |
|
On my RPi4 with 4 GB ram, chromium-117 fails due to an illegal instruction when started as chromium or "chromium 1.1.1.1". I adjusted ulimit -c to allow core dumping but this image doesn't have gdb or gdb-server. @MaxIhlenfeldt What do you suggest that @nrpt-m and I do to debug the issue? FYI, this is the 6.1 kernel and glibc: |
No. |
|
@MaxIhlenfeldt @rakuco
** Have built the rpi4 image successfully & @rwmacleod is testing it on rpi4 board, once done will update here. Have added more error logs in attachment. Next, will start with dunfell & mickledore branches. |
|
@MaxIhlenfeldt @rakuco
** Have built the rpi4 image successfully & @rwmacleod is testing it on rpi4 board, once done will update here. Next, will start with mickledore branch. |
Hm, I'm not sure we can do much without the core dump, is there any way to get it? |
Thanks, I'll take a look! |
|
I think I know what's causing the compile error. Here's the relevant code: static_assert(!DecompressIfNeeded || COMPRESS_POINTERS_BOOL);
// ...
if constexpr (DecompressIfNeeded) {
static_assert(COMPRESS_POINTERS_BOOL);
// ...
}master uses clang 17, which seems to ignore the My suggestion would be to just comment out that |
May it could be fine to comment it for now but, not sure why the build has failed only for qemuarm machine and why not in building other machines ? |
I suppose it's because V8 pointer compression isn't supported on 32-bit ARM (i.e. this is the only platform where |
|
@MaxIhlenfeldt @rakuco
** Have built the rpi4 image successfully & @rwmacleod is testing it on rpi4 board, once done will update here. Could you please comment out that static_assert and add as patch in this PR so that, I can retest it for qemuarm machine in all the failed branches. |
|
We have also observed that the chromium-117 version's tarball size is around 3GB but the earlier versions till chromium-116 version's tarball size was around 1.5GB only. After extracting the tarball, we found that this chromium-117 has rust-src of around 4GB but, earlier versions didn't have it.
|
Done |
Thanks for the heads up. I fear this is more or less expected, but I've asked on the Chromium Slack to be sure. |
@MaxIhlenfeldt |
@MaxIhlenfeldt @rwmacleod |
Can you try a build with diff --git a/meta-chromium/recipes-browser/chromium/chromium-gn.inc b/meta-chromium/recipes-browser/chromium/chromium-gn.inc
index 7d076fe..d9b24c9 100644
--- a/meta-chromium/recipes-browser/chromium/chromium-gn.inc
+++ b/meta-chromium/recipes-browser/chromium/chromium-gn.inc
@@ -193,6 +193,8 @@ GN_ARGS += "is_debug=false is_official_build=true"
# Use lld linker its quicker see https://lld.llvm.org/#performance
GN_ARGS += "use_lld=true use_gold=false"
+# Do not use bundled rust it gets included into final package too
+GN_ARGS += "enable_rust=false"
# By default, passing is_official_build=true to GN causes its symbol_level
# variable to be set to "2". This means the compiler will be passed "-g2" and
# we will end up with a very large chrome binary (around 5Gb as of M58) |
|
@MaxIhlenfeldt can you rebase this pr on top of master please ? |
Don't we already set Will rebase later today, do we want to look into the RPi4 crash @rwmacleod reported before merging? |
It's already set in "chromium-gn.inc" file. |
yes.
In dunfell, For the illegal instruction error, we have changed meta browser to build a version of chromium-116 that is known to work before. Then if the error still happens, it's not chromium but meta-clang likely. Have built the RPI4 images again with chromium-116 for dunfell/kirkstone branches and asked @rwmacleod to test again. |
c472015 to
5d488d2
Compare
Done. |
I am seeing illegal instruction issue with master/chromium-116/musl too. However it works on imx8 device which is also arm64, so I think the tune we use for rpi4 might be problem here. Are you using rpi4-64 ? |
|
Here is backtrace of illegal instruction trap I am seeing |
yes, @rwmacleod is using rpi4-64 for testing. |
OK. Please test this patch on top of this pull and report back pi4 results |
Have built the dunfell rpi4 image on top of this pull and @rwmacleod tested it on rpi4 board. We are still getting illegal instruction error and chromium terminates. |
OK. Atleast this has fixed my problem seen with master branches. So the patch is still good. Perhaps dunfell issue is different. Can you post stack trace? |
Sorry, It was tested by @rwmacleod and he is quite busy. So, we couldn't share the stack trace logs. |
right, I have forward ported patch for it also staged in yoe/mut. |
5d488d2 to
21df2ca
Compare
|
revert is fine too. lgtm |
Release notes:
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_12.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_15.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_21.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_27.html
Build and patch changes:
------------------------
Drop 0032-Backport-ozone-wayland-Fix-nullptr-deref-in-WaylandW.patch as
it's included upstream now.
Drop 0036-Avoid-std-ranges-find_if.patch in favour of the added
0036-Backport-Remove-std-ranges-usage.patch.
Add 0039-Fix-implicitly-deleted-default-constructor-build-err.patch and
0040-Backport-IWYU-for-ui-events-gesture_detection-motion.patch to fix
build errors with clang 14.
Add some more build error fixes to 0021-Add-missing-typename-s.patch,
0028-Avoid-capturing-structured-bindings.patch,
0034-Avoid-parenthesized-initialization-of-aggregates.patch
Rebase remaining patches.
License changes:
----------------
Added licenses:
* third_party/android_toolchain_canary/NOTICE
- https://chromium-review.googlesource.com/c/chromium/src/+/4716779
* third_party/jni_zero/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4722028
* third_party/lss/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4719387
* third_party/mediapipe/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4654795
* third_party/sentencepiece/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4654197
* third_party/zstd/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4617470
Removed licenses:
* third_party/afl/src/docs/COPYING
- https://chromium-review.googlesource.com/c/chromium/src/+/4660956
* third_party/android_system_sdk/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4660595
* third_party/breakpad/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4660211
* third_party/closure_compiler/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663477
* third_party/crubit/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663961
* third_party/flex/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4660658
* third_party/grpc-java/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664003
* third_party/jinja2/LICENSE.rst
- https://chromium-review.googlesource.com/c/chromium/src/+/4664004
* third_party/lcov/COPYING
- https://chromium-review.googlesource.com/c/chromium/src/+/4663705
* third_party/libFuzzer/LICENSE.TXT
- https://chromium-review.googlesource.com/c/chromium/src/+/4659994
* third_party/logilab/logilab/common/LICENSE.txt
- https://chromium-review.googlesource.com/c/chromium/src/+/4663705
* third_party/ply/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664182
* third_party/pyjson5/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664164
* third_party/pylint/pylint/LICENSE.txt
- https://chromium-review.googlesource.com/c/chromium/src/+/4663705
* third_party/pywebsocket3/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664068
* third_party/swift-toolchain/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664070
* third_party/test_fonts/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663738
* third_party/vulkan-deps/glslang/LICENSE,
third_party/vulkan-deps/spirv-cross/src/LICENSE,
third_party/vulkan-deps/vulkan-tools/src/LICENSE.txt,
third_party/vulkan-deps/vulkan-validation-layers/src/LICENSE.txt
- https://chromium-review.googlesource.com/c/vulkan-deps/+/4663836
* third_party/weston/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663994
Updated licenses:
* buildtools/third_party/libc++/trunk/LICENSE.TXT => third_party/libc++/src/LICENSE.TXT,
buildtools/third_party/libc++abi/trunk/LICENSE.TXT => third_party/libc++abi/src/LICENSE.TXT,
buildtools/third_party/libunwind/trunk/LICENSE.TXT => third_party/libunwind/src/LICENSE.TXT
- https://chromium-review.googlesource.com/c/chromium/src/+/4666325
* third_party/devtools-frontend/src/front_end/third_party/acorn/package/LICENSE
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4665529
* third_party/grpc/LICENSE => third_party/grpc/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664062
* third_party/wuffs/LICENSE => third_party/wuffs/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664319
Test-built (big thanks to @nrpt-m):
-----------------------------------
* chromium-ozone-wayland:
- master, clang, MACHINE=qemux86-64
- mickledore, clang, MACHINE=qemuarm64, qemux86-64
- kirkstone, clang, MACHINE=qemux86-64, raspberrypi4-64
- dunfell, clang**, MACHINE=qemux86-64
* chromium-x11
- master, clang, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64
- mickledore, clang, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64
- kirkstone, clang, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64
- dunfell, clang**, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64***
** Please note that Chromium requires below set-up when on dunfell
branch.
- The clang version to be >= 14 and for that, use the latest
meta-clang/dunfell-clang14 branch.
- Require the latest meta-oe with Nodejs 14.x support.
- Add the PREFERRED_VERSION_nodejs-native = "14.%" in conf/local.conf
file.
*** Please note that there currently is a problem on RPi4/dunfell where
Chromium crashes because of an illegal instruction error.
Signed-off-by: Max Ihlenfeldt <max@igalia.com>
21df2ca to
4eeb77d
Compare
|
Updated the commit message and PR description to include all the test results, and merged. Sorry for the delay, and thanks for handling the m116/m117 ARM fix situation! |
Release notes:
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_12.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_15.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_21.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_27.html
Build and patch changes:
------------------------
Drop 0032-Backport-ozone-wayland-Fix-nullptr-deref-in-WaylandW.patch as
it's included upstream now.
Drop 0036-Avoid-std-ranges-find_if.patch in favour of the added
0036-Backport-Remove-std-ranges-usage.patch.
Add 0039-Fix-implicitly-deleted-default-constructor-build-err.patch and
0040-Backport-IWYU-for-ui-events-gesture_detection-motion.patch to fix
build errors with clang 14.
Add some more build error fixes to 0021-Add-missing-typename-s.patch,
0028-Avoid-capturing-structured-bindings.patch,
0034-Avoid-parenthesized-initialization-of-aggregates.patch
Rebase remaining patches.
License changes:
----------------
Added licenses:
* third_party/android_toolchain_canary/NOTICE
- https://chromium-review.googlesource.com/c/chromium/src/+/4716779
* third_party/jni_zero/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4722028
* third_party/lss/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4719387
* third_party/mediapipe/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4654795
* third_party/sentencepiece/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4654197
* third_party/zstd/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4617470
Removed licenses:
* third_party/afl/src/docs/COPYING
- https://chromium-review.googlesource.com/c/chromium/src/+/4660956
* third_party/android_system_sdk/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4660595
* third_party/breakpad/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4660211
* third_party/closure_compiler/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663477
* third_party/crubit/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663961
* third_party/flex/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4660658
* third_party/grpc-java/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664003
* third_party/jinja2/LICENSE.rst
- https://chromium-review.googlesource.com/c/chromium/src/+/4664004
* third_party/lcov/COPYING
- https://chromium-review.googlesource.com/c/chromium/src/+/4663705
* third_party/libFuzzer/LICENSE.TXT
- https://chromium-review.googlesource.com/c/chromium/src/+/4659994
* third_party/logilab/logilab/common/LICENSE.txt
- https://chromium-review.googlesource.com/c/chromium/src/+/4663705
* third_party/ply/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664182
* third_party/pyjson5/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664164
* third_party/pylint/pylint/LICENSE.txt
- https://chromium-review.googlesource.com/c/chromium/src/+/4663705
* third_party/pywebsocket3/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664068
* third_party/swift-toolchain/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664070
* third_party/test_fonts/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663738
* third_party/vulkan-deps/glslang/LICENSE,
third_party/vulkan-deps/spirv-cross/src/LICENSE,
third_party/vulkan-deps/vulkan-tools/src/LICENSE.txt,
third_party/vulkan-deps/vulkan-validation-layers/src/LICENSE.txt
- https://chromium-review.googlesource.com/c/vulkan-deps/+/4663836
* third_party/weston/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4663994
Updated licenses:
* buildtools/third_party/libc++/trunk/LICENSE.TXT => third_party/libc++/src/LICENSE.TXT,
buildtools/third_party/libc++abi/trunk/LICENSE.TXT => third_party/libc++abi/src/LICENSE.TXT,
buildtools/third_party/libunwind/trunk/LICENSE.TXT => third_party/libunwind/src/LICENSE.TXT
- https://chromium-review.googlesource.com/c/chromium/src/+/4666325
* third_party/devtools-frontend/src/front_end/third_party/acorn/package/LICENSE
- https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4665529
* third_party/grpc/LICENSE => third_party/grpc/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664062
* third_party/wuffs/LICENSE => third_party/wuffs/src/LICENSE
- https://chromium-review.googlesource.com/c/chromium/src/+/4664319
Test-built (big thanks to @nrpt-m):
-----------------------------------
* chromium-ozone-wayland:
- master, clang, MACHINE=qemux86-64
- mickledore, clang, MACHINE=qemuarm64, qemux86-64
- kirkstone, clang, MACHINE=qemux86-64, raspberrypi4-64
- dunfell, clang**, MACHINE=qemux86-64
* chromium-x11
- master, clang, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64
- mickledore, clang, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64
- kirkstone, clang, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64
- dunfell, clang**, MACHINE=qemux86-64, qemuarm, qemuarm64, raspberrypi4-64***
** Please note that Chromium requires below set-up when on dunfell
branch.
- The clang version to be >= 14 and for that, use the latest
meta-clang/dunfell-clang14 branch.
- Require the latest meta-oe with Nodejs 14.x support.
- Add the PREFERRED_VERSION_nodejs-native = "14.%" in conf/local.conf
file.
*** Please note that there currently is a problem on RPi4/dunfell where
Chromium crashes because of an illegal instruction error.
Signed-off-by: Max Ihlenfeldt <max@igalia.com>


Release notes:
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_12.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_15.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_21.html
https://chromereleases.googleblog.com/2023/09/stable-channel-update-for-desktop_27.html
Build and patch changes:
Drop 0032-Backport-ozone-wayland-Fix-nullptr-deref-in-WaylandW.patch as
it's included upstream now.
Drop 0036-Avoid-std-ranges-find_if.patch in favour of the added
0036-Backport-Remove-std-ranges-usage.patch.
Add 0039-Fix-implicitly-deleted-default-constructor-build-err.patch and
0040-Backport-IWYU-for-ui-events-gesture_detection-motion.patch to fix
build errors with clang 14.
Add some more build error fixes to 0021-Add-missing-typename-s.patch,
0028-Avoid-capturing-structured-bindings.patch,
0034-Avoid-parenthesized-initialization-of-aggregates.patch
Rebase remaining patches.
License changes:
Added licenses:
Removed licenses:
third_party/vulkan-deps/spirv-cross/src/LICENSE,
third_party/vulkan-deps/vulkan-tools/src/LICENSE.txt,
third_party/vulkan-deps/vulkan-validation-layers/src/LICENSE.txt
Updated licenses:
buildtools/third_party/libc++abi/trunk/LICENSE.TXT => third_party/libc++abi/src/LICENSE.TXT,
buildtools/third_party/libunwind/trunk/LICENSE.TXT => third_party/libunwind/src/LICENSE.TXT
Test-built (big thanks to @nrpt-m):
** Please note that Chromium requires below set-up when on dunfell
branch.
meta-clang/dunfell-clang14 branch.
file.
*** Please note that there currently is a problem on RPi4/dunfell where
Chromium crashes because of an illegal instruction error.
Signed-off-by: Max Ihlenfeldt max@igalia.com