Open Bug 1758161 Opened 2 years ago Updated 11 months ago

Layout debugger can trigger debug assertion "Receiving unexpected Principal" after fission enabled

Categories

(Core :: Layout, defect)

defect

Tracking

()

Tracking Status
firefox-esr91 --- unaffected
firefox97 --- wontfix
firefox98 --- wontfix
firefox99 --- wontfix
firefox100 --- wontfix
firefox101 --- wontfix

People

(Reporter: TYLin, Unassigned)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

I can reproduce this after fission enabled by default in bug 1732358.

Steps to reproduce:

  1. Build Firefox in debug mode.
  2. Run ./mach run -layoutdebug https://bugzilla.mozilla.org/attachment.cgi?id=9074885 (Loading any bugzilla testcase with https://bugzilla.mozilla.org/ will reproduce)

Actual result:
Triggers the debug assertion "Receiving unexpected Principal" in ContentParent::LogAndAssertFailedPrincipalValidationInfo() at
https://searchfox.org/mozilla-central/rev/7f1db1d2c556b82114b62f5aa4aa29397ad5bce4/dom/ipc/ContentParent.cpp#1330-1334

Expect result:
No debug assertion.

Observation:
https://bugzilla.mozilla.org/attachment.cgi?id=9074885 redirects to https://bug1377072.bmoattachments.org/attachment.cgi?id=9074885, and running ./mach run -layoutdebug https://bug1377072.bmoattachments.org/attachment.cgi?id=9074885 does not trigger the assertion

Workaround:
Set pref dom.security.enforceIPCBasedPrincipalVetting = false

Christoph, do you have any idea?

(cc some layout engineers with fission experience.)

Flags: needinfo?(ckerschb)

Set release status flags based on info from the regressing bug 1732358

Has Regression Range: --- → yes

(In reply to Ting-Yu Lin [:TYLin] (UTC-8) from comment #1)

Christoph, do you have any idea?

Tom, can you run the testcase and suggest a path forward? I suppose once we know the stacktrace and from what unexpected IPC call that principal is coming from we can potentially relax that call? But first, we need to know what unexpected Principal it is. Thanks!

Flags: needinfo?(ckerschb) → needinfo?(tom)

Set release status flags based on info from the regressing bug 1732358

remoteTypeSiteOriginNoSuffix = https://mozilla.org
siteOriginNoSuffix = https://bug1377072.bmoattachments.org

Flags: needinfo?(tom)

Also

#1  0x00007fffeff7e42a in mozilla::dom::BrowserParent::RecvNewWindowGlobal(mozilla::ipc::ManagedEndpoint<mozilla::dom::PWindowGlobalParent>&&, mozilla::dom::WindowGlobalInit const&) (this=0x7fff7816e200, aEndpoint=..., aInit=...)

:dholbert is this something we want to work on for 101?

Flags: needinfo?(dholbert)

Users are entirely unaffected by this, so it's not something we need to care about tracking from a release perspective.

Flags: needinfo?(dholbert)
Duplicate of this bug: 1832432
You need to log in before you can comment on or make changes to this bug.