[infiniband-diags/f15] Initial import into fedora git

Doug Ledford dledford at fedoraproject.org
Wed Jan 11 18:54:51 UTC 2012


commit cd5d9a5bf2e4f7626030d99567fa2437959dec5e
Author: Doug Ledford <dledford at redhat.com>
Date:   Wed Jan 11 13:54:19 2012 -0500

    Initial import into fedora git
    
    Signed-off-by: Doug Ledford <dledford at redhat.com>

 .gitignore                            |   14 +
 infiniband-diags-1.5.8-all_hcas.patch |  448 +++++++++++++++++++++++++++++++++
 infiniband-diags.spec                 |  277 ++++++++++++++++++++
 sources                               |    1 +
 4 files changed, 740 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..c645ac5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,14 @@
+i386/
+i686/
+x86_64/
+ppc/
+ppc64/
+ia64/
+mips/
+arm*/
+noarch/
+.project
+*.src.rpm
+.build*.log
+/infiniband-diags-1.5.12/
+/infiniband-diags-1.5.12.tar.gz
diff --git a/infiniband-diags-1.5.8-all_hcas.patch b/infiniband-diags-1.5.8-all_hcas.patch
new file mode 100644
index 0000000..0fca79d
--- /dev/null
+++ b/infiniband-diags-1.5.8-all_hcas.patch
@@ -0,0 +1,448 @@
+diff -up infiniband-diags-1.5.12/src/perfquery.c.hcas infiniband-diags-1.5.12/src/perfquery.c
+--- infiniband-diags-1.5.12/src/perfquery.c.hcas	2011-11-02 01:31:40.000000000 -0400
++++ infiniband-diags-1.5.12/src/perfquery.c	2012-01-06 12:01:21.793791521 -0500
+@@ -368,9 +368,10 @@ static void reset_counters(int extended,
+ }
+ 
+ static int reset, reset_only, all_ports, loop_ports, port, extended, xmt_sl,
+-    rcv_sl, xmt_disc, rcv_err, extended_speeds, smpl_ctl, oprcvcounters, flowctlcounters,
+-    vloppackets, vlopdata, vlxmitflowctlerrors, vlxmitcounters, swportvlcong,
+-    rcvcc, slrcvfecn, slrcvbecn, xmitcc, vlxmittimecc;
++    rcv_sl, xmt_disc, rcv_err, extended_speeds, smpl_ctl, oprcvcounters,
++    flowctlcounters, vloppackets, vlopdata, vlxmitflowctlerrors,
++    vlxmitcounters, swportvlcong, rcvcc, slrcvfecn, slrcvbecn, xmitcc,
++    vlxmittimecc, all_hcas;
+ 
+ static void common_func(ib_portid_t * portid, int port_num, int mask,
+ 			unsigned query, unsigned reset,
+@@ -604,12 +605,16 @@ static int process_opt(void *context, in
+ 	case 'R':
+ 		reset_only++;
+ 		break;
++	case 'H':
++		all_hcas++;
++		break;
+ 	default:
+ 		return -1;
+ 	}
+ 	return 0;
+ }
+ 
++#define MAX_NAMES 10
+ int main(int argc, char **argv)
+ {
+ 	int mgmt_classes[4] = { IB_SMI_CLASS, IB_SMI_DIRECT_CLASS, IB_SA_CLASS,
+@@ -624,6 +629,10 @@ int main(int argc, char **argv)
+ 	int start_port = 1;
+ 	int enhancedport0;
+ 	int i;
++	int names;
++	int cur_name = 0;
++	char name_list[MAX_NAMES][UMAD_CA_NAME_LEN];
++	umad_ca_t ca;
+ 
+ 	const struct ibdiag_opt opts[] = {
+ 		{"extended", 'x', 0, NULL, "show extended port counters"},
+@@ -646,6 +655,7 @@ int main(int argc, char **argv)
+ 		{"vlxmittimecc", 12, 0, NULL, "show VL Xmit Time congestion control counters"},
+ 		{"smplctl", 'c', 0, NULL, "show samples control"},
+ 		{"all_ports", 'a', 0, NULL, "show aggregated counters"},
++		{"all_hcas", 'H', 0, NULL, "iterate through all local HCAs and ports"},
+ 		{"loop_ports", 'l', 0, NULL, "iterate through each port"},
+ 		{"reset_after_read", 'r', 0, NULL, "reset counters after read"},
+ 		{"Reset_only", 'R', 0, NULL, "only reset counters"},
+@@ -654,10 +664,12 @@ int main(int argc, char **argv)
+ 	char usage_args[] = " [<lid|guid> [[port] [reset_mask]]]";
+ 	const char *usage_examples[] = {
+ 		"\t\t# read local port's performance counters",
++		"-H\t\t# read performance counters on all local HCAs/ports",
+ 		"32 1\t\t# read performance counters from lid 32, port 1",
+ 		"-x 32 1\t# read extended performance counters from lid 32, port 1",
+ 		"-a 32\t\t# read performance counters from lid 32, all ports",
+ 		"-r 32 1\t# read performance counters and reset",
++		"-r -H\t\t# read and reset counters on all local HCAs/ports",
+ 		"-x -r 32 1\t# read extended performance counters and reset",
+ 		"-R 0x20 1\t# reset performance counters of port 1 only",
+ 		"-x -R 0x20 1\t# reset extended performance counters of port 1 only",
+@@ -673,186 +685,237 @@ int main(int argc, char **argv)
+ 	argc -= optind;
+ 	argv += optind;
+ 
++	if (all_hcas && argc > 0)
++		IBERROR("Invalid input: all_hcas and any port/lid/guid are "
++			"not allowed together.");
++	if (all_hcas && (loop_ports || all_ports || (port==ALL_PORTS)))
++		IBERROR("Invalid input: all_hcas can not be combined with "
++			"loop_ports or all_ports or port == ALL_PORTS");
++
+ 	if (argc > 1)
+ 		port = strtoul(argv[1], 0, 0);
+ 	if (argc > 2)
+ 		mask = strtoul(argv[2], 0, 0);
+ 
+-	srcport = mad_rpc_open_port(ibd_ca, ibd_ca_port, mgmt_classes, 4);
+-	if (!srcport)
+-		IBERROR("Failed to open '%s' port '%d'", ibd_ca, ibd_ca_port);
+-
+-	if (argc) {
+-		if (ib_resolve_portid_str_via(&portid, argv[0], ibd_dest_type,
+-					      ibd_sm_id, srcport) < 0)
+-			IBERROR("can't resolve destination port %s", argv[0]);
+-	} else {
+-		if (ib_resolve_self_via(&portid, &port, 0, srcport) < 0)
+-			IBERROR("can't resolve self port %s", argv[0]);
+-	}
++	if (all_hcas) {
++		if (umad_init() < 0)
++			IBERROR("Failed to initialize libibumad");
++		if ((names = umad_get_cas_names(name_list, MAX_NAMES)) < 0)
++			IBERROR("Unable to get list of HCAs");
++		cur_name = 0;
++		if (umad_get_ca(name_list[cur_name], &ca))
++			IBERROR("Unable to get umad ca");
++		ibd_ca = name_list[cur_name++];
++		ibd_ca_port = start_port;
++	}
++
++	do {
++		srcport = mad_rpc_open_port(ibd_ca, ibd_ca_port,
++					    mgmt_classes, 4);
++		if (!srcport) {
++			if (cur_name == 0)
++				IBERROR("Failed to open '%s' port '%d'",
++					ibd_ca, ibd_ca_port);
++			exit(0);
++		}
+ 
+-	/* PerfMgt ClassPortInfo is a required attribute */
+-	memset(pc, 0, sizeof(pc));
+-	if (!pma_query_via(pc, &portid, port, ibd_timeout, CLASS_PORT_INFO,
+-			   srcport))
+-		IBERROR("classportinfo query");
+-	/* ClassPortInfo should be supported as part of libibmad */
+-	memcpy(&cap_mask, pc + 2, sizeof(cap_mask));	/* CapabilityMask */
+-	if (!(cap_mask & IB_PM_ALL_PORT_SELECT)) {	/* bit 8 is AllPortSelect */
+-		if (!all_ports && port == ALL_PORTS)
+-			IBERROR("AllPortSelect not supported");
+-		if (all_ports)
+-			all_ports_loop = 1;
+-	}
++		if (argc) {
++			if (ib_resolve_portid_str_via(&portid, argv[0],
++						      ibd_dest_type,
++						      ibd_sm_id, srcport) < 0)
++				IBERROR("can't resolve destination port %s",
++					argv[0]);
++		} else {
++			if (ib_resolve_self_via(&portid, &port, 0, srcport) < 0)
++				IBERROR("can't resolve self port %s", argv[0]);
++		}
+ 
+-	if (xmt_sl) {
+-		xmt_sl_query(&portid, port, mask);
+-		goto done;
+-	}
++		/* PerfMgt ClassPortInfo is a required attribute */
++		memset(pc, 0, sizeof(pc));
++		if (!pma_query_via(pc, &portid, port, ibd_timeout,
++				   CLASS_PORT_INFO, srcport))
++			IBERROR("classportinfo query");
++		/* ClassPortInfo should be supported as part of libibmad */
++		memcpy(&cap_mask, pc + 2, sizeof(cap_mask));/* CapabilityMask */
++		if (!(cap_mask & IB_PM_ALL_PORT_SELECT)) {	/* bit 8 is AllPortSelect */
++			if (!all_ports && port == ALL_PORTS)
++				IBERROR("AllPortSelect not supported");
++			if (all_ports)
++				all_ports_loop = 1;
++		}
+ 
+-	if (rcv_sl) {
+-		rcv_sl_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (xmt_sl) {
++			xmt_sl_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (xmt_disc) {
+-		xmt_disc_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (rcv_sl) {
++			rcv_sl_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (rcv_err) {
+-		rcv_err_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (xmt_disc) {
++			xmt_disc_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (extended_speeds) {
+-		extended_speeds_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (rcv_err) {
++			rcv_err_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (oprcvcounters) {
+-		oprcvcounters_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (extended_speeds) {
++			extended_speeds_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (flowctlcounters) {
+-		flowctlcounters_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (oprcvcounters) {
++			oprcvcounters_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (vloppackets) {
+-		vloppackets_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (flowctlcounters) {
++			flowctlcounters_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (vlopdata) {
+-		vlopdata_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (vloppackets) {
++			vloppackets_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (vlxmitflowctlerrors) {
+-		vlxmitflowctlerrors_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (vlopdata) {
++			vlopdata_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (vlxmitcounters) {
+-		vlxmitcounters_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (vlxmitflowctlerrors) {
++			vlxmitflowctlerrors_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (swportvlcong) {
+-		swportvlcong_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (vlxmitcounters) {
++			vlxmitcounters_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (rcvcc) {
+-		rcvcc_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (swportvlcong) {
++			swportvlcong_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (slrcvfecn) {
+-		slrcvfecn_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (rcvcc) {
++			rcvcc_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (slrcvbecn) {
+-		slrcvbecn_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (slrcvfecn) {
++			slrcvfecn_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (xmitcc) {
+-		xmitcc_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (slrcvbecn) {
++			slrcvbecn_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (vlxmittimecc) {
+-		vlxmittimecc_query(&portid, port, mask);
+-		goto done;
+-	}
++		if (xmitcc) {
++			xmitcc_query(&portid, port, mask);
++			goto done;
++		}
+ 
+-	if (smpl_ctl) {
+-		dump_portsamples_control(&portid, port);
+-		goto done;
+-	}
++		if (vlxmittimecc) {
++			vlxmittimecc_query(&portid, port, mask);
++			goto done;
++		}
+ 
++		if (smpl_ctl) {
++			dump_portsamples_control(&portid, port);
++			goto done;
++		}
+ 
+-	if (all_ports_loop || (loop_ports && (all_ports || port == ALL_PORTS))) {
+-		if (smp_query_via(data, &portid, IB_ATTR_NODE_INFO, 0, 0,
+-				  srcport) < 0)
+-			IBERROR("smp query nodeinfo failed");
+-		node_type = mad_get_field(data, 0, IB_NODE_TYPE_F);
+-		mad_decode_field(data, IB_NODE_NPORTS_F, &num_ports);
+-		if (!num_ports)
+-			IBERROR("smp query nodeinfo: num ports invalid");
+ 
+-		if (node_type == IB_NODE_SWITCH) {
+-			if (smp_query_via(data, &portid, IB_ATTR_SWITCH_INFO,
++		if (all_ports_loop ||
++		    (loop_ports && (all_ports || port == ALL_PORTS))) {
++			if (smp_query_via(data, &portid, IB_ATTR_NODE_INFO,
+ 					  0, 0, srcport) < 0)
+ 				IBERROR("smp query nodeinfo failed");
+-			enhancedport0 =
+-			    mad_get_field(data, 0, IB_SW_ENHANCED_PORT0_F);
+-			if (enhancedport0)
+-				start_port = 0;
+-		}
+-		if (all_ports_loop && !loop_ports)
+-			IBWARN
+-			    ("Emulating AllPortSelect by iterating through all ports");
+-	}
++			node_type = mad_get_field(data, 0, IB_NODE_TYPE_F);
++			mad_decode_field(data, IB_NODE_NPORTS_F, &num_ports);
++			if (!num_ports)
++				IBERROR("smp query nodeinfo: num ports invalid");
++
++			if (node_type == IB_NODE_SWITCH) {
++				if (smp_query_via(data, &portid,
++						  IB_ATTR_SWITCH_INFO,
++						  0, 0, srcport) < 0)
++					IBERROR("smp query nodeinfo failed");
++				enhancedport0 =
++					mad_get_field(data, 0,
++						      IB_SW_ENHANCED_PORT0_F);
++				if (enhancedport0)
++					start_port = 0;
++			}
++			if (all_ports_loop && !loop_ports)
++				IBWARN ("Emulating AllPortSelect by iterating "
++					"through all ports");
++		}
+ 
+-	if (reset_only)
+-		goto do_reset;
++		if (reset_only)
++			goto do_reset;
+ 
+-	if (all_ports_loop || (loop_ports && (all_ports || port == ALL_PORTS))) {
+-		for (i = start_port; i <= num_ports; i++)
++		if (all_ports_loop ||
++		    (loop_ports && (all_ports || port == ALL_PORTS))) {
++			for (i = start_port; i <= num_ports; i++)
++				dump_perfcounters(extended, ibd_timeout,
++						  cap_mask, &portid, i,
++						  (all_ports_loop &&
++						   !loop_ports));
++			if (all_ports_loop && !loop_ports) {
++				if (extended != 1)
++					output_aggregate_perfcounters(&portid,
++								      cap_mask);
++				else
++					output_aggregate_perfcounters_ext(&portid,
++									  cap_mask);
++			}
++		} else
+ 			dump_perfcounters(extended, ibd_timeout, cap_mask,
+-					  &portid, i, (all_ports_loop
+-						       && !loop_ports));
+-		if (all_ports_loop && !loop_ports) {
+-			if (extended != 1)
+-				output_aggregate_perfcounters(&portid,
+-							      cap_mask);
+-			else
+-				output_aggregate_perfcounters_ext(&portid,
+-								  cap_mask);
+-		}
+-	} else
+-		dump_perfcounters(extended, ibd_timeout, cap_mask, &portid,
+-				  port, 0);
++					  &portid, port, 0);
+ 
+-	if (!reset)
+-		goto done;
++		if (!reset)
++			goto done;
+ 
+ do_reset:
+-	if (argc <= 2 && !extended && (cap_mask & IB_PM_PC_XMIT_WAIT_SUP))
+-		mask |= (1 << 16);	/* reset portxmitwait */
+-
+-	if (all_ports_loop || (loop_ports && (all_ports || port == ALL_PORTS))) {
+-		for (i = start_port; i <= num_ports; i++)
+-			reset_counters(extended, ibd_timeout, mask, &portid, i);
+-	} else
+-		reset_counters(extended, ibd_timeout, mask, &portid, port);
++		if (argc <= 2 && !extended &&
++		    (cap_mask & IB_PM_PC_XMIT_WAIT_SUP))
++			mask |= (1 << 16);	/* reset portxmitwait */
++
++		if (all_ports_loop ||
++		    (loop_ports && (all_ports || port == ALL_PORTS)))
++			for (i = start_port; i <= num_ports; i++)
++				reset_counters(extended, ibd_timeout, mask,
++					       &portid, i);
++		else
++			reset_counters(extended, ibd_timeout, mask,
++				       &portid, port);
+ 
+ done:
+-	mad_rpc_close_port(srcport);
++		mad_rpc_close_port(srcport);
++		if (all_hcas) {
++			if (ibd_ca_port < ca.numports)
++				ibd_ca_port++;
++			else {
++				if (umad_get_ca(name_list[cur_name], &ca))
++					/*
++					 * We're done, the next name in the
++					 * list was empty, exit gracefully
++					 */
++					exit(0);
++				ibd_ca = name_list[cur_name++];
++				ibd_ca_port = start_port;
++			}
++		}
++	} while (ibd_ca);
+ 	exit(0);
+ }
diff --git a/infiniband-diags.spec b/infiniband-diags.spec
new file mode 100644
index 0000000..a41139f
--- /dev/null
+++ b/infiniband-diags.spec
@@ -0,0 +1,277 @@
+Summary: OpenFabrics Alliance InfiniBand Diagnostic Tools
+Name: infiniband-diags 
+Version: 1.5.12
+Release: 1%{?dist}
+License: GPLv2 or BSD
+Group: System Environment/Libraries
+Url: http://openfabrics.org/
+Source0: http://www.openfabrics.org/downloads/management/%{name}-%{version}.tar.gz
+Patch0: infiniband-diags-1.5.8-all_hcas.patch
+BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+BuildRequires: opensm-devel > 3.3.8, libibumad-devel, libibmad-devel, perl
+Provides: perl(IBswcountlimits)
+Obsoletes: openib-diags < 1.3
+ExclusiveArch: %{ix86} x86_64 ia64 ppc ppc64
+
+# Find the correct directory to install the perl module into.
+%global _perldir %(perl -e 'use Config; print $Config{installvendorarch};')
+
+%description
+This package provides IB diagnostic programs and scripts needed to
+diagnose an IB subnet.
+
+%package devel
+Summary: Development files for the infiniband-diags library
+Group: System Environment/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+Headers and shared devel libraries for the infiniband-diags package.
+
+%package devel-static
+Summary: Static development files for the infiniband-diags library
+Group: System Environment/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description devel-static
+Static libraries for the infiniband-diags library.
+
+%prep
+%setup -q
+%patch0 -p1 -b .hcas
+
+%build
+%configure --with-perl-installdir=%{_perldir}
+make
+
+%install
+rm -rf $RPM_BUILD_ROOT
+make DESTDIR=$RPM_BUILD_ROOT install
+# remove unpackaged files from the buildroot
+rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
+rm -f $RPM_BUILD_ROOT%{_sbindir}/*.{pl,sh}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(-,root,root)
+%{_sbindir}/*
+%{_mandir}/man8/*.8*
+%{_libdir}/libibnetdisc.so.*
+%dir %{_sysconfdir}/infiniband-diags
+%config(noreplace) %{_sysconfdir}/infiniband-diags/*
+%doc COPYING README ChangeLog
+%{_perldir}/IBswcountlimits.pm
+
+%files devel
+%defattr(-,root,root)
+%{_includedir}/*
+%{_libdir}/*.so
+%{_mandir}/man3/*
+
+%files devel-static
+%defattr(-,root,root)
+%{_libdir}/*.a
+
+%changelog
+* Fri Jan 06 2012 Doug Ledford <dledford at redhat.com> - 1.5.12-1
+- Update to latest upstream release
+- Initial Fedora import
+- Add devel and devel static packages (review item)
+- Make etc file config(noreplace) (review item)
+- Remove no longer support scripts (review item)
+
+* Wed Jul 27 2011 Doug Ledford <dledford at redhat.com> - 1.5.8-1.el6
+- Update to latest upstream version
+- Make build work on i686 arch
+- Modify perfquery to be able to loop through all HCAs in a single host
+- Resolves: bz593767
+- Related: bz725016
+
+* Fri Mar 12 2010 Doug Ledford <dledford at redhat.com> - 1.5.5-1.el6
+- Update and rebuild against latest opensm (which was needed for latest
+  ibutils, which was needed for licensing issues resolved in new upstream
+  tarball, which was needed for pkgwrangler review)
+- Related: bz555835
+
+* Fri Feb 26 2010 Doug Ledford <dledford at redhat.com> - 1.5.3-4.el6
+- Tidy ups for pkgwrangler review
+- Related: bz555835
+
+* Tue Feb 9 2010 Jay Fenlason <fenlason at redhat.com> 1.5.3-3.el6
+- Correct the perldir macro for rhel-6's perl.
+- Remove the unrecognized --with-node-name-map configure option.
+- reorganize the files section to use fewer globs, so that it's less likely
+  to pick up files inappropriately.
+
+* Mon Jan 25 2010 Doug Ledford <dledford at redhat.com> - 1.5.3-2.el6
+- Update license tag for pkgwrangler import
+- Related: bz543948
+
+* Tue Dec 22 2009 Doug Ledford <dledford at redhat.com> - 1.5.3-1.el5
+- Update to latest upstream version
+- Don't include the newly added devel stuff as it's likely only needed
+  internally (and certainly not needed by anything we've supported before
+  since we've never shipped it)
+- Related: bz518218
+
+* Fri Apr 17 2009 Doug Ledford <dledford at redhat.com> - 1.4.4-1.el5
+- Update to ofed 1.4.1-rc3 version
+- Remove dead patch
+- Related: bz459652
+
+* Fri Oct 17 2008 Doug Ledford <dledford at redhat.com> - 1.4.1-2
+- Fix up a few trivial issues
+- Resolves: bz216014
+
+* Wed Sep 17 2008 Doug Ledford <dledford at redhat.com> - 1.4.1-1
+- Update to latest upstream version (required to work with latest opensm libs)
+- Resolves: bz451465
+
+* Tue Apr 01 2008 Doug Ledford <dledford at redhat.com> - 1.3.6-1
+- Update to latest upstream version to match OFED 1.3
+- Related: bz428197
+
+* Sun Jan 27 2008 Doug Ledford <dledford at redhat.com> - 1.3.5-2
+- Obsolete the openib-diags that this package replaces
+
+* Fri Jan 25 2008 Doug Ledford <dledford at redhat.com> - 1.3.5-1
+- Import into Red Hat CVS
+- Related: bz428197
+
+* Wed Oct 31 2007 Ira Weiny <weiny2 at llnl.gov> - 1.3.2
+- Change switch-map option to node-name-map
+
+* Thu Aug 9 2007 Ira Weiny <weiny2 at llnl.gov> - 1.3.1
+- Change set_mthca_nodedesc.sh to set_nodedesc.sh
+
+* Tue Jul 10 2007 Hal Rosenstock <halr at voltaire.com> - 1.3.1
+- Add link width and speed to topology file output in ibnetdiscover
+- Add support for -R(outer_list) in ibnetdiscover
+- Add script and man page for ibidsverify
+- Moved diags from bin to sbin
+- Add scripts and man pages for display on IB routers
+- Add GUID to output line for ports in ibqueryerrors.pl
+- Add ibdatacounts and ibdatacounters scripts and man pages
+- Add peer port link width and speed validation in iblinkinfo.pl
+- Display remote LID with peer port info in IBswcountlimits.pm
+- Handle peer ports at 1x that should be wider and 2.5 Gbps
+  links that should be faster in ibportstate
+- Add LinkSpeed/Width components to output of ibportstate
+- Add support for IB routers 
+- Add grouping support for ISR2012 and ISR2004 in ibnetdiscover
+- Remove all uses of "/tmp" from perl scripts
+- Add switch map support for saquery -O and -U options
+- Add support for saquery -s (isSMdisabled)
+- Add name input checks to saquery (-O and -U) 
+
+* Thu Mar 29 2007 Hal Rosenstock <halr at voltaire.com> - 1.3.0
+- Add some extra debug information to IBswcountlimits.pm
+- Send normal output to stdout in ibtracert
+- Don't truncate NodeDescriptions containing ctl characters in ibdiag_common
+- Fix ibnetdiscover grouping for Cisco SFS7000
+- Add support to query the GUIDInfo table in smpquery
+- Allow user to specify a default switch map file
+
+* Fri Mar 9 2007 Hal Rosenstock <halr at voltaire.com> - 1.2.5 
+- Find perl modules in perl sitearch directory
+- Fix non standard prefix install for diag scripts
+- Clean gcc-4.1 warnings in saquery and ibdiag_common
+
+* Fri Mar 2 2007 Hal Rosenstock <halr at voltaire.com> - 1.2.4
+- OpenFabrics 1.2.4 release
+- Fix diag rpmbuild from make dist
+- Include set_mthca_nodedesc.sh and dump_lfts.sh in the rpm
+
+* Thu Mar 1 2007 Hal Rosenstock <halr at voltaire.com> - 1.2.3
+- OpenFabrics 1.2.3 release
+- Fixed saquery timeout handling
+
+* Tue Feb 27 2007 Hal Rosenstock <halr at voltaire.com> - 1.2.2
+- OpenFabrics 1.2.2 release
+- Minor changes to ibswitches and ibhosts output
+
+* Thu Feb 14 2007 Hal Rosenstock <halr at voltaire.com> - 1.2.1
+- OpenFabrics 1.2.1 release
+- Initial release of vendstat tool
+
+* Fri Feb 2 2007 Hal Rosenstock <halr at voltaire.com> - 1.2.0
+- OpenFabrics 1.2.0 release
+- Added brief option to ibcheckerrors and ibcheckerrs
+- Updated man pages
+- Added build version to saquery and updated build version tags of other tools
+- Added -N | nocolor to usage display of scripts
+- Fixed -nocolor and -G options on scripts 
+- Fixed error return status in ibchecknet
+- Added exit code to ibcheckerrors
+- Added nodename to output of ibcheckerrs
+- ibqueryerrors.pl fixes and improvements
+- Removed use of tmpfile for ibroute data in ibfindnodeusing.pl
+- Fixed undefined subroutine error in iblinkinfo.pl
+- Added switch-map option to ibtracert and ibnetdiscover
+- Cleaned up node descriptions before printing in saquery
+- Clarified --src-to-dst option in saquery
+- Added peer NodeDescription and LID to output of inbetdiscover
+- For grouping, ordered Spine and Line Nodes (for Voltaire chassis) in ibnetdiscover
+- Cleaned up node descriptions before printing in ibtracert and ibroute
+- Added additional sematics to -m option of saquery
+- Added dump_mfts.sh similar to dump_lfts.sh
+- ibnetdiscover improvements (memory leaks, ports moving, etc.)
+- Converted iblinkspeed.pl into iblinkinfo.pl and added additional capabilities
+- Added 0x in front of GUID printing of ibtracert
+- Fixed loopback handling in ibnetdiscover
+- Added support for querying Service Records to saquery
+- Added support for PerfMgt IsExtendedWidthSupported IBA 1.2 erratum in perfquery
+- For query operations, added peer port checking of linkwidth and speed
+  active in ibportstate
+- Added support for DrSLID in smpquery
+- Added IB router support to ibnetdiscover and ibtracert
+- Added additional options to saquery
+- Added support to change LinkSpeedEnabled in ibportstate
+
+* Fri Sep 22 2006 Hal Rosenstock <halr at voltaire.com> - 1.1.0
+- OpenFabrics 1.1 release
+ 
+* Wed Sep 13 2006 Hal Rosenstock <halr at voltaire.com> - 1.1.0-rc5
+- OpenFabrics 1.1-rc5 release
+
+* Wed Sep 6 2006 Hal Rosenstock <halr at voltaire.com> - 1.1.0-rc4
+- OpenFabrics 1.1-rc4 release
+
+* Wed Aug 23 2006 Hal Rosenstock <halr at voltaire.com> - 1.1.0-rc3
+- OpenFabrics 1.1-rc3 release
+
+* Mon Aug 14 2006 Hal Rosenstock <halr at voltaire.com> - 1.1.0-rc2
+- OpenFabrics 1.1-rc2 release
+- Added ibsysstat man page
+
+* Wed Jul 26 2006 Hal Rosenstock <halr at voltaire.com> - 1.1.0-rc1
+- OpenFabrics 1.1-rc1 release
+- Added man pages
+- Made diag command/script options more consistent
+- saquery tool added
+- dump_lft.sh script added
+- Renamed discover.pl to ibdiscover.pl
+
+* Sun Jun 10 2006 Hal Rosenstock <halr at voltaire.com> - 1.0-1
+- OpenFabrics 1.0 release
+
+* Tue May 30 2006 Hal Rosenstock <halr at voltaire.com> - 1.0.0-rc6
+- Maintenance release
+
+* Fri May 12 2006 Hal Rosenstock <halr at voltaire.com> - 1.0.0-rc5
+- Maintenance release
+
+* Thu Apr 27 2006 Hal Rosenstock <halr at voltaire.com> - 1.0.0-rc4
+- Maintenance release
+- Note rc3 skipped to sync with OFED
+
+* Mon Apr 10 2006 Hal Rosenstock <halr at voltaire.com> - 1.0.0-rc2
+- Maintenance release
+
+* Mon Feb 27 2006 Hal Rosenstock <halr at voltaire.com> - 1.0.0-rc1
+- Initial spec file and release
diff --git a/sources b/sources
index e69de29..a5479e0 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+7a823a3f6d9cfa3d19e1ca6889f3c122  infiniband-diags-1.5.12.tar.gz


More information about the scm-commits mailing list