From 5441f2a20e6cc2d6da51481b6af9775b785e20eb Mon Sep 17 00:00:00 2001 From: likun Date: Thu, 14 Aug 2025 10:31:57 -0400 Subject: [PATCH] fix iolimit inaccurate computing device major and minor number --- pkg/services/iolimit/iolimit.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/services/iolimit/iolimit.go b/pkg/services/iolimit/iolimit.go index 131ebda..1066055 100644 --- a/pkg/services/iolimit/iolimit.go +++ b/pkg/services/iolimit/iolimit.go @@ -23,6 +23,7 @@ import ( "strings" "syscall" + "golang.org/x/sys/unix" "isula.org/rubik/pkg/api" "isula.org/rubik/pkg/common/constant" "isula.org/rubik/pkg/common/log" @@ -350,8 +351,8 @@ func convertToMajorMinorImpl(deviceName string) (string, error) { if stat.Mode()&os.ModeDevice != 0 { sys := stat.Sys() if sysstat, ok := sys.(*syscall.Stat_t); ok { - major := (sysstat.Rdev >> 8) & 0xff - minor := sysstat.Rdev & 0xff + major := unix.Major(sysstat.Rdev) + minor := unix.Minor(sysstat.Rdev) return fmt.Sprintf("%d:%d", major, minor), nil } } -- Gitee