New issue
Advanced search Search tips

Issue 734706 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug

Blocking:
issue 708303



Sign in to add a comment

device::DataFetcherSharedMemory::RegisterForSensor Needs to Run on a COM Initialized Thread

Project Member Reported by robliao@chromium.org, Jun 19 2017

Issue description

This call will create an implicit MTA, whose lifetime is relatively undefined.

Backtrace:
base::debug::StackTrace::StackTrace [0x6DE72EC7+55]
base::debug::StackTrace::StackTrace [0x6DE7574A+10]
base::win::AssertComInitialized [0x6DE9FD43+115]
base::win::ComInitCheckHook::~ComInitCheckHook [0x6DE9D5D8+24]
device::DataFetcherSharedMemory::RegisterForSensor [0x6EA6C268+43]
device::DataFetcherSharedMemory::Start [0x6EA6C63D+345]
device::DataFetcherSharedMemoryBase::PollingThread::AddConsumer [0x6EA6D59F+92]
base::internal::Invoker<base::internal::BindState<void (__thiscall chrome_browser_net::Predictor::*)(base::ListValue *,base::ListValue *),base::internal::UnretainedWrapper<chrome_browser_net::Predictor>,base::ListValue *,base::ListValue *>,void __cdecl(vo [0x6F46E849+18]
base::debug::TaskAnnotator::RunTask [0x6DE88509+409]
base::MessageLoop::RunTask [0x6DE3DEA1+1233]
base::MessageLoop::DoWork [0x6DE3D25D+765]
base::MessagePumpDefault::Run [0x6DE8A53A+106]
base::MessageLoop::Run [0x6DE3D9BB+107]
base::RunLoop::Run [0x6DE5C793+147]
base::Thread::Run [0x6DE3ABDD+173]
base::Thread::ThreadMain [0x6DE3B68E+622]
base::PlatformThread::Sleep [0x6DE12452+290]
BaseThreadInitThunk [0x74EF338A+18]
RtlInitializeExceptionChain [0x77379902+99]
RtlInitializeExceptionChain [0x773798D5+54]

 
is this a crash stack? (or just some trace?), any links?
This is a DCHECK stack of some instrumentation I will be enabling in builds once all of the issues are fixed.
Project Member

Comment 3 by bugdroid1@chromium.org, Jun 23 2017

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

commit 8c422776556e72ee3f7692125fcd8b0015db13dd
Author: Robert Liao <robliao@chromium.org>
Date: Fri Jun 23 17:27:54 2017

Initialize an MTA on the Device Polling Thread

The change explicitly initializes a COM MTA on the device polling
thread. Previously, an COM implicitly initialized an MTA on the first
CoCreateInstance call.

BUG= 734706 

Change-Id: I64e70f06b2e82520419ce74e3bc2db396896af4c
Reviewed-on: https://chromium-review.googlesource.com/544685
Reviewed-by: Tim Volodine <timvolodine@chromium.org>
Commit-Queue: Robert Liao <robliao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#481942}
[modify] https://crrev.com/8c422776556e72ee3f7692125fcd8b0015db13dd/device/sensors/data_fetcher_shared_memory_base.cc

Status: Fixed (was: Started)

Sign in to add a comment