-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20817/
-----------------------------------------------------------
(Updated May 1, 2014, 12:24 p.m.)
Review request for mesos, Benjamin Hindman, Ben Mahler, Chi Zhang, Jie Yu, and
Vinod Kone.
Changes
-------
Rebased.
Repository: mesos-git
Description
-------
The Freezer tries to converge to the "FROZEN" state by repeatedly (every
100 ms) writing "FROZEN" to the freezer.state control file (up to a
configurable timeout). It assumes there are two possible reasons why a
process does not get frozen during an attempt:
1. It was in the middle of being forked and did not receive the signal;
it will receive it at the next attempt.
2. It is in uninterruptable sleep ("D" state). Normally, this is from
device I/O or paging and is shortlived, in which case it'll be frozen on
retry. However, processes can get stuck in "D" state, either because of
a device issue, incorrect OOM handling, or kernel bugs. Under this
scenario the correct behavior is to fail after a timeout (defaults to 60
seconds).
Freezer functions have been namespaced under cgroups::freezer.
Diffs (updated)
-----
src/linux/cgroups.hpp 5a5735721fb9f051eee661edb08d1cdaa163d0f3
src/linux/cgroups.cpp 8202c282f580d027a60ded2081962e96e4860f60
src/tests/cgroups_tests.cpp 6ba9de622953e158feadaa9950618b0b13c9e832
Diff: https://reviews.apache.org/r/20817/diff/
Testing
-------
make check # Linux
Thanks,
Ian Downes