Forráskód Böngészése

Refactor cpu-realtime file creation to remove duplication

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Vincent Demeester 8 éve
szülő
commit
f7819fcb25
2 módosított fájl, 12 hozzáadás és 10 törlés
  1. 11 9
      daemon/daemon_unix.go
  2. 1 1
      daemon/graphdriver/counter.go

+ 11 - 9
daemon/daemon_unix.go

@@ -1276,19 +1276,21 @@ func (daemon *Daemon) initCgroupsPath(path string) error {
 
 	path = filepath.Join(root, path)
 	sysinfo := sysinfo.New(true)
-	if sysinfo.CPURealtimePeriod && daemon.configStore.CPURealtimePeriod != 0 {
-		if err := os.MkdirAll(path, 0755); err != nil && !os.IsExist(err) {
-			return err
-		}
-		if err := ioutil.WriteFile(filepath.Join(path, "cpu.rt_period_us"), []byte(strconv.FormatInt(daemon.configStore.CPURealtimePeriod, 10)), 0700); err != nil {
-			return err
-		}
+	if err := maybeCreateCPURealTimeFile(sysinfo.CPURealtimePeriod, daemon.configStore.CPURealtimePeriod, "cpu.rt_period_us", path); err != nil {
+		return err
 	}
-	if sysinfo.CPURealtimeRuntime && daemon.configStore.CPURealtimeRuntime != 0 {
+	if err := maybeCreateCPURealTimeFile(sysinfo.CPURealtimeRuntime, daemon.configStore.CPURealtimeRuntime, "cpu.rt_runtime_us", path); err != nil {
+		return err
+	}
+	return nil
+}
+
+func maybeCreateCPURealTimeFile(sysinfoPresent bool, configValue int64, file string, path string) error {
+	if sysinfoPresent && configValue != 0 {
 		if err := os.MkdirAll(path, 0755); err != nil && !os.IsExist(err) {
 			return err
 		}
-		if err := ioutil.WriteFile(filepath.Join(path, "cpu.rt_runtime_us"), []byte(strconv.FormatInt(daemon.configStore.CPURealtimeRuntime, 10)), 0700); err != nil {
+		if err := ioutil.WriteFile(filepath.Join(path, file), []byte(strconv.FormatInt(configValue, 10)), 0700); err != nil {
 			return err
 		}
 	}

+ 1 - 1
daemon/graphdriver/counter.go

@@ -56,4 +56,4 @@ func (c *RefCounter) incdec(path string, infoOp func(minfo *minfo)) int {
 	count := m.count
 	c.mu.Unlock()
 	return count
-}
+}