Closed Bug 1318558 Opened 3 years ago Closed 3 years ago

Remove D3D9 fallback

Categories

(Core :: Graphics: Layers, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla55
Tracking Status
firefox55 --- fixed

People

(Reporter: mattwoodrow, Assigned: dvander)

References

(Depends on 1 open bug)

Details

(Whiteboard: [gfx-noted])

Attachments

(2 files)

As we drop support for WinXP, we'll have basically no users on D3D9 layers.

We disabled D3D9 fallback in bug 130465, so if we reverted that (I believe the underlying issue is now fixed) we'd likely get some people using it again.

We should either get people using it again, or take the opportunity to get rid of some code.

What do you think Milan?
Flags: needinfo?(milan)
Whiteboard: [gfx-noted]
I'd like to re-enable it, especially if we decide to enable E10S on XP.  Need to follow up on the dependent bugs thought.  I'll leave needinfo on me to get back to it later this year, hopefully still in time for 53.
(In reply to Milan Sreckovic [:milan] from comment #1)
> I'd like to re-enable it, especially if we decide to enable E10S on XP. 
> Need to follow up on the dependent bugs thought.  I'll leave needinfo on me
> to get back to it later this year, hopefully still in time for 53.

I don't follow. Why do we enable E10S on XP while we drop support for XP? We already blocked update (bug 1317780) and will disable install (bug 1305453) on XP.
(In reply to Masatoshi Kimura [:emk] from comment #2)
> (In reply to Milan Sreckovic [:milan] from comment #1)
> ...
> 
> I don't follow. Why do we enable E10S on XP while we drop support for XP? We
> already blocked update (bug 1317780) and will disable install (bug 1305453)
> on XP.

That would be a question for Jim.
Flags: needinfo?(milan) → needinfo?(jmathies)
(In reply to Milan Sreckovic [:milan] from comment #3)
> (In reply to Masatoshi Kimura [:emk] from comment #2)
> > (In reply to Milan Sreckovic [:milan] from comment #1)
> > ...
> > 
> > I don't follow. Why do we enable E10S on XP while we drop support for XP? We
> > already blocked update (bug 1317780) and will disable install (bug 1305453)
> > on XP.
> 
> That would be a question for Jim.

We were experimenting with e10s on beta to find out what the crash raters were [1] since XP will be over on ESR for a solid year. We wanted to determine if it was safe to turn e10s on for these users there such that we would have the same features running in our normal dev branches. The crash rate regressions though for e10s+XP are pretty severe (25%-350%) so we're punting on e10s in ESR49. This said we might find ourselves in a situation where we need to apply a security fix to ESR49 that requires e10s, in which case we might still enable e10s there for XP at a future date.

[1] https://wiki.mozilla.org/Electrolysis/XP
Flags: needinfo?(jmathies) → needinfo?(matt.woodrow)
Depends on: xp-eol
Blocks: xp-eol
No longer depends on: xp-eol
(In reply to Matt Woodrow (:mattwoodrow) from comment #0)
> As we drop support for WinXP, we'll have basically no users on D3D9 layers.

Isn't that still a thing with people on newer Windows but older hardware?

According to Steam hardware survey 11% of users is still using a DX10 class gpu on Vista+. 
And as you might imagine this gamers-only sample is very likely skewed towards bleeding edge gpus.
(In reply to mirh from comment #5)
> (In reply to Matt Woodrow (:mattwoodrow) from comment #0)
> > As we drop support for WinXP, we'll have basically no users on D3D9 layers.
> 
> Isn't that still a thing with people on newer Windows but older hardware?
> 
> According to Steam hardware survey 11% of users is still using a DX10 class
> gpu on Vista+. 
> And as you might imagine this gamers-only sample is very likely skewed
> towards bleeding edge gpus.

D3D11 supports D3D10 and D3D9 GPUs - we don't use the full feature set.
Blocks: e10s-xp
No longer blocks: xp-eol
Depends on: xp-eol
FYI, Win7 still supports XP display drivers.
Flags: needinfo?(matt.woodrow)
TBD (to be deleted) in Firefox 55
Assignee: nobody → dvander
Status: NEW → ASSIGNED
Removal of obvious references to D3D9 code. The DXGID3D9TextureData class gets copied out of TextureD3D9 and into D3D9SurfaceImage.
Attachment #8842745 - Flags: review?(matt.woodrow)
Attached patch part 2, rm filesSplinter Review
To land after the merge.
Attachment #8842746 - Flags: review?(matt.woodrow)
Attachment #8842745 - Flags: review?(matt.woodrow) → review+
Attachment #8842746 - Flags: review?(matt.woodrow) → review+
Summary: Re-enable D3D9 fallback, or remove it → Remove D3D9 fallback
Pushed by danderson@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/7312b15a0591
Remove references to the Direct3D9 compositor. (bug 1318558 part 1, r=mattwoodrow)
https://hg.mozilla.org/integration/mozilla-inbound/rev/fbe2c62cedcb
Remove the Direct3D9 compositor. (bug 1318558 part 2, r=mattwoodrow)
https://hg.mozilla.org/mozilla-central/rev/7312b15a0591
https://hg.mozilla.org/mozilla-central/rev/fbe2c62cedcb
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
Just wanted to add that last I worked on DX11, "DX11 on DX9" can only access shader model 2b.  That doesn't have Vertex Texture Fetch and a lot of other features.  If your plan is to run "DX11 on DX9", you should be aware that a lot of WebGL might no longer be available to users.  You do avoid the half text offset, but the DX9 backend starts up in Shader Model 3 mode.

That being said, we're having a lot of bugs in Chrome or Angle with their DX9 backend, and you'll pave the way towards WebGL2 better.
You need to log in before you can comment on or make changes to this bug.