2
0
mirror of https://github.com/xcat2/xcat-dep.git synced 2024-11-24 18:40:05 +00:00

-Update suggested ipmitool to 1.8.11

-Fix SOL deconnect detection in ipmitool 1.8.11
-Add DDR3 SPD decode patch to ipmitool 1.8.11
This commit is contained in:
jbjohnso 2009-03-11 23:25:33 +00:00
parent 7e4e2e2a70
commit 1cd3a0c4ff
4 changed files with 1251 additions and 4 deletions

Binary file not shown.

View File

@ -0,0 +1,102 @@
diff -urN ipmitool-1.8.11/lib/ipmi_sol.c ipmitool-saneretry/lib/ipmi_sol.c
--- ipmitool-1.8.11/lib/ipmi_sol.c 2009-02-25 15:38:52.000000000 -0500
+++ ipmitool-saneretry/lib/ipmi_sol.c 2009-03-11 14:20:03.000000000 -0400
@@ -71,8 +71,6 @@
#define SOL_PARAMETER_SOL_PAYLOAD_CHANNEL 0x07
#define SOL_PARAMETER_SOL_PAYLOAD_PORT 0x08
-#define MAX_SOL_RETRY 6
-
const struct valstr sol_parameter_vals[] = {
{ SOL_PARAMETER_SET_IN_PROGRESS, "Set In Progress (0)" },
{ SOL_PARAMETER_SOL_ENABLE, "Enable (1)" },
@@ -92,7 +90,6 @@
static int _in_raw_mode = 0;
static int _disable_keepalive = 0;
static int _use_sol_for_keepalive = 0;
-static int _keepalive_retries = 0;
extern int verbose;
@@ -1507,12 +1504,6 @@
if (end.tv_sec - _start_keepalive.tv_sec > SOL_KEEPALIVE_TIMEOUT) {
ret = intf->keepalive(intf);
- if ( (ret!=0) && (_keepalive_retries < SOL_KEEPALIVE_RETRIES) ) {
- ret = 0;
- _keepalive_retries++;
- }
- else if ((ret==0) && (_keepalive_retries > 0))
- _keepalive_retries = 0;
gettimeofday(&_start_keepalive, 0);
}
return ret;
@@ -1520,6 +1511,8 @@
+
+
/*
* ipmi_sol_red_pill
*/
@@ -1535,7 +1528,6 @@
int retval;
int buffer_size = intf->session->sol_data.max_inbound_payload_size;
int keepAliveRet = 0;
- int retrySol = 0;
buffer = (char*)malloc(buffer_size);
if (buffer == NULL) {
@@ -1555,40 +1547,20 @@
FD_SET(intf->fd, &read_fds);
/* Send periodic keepalive packet */
- if(_use_sol_for_keepalive == 0)
- {
- keepAliveRet = ipmi_sol_keepalive_using_getdeviceid(intf);
- }
- else
- {
- keepAliveRet = ipmi_sol_keepalive_using_sol(intf);
- }
+ if(_use_sol_for_keepalive == 0)
+ {
+ keepAliveRet = ipmi_sol_keepalive_using_getdeviceid(intf);
+ }
+ else
+ {
+ keepAliveRet = ipmi_sol_keepalive_using_sol(intf);
+ }
if (keepAliveRet != 0)
{
- /*
- * Retrying the keep Alive before declaring a communication
- * lost state with the IPMC. Helpful when the payload is
- * reset and brings down the connection temporarily. Otherwise,
- * if we send getDevice Id to check the status of IPMC during
- * this down time when the connection is restarting, SOL will
- * exit even though the IPMC is available and the session is open.
- */
- if (retrySol == MAX_SOL_RETRY)
- {
- /* no response to Get Device ID keepalive message */
- bShouldExit = 1;
- continue;
- }
- else
- {
- retrySol++;
- }
- }
- else
- {
- /* if the keep Alive is successful reset retries to zero */
- retrySol = 0;
+ /* no response to keepalive message */
+ bShouldExit = 1;
+ continue;
}
/* Wait up to half a second */

File diff suppressed because it is too large Load Diff

View File

@ -1,13 +1,14 @@
Name: ipmitool
Summary: ipmitool - Utility for IPMI control
Version: 1.8.9
#Provides: OpenIPMI-tools = 2.0.6-5.el5.4
Conflicts: OpenIPMI-tools
Release: 3
Version: 1.8.11
Release: 2
License: BSD
Group: Utilities
Packager: Duncan Laurie <duncan@iceblink.org>
Source: %{name}-%{version}.tar.gz
Patch: ipmitool-saneretry.patch
Patch2: ipmitool-spdfix.patch
Buildroot: /var/tmp/ipmitool-root
%description
@ -31,6 +32,8 @@ if [ "$RPM_BUILD_ROOT" ] && [ "$RPM_BUILD_ROOT" != "/" ]; then
fi
%setup
%patch -p1
%patch2 -p1
%build
./configure --with-kerneldir \
@ -57,12 +60,137 @@ fi
%defattr(755,root,root)
%attr(755,root,root) %{_bindir}/*
%attr(755,root,root) %{_sbindir}/*
%{_datadir}/ipmitool/*
%{_mandir}/man*/*
%doc %{_datadir}/doc/ipmitool
%changelog
* Fri Feb 23 2007 <pere@hungry.com> 1.8.9-1
* Wed Mar 11 2009 <jbjohnso@us.ibm.com> 1.8.11-2
- Back off conflicting retry mechanisms
- Add patch from ipmitool tracker for DDR3 SPD decode
* Wed Feb 25 2009 <pere@hungry.com> 1.8.11-1
- Fix new GCC compilation issues in regards to Packing
- Fix Tracker bug #1642710 - ipmi_kcs_drv being loaded/unloaded
for 2.4 kernel instead of ipmi_si_drv driver module
- New -y option added to allow specification of kg keys with
non-printable characters
- New -K option added to allow kgkey settings via environmental
variable IPMI_KGKEY
- Generic device support added for EEPROM with SDR Type 10h (gendev)
- Fix to lan-bridging for a double-bridging crash and to fix
an issue with bridging multiple concurrent requests and
erroneous handling of raw Send Message
- Lanplus fix for commands like 'sensor list' without the -t option
causing wrong double bridged requests of a sensor is located
on another satellite controller
- Fix lan and lanplus request list entry removal bugs
- Fix non-working issue when trying to send a bridge message with
Cipher 3
- Change bridge message handling to reuse command ipmi_lan_poll_recv
- Added PICMG 2.0 and 2.3 support
- Fix PICMG (ATCA) extension verification and reversal of BCD encoded
values for "major" and "minor" fields
- Add IANA support for Pigeon Point
- Add OEM SW/FW Record identification
- Fix to include I2C and LUN addresses so sensors are correctly managed
- Patch ID 1990560 to get readings from non-linear analog sensors
- Add support for SOL payload status command
- SOL set parameter range checking added
- Fixed SOL activate options usage
- Fixed crashes when parsing 'sol payload' and 'tsol' cmds (#216967)
- Added retries to SOL keepalive
- Fixed wrong mask values for Front Panel disable/enable status
- Add support to access fru internal use area
- Add support for new PICMG 3.0 R3.0 (March 24, 2008) to allow
blocks of data within the FRU storage area to be write protected.
- Fix node reporting in GUID; Tracker bug #2339675
- Fix watchdog use/action print strings
- Fix endian bug in SDR add from file; Tracker bug #2075258
- Fix crash when dumping SDRs in a file and there's an error
getting an SDR; improve algorithm for optimal packet size
- Fix occasional SDR dump segfault; #1793076
- Allow ipmitool sel delete to accept hex list entry numbers
- Fix SEL total space reporting.
- Fix for garbage sensor threshold values reported when none
returned. Tracker Bug #863748
- ipmievd change to Monitor %used in SEL buffer and log warnings when
the buffer is 80% and 100% full
* Fri Aug 08 2008 <pere@hungry.com> 1.8.10-1
- Added support for BULL IANA number.
- Fixed contrib build so the oem_ibm_sel_map file gets included in rpm
builds again.
- Added support for Debian packages to be built from CVS
- Fix for sdr and sel timestamp reporting issues
- Fix for discrete sensor state print routines to address state bits 8-14
- Change ipmi_chassis_status() to non-static so it can be used externally
- Added retries to SOL keepalive
- Fix to stop sensor list command from reporting a failure due to missing
sensor
- Fix bug in sdr free space reporting
- Add support for IANA number to vendor name conversion for many vendors
- Fix segfault bug in lan set command
- Fix bug in population of raw i2c wdata buffer
- Fix bug in ipmb sensor reading
- Fix misspellings, typos, incorrect strncmp lengths, white space
- Update/fix printed help and usages for many commands
- Add and update support for all commands in ipmitool man page
- Fix for lanplus session re-open when the target becomes unavailable following
a fw upgrade activation
- Add support for watchdog timer shutoff, reset, and get info
- Add support for more ibm systems in oem_ibm_sel_map
- Add more JEDEC support info for DIMMs; decrease request size for DIMM FRU
info to 16 bytes at a time to allow more DIMM FRUs to respond.
- Fix to change hpmfwupg to version 1.02; fix to reduce hpmfwupg buffer
length more aggressively when no response from iol
- Fix HPM firmware activation via IOL; fake a timeout after IOL session
re-open to force get upgrade status retry; Added retries on 0xD3
completion code
- Add support for freeipmi 0.6.0; adjust autoconf for changes
- Fix for oemval2str size
- Add support for product name resolution in mc info
- Fix FRU display format
- Added PICMG ekeying analyzer module support (ekanalyzer); display point
to point physical connectivity and power supply information between
carriers and AMC modules; display matched results of ekeying match
between an on-carrier device and AMC module or between 2 AMC modules
- Fix AMC GUID display support
- Improved amcportstate operations
- Added resolution for new sensor types
- Fix segfault in SOL
- Fix bug that caused infinite loop on BMCs with empty SDRs
- Fix to move out Kontron OEM sensor resolution for other OEMs which could
lead to bad event descriptions
- Add new FRU edit mode thereby allowing serial numbers, etc. to be changed;
improvements to OEM edit mode
- Added SPD support for parms: channel number, max read size
- Add SDR support for adding SDR records from a dumped file, clearing SDR,
adding partial SDR records
- Add updates and fixes to hpmfwupg: upload block size to 32 bytes for KCS,
handle long response option, implement rollback override, garbage output fix
- Add double bridge lan support , fix bridging issue
- Add HPM support to pre-check which components need to be skipped
- Fix autodetection of maximum packet size when using IPMB
- Add new Kontron OEM command to set the BIOS boot option sequence
- Add support for dual-bridge/ dual send message
- Add auto-detect for local IPMB address using PICMG 2.X extension
- Add support for HPM.1 1.0 specification compliance
- Fix for improper lan/lanplus addressing
- Added transit_channel and transit_addr to ipmi_intf struct
- Fix bad password assertion bug due to rakp2 HMAC not being checked properly
- Added ability to interpret PPS shelf manager clia sel dump
- Corrected PICMG M7 state event definition macros
- Added FRU parsing enhancements
- Added "isol info", "isol set" and "isol activate" commands to support
Intel IPMI v1.5 SOL functionality. Removed "isol setup" command.
- Fix bug in ipmi_lan_recv_packet() in lan and lanplus interfaces.
- Fix bug in "chassis poh" command.
- Fix HPM.1 upgrade to apply to only given component when instructed to do so
- Added configure auto-detection if dual bridge extension is supported
by OpenIPMI
* Tue Mar 6 2007 <pere@hungry.com> 1.8.9-1
- Added initial AMC ekey query operation support
- Improvements to ekeying support (PICMG 3.x only)
- Added initial interactive edition support for multirec; added IANA