New issue
Advanced search Search tips

Issue 766239 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug
Proj-Servicification

Blocking:
issue 729849



Sign in to add a comment

NetworkServiceURLLoaderFactoryImpl::CreateLoaderAndStart casts uninitialized network traffic annotation

Project Member Reported by yzshen@chromium.org, Sep 18 2017

Issue description

This is causing Layout tests flakiness:
  - virtual/mojo-loading/http/tests/subresource_filter/picture-disallowed.html

Please see link:
https://chromium-swarm.appspot.com/task?id=38aecd5a9a0a2510&refresh=10&show_raw=1

10:23:10.970 30445   [31892:31928:0918/102310.793588:17609581584:FATAL:network_traffic_annotation.h(226)] Check failed: unique_id_hash_code != TRAFFIC_ANNOTATION_UNINITIALIZED (-1 vs. -1)
10:23:10.970 30445   #0 0x000001ccda17 base::debug::StackTrace::StackTrace()
10:23:10.970 30445   #1 0x000001ce49d1 logging::LogMessage::~LogMessage()
10:23:10.970 30445   #2 0x000001b37c8b content::NetworkServiceURLLoaderFactoryImpl::CreateLoaderAndStart()
10:23:10.970 30445   #3 0x0000004a1b3a content::mojom::URLLoaderFactoryStubDispatch::Accept()
10:23:10.970 30445   #4 0x000001eae09f mojo::InterfaceEndpointClient::HandleValidatedMessage()
10:23:10.970 30445   #5 0x000001ec3b06 mojo::FilterChain::Accept()
10:23:10.970 30445   #6 0x000001eaf44c mojo::InterfaceEndpointClient::HandleIncomingMessage()
10:23:10.970 30445   #7 0x000001eb7ffe mojo::internal::MultiplexRouter::ProcessIncomingMessage()
10:23:10.970 30445   #8 0x000001eb75b4 mojo::internal::MultiplexRouter::Accept()
10:23:10.970 30445   #9 0x000001ec3b06 mojo::FilterChain::Accept()
10:23:10.970 30445   #10 0x000001eacff1 mojo::Connector::ReadSingleMessage()
10:23:10.970 30445   #11 0x000001eada12 mojo::Connector::ReadAllAvailableMessages()
10:23:10.970 30445   #12 0x000001ead88c mojo::Connector::OnHandleReadyInternal()
10:23:10.970 30445   #13 0x00000093ed60 mojo::SimpleWatcher::DiscardReadyState()
10:23:10.970 30445   #14 0x000001ec8912 mojo::SimpleWatcher::OnHandleReady()
10:23:10.970 30445   #15 0x000001ec8cee mojo::SimpleWatcher::Context::Notify()
10:23:10.970 30445   #16 0x000001ec7ade mojo::SimpleWatcher::Context::CallNotify()
10:23:10.970 30445   #17 0x000002f603a5 mojo::edk::Watch::InvokeCallback()
10:23:10.970 30445   #18 0x000002f5c21d mojo::edk::RequestContext::~RequestContext()
10:23:10.970 30445   #19 0x000002f674cb mojo::edk::NodeChannel::OnChannelMessage()
10:23:10.970 30445   #20 0x000002f65d04 mojo::edk::Channel::OnReadComplete()
10:23:10.970 30445   #21 0x000002f690c7 mojo::edk::(anonymous namespace)::ChannelPosix::OnFileCanReadWithoutBlocking()
10:23:10.970 30445   #22 0x000001cee460 base::MessagePumpLibevent::OnLibeventNotification()
10:23:10.970 30445   #23 0x000001d8660e event_base_loop
10:23:10.970 30445   #24 0x000001cee7c5 base::MessagePumpLibevent::Run()
10:23:10.970 30445   #25 0x000001ceac9a base::MessageLoop::Run()
10:23:10.970 30445   #26 0x000001d0c1a6 base::RunLoop::Run()
10:23:10.970 30445   #27 0x000001d3380c base::Thread::Run()
10:23:10.971 30445   #28 0x000001d33db2 base::Thread::ThreadMain()
10:23:10.971 30445   #29 0x000001d2c59c base::(anonymous namespace)::ThreadFunc()
10:23:10.971 30445   #30 0x7f3169455184 start_thread
10:23:10.971 30445   #31 0x7f3164b62ffd clone
 

Comment 1 by mmenke@chromium.org, Sep 19 2017

Cc: rhalavati@chromium.org
Status: Started (was: Available)
Cc: -rhalavati@chromium.org falken@chromium.org
Owner: rhalavati@chromium.org
falken@,

I very much suspect that this is because of the unannotated call of CreateLoaderAndStart in ServiceWorkerFetchDispatcher
(https://cs.chromium.org/chromium/src/content/browser/service_worker/service_worker_fetch_dispatcher.cc?rcl=0622adc1c5f32cca3c719e0eba760a5c4b161246&l=752).

Do you think that the annotation can originate from here (it's something like a general resource request) or I can add annotation as a parameter of the ResourceRequest?

Comment 4 by yzshen@chromium.org, Sep 22 2017

It is also causing flakiness with 
- http/tests/serviceworker/webexposed/global-interface-listing-service-worker.html

Please see
https://chromium-swarm.appspot.com/task?id=38c34b9352b80b10&refresh=10&show_raw=1

Comment 5 by falken@chromium.org, Sep 25 2017

Cc: kinuko@chromium.org
> Do you think that the annotation can originate from here (it's something like a general resource request) or I can add annotation as a parameter of the ResourceRequest?

This occurs on navigations when service worker navigation preload is enabled, and when NetworkService is enabled. We could either re-use the annotation for the navigation (which seems to be kTrafficAnnotation in navigation_url_loader_network_service.cc), or make a new annotation for the ServiceWorkerNavigationPreload feature. The main point is that this happens on a navigation, so just reusing kTrafficAnnotation seems fine.
Project Member

Comment 6 by bugdroid1@chromium.org, Sep 26 2017

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

commit efcf82b4e1b878296bfec8325e84e4b910b1b362
Author: Ramin Halavati <rhalavati@chromium.org>
Date: Tue Sep 26 14:11:08 2017

Missing Traffic Annotation added to ServiceWorkerFetchDispatcher.

Missing traffic annotation added to
ServiceWorkerFetchDispatcher::MaybeStartNavigationPreloadWithURLLoader

Bug:  766239 
Bug:  656607 
Change-Id: I4df9cd4389cfe494fb34176f9efe005f76a24f73
Reviewed-on: https://chromium-review.googlesource.com/678498
Commit-Queue: Ramin Halavati <rhalavati@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Martin Šrámek <msramek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#504357}
[modify] https://crrev.com/efcf82b4e1b878296bfec8325e84e4b910b1b362/content/browser/service_worker/service_worker_fetch_dispatcher.cc
[modify] https://crrev.com/efcf82b4e1b878296bfec8325e84e4b910b1b362/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/efcf82b4e1b878296bfec8325e84e4b910b1b362/tools/traffic_annotation/summary/annotations.xml

Status: Fixed (was: Started)
Marking it fixed as the failure did not occur in the two day after the patch. 

Comment 8 by laforge@google.com, Nov 7 2017

Components: -Internals>Network>Service Internals>Services>Network
Apologies, applied the wrong component in bulk.

Sign in to add a comment