mirror of
https://github.com/kubernetes/sample-controller.git
synced 2025-01-21 01:12:51 +08:00
a2f289abf2
Automatic merge from submit-queue (batch tested with PRs 55798, 49579, 54862, 55188, 51990). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Add monitoring support for hardware accelerators Currently only NVIDIA GPU monitoring is implemented. Feature repo issue: https://github.com/kubernetes/features/issues/369 cAdvisor PR: https://github.com/google/cadvisor/pull/1762 /kind feature /sig node /sig instrumentation /area hw-accelerators **Release note**: ```release-note Kubelet now exposes metrics for NVIDIA GPUs attached to the containers. ``` Kubernetes-commit: 779105673ab2f00af9e02dc9ac3c6413588aeae4
81 lines
1.8 KiB
Go
81 lines
1.8 KiB
Go
// Code generated by linux/mkall.go generatePtracePair(386, amd64). DO NOT EDIT.
|
|
|
|
// +build linux
|
|
// +build 386 amd64
|
|
|
|
package unix
|
|
|
|
import "unsafe"
|
|
|
|
// PtraceRegs386 is the registers used by 386 binaries.
|
|
type PtraceRegs386 struct {
|
|
Ebx int32
|
|
Ecx int32
|
|
Edx int32
|
|
Esi int32
|
|
Edi int32
|
|
Ebp int32
|
|
Eax int32
|
|
Xds int32
|
|
Xes int32
|
|
Xfs int32
|
|
Xgs int32
|
|
Orig_eax int32
|
|
Eip int32
|
|
Xcs int32
|
|
Eflags int32
|
|
Esp int32
|
|
Xss int32
|
|
}
|
|
|
|
// PtraceGetRegs386 fetches the registers used by 386 binaries.
|
|
func PtraceGetRegs386(pid int, regsout *PtraceRegs386) error {
|
|
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
|
|
}
|
|
|
|
// PtraceSetRegs386 sets the registers used by 386 binaries.
|
|
func PtraceSetRegs386(pid int, regs *PtraceRegs386) error {
|
|
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
|
|
}
|
|
|
|
// PtraceRegsAmd64 is the registers used by amd64 binaries.
|
|
type PtraceRegsAmd64 struct {
|
|
R15 uint64
|
|
R14 uint64
|
|
R13 uint64
|
|
R12 uint64
|
|
Rbp uint64
|
|
Rbx uint64
|
|
R11 uint64
|
|
R10 uint64
|
|
R9 uint64
|
|
R8 uint64
|
|
Rax uint64
|
|
Rcx uint64
|
|
Rdx uint64
|
|
Rsi uint64
|
|
Rdi uint64
|
|
Orig_rax uint64
|
|
Rip uint64
|
|
Cs uint64
|
|
Eflags uint64
|
|
Rsp uint64
|
|
Ss uint64
|
|
Fs_base uint64
|
|
Gs_base uint64
|
|
Ds uint64
|
|
Es uint64
|
|
Fs uint64
|
|
Gs uint64
|
|
}
|
|
|
|
// PtraceGetRegsAmd64 fetches the registers used by amd64 binaries.
|
|
func PtraceGetRegsAmd64(pid int, regsout *PtraceRegsAmd64) error {
|
|
return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
|
|
}
|
|
|
|
// PtraceSetRegsAmd64 sets the registers used by amd64 binaries.
|
|
func PtraceSetRegsAmd64(pid int, regs *PtraceRegsAmd64) error {
|
|
return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
|
|
}
|