Closed Bug 1961624 Opened 11 months ago Closed 6 months ago

Junit ContentDelegateChildTest#requestContextMenuOnVideo fails on Isolated Process

Categories

(GeckoView :: General, task, P2)

All
Android
task

Tracking

(firefox145 fixed)

RESOLVED FIXED
145 Branch
Tracking Status
firefox145 --- fixed

People

(Reporter: olivia, Assigned: m_kato)

References

(Blocks 2 open bugs)

Details

(Whiteboard: [fxdroid] [geckoview])

Attachments

(2 files)

ContentDelegateChildTest#requestContextMenuOnVideo fails locally for me, but does not report as a failure. The test fails as expected in CI.

Relevant failure:
ContentDelegateChildTest#requestContextMenuOnVideo - failure stems from this call in RemoteManager.java

04-21 10:28:42.434 24608 24671 W System.err: java.lang.SecurityException: Isolated process not allowed to call bindService
04-21 10:28:42.434 24608 24671 W System.err: 	at android.os.Parcel.readException(Parcel.java:1683)
04-21 10:28:42.434 24608 24671 W System.err: 	at android.os.Parcel.readException(Parcel.java:1636)
04-21 10:28:42.434 24608 24671 W System.err: 	at android.app.ActivityManagerProxy.bindService(ActivityManagerNative.java:4374)
04-21 10:28:42.434 24608 24671 W System.err: 	at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1491)
04-21 10:28:42.434 24608 24671 W System.err: 	at android.app.ContextImpl.bindService(ContextImpl.java:1450)
04-21 10:28:42.434 24608 24671 W System.err: 	at android.content.ContextWrapper.bindService(ContextWrapper.java:636)
04-21 10:28:42.434 24608 24671 W System.err: 	at org.mozilla.gecko.media.RemoteManager$RemoteConnection.connect(RemoteManager.java:75)
04-21 10:28:42.434 24608 24671 W System.err: 	at org.mozilla.gecko.media.RemoteManager$RemoteConnection.-$$Nest$mconnect(RemoteManager.java)
04-21 10:28:42.434 24608 24671 W System.err: 	at org.mozilla.gecko.media.RemoteManager.init(RemoteManager.java:143)
04-21 10:28:42.434 24608 24671 W System.err: 	at org.mozilla.gecko.media.RemoteManager.getInstance(RemoteManager.java:37)
04-21 10:28:42.434 24608 24671 W System.err: 	at org.mozilla.gecko.media.CodecProxy.create(CodecProxy.java:159)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: >>> REPORTING UNCAUGHT EXCEPTION FROM THREAD 971 ("MediaPDecoder #")
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: java.lang.SecurityException: Isolated process not allowed to call bindService
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at android.os.Parcel.readException(Parcel.java:1683)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at android.os.Parcel.readException(Parcel.java:1636)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at android.app.ActivityManagerProxy.bindService(ActivityManagerNative.java:4374)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1491)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at android.app.ContextImpl.bindService(ContextImpl.java:1450)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at android.content.ContextWrapper.bindService(ContextWrapper.java:636)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at org.mozilla.gecko.media.RemoteManager$RemoteConnection.connect(RemoteManager.java:75)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at org.mozilla.gecko.media.RemoteManager$RemoteConnection.-$$Nest$mconnect(RemoteManager.java)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at org.mozilla.gecko.media.RemoteManager.init(RemoteManager.java:143)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at org.mozilla.gecko.media.RemoteManager.getInstance(RemoteManager.java:37)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: 	at org.mozilla.gecko.media.CodecProxy.create(CodecProxy.java:159)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler: Main thread (1) stack:
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     android.os.MessageQueue.nativePollOnce(Native Method)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     android.os.MessageQueue.next(MessageQueue.java:323)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     android.os.Looper.loop(Looper.java:136)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     android.app.ActivityThread.main(ActivityThread.java:6077)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     java.lang.reflect.Method.invoke(Native Method)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
04-21 10:28:42.435 24608 24671 E GeckoCrashHandler:     com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: FATAL EXCEPTION: MediaPDecoder #
04-21 10:28:42.435 24608 24671 E AndroidRuntime: Process: org.mozilla.geckoview.test:tab2, PID: 24608
04-21 10:28:42.435 24608 24671 E AndroidRuntime: java.lang.SecurityException: Isolated process not allowed to call bindService
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1683)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at android.os.Parcel.readException(Parcel.java:1636)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at android.app.ActivityManagerProxy.bindService(ActivityManagerNative.java:4374)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1491)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at android.app.ContextImpl.bindService(ContextImpl.java:1450)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at android.content.ContextWrapper.bindService(ContextWrapper.java:636)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at org.mozilla.gecko.media.RemoteManager$RemoteConnection.connect(RemoteManager.java:75)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at org.mozilla.gecko.media.RemoteManager$RemoteConnection.-$$Nest$mconnect(RemoteManager.java)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at org.mozilla.gecko.media.RemoteManager.init(RemoteManager.java:143)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at org.mozilla.gecko.media.RemoteManager.getInstance(RemoteManager.java:37)
04-21 10:28:42.435 24608 24671 E AndroidRuntime: 	at org.mozilla.gecko.media.CodecProxy.create(CodecProxy.java:159)

Originally split from bug 1810736.

Severity: -- → N/A
Priority: -- → P2
See Also: → 1700243, 1810736
Whiteboard: [fxdroid] [geckoview]

Original issue depends on AndroidDecoderModule, Bug 1934009 are introducing new decoder module can run on GPU process. After fixing it, if we get a rid of AndroidDecoderModule/AndroidEncoderModule, this won't occur.

Depends on: 1934009
Blocks: 1981580

Hey Makoto, can you take on this one please?

Flags: needinfo?(m_kato)

(In reply to [:owlish] 🦉 PST from comment #2)

Hey Makoto, can you take on this one please?

Even if bug 1934009 is landed, Gecko still use Java's PDM. media.android-media-codec.enabled is false is better if this test is run with isolated mode.

Assignee: nobody → m_kato
Flags: needinfo?(m_kato)
Keywords: leave-open

requestContextMenuOnVideo test is for context menu on video element, so
this isn't related whether vide is playable or not.

So we should disable Java's media decoder to avoid the test failure as
temporary workaround, since it isn't compatible with isolated process.

This is leave-open until we can remove a workaround that turns off Java's decoder.

Pushed by m_kato@ga2.so-net.ne.jp: https://github.com/mozilla-firefox/firefox/commit/94d48a0ef1b7 https://hg.mozilla.org/integration/autoland/rev/7333493ee75b Temporary disable Java's media decoder on requestContextMenuOnVideo. r=geckoview-reviewers,ohall

Since we disable platform decoder module on isolated process, it is
unnecessary to disable some tests.

Keywords: leave-open
Status: NEW → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED
Target Milestone: --- → 145 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: