Blink roll 165981:165995

http://build.chromium.org/f/chromium/perf/dashboard/ui/changelog_blink.html?url=/trunk&range=165982:165995&mode=html
TBR=
BUG=

Review URL: https://codereview.chromium.org/137263016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247693 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 247693
forwarder2: Make the Forwarder instances operate on a single thread.

The Forwarder class used to operate on its own internal thread. This was
leading to e.g. 256 threads being spawned since Chrome keeps a lot of sockets
around in its socket pool.

This CL makes the ForwarderManager have an internal thread performing a single
select() on all the socket file descriptors and it notifies all the Forwarder
instances when some events occur.

The fact that ForwarderManager has an internal thread that joins on destruction
also makes the interactions between ForwarderManager and its clients much
simpler. In particular it allows us to remove its ref-counted thread-safe
delegate.

This CL should make the device_forwarder daemon more lightweight and make the
results in page_cyclers hopefully more stable.

The internal buffer used to forward the traffic is also shrunk to 32 KBytes
since 128 KBytes was way too big (read() rarely returns more than 16 KBytes).

BUG=332403

Review URL: https://codereview.chromium.org/148113003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247694 0039d316-1c4b-4281-b951-d872f2087c98
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247695 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 247695