|
|
Descriptiongpu: log when the request GMB id and the response GMB id are mismatched.
BUG=475633
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Patch Set 1 #Patch Set 2 : remove unrelated change #Patch Set 3 : just add additional log #Patch Set 4 : gpu: log when the request GMB id and the response GMB id are mismatched. #
Total comments: 2
Messages
Total messages: 27 (18 generated)
Description was changed from ========== Reland 'gpu: guarantee to match pending GBM buffer request to actual GBM handle' Reverted CL: https://codereview.chromium.org/2878573002 gpu_ipc_service_unittests uses the same GpuMemoryBufferId so DCHECK failed. Fix it and reland it. BUG=475633, 629521 [subresource_filter] Fix crash ChromeOS crash on NotifyResult(). This CL fixes it. BUG=708181 ========== to ========== Reland 'gpu: guarantee to match pending GBM buffer request to actual GBM handle' Reverted CL: https://codereview.chromium.org/2878573002 gpu_ipc_service_unittests uses the same GpuMemoryBufferId so DCHECK failed. Fix it and reland it. BUG=475633, 629521 [subresource_filter] Fix crash ChromeOS crash on NotifyResult(). This CL fixes it. BUG=708181 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ==========
The CQ bit was checked by dongseong.hwang@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was checked by dongseong.hwang@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Reland 'gpu: guarantee to match pending GBM buffer request to actual GBM handle' Reverted CL: https://codereview.chromium.org/2878573002 gpu_ipc_service_unittests uses the same GpuMemoryBufferId so DCHECK failed. Fix it and reland it. BUG=475633, 629521 [subresource_filter] Fix crash ChromeOS crash on NotifyResult(). This CL fixes it. BUG=708181 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ========== to ========== Reland 'gpu: guarantee to match pending GBM buffer request to actual GBM handle' Reverted CL: https://codereview.chromium.org/2878573002 gpu_ipc_service_unittests uses the same GpuMemoryBufferId so DCHECK failed. Fix it and reland it. BUG=475633, 629521 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ==========
dongseong.hwang@intel.com changed reviewers: + piman@chromium.org, reveman@chromium.org - dongseong.hwang@chromium.org
piman@, could you review this CL again to reland?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
Why is this needed?
On 2017/05/20 03:09:41, reveman wrote: > Why is this needed? It is not needed in practice. but in theory, we don't trust GPU process, so it can reply native GMB handles in different order.
Not trusting the GPU process and avoiding the DCHECK makes sense. But shouldn't we instead fail the allocation (and DLOG something) if the order is wrong?
On 2017/05/22 19:27:48, reveman wrote: > Not trusting the GPU process and avoiding the DCHECK makes sense. But shouldn't > we instead fail the allocation (and DLOG something) if the order is wrong? This CL makes allocation possible if the order is wrong. DLOG happens when gpu process somehow give the GMB handle, which browser never request. It's why the map doesn't keep the callback.
On 2017/05/22 at 20:56:33, dongseong.hwang wrote: > On 2017/05/22 19:27:48, reveman wrote: > > Not trusting the GPU process and avoiding the DCHECK makes sense. But shouldn't > > we instead fail the allocation (and DLOG something) if the order is wrong? > > This CL makes allocation possible if the order is wrong. DLOG happens when gpu process somehow give the GMB handle, which browser never request. It's why the map doesn't keep the callback. I can see that. Please have it fail if order is wrong instead. The more strict we are the better.
The CQ bit was checked by dongseong.hwang@chromium.org to run a CQ dry run
Description was changed from ========== Reland 'gpu: guarantee to match pending GBM buffer request to actual GBM handle' Reverted CL: https://codereview.chromium.org/2878573002 gpu_ipc_service_unittests uses the same GpuMemoryBufferId so DCHECK failed. Fix it and reland it. BUG=475633, 629521 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ========== to ========== gpu: log when the request GMB id and the response GMB id are mismatched. BUG=475633 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel ==========
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
On 2017/05/23 20:19:36, reveman wrote: > I can see that. Please have it fail if order is wrong instead. The more strict > we are the better. I see. browser_gpu_memory_buffer_manager.cc has it fail already. There is nothing to do more in the code. I just add additional log there. Could you review again?
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...)
The CQ bit was checked by dongseong.hwang@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/2897733002/diff/60001/content/browser/gpu/bro... File content/browser/gpu/browser_gpu_memory_buffer_manager.cc (right): https://codereview.chromium.org/2897733002/diff/60001/content/browser/gpu/bro... content/browser/gpu/browser_gpu_memory_buffer_manager.cc:404: LOG(ERROR) << "GpuMemoryBuffer ID is mismatched. request id:" << id.id We don't know if it's because a id mismatch here. Could be an allocation failure and this message is then confusing.
https://codereview.chromium.org/2897733002/diff/60001/content/browser/gpu/bro... File content/browser/gpu/browser_gpu_memory_buffer_manager.cc (right): https://codereview.chromium.org/2897733002/diff/60001/content/browser/gpu/bro... content/browser/gpu/browser_gpu_memory_buffer_manager.cc:404: LOG(ERROR) << "GpuMemoryBuffer ID is mismatched. request id:" << id.id On 2017/05/30 18:11:52, reveman wrote: > We don't know if it's because a id mismatch here. Could be an allocation failure > and this message is then confusing. It happens when handle.id != id. please check above if statement. In addition, if mismatch happens in real, I think it's because gpu process reorders the request somehow. |