|
|
DescriptionReplace deprecated base::NonThreadSafe in base in favor of SequenceChecker.
Note to crash team: This CL is a refactor and has no intended behavior change.
This change was scripted by https://crbug.com/676387#c8.
Note-worthy for the reviewer:
* SequenceChecker enforces thread-safety but not thread-affinity!
If the classes that were updated are thread-affine (use thread local
storage or a third-party API that does) they should be migrated to
ThreadChecker instead.
* ~NonThreadSafe() used to implcitly check in its destructor
~Sequence/ThreadChecker() doesn't by design. To keep this CL a
no-op, an explicit check was added to the destructor of migrated
classes.
* NonThreadSafe used to provide access to subclasses, as such
the |sequence_checker_| member was made protected rather than
private where necessary.
BUG=676387
This CL was uploaded by git cl split.
R=thakis@chromium.org
Review-Url: https://codereview.chromium.org/2907303002
Cr-Commit-Position: refs/heads/master@{#476274}
Committed: https://chromium.googlesource.com/chromium/src/+/7d2fae4b6ab7843ec08e938f8cdaa38749d1187c
Patch Set 1 #
Total comments: 2
Patch Set 2 : rm sequence check in constructor #
Messages
Total messages: 25 (17 generated)
The CQ bit was checked by gab@chromium.org to run a CQ dry run
Hi, this is an automated change made by https://crbug.com/676387#c8 and sharded across directories for OWNERS. No human has looked at this specific output yet, see cl description for things to watch for. If it LGTY, please CQ. If it didn't pass CQ dry-run it may be a simple patch failure or an IWYU failure from having this being a partial CL... please review anyways and a human will look at the failure (and ping for re-review if anything major is required..). It is known to compile all targets on Windows at r474679... manual tweaks will likely be required to smoothen things off, bear with me! Thanks! Gab
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
1230/7627] CXX obj/content/browser/browser/video_capture_gpu_jpeg_decoder.o FAILED: obj/content/browser/browser/video_capture_gpu_jpeg_decoder.o /b/c/goma_client/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/content/browser/browser/video_capture_gpu_jpeg_decoder.o.d -DENABLE_SCREEN_CAPTURE=1 -DV8_DEPRECATION_WARNINGS -DDCHECK_ALWAYS_ON=1 -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DDISABLE_NACL -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"303910-1\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DCONTENT_IMPLEMENTATION -DENABLE_IPC_FUZZER -DUSE_EGL -DANGLE_ENABLE_RELEASE_ASSERTS -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC -DUCHAR_TYPE=uint16_t -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=1 -DLEVELDB_PLATFORM_CHROMIUM=1 -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DMESA_EGL_NO_X11_HEADERS -DFEATURE_ENABLE_VOICEMAIL -DEXPAT_RELATIVE_PATH -DGTEST_RELATIVE_PATH -DNO_SOUND_SYSTEM -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX -DNO_MAIN_THREAD_WRAPPING -DFLAC__NO_DLL -I../.. -Igen -I../../third_party/libwebp -I../../third_party/khronos -I../../gpu -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/encode -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../third_party/protobuf/src -Igen/protoc_out -Igen/components/metrics/proto -I../../third_party/protobuf/src -I../../third_party/libwebm/source -I../../third_party/boringssl/src/include -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nss -I../../build/linux/debian_jessie_amd64-sysroot/usr/include/nspr -Igen -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -I../../third_party/mesa/src/include -I../../third_party/angle/src/common/third_party/numerics -Igen/angle -I../../third_party/brotli/include -I../../third_party/libyuv/include -I../../third_party/re2/src -I../../third_party/zlib -I../../third_party/webrtc_overrides -I../../testing/gtest/include -I../../third_party -I../../third_party/webrtc_overrides -I../../third_party -I../../third_party/fontconfig/src -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -fdebug-prefix-map=/b/c/builder/linux_chromium_headless_rel/src=. -m64 -march=x86-64 -pthread -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -Wno-unused-lambda-capture -Wno-user-defined-warnings -O2 -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g1 --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-auto-raw-pointer -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -Wno-header-guard -std=gnu++11 -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -c ../../content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc -o obj/content/browser/browser/video_capture_gpu_jpeg_decoder.o In file included from ../../content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.cc:5: ../../content/browser/renderer_host/media/video_capture_gpu_jpeg_decoder.h:40:20: error: expected class name public base::NonThreadSafe, ^ on the headless bot looks like it might be real
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
this lgtm; I think the red trybots are because many files used to accidentally pull in NonThreadSafe via one of the headers you're removing the include from here. Maybe it'll be easier once most of the leaf files have been updated. https://codereview.chromium.org/2907303002/diff/1/base/files/important_file_w... File base/files/important_file_writer.cc (right): https://codereview.chromium.org/2907303002/diff/1/base/files/important_file_w... base/files/important_file_writer.cc:155: DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); Doing this in the ctor is pointless, isn't it?
Yeah, IWYU errors... will wait for dependencies to flush out. https://codereview.chromium.org/2907303002/diff/1/base/files/important_file_w... File base/files/important_file_writer.cc (right): https://codereview.chromium.org/2907303002/diff/1/base/files/important_file_w... base/files/important_file_writer.cc:155: DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); On 2017/05/30 03:03:47, Nico wrote: > Doing this in the ctor is pointless, isn't it? Indeed but the script doesn't know that :), fixed.
The CQ bit was checked by gab@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by gab@chromium.org
The CQ bit was checked by gab@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from thakis@chromium.org Link to the patchset: https://codereview.chromium.org/2907303002/#ps20001 (title: "rm sequence check in constructor")
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm6...) android_clang_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_clan...) android_compile_dbg on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_comp...) android_cronet on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_cron...) android_n5x_swarming_rel on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_n5x_...) cast_shell_android on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/cast_shell_a...) linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...) cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...) chromeos_amd64-generic_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-...) chromeos_daisy_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_daisy_...) chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...) linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_headless_rel on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_tsan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)
The CQ bit was checked by gab@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by gab@chromium.org
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
CQ is committing da patch. Bot data: {"patchset_id": 20001, "attempt_start_ts": 1496325538448590, "parent_rev": "8f7cc644d6f5c422e32a8886fa58a2e3b5c059ee", "commit_rev": "7d2fae4b6ab7843ec08e938f8cdaa38749d1187c"}
Message was sent while issue was closed.
Description was changed from ========== Replace deprecated base::NonThreadSafe in base in favor of SequenceChecker. Note to crash team: This CL is a refactor and has no intended behavior change. This change was scripted by https://crbug.com/676387#c8. Note-worthy for the reviewer: * SequenceChecker enforces thread-safety but not thread-affinity! If the classes that were updated are thread-affine (use thread local storage or a third-party API that does) they should be migrated to ThreadChecker instead. * ~NonThreadSafe() used to implcitly check in its destructor ~Sequence/ThreadChecker() doesn't by design. To keep this CL a no-op, an explicit check was added to the destructor of migrated classes. * NonThreadSafe used to provide access to subclasses, as such the |sequence_checker_| member was made protected rather than private where necessary. BUG=676387 This CL was uploaded by git cl split. R=thakis@chromium.org ========== to ========== Replace deprecated base::NonThreadSafe in base in favor of SequenceChecker. Note to crash team: This CL is a refactor and has no intended behavior change. This change was scripted by https://crbug.com/676387#c8. Note-worthy for the reviewer: * SequenceChecker enforces thread-safety but not thread-affinity! If the classes that were updated are thread-affine (use thread local storage or a third-party API that does) they should be migrated to ThreadChecker instead. * ~NonThreadSafe() used to implcitly check in its destructor ~Sequence/ThreadChecker() doesn't by design. To keep this CL a no-op, an explicit check was added to the destructor of migrated classes. * NonThreadSafe used to provide access to subclasses, as such the |sequence_checker_| member was made protected rather than private where necessary. BUG=676387 This CL was uploaded by git cl split. R=thakis@chromium.org Review-Url: https://codereview.chromium.org/2907303002 Cr-Commit-Position: refs/heads/master@{#476274} Committed: https://chromium.googlesource.com/chromium/src/+/7d2fae4b6ab7843ec08e938f8cda... ==========
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as https://chromium.googlesource.com/chromium/src/+/7d2fae4b6ab7843ec08e938f8cda... |