Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:12.3
i2c-tools
i2c-tools-r6063-dont-choke-when-no-eeprom.diff
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File i2c-tools-r6063-dont-choke-when-no-eeprom.diff of Package i2c-tools
Subject: decode-dimms: Don't choke when no EEPROM is found Upstream: yes, r6063 Don't choke when no SPD EEPROM is found while the eeprom or at24 driver is loaded. This can happen, handle the case gracefully. --- eeprom/decode-dimms | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) --- i2c-tools-3.1.0.orig/eeprom/decode-dimms +++ i2c-tools-3.1.0/eeprom/decode-dimms @@ -1728,7 +1728,7 @@ sub sysfs_device_attribute sub get_dimm_list { - my (@dirs, $dir, $file, @files); + my (@dirs, $dir, $opened, $file, @files); if ($use_sysfs) { @dirs = ('/sys/bus/i2c/drivers/eeprom', '/sys/bus/i2c/drivers/at24'); @@ -1738,6 +1738,7 @@ sub get_dimm_list foreach $dir (@dirs) { next unless opendir(local *DIR, $dir); + $opened++; while (defined($file = readdir(DIR))) { if ($use_sysfs) { # We look for I2C devices like 0-0050 or 2-0051 @@ -1758,12 +1759,12 @@ sub get_dimm_list close(DIR); } - if (@files) { - return sort { $a->{file} cmp $b->{file} } @files; - } elsif (! -d '/sys/module/eeprom') { - print "No EEPROM found, are you sure the eeprom module is loaded?\n"; + if (!$opened) { + print STDERR "No EEPROM found, try loading the eeprom or at24 module\n"; exit; } + + return sort { $a->{file} cmp $b->{file} } @files; } # @dimm is a list of hashes. There's one hash for each EEPROM we found.
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor