11package jobobject
22
33import (
4+ "errors"
45 "fmt"
56 "unsafe"
67
78 "github.com/Microsoft/hcsshim/internal/winapi"
8- "github.com/pkg/errors"
99 "golang.org/x/sys/windows"
1010)
1111
@@ -22,23 +22,23 @@ func (job *JobObject) SetResourceLimits(limits *JobLimits) error {
2222 // Go through and check what limits were specified and apply them to the job.
2323 if limits .MemoryLimitInBytes != 0 {
2424 if err := job .SetMemoryLimit (limits .MemoryLimitInBytes ); err != nil {
25- return errors . Wrap ( err , "failed to set job object memory limit" )
25+ return fmt . Errorf ( "failed to set job object memory limit: %w" , err )
2626 }
2727 }
2828
2929 if limits .CPULimit != 0 {
3030 if err := job .SetCPULimit (RateBased , limits .CPULimit ); err != nil {
31- return errors . Wrap ( err , "failed to set job object cpu limit" )
31+ return fmt . Errorf ( "failed to set job object cpu limit: %w" , err )
3232 }
3333 } else if limits .CPUWeight != 0 {
3434 if err := job .SetCPULimit (WeightBased , limits .CPUWeight ); err != nil {
35- return errors . Wrap ( err , "failed to set job object cpu limit" )
35+ return fmt . Errorf ( "failed to set job object cpu limit: %w" , err )
3636 }
3737 }
3838
3939 if limits .MaxBandwidth != 0 || limits .MaxIOPS != 0 {
4040 if err := job .SetIOLimit (limits .MaxBandwidth , limits .MaxIOPS ); err != nil {
41- return errors . Wrap ( err , "failed to set io limit on job object" )
41+ return fmt . Errorf ( "failed to set io limit on job object: %w" , err )
4242 }
4343 }
4444 return nil
@@ -206,7 +206,7 @@ func (job *JobObject) getExtendedInformation() (*windows.JOBOBJECT_EXTENDED_LIMI
206206 uint32 (unsafe .Sizeof (info )),
207207 nil ,
208208 ); err != nil {
209- return nil , errors . Wrapf ( err , "query %v returned error" , info )
209+ return nil , fmt . Errorf ( "query %v returned error: %w " , info , err )
210210 }
211211 return & info , nil
212212}
@@ -228,7 +228,7 @@ func (job *JobObject) getCPURateControlInformation() (*winapi.JOBOBJECT_CPU_RATE
228228 uint32 (unsafe .Sizeof (info )),
229229 nil ,
230230 ); err != nil {
231- return nil , errors . Wrapf ( err , "query %v returned error" , info )
231+ return nil , fmt . Errorf ( "query %v returned error: %w " , info , err )
232232 }
233233 return & info , nil
234234}
@@ -248,7 +248,7 @@ func (job *JobObject) setExtendedInformation(info *windows.JOBOBJECT_EXTENDED_LI
248248 uintptr (unsafe .Pointer (info )),
249249 uint32 (unsafe .Sizeof (* info )),
250250 ); err != nil {
251- return errors . Wrapf ( err , "failed to set Extended info %v on job object" , info )
251+ return fmt . Errorf ( "failed to set Extended info %v on job object: %w " , info , err )
252252 }
253253 return nil
254254}
@@ -271,7 +271,7 @@ func (job *JobObject) getIOLimit() (*winapi.JOBOBJECT_IO_RATE_CONTROL_INFORMATIO
271271 & ioInfo ,
272272 & blockCount ,
273273 ); err != nil {
274- return nil , errors . Wrapf ( err , "query %v returned error" , ioInfo )
274+ return nil , fmt . Errorf ( "query %v returned error: %w " , ioInfo , err )
275275 }
276276
277277 if ! isFlagSet (winapi .JOB_OBJECT_IO_RATE_CONTROL_ENABLE , ioInfo .ControlFlags ) {
@@ -290,7 +290,7 @@ func (job *JobObject) setIORateControlInfo(ioInfo *winapi.JOBOBJECT_IO_RATE_CONT
290290 }
291291
292292 if _ , err := winapi .SetIoRateControlInformationJobObject (job .handle , ioInfo ); err != nil {
293- return errors . Wrapf ( err , "failed to set IO limit info %v on job object" , ioInfo )
293+ return fmt . Errorf ( "failed to set IO limit info %v on job object: %w " , ioInfo , err )
294294 }
295295 return nil
296296}
@@ -309,7 +309,7 @@ func (job *JobObject) setCPURateControlInfo(cpuInfo *winapi.JOBOBJECT_CPU_RATE_C
309309 uintptr (unsafe .Pointer (cpuInfo )),
310310 uint32 (unsafe .Sizeof (cpuInfo )),
311311 ); err != nil {
312- return errors . Wrapf ( err , "failed to set cpu limit info %v on job object" , cpuInfo )
312+ return fmt . Errorf ( "failed to set cpu limit info %v on job object: %w " , cpuInfo , err )
313313 }
314314 return nil
315315}
0 commit comments