Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ppapi: 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=bbudge@chromium.org Bug: 968047 Change-Id: Ifb12f9278a02a0a821a6b92cb6625cf6e57d8b31 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1728885 Auto-Submit: Sami Kyöstilä <skyostil@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#683273}
- Loading branch information