github.com/zhuohuang-hust/src-cbuild@v0.0.0-20230105071821-c7aab3e7c840/mergeCode/runc/libcontainer/cgroups/fs/net_prio.go (about) 1 // +build linux 2 3 package fs 4 5 import ( 6 "github.com/opencontainers/runc/libcontainer/cgroups" 7 "github.com/opencontainers/runc/libcontainer/configs" 8 ) 9 10 type NetPrioGroup struct { 11 } 12 13 func (s *NetPrioGroup) Name() string { 14 return "net_prio" 15 } 16 17 func (s *NetPrioGroup) Apply(d *cgroupData) error { 18 _, err := d.join("net_prio") 19 if err != nil && !cgroups.IsNotFound(err) { 20 return err 21 } 22 return nil 23 } 24 25 func (s *NetPrioGroup) Set(path string, cgroup *configs.Cgroup) error { 26 for _, prioMap := range cgroup.Resources.NetPrioIfpriomap { 27 if err := writeFile(path, "net_prio.ifpriomap", prioMap.CgroupString()); err != nil { 28 return err 29 } 30 } 31 32 return nil 33 } 34 35 func (s *NetPrioGroup) Remove(d *cgroupData) error { 36 return removePath(d.path("net_prio")) 37 } 38 39 func (s *NetPrioGroup) GetStats(path string, stats *cgroups.Stats) error { 40 return nil 41 }