aboutsummaryrefslogtreecommitdiffhomepage
path: root/six.BUILD
diff options
context:
space:
mode:
authorGravatar Derek Murray <mrry@google.com>2016-12-15 14:00:21 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2016-12-15 14:07:36 -0800
commitabd3190d329385776e92baaaaf605d3371010486 (patch)
tree186495213191921d8f0e78ae3bbedb213b1933fa /six.BUILD
parent12954acc1df5514c8193bb104e044432e34e5e60 (diff)
Fix use-after-free bug when closing a MasterSession.
A concurrent run call could continue to use a MasterSession that had deleted itself (in `MasterSession::Close()`). Change `MasterSession` to be an explicitly shared, refcounted object; and modify the `Master` so that each call that uses a session will acquire a reference to that session, then release it before calling the callback. Add a `MasterSession::closed_` bit to ensure that no call uses a session after `MasterSession::Close()` has succeeded. Also fix a null-pointer access that could occur if a ReffedClientGraph was partially constructed. If `ReffedClientGraph::RegisterPartitions()` failed, some of the `Part::worker` fields would be uninitialized, and `ReffedClientGraph::DeregisterPartitions()` (called by the destructor) would attempt to invoke a method on that object. Fix this by only attempting to deregister partitions that have been successfully registered. Change: 142185174
Diffstat (limited to 'six.BUILD')
0 files changed, 0 insertions, 0 deletions