diff --git a/sysfs/class_fibrechannel.go b/sysfs/class_fibrechannel.go index 28a871dd0..d7e62784b 100644 --- a/sysfs/class_fibrechannel.go +++ b/sysfs/class_fibrechannel.go @@ -17,6 +17,7 @@ package sysfs import ( + "errors" "fmt" "os" "path/filepath" @@ -161,7 +162,7 @@ func parseFibreChannelStatistics(hostPath string) (*FibreChannelCounters, error) value, err := util.SysReadFile(name) if err != nil { // there are some write-only files in this directory; we can safely skip over them - if os.IsNotExist(err) || err.Error() == "operation not supported" || err.Error() == "invalid argument" { + if os.IsNotExist(err) || err.Error() == "operation not supported" || errors.Is(err, os.ErrInvalid) { continue } return nil, fmt.Errorf("failed to read file %q: %w", name, err) diff --git a/sysfs/class_infiniband.go b/sysfs/class_infiniband.go index 679cb9686..652b544b5 100644 --- a/sysfs/class_infiniband.go +++ b/sysfs/class_infiniband.go @@ -17,6 +17,7 @@ package sysfs import ( + "errors" "fmt" "os" "path/filepath" @@ -261,7 +262,7 @@ func parseInfiniBandCounters(portPath string) (*InfiniBandCounters, error) { name := filepath.Join(path, f.Name()) value, err := util.SysReadFile(name) if err != nil { - if os.IsNotExist(err) || os.IsPermission(err) || err.Error() == "operation not supported" || err.Error() == "invalid argument" { + if os.IsNotExist(err) || os.IsPermission(err) || err.Error() == "operation not supported" || errors.Is(err, os.ErrInvalid) { continue } return nil, fmt.Errorf("failed to read file %q: %w", name, err) @@ -356,7 +357,7 @@ func parseInfiniBandCounters(portPath string) (*InfiniBandCounters, error) { name := filepath.Join(path, f.Name()) value, err := util.SysReadFile(name) if err != nil { - if os.IsNotExist(err) || os.IsPermission(err) || err.Error() == "operation not supported" || err.Error() == "invalid argument" { + if os.IsNotExist(err) || os.IsPermission(err) || err.Error() == "operation not supported" || errors.Is(err, os.ErrInvalid) { continue } return nil, fmt.Errorf("failed to read file %q: %w", name, err) diff --git a/sysfs/class_power_supply.go b/sysfs/class_power_supply.go index 9969f0114..c50c32b37 100644 --- a/sysfs/class_power_supply.go +++ b/sysfs/class_power_supply.go @@ -17,6 +17,7 @@ package sysfs import ( + "errors" "fmt" "os" "path/filepath" @@ -142,7 +143,7 @@ func parsePowerSupply(path string) (*PowerSupply, error) { name := filepath.Join(path, f.Name()) value, err := util.SysReadFile(name) if err != nil { - if os.IsNotExist(err) || err.Error() == "operation not supported" || err.Error() == "invalid argument" { + if os.IsNotExist(err) || err.Error() == "operation not supported" || errors.Is(err, os.ErrInvalid) { continue } return nil, fmt.Errorf("failed to read file %q: %w", name, err) diff --git a/sysfs/net_class.go b/sysfs/net_class.go index 364906ecb..0c8cb2845 100644 --- a/sysfs/net_class.go +++ b/sysfs/net_class.go @@ -17,6 +17,7 @@ package sysfs import ( + "errors" "fmt" "os" "path/filepath" @@ -133,7 +134,7 @@ func parseNetClassIface(devicePath string) (*NetClassIface, error) { name := filepath.Join(devicePath, f.Name()) value, err := util.SysReadFile(name) if err != nil { - if os.IsNotExist(err) || os.IsPermission(err) || err.Error() == "operation not supported" || err.Error() == "invalid argument" { + if os.IsNotExist(err) || os.IsPermission(err) || err.Error() == "operation not supported" || errors.Is(err, os.ErrInvalid) { continue } return nil, fmt.Errorf("failed to read file %q: %w", name, err)