mirror of
https://github.com/grafana/loki.git
synced 2026-03-13 09:33:58 +08:00
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Paul Rogers <paul.rogers@grafana.com> Co-authored-by: Trevor Whitney <trevorjwhitney@gmail.com>
41 lines
785 B
Go
41 lines
785 B
Go
//go:build aix
|
|
// +build aix
|
|
|
|
package perfstat
|
|
|
|
/*
|
|
#cgo LDFLAGS: -lperfstat
|
|
|
|
#include <libperfstat.h>
|
|
#include <sys/dr.h>
|
|
*/
|
|
import "C"
|
|
|
|
import (
|
|
"fmt"
|
|
"unsafe"
|
|
)
|
|
|
|
func PartitionStat() (*PartitionConfig, error) {
|
|
var part C.perfstat_partition_config_t
|
|
|
|
rc := C.perfstat_partition_config(nil, &part, C.sizeof_perfstat_partition_config_t, 1)
|
|
if rc != 1 {
|
|
return nil, fmt.Errorf("perfstat_partition_config() error")
|
|
}
|
|
p := perfstatpartitionconfig2partitionconfig(part)
|
|
return &p, nil
|
|
|
|
}
|
|
|
|
func LparInfo() (*PartitionInfo, error) {
|
|
var pinfo C.lpar_info_format2_t
|
|
|
|
rc := C.lpar_get_info(C.LPAR_INFO_FORMAT2, unsafe.Pointer(&pinfo), C.sizeof_lpar_info_format2_t)
|
|
if rc != 0 {
|
|
return nil, fmt.Errorf("lpar_get_info() error")
|
|
}
|
|
p := lparinfo2partinfo(pinfo)
|
|
return &p, nil
|
|
}
|