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
Patches for v109 #2538
base: master
Are you sure you want to change the base?
Patches for v109 #2538
Conversation
- Remove CachedFeatureFlags#sDefaults https://source.chromium.org/chromium/chromium/src/+/aec86b4698c914db19b33fe3ea1b455cc4fb905f
no code changes, simply moved content_features.cc to features.cc
replaced CachedFeatureFlags.isEnabled(flagname) with ChromeFeatureList.flagname
I detect a problem in the apk in release mode (not debug), in my opinion related to the cfi check (gn flag
the crash also occurs on other devices. |
I confirm that it was necessary to disable all cfi controls in order not to crash. for now I'm trying to figure out if the cause of the error is an improper DSO call, in which case I imagine the solution could be an incorrect |
found it!
|
I stand corrected, I finally found the right way.
|
I fixed that problem, but many many others are arising, too many to be linked simply to the transition to 109, also because they are linked to the chromium code, in parts that we have not touched. |
* 25% stable rollout as of commit date, started Jan 10 2023 * 25% .86 as well, 50% previous stable Patches picked from: * Commit: 21397e931a68bc9e4f4937d1fee108b8bd8e7ca3 "v109 fix move navigation bar to bottom" PR: bromite/bromite#2538 Test: atest CtsHostsideWebViewTests CtsWebkitTestCases --retry-any-failure 3 Change-Id: I3748490e1a6a437cebecb724d95fe41f84a9a240
for the record (and not to drive you crazy searching for the problem, which took me a week), the crash is related to the clang flag |
Thanks for the heads-up, I will try with |
That is a dead-end, |
I will go through them commit-by-commit, thanks. The PR already shows conflicts but ignore them, they are not real conflicts. |
it is a pity that it does not work with cfi, because the idea of relative vtables is interesting and has security implications. see https://llvm.org/devmtg/2021-11/slides/2021-RelativeVTablesinC.pdf I was able to reproduce a small test case that allows me to check the crash without having to recompile all of chromium, so I am looking for what the argument leading to the crash might be. Incidentally I see that there are some arguments we use that are probably not very correct, such as it was also lucky (!) that the vanadium team didn't tell us anything about the crash (they already noticed it in december) because, before the chromium team told me, i figured out how to check manually the changes in the build between majors and also that there is a custom libc++ in chromium (which would probably allow us to insert some grapheneos security patches) and that the crashpad handler is actually an executable masquerading as a library, and it could be useful to those who (aragore, agore ?? I can't find the discussion anymore) had proposed to insert an internal proxy as an executable. |
ah, also saw that we could probably reduce the apk size by deleting a large part of the elf table, like chrome does. we would lose the stack trace in the logcat, but most of the time it's useless and we can rebuild it with the crash file. I will try sooner or later. |
oh, one more thing! we can probably fix AImageReader crash by editing the cfi/ignores.txt file. |
Description
I will try again this time, hopefully with better results.
I have split the patches into different commits, so you can check them separately.
v109 no code changes
no changes, only porting to v109
v109 no code changes (with macros to define base::Features)
no changes, only porting to v109 (patches from Use helper macros to define base::Features #2507)
v109 no code changes (with fix some lost changes after v108)
no changes, but there are changes related to Fix some lost changes after v108 #2508
v109 no code changes (with fix inverted Encode())
no changes, but there are changes related to Patches for v108 #2471 (comment)
v109 no code changes (big patches)
this is the version before the first build, i.e. after the wiggle changes, but before my intervention. these changes, as they stand, lead to an unworkable build
v109 no code changes (Update i18n zh_CN support)
on this one, I'm sorry, I didn't waste my time. in the future I will try to make something easier to maintain
v109 patches
no changes except the deletion of defaults in
CachedFeatureFlags
, no longer needed byhttps://source.chromium.org/chromium/chromium/src/+/aec86b4698c914db19b33fe3ea1b455cc4fb905f
v109 Allow playing audio in background
little fix
v109 fix remove calling untrusted hooks
no longer present, but, frankly, I don't think they are problematic
v109 fix build (fixup)
Here you will find the changes I had to make on the patches for the build.
They are separate and need a fixup to fit into bromite, but you can check the only changes I had to make.
v109 fix move navigation bar to bottom
simple fix: replaced
CachedFeatureFlags.isEnabled(flagname)
withChromeFeatureList.flagname
All submissions
unfortunately yes, but I will try to detail it for you
yes, but careful with bromite_patches_list.txt, which I did not touch
Format
Subject: Alternative cache (NIK-based)
->Alternative-cache-NIK-based.patch
)