143 lines
5.8 KiB
Plaintext
143 lines
5.8 KiB
Plaintext
Tue Sep 2 12:14:04 CDT 2008
|
|
Added fan, temperature and power supply status
|
|
reporting (thanks to Christian Hofstaedtler)
|
|
Tue Sep 19 14:55:25 CDT 2006
|
|
Autoconfiscated cciss_vol_status
|
|
Tue Mar 6 14:44:14 EST 2007
|
|
Added support for more than 16 logical drives.
|
|
Added -x option for exhaustive search
|
|
Mon Nov 2 04:56:55 CST 2009
|
|
Added support for hpsa driver
|
|
Added support for hpahcisr driver
|
|
|
|
Added support for new controllers:
|
|
Smart Array P700m
|
|
Smart Array P212
|
|
Smart Array P410
|
|
Smart Array P410i
|
|
Smart Array P411
|
|
Smart Array P812
|
|
|
|
Cache some serial numbers to cut down on redundant i/o
|
|
when rummaging around trying to figure out what's what.
|
|
|
|
Assume 16 possible storage boxes for SAS based controllers
|
|
|
|
Wed Nov 18 10:18:22 MST 2009
|
|
* Fixed bug that if a logical drive had an active spare, and thus was
|
|
"ok", the exit code was still zero, so it acted as though nothing
|
|
were wrong, even though the failed drive needed replacing to get back
|
|
to original good status with spares.
|
|
* Fixed bug in spare status messages. One message was left out, and so
|
|
some of the others were wrong, being off-by-one.
|
|
* Bumped version up to 1.06
|
|
|
|
2010/05/20 07:12:06
|
|
* Change weird "uint" to normal "unsigned int" Thanks to Frank Bergmann for this patch.
|
|
* Fix strnlen that should have been a strlen. Thanks to Frank Bergmann for noticing this.
|
|
|
|
2010/10/11 09:41:23
|
|
* get rid of typedefs
|
|
|
|
2010/10/13 07:02:37
|
|
* cosmetic whitespace fixes
|
|
|
|
Date: 2010/10/13 07:40:06
|
|
* Do not treat hpsa and hpahcisr as if they were MSA1000, but instead treat
|
|
as cciss devices. This means, use the CCISS_PASSTHRU ioctl, not SG_IO
|
|
(the drivers for the MSA1000 are qlogic or emulex, and do not have the
|
|
CCISS_PASSTHRU ioctl, and so must use SG_IO. The difference in power between
|
|
the SG_IO and CCISS_PASSTHRU is mainly that the CCISS_PASSTHRU allows specifying
|
|
the 8-byte LUNID, and thus can aim commands at any attached device, whereas
|
|
SG_IO is aimed by means of which device node you open. However, there
|
|
are devices (e.g. external controllers, MSA20, etc.) which do not have any
|
|
exposed device nodes and so are unreachable by SG_IO. By treating hpsa and
|
|
hpahcisr as cciss, we get access to those devices.
|
|
|
|
* Factor out msa1000_status()
|
|
|
|
* Cleaned up -Wall warnings.
|
|
|
|
* Factor out device type sanity checking code into cciss_device_type_is_correct(),
|
|
and get rid of the ugly goto for hpsa and hpahcisr cases.
|
|
|
|
* Factor out cciss_logical_drive_status()
|
|
|
|
* Rename the final parameter of cciss_logical_drive_status from 'i' to more
|
|
sensible 'volume_number'
|
|
|
|
* Make all functions static
|
|
|
|
2010/10/14 09:36:32
|
|
* Zero out controller_lun_list at the beginning init_cciss_to_bmic and num_controllers.
|
|
init_cciss_to_bmic is called once per controller on the command line to find external
|
|
controllers, and should be zeroed out each time.
|
|
|
|
2010/11/05 08:44:13
|
|
* Provided local cciss_ioctl.h and cciss_defs.h to aid distros which
|
|
come with a broken variant of cciss_ioctl.h, and added instructions in
|
|
INSTALL which explain how to use these fixed headers.
|
|
* Added note about aclocal-1.10, and corrected note about how to deal with
|
|
broken cciss_ioctl.h header files.
|
|
* Clarified that configure failing to #define __user is not the only reason
|
|
that cciss_ioctl.h might not compile.
|
|
* Added linux_alternate_makefile.mk to allow sidestepping autoconf problems.
|
|
|
|
2010/11/19 14:54:44
|
|
* Now reports physical drive serial numbers, firmware revision, connector, box and bay information.
|
|
* Factor out find_bus_target() function
|
|
* Factor out format_phys_drive_location()
|
|
* Report S.M.A.R.T. predictive failures
|
|
|
|
Changes since 1.07:
|
|
|
|
2010/12/02 09:35:54
|
|
* Added examples to man page of S.M.A.R.T predictive failure reporting.
|
|
* make it compile on freebsd
|
|
* Fix a file descriptor leak
|
|
|
|
Changes since 1.08:
|
|
|
|
2010/12/03 08:23:26
|
|
* Remove unused bogus variable declarations at the end of a function
|
|
that didn't compile on older gcc versions. (Thanks to Simon Matter)
|
|
* Print error information if sense bus parameters encounters a target
|
|
status.
|
|
* Remove bogus incorrect initialization of controller_lun_list (it's
|
|
done later down in the code correctly.)
|
|
* Make it compile with no warnings after "configure CFLAGS=-Wall"
|
|
|
|
Changes since 1.09:
|
|
* Clean up uninitialized variables detected by valgrind.
|
|
* Added some new smart array controllers to the list of known
|
|
controllers
|
|
* Replace the too specific is_hpsa() and is_hpahcisr() functions with
|
|
a more generic is_smart_array(). This was preventing -u option from
|
|
working with the hpsa driver.
|
|
* Remove inquiry_vendor_model_matches() function which is now no
|
|
longer used.
|
|
* Added -W and -Wall flags to gcc in linux_alternate_makefile.mk
|
|
and fixed up all the warnings that those found.
|
|
* Add -V (verbose) option which prints out extra information
|
|
about the controller (board ID, running firmware revision,
|
|
ROM firmware revision, and number of logical drives).
|
|
* Make the --verbose option print out more information about the
|
|
controllers and physical drives. For each controller, the board ID,
|
|
number of logical drives, currently running firmware revision and ROM
|
|
firmware revision are printed. For each physical drive, the location,
|
|
vendor, model, serial number, and firmware revision are printed.
|
|
* Added .gitignore and cvsignore files
|
|
* regenerated configure, aclocal.m4, and Makefile.in on RHEL6u2.
|
|
* Made -p shortcut for --persnickety actualy work.
|
|
|
|
Changes since 1.10
|
|
|
|
* Added support for new controllers
|
|
* Now can report status of nonvolatile cache
|
|
* Misc. code cleanup and refactoring
|
|
* Do not spin up sleeping spare drives. This is done by using
|
|
"extended" CISS_REPORT_LUNS to obtain the device type instead of
|
|
sending inquiries to every device returned by standard
|
|
CISS_REPORT_LUNS to get the device type.
|
|
|