- The compositor thread isn't doing a sync call that relies on the GPU service - it's handled on the browser side by the IO and FILE_USER_BLOCKING threads.
- The browser process has definitely gone away.
- Despite this, IPC::SyncMessageFilter::OnChannelError() hasn't been called (IPC::SyncMessageFilter::sender_ hasn't been cleared), which would unblock the waiting thread. This should be called on the IO thread from the corresponding IPC::ChannelProxy when the underlying IPC::ChannelMojo is closed.
So, more info:
- The compositor thread isn't doing a sync call that relies on the GPU service - it's handled on the browser side by the IO and FILE_USER_BLOCKING threads.
- The browser process has definitely gone away.
- Despite this, IPC::SyncMessag eFilter: :OnChannelError () hasn't been called (IPC::SyncMessa geFilter: :sender_ hasn't been cleared), which would unblock the waiting thread. This should be called on the IO thread from the corresponding IPC::ChannelProxy when the underlying IPC::ChannelMojo is closed.
I suspect this is caused by https:/ /code.google. com/p/chromium/ issues/ detail? id=377980 (it's enabled by default in 1.7, but not in 1.6). I'm going to disable this on the 1.7 branch just to see.