Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(37)

Issue 2562113003: NaCl plugin: Make ServiceRuntime::Shutdown() kill the NaCl loader (Closed)

Created:
4 years ago by Derek Schuff
Modified:
4 years ago
Reviewers:
bbudge
CC:
chromium-reviews
Target Ref:
refs/pending/branch-heads/2924
Project:
chromium
Visibility:
Public.

Description

NaCl plugin: Make ServiceRuntime::Shutdown() kill the NaCl loader Previously, Shutdown would kill the loader by closing the SRPC command channel. After SRPC removal, it became a no-op. But this caused a deadlock in some cases where surfaway or embed element removal would cause the PNaCl translator to block waiting to join the translation thread while the translator nexe was waiting for more data. This change makes the original shutdown sequence work as intended by making ServiceRuntime::Shutdown() close the trusted plugin IPC channel, which causes the service runtime to immediately exit. 1. This pokes a sort of arbitrary hole in the PPBNaClPrivate interface but that interface is vestigial anyway. 2. Even aside from PPBNaClPrvate, there is a lot that could be simplified or refactored about shutdown post-SRPC, but this is a minimal change to fix the deadlock that users are experiencing, so we can get it on a branch. R=bbudge BUG=645688 Review-Url: https://codereview.chromium.org/2556983003 Cr-Commit-Position: refs/heads/master@{#437418} (cherry picked from commit 61ef841a46679445e532906eba407e4ba7ecda8e) Committed: https://chromium.googlesource.com/chromium/src/+/8bf5b88ad8313472583f7f8cadb2be8dcde06069

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+19 lines, -3 lines) Patch
M components/nacl/renderer/nexe_load_manager.h View 1 chunk +2 lines, -0 lines 0 comments Download
M components/nacl/renderer/nexe_load_manager.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M components/nacl/renderer/plugin/pnacl_translate_thread.cc View 2 chunks +0 lines, -2 lines 0 comments Download
M components/nacl/renderer/plugin/service_runtime.h View 1 chunk +2 lines, -0 lines 0 comments Download
M components/nacl/renderer/plugin/service_runtime.cc View 1 chunk +2 lines, -1 line 0 comments Download
M components/nacl/renderer/ppb_nacl_private.h View 1 chunk +2 lines, -0 lines 0 comments Download
M components/nacl/renderer/ppb_nacl_private_impl.cc View 1 chunk +7 lines, -0 lines 0 comments Download

Messages

Total messages: 2 (1 generated)
Derek Schuff
4 years ago (2016-12-10 01:46:52 UTC) #2
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as
8bf5b88ad8313472583f7f8cadb2be8dcde06069.

Powered by Google App Engine
This is Rietveld 408576698