forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ios: Always specify thread affinity when posting tasks
*** Note: There is no behavior change from this patch. *** The PostTask APIs will shortly be changed to require all tasks to explicitly specify their thread affinity, i.e., whether the task should run on the thread pool or a specific named thread such as a BrowserThread. This patch updates all call sites with thread affinity annotation. We also remove the "WithTraits" suffix to make the call sites more readable. Before: // Thread pool task. base::PostTaskWithTraits(FROM_HERE, {...}, ...); // UI thread task. base::PostTaskWithTraits(FROM_HERE, {BrowserThread::UI, ...}, ...); After: // Thread pool task. base::PostTask(FROM_HERE, {base::ThreadPool(), ...}, ...); // UI thread task. base::PostTask(FROM_HERE, {BrowserThread::UI, ...}, ...); This patch was semi-automatically prepared with these steps: 1. Patch in https://chromium-review.googlesource.com/c/chromium/src/+/1635827 to make thread affinity a build-time requirement. 2. Run an initial pass with a clang rewriter: https://chromium-review.googlesource.com/c/chromium/src/+/1635623 3. ninja -C out/Debug | grep 'requested here' | cut -d: -f1-3 | sort | \ uniq > errors.txt 4. while read line; do f=$(echo $line | cut -d: -f 1) r=$(echo $line | cut -d: -f 2) c=$(echo $line | cut -d: -f 3) sed -i "${r}s/./&base::ThreadPool(),/$c" $f done < errors.txt 5. GOTO 3 until build succeeds. 6. Remove the "WithTraits" suffix from task API call sites: $ tools/git/mffr.py -i <(cat <<EOF [ ["PostTaskWithTraits", "PostTask"], ["PostDelayedTaskWithTraits", "PostDelayedTask"], ["PostTaskWithTraitsAndReply", "PostTaskAndReply"], ["CreateTaskRunnerWithTraits", "CreateTaskRunner"], ["CreateSequencedTaskRunnerWithTraits", "CreateSequencedTaskRunner"], ["CreateUpdateableSequencedTaskRunnerWithTraits", "CreateUpdateableSequencedTaskRunner"], ["CreateSingleThreadTaskRunnerWithTraits", "CreateSingleThreadTaskRunner"], ["CreateCOMSTATaskRunnerWithTraits", "CreateCOMSTATaskRunner"] ] EOF ) This CL was uploaded by git cl split. R=eugenebut@chromium.org Bug: 968047 Change-Id: Ibebd81e88c85b0436356b25ec53495b86d6eac1a Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1729075 Auto-Submit: Sami Kyöstilä <skyostil@chromium.org> Reviewed-by: Rohit Rao <rohitrao@chromium.org> Commit-Queue: Rohit Rao <rohitrao@chromium.org> Cr-Commit-Position: refs/heads/master@{#685524}
- Loading branch information
Showing
49 changed files
with
210 additions
and
212 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.