mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-11-04 07:49:35 +00:00 
			
		
		
		
	vendor: update github.com/opencontainers/runc
when the systemd cgroup manager is used, controllers not handled by systemd are created manually afterwards. libcontainer didn't correctly cleanup these cgroups that were leaked on cgroup v1. Closes: https://github.com/kubernetes/kubernetes/issues/92766 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
		
							
								
								
									
										28
									
								
								vendor/github.com/cilium/ebpf/marshalers.go
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										28
									
								
								vendor/github.com/cilium/ebpf/marshalers.go
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -4,13 +4,13 @@ import (
 | 
			
		||||
	"bytes"
 | 
			
		||||
	"encoding"
 | 
			
		||||
	"encoding/binary"
 | 
			
		||||
	"errors"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"reflect"
 | 
			
		||||
	"runtime"
 | 
			
		||||
	"unsafe"
 | 
			
		||||
 | 
			
		||||
	"github.com/cilium/ebpf/internal"
 | 
			
		||||
 | 
			
		||||
	"golang.org/x/xerrors"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func marshalPtr(data interface{}, length int) (internal.Pointer, error) {
 | 
			
		||||
@@ -18,7 +18,7 @@ func marshalPtr(data interface{}, length int) (internal.Pointer, error) {
 | 
			
		||||
		if length == 0 {
 | 
			
		||||
			return internal.NewPointer(nil), nil
 | 
			
		||||
		}
 | 
			
		||||
		return internal.Pointer{}, xerrors.New("can't use nil as key of map")
 | 
			
		||||
		return internal.Pointer{}, errors.New("can't use nil as key of map")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if ptr, ok := data.(unsafe.Pointer); ok {
 | 
			
		||||
@@ -42,12 +42,12 @@ func marshalBytes(data interface{}, length int) (buf []byte, err error) {
 | 
			
		||||
	case []byte:
 | 
			
		||||
		buf = value
 | 
			
		||||
	case unsafe.Pointer:
 | 
			
		||||
		err = xerrors.New("can't marshal from unsafe.Pointer")
 | 
			
		||||
		err = errors.New("can't marshal from unsafe.Pointer")
 | 
			
		||||
	default:
 | 
			
		||||
		var wr bytes.Buffer
 | 
			
		||||
		err = binary.Write(&wr, internal.NativeEndian, value)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			err = xerrors.Errorf("encoding %T: %v", value, err)
 | 
			
		||||
			err = fmt.Errorf("encoding %T: %v", value, err)
 | 
			
		||||
		}
 | 
			
		||||
		buf = wr.Bytes()
 | 
			
		||||
	}
 | 
			
		||||
@@ -56,7 +56,7 @@ func marshalBytes(data interface{}, length int) (buf []byte, err error) {
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if len(buf) != length {
 | 
			
		||||
		return nil, xerrors.Errorf("%T doesn't marshal to %d bytes", data, length)
 | 
			
		||||
		return nil, fmt.Errorf("%T doesn't marshal to %d bytes", data, length)
 | 
			
		||||
	}
 | 
			
		||||
	return buf, nil
 | 
			
		||||
}
 | 
			
		||||
@@ -92,13 +92,13 @@ func unmarshalBytes(data interface{}, buf []byte) error {
 | 
			
		||||
		*value = buf
 | 
			
		||||
		return nil
 | 
			
		||||
	case string:
 | 
			
		||||
		return xerrors.New("require pointer to string")
 | 
			
		||||
		return errors.New("require pointer to string")
 | 
			
		||||
	case []byte:
 | 
			
		||||
		return xerrors.New("require pointer to []byte")
 | 
			
		||||
		return errors.New("require pointer to []byte")
 | 
			
		||||
	default:
 | 
			
		||||
		rd := bytes.NewReader(buf)
 | 
			
		||||
		if err := binary.Read(rd, internal.NativeEndian, value); err != nil {
 | 
			
		||||
			return xerrors.Errorf("decoding %T: %v", value, err)
 | 
			
		||||
			return fmt.Errorf("decoding %T: %v", value, err)
 | 
			
		||||
		}
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
@@ -113,7 +113,7 @@ func unmarshalBytes(data interface{}, buf []byte) error {
 | 
			
		||||
func marshalPerCPUValue(slice interface{}, elemLength int) (internal.Pointer, error) {
 | 
			
		||||
	sliceType := reflect.TypeOf(slice)
 | 
			
		||||
	if sliceType.Kind() != reflect.Slice {
 | 
			
		||||
		return internal.Pointer{}, xerrors.New("per-CPU value requires slice")
 | 
			
		||||
		return internal.Pointer{}, errors.New("per-CPU value requires slice")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	possibleCPUs, err := internal.PossibleCPUs()
 | 
			
		||||
@@ -124,7 +124,7 @@ func marshalPerCPUValue(slice interface{}, elemLength int) (internal.Pointer, er
 | 
			
		||||
	sliceValue := reflect.ValueOf(slice)
 | 
			
		||||
	sliceLen := sliceValue.Len()
 | 
			
		||||
	if sliceLen > possibleCPUs {
 | 
			
		||||
		return internal.Pointer{}, xerrors.Errorf("per-CPU value exceeds number of CPUs")
 | 
			
		||||
		return internal.Pointer{}, fmt.Errorf("per-CPU value exceeds number of CPUs")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	alignedElemLength := align(elemLength, 8)
 | 
			
		||||
@@ -151,7 +151,7 @@ func marshalPerCPUValue(slice interface{}, elemLength int) (internal.Pointer, er
 | 
			
		||||
func unmarshalPerCPUValue(slicePtr interface{}, elemLength int, buf []byte) error {
 | 
			
		||||
	slicePtrType := reflect.TypeOf(slicePtr)
 | 
			
		||||
	if slicePtrType.Kind() != reflect.Ptr || slicePtrType.Elem().Kind() != reflect.Slice {
 | 
			
		||||
		return xerrors.Errorf("per-cpu value requires pointer to slice")
 | 
			
		||||
		return fmt.Errorf("per-cpu value requires pointer to slice")
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	possibleCPUs, err := internal.PossibleCPUs()
 | 
			
		||||
@@ -170,7 +170,7 @@ func unmarshalPerCPUValue(slicePtr interface{}, elemLength int, buf []byte) erro
 | 
			
		||||
 | 
			
		||||
	step := len(buf) / possibleCPUs
 | 
			
		||||
	if step < elemLength {
 | 
			
		||||
		return xerrors.Errorf("per-cpu element length is larger than available data")
 | 
			
		||||
		return fmt.Errorf("per-cpu element length is larger than available data")
 | 
			
		||||
	}
 | 
			
		||||
	for i := 0; i < possibleCPUs; i++ {
 | 
			
		||||
		var elem interface{}
 | 
			
		||||
@@ -188,7 +188,7 @@ func unmarshalPerCPUValue(slicePtr interface{}, elemLength int, buf []byte) erro
 | 
			
		||||
 | 
			
		||||
		err := unmarshalBytes(elem, elemBytes)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			return xerrors.Errorf("cpu %d: %w", i, err)
 | 
			
		||||
			return fmt.Errorf("cpu %d: %w", i, err)
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		buf = buf[step:]
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user