mirror of
https://github.com/clearlinux/docker.git
synced 2026-09-06 13:41:36 +00:00
Merge pull request #14006 from hqhq/hq_add_kmem_limit
Add support for kernel memory limit
This commit is contained in:
@@ -283,6 +283,18 @@ func (s *DockerSuite) TestRunWithCpuPeriod(c *check.C) {
|
||||
}
|
||||
}
|
||||
|
||||
func (s *DockerSuite) TestRunWithKernelMemory(c *check.C) {
|
||||
testRequires(c, kernelMemorySupport)
|
||||
|
||||
dockerCmd(c, "run", "--kernel-memory", "50M", "--name", "test", "busybox", "true")
|
||||
|
||||
out, err := inspectField("test", "HostConfig.KernelMemory")
|
||||
c.Assert(err, check.IsNil)
|
||||
if out != "52428800" {
|
||||
c.Fatalf("setting the kernel memory limit failed")
|
||||
}
|
||||
}
|
||||
|
||||
func (s *DockerSuite) TestRunOOMExitCode(c *check.C) {
|
||||
testRequires(c, oomControl)
|
||||
errChan := make(chan error)
|
||||
|
||||
@@ -54,4 +54,17 @@ var (
|
||||
},
|
||||
"Test requires Oom control enabled.",
|
||||
}
|
||||
kernelMemorySupport = testRequirement{
|
||||
func() bool {
|
||||
cgroupMemoryMountpoint, err := cgroups.FindCgroupMountpoint("memory")
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
if _, err := ioutil.ReadFile(path.Join(cgroupMemoryMountpoint, "memory.kmem.limit_in_bytes")); err != nil {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
},
|
||||
"Test requires an environment that supports cgroup kernel memory.",
|
||||
}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user