Преглед изворни кода

Use Klogctl from x/sys/unix to read Linux kernel log

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Tobias Klauser пре 6 година
родитељ
комит
2841b05b71
1 измењених фајлова са 3 додато и 5 уклоњено
  1. 3 5
      pkg/dmesg/dmesg_linux.go

+ 3 - 5
pkg/dmesg/dmesg_linux.go

@@ -1,17 +1,15 @@
 package dmesg // import "github.com/docker/docker/pkg/dmesg"
 package dmesg // import "github.com/docker/docker/pkg/dmesg"
 
 
 import (
 import (
-	"unsafe"
-
 	"golang.org/x/sys/unix"
 	"golang.org/x/sys/unix"
 )
 )
 
 
 // Dmesg returns last messages from the kernel log, up to size bytes
 // Dmesg returns last messages from the kernel log, up to size bytes
 func Dmesg(size int) []byte {
 func Dmesg(size int) []byte {
-	t := uintptr(3) // SYSLOG_ACTION_READ_ALL
+	t := 3 // SYSLOG_ACTION_READ_ALL
 	b := make([]byte, size)
 	b := make([]byte, size)
-	amt, _, err := unix.Syscall(unix.SYS_SYSLOG, t, uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)))
-	if err != 0 {
+	amt, err := unix.Klogctl(t, b)
+	if err != nil {
 		return []byte{}
 		return []byte{}
 	}
 	}
 	return b[:amt]
 	return b[:amt]