OOP-R: Remove dependencies on worker context's GrContext for OOP-Raster. |
||
Issue descriptionTo fully switch to a RasterInterface implementation ( Issue 757607 ) we should remove any references to the compositor worker GrContext from the compositor. It also doesn't make sense to create a GrContext only to query some raster properties, which may not be compatible with the OOP-R service side implementation. Users include LayerTreeHostImpl and GpuImageDecodeCache.
,
Dec 12 2017
Did you mean to remove the GrContext references completely or just to remove them on the --enable-oop-rasterization path? The dependency in LTHImpl is to detect if we can safely --enable-gpu-rasterization on the renderer side (both with and without --enable-oop-rasterization). I think that this is somewhat related to crbug.com/786591. I suspect that it's possible to create a GrContext on the renderer side and fail to create one on the GPU process side (and vice versa).
,
Dec 12 2017
#2: Yes, exactly as you say.
,
Dec 12 2017
On the GPU process side, we'd eventually like to share the GrContext among different RasterDecoders. Perhaps we can try to create the CrContext early and pass if we are successful up via the gpu::GpuFeatureInfo when you create a GpuChannel on the client side. I believe that this is very similar to option 2 in https://bugs.chromium.org/p/chromium/issues/detail?id=786591#c1
,
Apr 2 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/72cf4278866ef427a2cd3c49b7df3844f12faff7 commit 72cf4278866ef427a2cd3c49b7df3844f12faff7 Author: Adrienne Walker <enne@chromium.org> Date: Mon Apr 02 23:04:35 2018 Fix oop raster disabling itself After https://chromium-review.googlesource.com/c/chromium/src/+/982098, enabling oop rasterization by the command line disables gpu rasterization which in turn disables oop rasterization and uses software rasterization instead. This also fixes uses of GrContext that are no longer supported in GpuImageDecodeCache. Bug: 826987 , 793508 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: Ifdf1f18eb34e9e63eeb6e39cb66a6ab77e10afcd Reviewed-on: https://chromium-review.googlesource.com/986744 Reviewed-by: Antoine Labour <piman@chromium.org> Reviewed-by: Khushal <khushalsagar@chromium.org> Commit-Queue: enne <enne@chromium.org> Cr-Commit-Position: refs/heads/master@{#547548} [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/cc/paint/oop_pixeltest.cc [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/cc/tiles/gpu_image_decode_cache.cc [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/cc/tiles/gpu_image_decode_cache.h [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/cc/tiles/gpu_image_decode_cache_unittest.cc [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/cc/trees/layer_tree_host_impl.cc [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/cc/trees/layer_tree_host_impl.h [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/components/viz/test/test_web_graphics_context_3d.cc [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/components/viz/test/test_web_graphics_context_3d.h [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/content/renderer/webgraphicscontext3d_provider_impl.cc [modify] https://crrev.com/72cf4278866ef427a2cd3c49b7df3844f12faff7/gpu/command_buffer/service/gles2_cmd_decoder.cc
,
Apr 3 2018
|
||
►
Sign in to add a comment |
||
Comment 1 by vmi...@chromium.org
, Dec 9 2017