Closed Bug 1335971 Opened 5 years ago Closed 5 years ago

Allow client side uploads on intel hardware

Categories

(Core :: Graphics: Layers, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla54
Tracking Status
firefox54 --- fixed

People

(Reporter: bas.schouten, Assigned: bas.schouten)

Details

Attachments

(1 file)

I think we can do this if we avoid uploading in the creation call.
I think considering the large increase in performance affecting 75% of our D3D11 userbase, we should probably give this a shot on nightly and see if we find any issues.
Comment on attachment 8832731 [details]
Bug 1335971: Allow uploading on the client side on Intel hardware.

https://reviewboard.mozilla.org/r/108928/#review110168

Sure, lets get it a go. We should keep an eye on crashstats though in case this regresses things.
Attachment #8832731 - Flags: review?(matt.woodrow) → review+
Comment on attachment 8832731 [details]
Bug 1335971: Allow uploading on the client side on Intel hardware.

https://reviewboard.mozilla.org/r/108928/#review110192

::: gfx/layers/IMFYCbCrImage.cpp:249
(Diff revision 1)
>          backend == LayersBackend::LAYERS_D3D11) {
>        return GetD3D9TextureClient(aForwarder);
>      }
>      return nullptr;
>    }
> + 

Trailing whitespace!

::: gfx/layers/IMFYCbCrImage.cpp:300
(Diff revision 1)
>  
> -  // Even though the textures we created are meant to be protected by a keyed mutex,
> -  // it appears that D3D doesn't include the initial memory upload within this
> -  // synchronization. Add an empty lock/unlock pair since that appears to
> -  // be sufficient to make sure we synchronize.
> +  // The documentation here seems to suggest this is not allowed:
> +  // https://msdn.microsoft.com/en-us/library/windows/desktop/ff476891(v=vs.85).aspx
> +  // The Debug Layer seems to imply it is though. When the ID3D10Multithread
> +  // layer is on. The Enter/Leave of the critical section shouldn't even be
> +  // required but were added for extra security.

Can you please also extend this comment to more clearly define what 'this' is (accessing the immediate context on a different thread).
Pushed by bschouten@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b240c8d4075b
Allow uploading on the client side on Intel hardware. r=mattwoodrow
https://hg.mozilla.org/mozilla-central/rev/b240c8d4075b
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
You need to log in before you can comment on or make changes to this bug.