New issue
Advanced search Search tips

Issue 867475 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 3
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug



Sign in to add a comment

JNI generation: drop dependency on base::subtle::AtomicWord

Project Member Reported by oprypin@chromium.org, Jul 25

Issue description

From the point of view of WebRTC, `base::subtle::AtomicWord` seems to be the last remaining hard dependency on `base` (others are currently "monkey-patched").

It is explicitly used in the generated JNI headers, e.g.
https://chromium.googlesource.com/chromium/src/+/f2569c5796282362db08eb2d40f76c6b9c3e3dd5/base/android/jni_generator/SampleForTests_jni.golden#41

Removing it would save us a lot of workarounds (or even potentially forking).

Suggested changes:
https://chromium-review.googlesource.com/c/chromium/src/+/1150179
https://webrtc-review.googlesource.com/c/src/+/90404

 
Project Member

Comment 1 by bugdroid1@chromium.org, Aug 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/54f759310c8e219984b7bf5450f3c871035804b7

commit 54f759310c8e219984b7bf5450f3c871035804b7
Author: Oleh Prypin <oprypin@chromium.org>
Date: Thu Aug 02 14:33:32 2018

JNI generation: Replace base::subtle::AtomicWord with std::atomic<>

(based on previous work by magjed@)

Bug:  867475 
Change-Id: I1c292e163b251bbddf3d114dbcaed2e22239d625
Reviewed-on: https://chromium-review.googlesource.com/1150179
Reviewed-by: agrieve <agrieve@chromium.org>
Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
Commit-Queue: Oleh Prypin <oprypin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580173}
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_android.cc
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_android.h
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_android_unittest.cc
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/SampleForTests_jni.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/jni_generator.py
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testCalledByNatives.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testConstantsFromJavaP.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testFromJavaP.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testFromJavaPGenerics.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testInnerClassNatives.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testInnerClassNativesBothInnerAndOuter.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testInnerClassNativesBothInnerAndOuterRegistrations.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testInnerClassNativesMultiple.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testMultipleJNIAdditionalImport.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testNativeExportsOnlyOption.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testNatives.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testNativesLong.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testNativesRegistrations.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testSingleJNIAdditionalImport.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/base/android/jni_generator/testTracing.golden
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/third_party/gvr-android-sdk/display_synchronizer_jni.h
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/third_party/gvr-android-sdk/gvr_api_jni.h
[modify] https://crrev.com/54f759310c8e219984b7bf5450f3c871035804b7/third_party/gvr-android-sdk/native_callbacks_jni.h

Project Member

Comment 2 by bugdroid1@chromium.org, Aug 3

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/9f6450d5a53cff26874d032cb599237601e7bea5

commit 9f6450d5a53cff26874d032cb599237601e7bea5
Author: Oleh Prypin <oprypin@webrtc.org>
Date: Fri Aug 03 08:54:30 2018

JNI generation: Replace base::subtle::AtomicWord with std::atomic<>

This also rolls up //base in DEPS, because it needs to be landed together with
https://chromium.googlesource.com/chromium/src/+/54f759310c8e219984b7bf5450f3c871035804b7

Bug:  chromium:867475 
Change-Id: I5792cb0610d2df46a9368fd3b1846583aa134b38
Reviewed-on: https://webrtc-review.googlesource.com/90404
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24180}
[modify] https://crrev.com/9f6450d5a53cff26874d032cb599237601e7bea5/DEPS
[modify] https://crrev.com/9f6450d5a53cff26874d032cb599237601e7bea5/sdk/android/src/jni/jni_generator_helper.cc
[modify] https://crrev.com/9f6450d5a53cff26874d032cb599237601e7bea5/sdk/android/src/jni/jni_generator_helper.h

Status: Fixed (was: Assigned)
Project Member

Comment 4 by bugdroid1@chromium.org, Aug 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e08a84a069d2f5f440e5b84e8903dd5515647dd7

commit e08a84a069d2f5f440e5b84e8903dd5515647dd7
Author: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Fri Aug 03 18:09:11 2018

Roll src/third_party/webrtc f5cf02ac2c4a..d54f5f5c763c (16 commits)

https://webrtc.googlesource.com/src.git/+log/f5cf02ac2c4a..d54f5f5c763c


git log f5cf02ac2c4a..d54f5f5c763c --date=short --no-merges --format='%ad %ae %s'
2018-08-03 sakal@webrtc.org Rename rtc_instrumentation_test_apk targets to end with _test_apk.
2018-08-03 magjed@webrtc.org Android: Remove custom matrix helper functions in RendererCommon
2018-08-03 mbonadei@webrtc.org Remove definition of FEATURE_ENABLE_VOICEMAIL, FEATURE_ENABLE_PSTN.
2018-08-03 philipel@webrtc.org Reland "Remove RTPVideoHeader::h264() accessors."
2018-08-03 oprypin@webrtc.org JNI generation: Replace base::subtle::AtomicWord with std::atomic<>
2018-08-03 buildbot@webrtc.org Roll chromium_revision 4dd959af57..06e87fb3dc (579686:580149)
2018-08-03 oprypin@webrtc.org Don't allocate an array of size 0, it causes a UBSan failure
2018-08-03 kthelgason@webrtc.org Remove dead code.
2018-08-02 zstein@webrtc.org Add AsyncResolverFactory interface and basic implementation.
2018-08-02 srte@webrtc.org Always sends probes when they are generated.
2018-08-02 nisse@webrtc.org Delete class TelephoneEventHandler and related code.
2018-08-02 kthelgason@webrtc.org Fix occasional crash in iOS ADM.
2018-08-02 nisse@webrtc.org Delete telephone-event handling from RTPReceiverAudio.
2018-08-02 oprypin@webrtc.org Fix a warning about comparison of integers of different signs
2018-08-02 philipel@webrtc.org Add members for the codec agnostic descriptor to RTPVideoHeader.
2018-08-02 sakal@webrtc.org Delete MockRenderer and replace it with identical MockSink class.


Created with:
  gclient setdep -r src/third_party/webrtc@d54f5f5c763c

The AutoRoll server is located here: https://webrtc-chromium-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;master.tryserver.chromium.mac:mac_chromium_archive_rel_ng

BUG=chromium:none,chromium:867475,chromium:None,chromium:868776,chromium:None
TBR=webrtc-chromium-sheriffs-robots@google.com

Change-Id: If94dce305aee0c40ca6d1f33f6b41d966662affe
Reviewed-on: https://chromium-review.googlesource.com/1162105
Reviewed-by: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#580599}
[modify] https://crrev.com/e08a84a069d2f5f440e5b84e8903dd5515647dd7/DEPS

Sign in to add a comment