New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 801644 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
please use my google.com address
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

Utility process embedded services do not report PID

Project Member Reported by roc...@chromium.org, Jan 12 2018

Issue description

content_utility instances get the correct PID since they're introduced by the browser, but embedded services loaded by the utility-process-as-service-process do *not* do this.

In order to fix this, ServiceFactory.CreateService should also send a PIDReceiver for the factory to communicate with.

Prioritizing since it's blocking some other work.
 

Comment 1 by z...@chromium.org, Jan 12 2018

Cc: z...@chromium.org
Project Member

Comment 2 by bugdroid1@chromium.org, Jan 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cf03eeeac42bd0375df74f2140c72ebf76b52d6f

commit cf03eeeac42bd0375df74f2140c72ebf76b52d6f
Author: Ken Rockot <rockot@chromium.org>
Date: Tue Jan 16 18:48:01 2018

Report service instance PIDs for OOP embedded services

Embedded OOP services launched by the content layer do not
have their (hosting utility process) PID reported to the
Service Manager, due to a shortcoming of the ServiceFactory
API.

This adds a PIDReceiver interface param to ServiceFactory.CreateService,
and updates ServiceManagerContext and related bits to properly report
child process PID when launching an out-of-process service in a utility
or GPU process.

Also moves the content_shell testing "echo" service out-of-process
so it can be exploited for additional test coverage here.

Bug:  801644 
Cq-Include-Trybots: master.tryserver.chromium.linux:linux_mojo;master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I07825835ba3595d0cc328b048b9159b99d03a685
Reviewed-on: https://chromium-review.googlesource.com/865515
Commit-Queue: Ken Rockot <rockot@chromium.org>
Reviewed-by: Jay Civelli <jcivelli@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529474}
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/components/printing/service/pdf_compositor_service_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/browser/dom_storage/local_storage_context_mojo_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/browser/service_manager/service_manager_context.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/browser/service_manager/service_manager_context_browsertest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/browser/utility_process_host_impl.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/browser/utility_process_host_impl.h
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/child/service_factory.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/child/service_factory.h
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/common/service_manager/service_manager_connection_impl.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/common/service_manager/service_manager_connection_impl.h
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/common/service_manager/service_manager_connection_impl_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/network/network_service_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/public/common/service_manager_connection.h
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/shell/browser/shell_content_browser_client.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/shell/utility/DEPS
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/shell/utility/shell_content_utility_client.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/utility/utility_service_factory.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/content/utility/utility_service_factory.h
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/ios/web/service_manager_connection_impl.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/ios/web/service_manager_connection_impl_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/audio/test/in_process_service_test.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/device/device_service_test_base.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/identity/identity_manager_impl_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/preferences/pref_service_factory_unittest.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/service_manager/public/interfaces/service_factory.mojom
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/service_manager/service_manager.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/service_manager/service_manager.h
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/service_manager/tests/connect/connect_test_package.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/service_manager/tests/lifecycle/package.cc
[modify] https://crrev.com/cf03eeeac42bd0375df74f2140c72ebf76b52d6f/services/service_manager/tests/service_manager/embedder.cc

Comment 3 by roc...@chromium.org, Jan 16 2018

Status: Fixed (was: Assigned)

Sign in to add a comment