Deal with request-heap pointers in Transport class heirarchy.
commit947fe16f546f5a984298469359b6e613b5b8f8cd
authorEdwin Smith <smith@fb.com>
Tue, 22 Mar 2016 17:42:27 +0000 (22 10:42 -0700)
committerHhvm Bot <hhvm-bot-bot@fb.com>
Tue, 22 Mar 2016 18:00:46 +0000 (22 11:00 -0700)
tree56cb2163dff4358c5debb4f5f95b51dfb501d150
parentfdc96e1f502eb4f6364500460e96d67d2e166adf
Deal with request-heap pointers in Transport class heirarchy.

Summary:Transport contains a Cell pointing to a callback function
in the PHP heap. Move it to ExecutionContext.

ReplayTransport contains an IniSettingMap: make it a root,
just to be safe; it only should have static contents.

XboxServer and PageletServer point to AsioExternalThreadEvent
instances which in contain pointers to WaitHandles in *other*
requests. added comments, but don't scan them. Threads only scan
pointers into their own heaps.

Reviewed By: jano

Differential Revision: D3054805

fb-gh-sync-id: 17345d23b008dfd7301b8b39c68fb99c371c2634
shipit-source-id: 17345d23b008dfd7301b8b39c68fb99c371c2634
13 files changed:
hphp/runtime/base/execution-context.cpp
hphp/runtime/base/execution-context.h
hphp/runtime/base/heap-collect.cpp
hphp/runtime/base/ini-setting.h
hphp/runtime/base/req-root.cpp
hphp/runtime/ext/std/ext_std_network.cpp
hphp/runtime/server/fake-transport.h
hphp/runtime/server/pagelet-server.h
hphp/runtime/server/replay-transport.h
hphp/runtime/server/transport.cpp
hphp/runtime/server/transport.h
hphp/runtime/server/xbox-server.cpp
hphp/runtime/server/xbox-server.h