                        OpenSM Release Notes 3.3
                       =============================

Version: OpenSM 3.3.x
Repo:    git://git.openfabrics.org/~alexnetes/opensm.git
Date:    Aug 2012

1 Overview
----------
This document describes the contents of the OpenSM 3.3 release.
OpenSM is an InfiniBand compliant Subnet Manager and Administration,
and runs on top of OpenIB. The OpenSM version for this release
is opensm-3.3.15.

This document includes the following sections:
1 This Overview section (describing new features and software
  dependencies)
2 Known Issues And Limitations
3 Unsupported IB compliance statements
4 Bug Fixes
5 Main Verification Flows
6 Qualified Software Stacks and Devices

1.1 Major New Features

* Mesh Analysis for LASH routing algorithm.
  The performance of LASH can be improved by preconditioning the mesh in
  cases where there are multiple links connecting switches and also in
  cases where the switches are not cabled consistently.
  Activated with --do_mesh_analysis command line and config file option.

* Reloadable OpenSM configuration (preliminary implemented)
  This is possible now to reload OpenSM configuration parameters on the
  fly without restarting.

* Routing paths sorted balancing (for UpDown and MinHops)
  This sorts the port order in which routing paths balancing is performed
  by OpenSM. Helps to improve performance dramatically (40-50%) for most
  popular application communication patterns.
  To overwrite this behavior use --guid_routing_order_file command line
  option.

* Weighted Lid Matrices calculation (for UpDown, MinHop and DOR).
  This low level routing fine-tuning feature provides the means to
  define a weighting factor per port for customizing the least weight
  hops for the routing. Custom weights are provided using file specified
  with '--hop_weights_file' command line option.

* I/O nodes connectivity (for FatTree).
  This provides possibility to define the set of I/O nodes for the
  Fat-Tree routing algorithm. I/O nodes are non-CN nodes allowed to use
  up to N (specified using --max_reverse_hops) switches the wrong way
  around to improve connectivity. I/O nodes list is provided using file
  and --io_guid_file command line option.

* MGID to MLID compression - infrastructure for many MGIDs to single MLID
  compression. This becomes helpful when number of multicast groups
  exceeds subnet's MLID routing capability (normally 1024 groups). In such
  cases many multicast groups (MGID) can be routed using same MLID value.

* Torus-2QoS unicast routing algorithm - a DOR-based routing algorithm
  specialized for 2D/3D torus topologies. Torus-2QoS provides deadlock-free
  routing while supporting two quality of service (QoS) levels. In addition
  it is able to route around multiple failed fabric links or a single failed
  fabric switch without introducing deadlocks, and without changing path SL
  values granted before the failure.

* DNUP Unicast routing algorithm - similar to UPDN but allows routing in
  fabrics which have some CA nodes attached closer to the roots than some
  switch nodes.

* SSSP Unicast routing algorithm - SSSP unicast routing algorithm - a
  single-source-shortest-path routing algorithm, which globally balances the
  number of routes per link to optimize link utilization. This routing
  algorithm has no restrictions in terms of the underlying topology.

* DFSSSP unicast routing algorithm - a deadlock-free single-source-
  shortest-path routing, which uses the SSSP algorithm as the base to optimize
  link utilization and uses Infiniband virtual lanes (SL) to provide deadlock-
  freedom.

* SRIOV (Alias GUID) Support - In order to support virtualized environments,
  alias GUID support is added to OpenSM. This support allows an SA client to
  add and remove additional port GUIDs based on SubAdmSet/SubAdmDelete of
  GUIDInfoRecord.

* Extended speed support
  This provides support for FDR and EDR speeds.

* Congestion control support

* Many code improvements, optimizations and cleanups.

* Windows support (early stage).

* Unhealthy ports
  The feature addresses wrongly behaving fabric nodes (multiple reboots,
  flapping links, non-complaint SMA implementations, etc)
  For such cases in order to reduce the stress on the fabric and to help the user
  in debugging the problem this feature can be used.
  A user can set what abnormalities SM should detect and what
  action should it take to treat with the problem.

* Routing Chain
  The feature allows to run different routing algorithm over the same single
  subnet network. In current version only minhop/ftree/updn routing engines
  are supported as chained routing engines.

* Multicast Optimizations
  This feature allows better utilization of the fabric links for Multicast
  traffic. In addition it provides unchangable multicast tree during lifetime
  of particular multicast group.

* Report scalability
  This feature improves opensm operations during event reporting.
  SA report limiting and trap coalescing introduced to avoid kernel throttling by reports.

* Multithreaded unicast routing calculation
  This feature implements parallel computing of the routing tables
  for minhop/updn routing engines

* Routing Isolation
  This feature implements isolation of particular switches from routing.
  Routing Isolation allows in-service maintainence of isolated switches.
  Rebooting such switches won't affect ongoing traffic (no traffic is using ports of
  isolated switches)


---------------------------------------------------------------------------------------------
 4.5.x
---------------------------------------------------------------------------------------------
Features:
* SRIOV Support
	* Support virtual ports discovery and setup
	* Maintain Pkey table per virtual port
	* Support path record request per virtual port
	* Support service record per virtual port
	* Support Inform Info per virtual port
	* Support new traps:
		- 1144 for virtual ports info change
		- 1146 for virtual node description change
	* Support new MADs:
		- General Info
		- Virtualization Info
		- Virtual Port Info
		- Virtual Port State
		- Virtual Node Info
		- Virtual Node Description
		- Virtual Pkey Table

* Support non-default pkey in index0

* Support diverse paths for LMC > 0 when scatter_ports is enabled

* Turn on AME bit by default (with action of physical reset)
---------------------------------------------------------------------------------------------
 4.2.x
---------------------------------------------------------------------------------------------
* Double failover elimination
  If Master SM is turned down for some reason, Standby SM will get mastership over the fabric.
  Once old Master SM is brought up, we want keep the current SM being Master in order to avoid
  unnecessary reregistartions in the fabric. The feature is enabled by means of setting
  master_sm_priority parameter be greater than sm_priority parameter in all SMs in the fabric.
  Once the SM is becoming Master SM, it announces SM priority equal to master_sm_priority.
  So that additional SM handover is avoided.

* Quasi-ftree routing engine
  This engine performes formula-based routing calculation for standard and quasi fat-tree
  topologies. The algorithm is 50% faster than regular ftree routing algorithm.

* Missing routes completion and credit loop-free  MC routine
  The feature provides the credit-loop free unicast and multicast routing
  when updown/ftree/qft routing engines are configured

* Routing engine chain with Torus support
  The feature enables Torus-2QoS routing engine configuration as part of Routing Engine chain feature.

* GRH support for SA queries

---------------------------------------------------------------------------------------------
4.3.x
---------------------------------------------------------------------------------------------
* Fast Multicast routing
  This features allows faster Multicast tree configuration upon nodes reboot.
  It is done by incrimental tree update rather than full tree recomputation

* Improved heavy sweep
  Unhealthy unresponding nodes that were detected by opensm won't be visited
  during heavy sweep in order to avoid unnnecessary timeouts.

* Ignore ports
  The feature allows manual marking particular ports in the fabric as "no discover" in unhealthy policy
  file. Once marked opensm won't try to discover these ports during heavy sweep.

* Port reset
  Added control on port reset operation upon max operational VL change in the
  fabric

* AME setting support in MLNX EDR switches
  Opensm may also reset the port where AME setting was changed

1.2 Minor New Features:
---------------------------------------------------------------------------------------------
4.3.x
---------------------------------------------------------------------------------------------
30993aa OFA: Allow updating opensm string parameter with (null) default
807af02 MOFED: Add use scatter for switch LID flag
95db829 MOFED: send client reregistration in case of SM LID change
07962a2 OFA: Added dispatcher for SA set and delete requests
d05779d MOFED: Removing TARA code from MOFED #2
02c0615 MOFED: set default value of support_mlnx_enhanced_link to FALSE
9bc549c MOFED: Different parameters for supporting AME and MEPI speeds
b2823d9 MOFED: Set AME bit to devices based on a white list
6532a2b OFA: Update MEPI supported devices white list
3662c8e MOFED: avoid continuing discovery when SM port is unresponsive
de7572b MOFED: different port reset action parameter for each speed type
ab7951f MOFED: added failed routes counting to default mulitcast algorithms
1d2f5fb MOFED: added ability for multicast routing functions to count failed
routes
e3e9af9 OFA: Avoid handling SubnAdmGetMulti requests when OpenSM is overloaded
2da0d0a MOFED: added a note to the opensm.conf and opensm MAN that the flag
max_reverse_hops is obsolete
and recommended not to be used when calculate_missing_routes flag is on.
---------------------------------------------------------------------------------------------
4.2.x
---------------------------------------------------------------------------------------------
2de1a2b MOFED: updated libopensm version to 8.0.0
7f05469 MOFED: Disable unhealthy feature by default
f8426a6 OFA: doc/performance-manager-HOWTO.txt: Update perfmgr config options
documentation
35d4918 OFA: Add support for additional Mellanox OUI
c473bfc MOFED: add documentation files to installation
eb3b12a OFA: Improve scatter ports documentation
c430deb OFA: Skip state_mgr_check_tbl_consistency when no LID changed by lid
manager
c1911be Add missing GRH for sa queries
b0c6351 osmtest: Add grh test
9eab7d3 MOFED: Add support for comments in pgrp/topo/rch parsers
2aae01b OFA: osm_ucast_mgr.c: Use LFT block of all port 0 to indicate resend
---------------------------------------------------------------------------------------------
4.1.x
---------------------------------------------------------------------------------------------
1c9f960  MOFED: changed max_op_vls default value to 3
3afe02d  Add doc/unhealthy-ports.txt
a4ee77a  Add doc/routing-chains.txt
eb0b1de  OFA: opensm/osm_sa_path_record.c: Search for requester port should be under lock
e46d515  MOFED: opensm: Add flag to disable SMPs capability validations
a44c678  opensm: Use CLOCK_MONOTONIC rather than gettimeofday
6319ced  OFA: opensm: Add option to force heavy sweep after several concurrent light sweeps (Sanity Sweep)
529cb1b  OFA: When exiting update SADB only in MASTER state
af0346c  Add trap 144 (local changes trap) into allowed for reports = 2 handling
8077ad8  osm_trap_rcv.c: Log DR path to node when trap 128
0b983f8  osm_vendor_ibumad.c: Improve ERR 5430 log message
617b070  MOFED: add parameter to decide whether to print qos opt setting to log
da3f4ca  OFA: Using 'lid 0' when sending setPortInfo after the first setPortInfo has failed
843d7a2  OFA: opensm: Resend LFTs/VLArb/SL2VL MADs in case of error
ff7b3b8  MOFED: add new configuration paramter ftree_ca_order_dump_file
213db37  osmtest: Handle other than default subnet prefix
9c7e779  Debian support fix
5b73ab5  OFA: Introduce parallel computations for UPDN/MINHOP routing using complib API for par
644a10d  OFA: opensm: Invalidated ucast_cache when routing conf file changes
afdbdeb  OFA: opensm: Validate producer type is a switch for traps 129,131 and 259
a1b9380  OFA: opensm: Check SMA returns NodeInfo.NumPorts == 255
b772f62  osm_sa_guidinfo_record.c: Improve duplicate alias GUID error message 5108
810590e  OFA: osm_port_info_rcv.c: Issue a log message if we cannot read the MKey of a port
f12d479  osm_sa_informinfo.c Add attribute info to log messages
76d2574  MOFED: Support parallel computing for lid matrix calculation
4b8c672  OFA: Fix extra copy in set_lft_block routine
95bb5a0  OFA: Introduce number of threads per core limitation for parallel computing
09ed60a  OFA: opensm: Add sys guid support to Switch Isolation
e6ccc7e  OFA: opensm/osm_subnet.c: Fix invalidated ucast_cache when variables in conf file chan
2068a60  OFA: ftree: Allow defining only io_guids file and consider rest of nodes as CN nodes
dd6d6e2  OFA: Fix shift pattern support in FTREE routing for native ftree topologies
6755fa3  OFA: Introduce complib API for parallel computing on multicore processors
9e52b83  OFA: opensm: Invalidated ucast_cache when routing conf file changes.
a53901b  opensm/configure.in: Remove Default-Start from opensmd init script
15714e2  OFA: Introduce API for sending SMP MADs of the same type as a batch
b33ab22  OFA: opensm/osm_qos.c: Simplify QoS MADs distribution algorithm
43d1fda  OFA: opensm: Improve m_key lookup
dabcd8c  OFA: opensm: Add option to disable M_Key lookup
861d7d7  MOFED: adding Debian packaging support
5345b0f  OFA: opensm/osm_sminfo_rcv.c: send trap144 to a newly found MASTER SM when in MASTER s
2b28fef  opensm: Fix Q_Key, TClass and limited keys parsing warnings in partitions.conf
d6378d0  OFA: opensm/osm_lid_mgr.c: fix duplicate LID assignement after SM port's down
d06fad5  OFA: osm_sa_mad_ctrl.c: Drop incoming SA queries when shutting down
3f417b3  OFA: osm_sa_mcmember_record.c: On join and leave, validate subnet prefix in port GID
55a4480  Change LFT event to be per block/per switch rather than just per switch
cfbd9f4  Setup SM port GUID in subnet object as soon as it is known
9a3f549  MOFED : Improve memory consumption of pkey manager by using cl_map for accum_pkeys iss
a52b7f1  MOFED: opensm/osm_state_mgr.c: Fix reset state change bit should be done after the dis
61199ff  opensm: Add support for LFT changed event
4ab1f65  OFA: opensm/osmtest.c: half_world_query when creating inventory file
0df184a  OFA: opensm: Better handle topology changes in the fabric
05e310c  OFA: opensm: change discovery order of switch data
45180ea  opensm/ib_types.h: Add missing IB_PR_COMPMASK_SERVICEID
7f41bee  OFA: opensm/osm_sm_state_mgr.c: Start sweep immedeately when recieving HANDOVER in DIS
8554d3f  OFA: Adding client_rereg flag to Port Info context
6b268f6  UFM: Added new option guid_routing_order_no_scatter
7500a09  OFA: opensm/osm_torus.c: Improve QoS configuration
5821038  OFA: opensm: Update doc for changes to torus routing for CA support
cd8b6fa  OFA: opensm/osm_torus.c: Require only 2 data VLs supported (PortInfo.VLCap) and use VL
2421768  OFA: opensm: Add routing specific update_vlarb hook routine
294bb79  MOFED: limit SA full world PR queries
d9359af  OFA: opensm: Add Event_Wheel_Window mechanism
cb3d223  MOFED: opensm/osm_state_mgr.c: When SM port down, clean SA subscriptions
284cccc  MOFED: opensm: Only send SA reports when not in heavy sweep
f29186b  MOFED: opensm: Only send reports when SM port is up
9d153fd  MOFED: opensm: Better SA report rate limiting
b42a911  MOFED: opensm/osm_inform_mgr.c: Add initial trap coalescing
1b85e0d  MOFED: opensm: Drop subscriptions registered by port when removing port
053fd03  MOFED: opensm: Add drop_subscr_on_report_fail config option
8382849  MOFED: opensm: Support o13-17.2.1
80279f1  MOFED: opensm/osm_sa_informinfo.c: Add trusted support for InformInfo/InformInfoRecord
05cf621  MOFED: opensm: Queue events to new manager to run at idle time
2c2bae3  MOFED: opensm: Support link_layer from libibumad
2b78c11  OFA: opensm/crashd: added OpenSM crash daemon implementation
7c0fae9  MOFED: limit SA world PR queries
77723b9  MOFED: Drop SAGet/SAGetTbl requests when incoming message queue is overpopulated
46be895  OFA: opensm: replace CL_ASSERT with OSM_ASSERT
b58edd6  OFA: opensm/osm_log: implemented OSM_ASSERT functionality
b67494c  opensm/osm_torus.c: Check fabric minimum data VLs on switch external ports
afa86c7  opensm: Track minimum value in the fabric for data VLs supported on switch external po
284cc43  opensm: improve search common pkeys.
c785534  opensm/osm_node_info_rcv.c: using "PF" hint for all the fatal conditions
b946d69  opensm/complib: define macros for for "if" statements with branch prediction hints
88a4446  OpenSM: Add new Mellanox OUI
9c1a6fe  OFA: opensm: In case of PortInfo timeout the client_rereg will be set again.
e8ac69b  OFA: opensm: Handle SMP status
4047b31  OFA: opensm/osm_sa_informinfo.c: Handle multicast GID in InformInfo.GID for subscripti
ea7d2f5  UFM: Adding MC tree root validation (all MCG members are reachable).
d54245f  UFM: Constant MC tree with a fixed tree should not be compacted.
d616066  UFM: opensm: Added option to define global MC root switch
1c0bdb2  UFM: Force heavy sweep after MFTSet fails
ab52e73  UFM: opensm: multicast root spreading
83ef7ab  UFM: opensm: ADD MC const tree calculation algorithm
d3f10a1  UFM: opensm: MFT distribution improvement
b6df344  UFM: opensm: support routing engine update
9074c39  UFM: opensm: add TOR algorithm
c877511  OFA: After applying guid_order options we should add nodes sorted by neighbor switch l
a064509  OFA: Fix fat-tree routing for CAs with more than 1 connected port
978016e  MOFED: opensm/osmeventplugin.c: Add OSM_EVENT_ID_SOFT_CA_PORT_NUM_THRESHOLD handling
c06a4a4  MOFED: Add configure flag for Mellanox OS compilation
b789936  MOFED: opensm: Add switch name config option for FiT
5518564  MOFED: opensm: Add soft limit for number of CA ports
110335c  MOFED: add ca_port_num_limit option
1a0994c  MOFED: opensm: Add ability to add additional libraries to opensm linking
5c9277c  MOFED: opensm/osm_subnet: Determine when a QoS parameter changes from previous parsing
f3d5996  MOFED: Add cleanup of SA cache after handover
756b0cd  MOFED: opensm: consolidate IPv4 multicast groups
5e7e0c9  MOFED: opensm: Add option for "levels" of SA reports
fdfc425  MOFED: Update SysImageGUID on heavy sweep
95792b5  MOFED: opensm/osm_state_mgr.c: Eliminate possible NodeDescription race
c5dbc3a  MOFED: Make sure trap represses are sent "immediately"
782b1ab  MOFED: Timeout on VLARB and SL2VL SET operation MADs should cause heavy-sweep
a31c77c  MOFED: Fix race of registration and set Alias GUIDs
cb72233  MOFED: On GUID migration set client_rereg flag when sending SubnSet(GUIDinfo)
f571d2c  MOFED: Moving SMInfo Get to seperate worker thread
3d50111  MOFED: Added guid_inout_notice and sm_assign_guid_func to configuration file dump
b6478c1  MOFED: Added option to define SM assigned GUIDs function
519b8ce  MOFED: Added option to send GID IN/OUT traps upon alias GUID registration/deletion
c2e55ed  MOFED: Added Alias GUID client reregister on alias GUID migration
893855a  MOFED: Better handling of traps received during a sweep
8058815  MOFED: Add support for PID file
d53772f  MOFED: Allow AR Manager to force LFT update
762e3d9  MOFED: Add needed event for AR_MGR plugin
---------------------------------------------------------------------------------------------
Before 4.1.5
---------------------------------------------------------------------------------------------
7e6bdef opensm/man/opensm.8.in: Add section for MKey support
aebe678 opensm: Add support for multicast service records
5509234 opensm/scripts/sldd.sh: Update to support guid2mkey/neighbors
2ae1477 opensm: Ensure sweep interval/mkey lease are sensibly set
cefe79b opensm: Check for valid mkey protection level in config file
8fa0d2c opensm: Add neighboring link cache file
5088d08 opensm: Log errors on SubnGet timeouts
9eed9c6 opensm: Add support for setting mkey protection levels
5c4157d opensm: Add locking where necessary around osm_req_*
2f74f34 opensm: Allow recovery of subnets with misset mkeys
e5dc557 opensm: Add guid2mkey cache file support
3659b37 opensm/osm_sa_class_port_info.c: Indicate support for PortInfo CapMask2
	matching in SA ClassPortInfo:CapabilityMask2
8016d3b opensm/osm_base.h: Add some SA ClassPortInfo CapabilityMask2 bits
1a31c44 opensm/osm_perfmgr.c: Use non conflicting error codes in log messages
03a75d0 opensm/osm_sa_path_record.c: Restore osm_get_path_params functionality
a9340cf opensm: Support (null) being specified for per_module_logging_file
	option
00375aa opensm/osm_perfmgr.c: Eliminate compile warning
7868c98 opensm: Remove unused per_module_logging option
49c460b Call drop manager before checking for other Master SM in the fabric
c0604f3 Increase p_port->discovery_count only when received PortInfo for port 0
	of the switch
24b30d2 opensm/osm_node_info_rcv.c: Handle non-compliant SMA gracefully
a4f2689 opensm/osm_vendor_ibumad: Add management class into match criteria
4be6375 opensm/osm_sa*.c: Log requester port GUID at DEBUG level
4cca51d opensm/osm_sa_mcmember_record.c: Log requester port GUID at DEBUG level
15b3eae opensm/osm_sa_path_record.c: Log requester port GUID at DEBUG level
0b580ca opensm/osm_sa_path_record.c: Add debug logging to
	pr_match_mgrp_attributes
ed4b7fb opensm/osm_sa_mcmember_record.c: In mcmr_rcv_join_mgrp, add MGID to log
	message
872dae4 opensm/osm_sa_mcmember_record.c: Dump MCMemberRecord in mcmr_query_mgrp
71f2ce7 Sending SL2VL and VLARB SET MADs in distributed manner
f07bcc1 opensm/osm_subnet.c: Cosmetic formatting change
c823a5b opensm/osm_link_mgr.c: Set PortInfo:PortState to LinkDown when remote
	port isn't accessible
ab88df6 Add support to reread configuration file when stacked in rediscovery
	loop.
67c9bae opensm: Move per_mod_log_tbl array from subn to log structure
2cbd9f5 opensm/cl_atomic_osd.h: Cosmetic formatting change
cd63dec opensm/osm_helper.c: Add CapabilityMask2 to notice dump for trap 144
9205812 opensm/ib_types.h: Add CapabilityMask2 to notice for trap 144
25de706 opensm/osm_sa_path_record.c: Add missing end-of-line in the log message
3551530 opensm/osm_trap_rcv.c: Remove vestigial comment
067d217 opensm/osm_inform.c: Make log message format consistent for error
	messages
759b82a opensm/osm_trap_rcv.c: Add better logging for traps 257 and 258
b806657 opensm/osm_sa_mad_ctrl.c: Eliminate commented out code line
a851693 opensm/perfmgr: add logging of error counters
52fa659 opensm/console: add perfmgr "print_errors" (pe) console command.
a832ce2 opensm/console: Add human readable output for perfmgr data counters
77a1756 opensm/console: add abreviations for perfmgr commands
aca9a07 opensm/console; add port option to perfmgr print_counters
00628cc opensm/console: add "print all" to print_counters console command
f5de9b5 opensm: perfmgr mark inactive nodes in perfmgr db
ff06340 opensm: perfmgr delete "inactive" nodes from the DB
059d8f4 opensm/console: protect against 0 entered for the perfmgr sweep_time
cc86607 opensm/perfmgr: Add config option to ignore Channel Adapters.
91f0c00 opensm/osm_node_info_rcv.c: In ni_rcv_process_existing_ca_or_router,
	handle error
c930a23 opensm/osm_subnet.c: Indicate lmc and lmc_esp0 are not changeable
	"on the fly"
7825e67 opensm/libopensm.map: Removed unimplemented routine
7de7b04 opensm/main.c: Handle daemon mode with guid specified as 0 more
	gracefully
9478fbf opensm/osm_subnet.c: Support MLNX ExtendedPortInfo for ConnectIB device
f8fc334 opensm/osm_node_info_rec.c: Also handle non compliant SMA in
	ni_rcv_process_existing
b4a481d opensm: Eliminate unneeded field in DR path structure
01bc8c9 opensm/osm_state_mgr.c: Force subn->need_update when coming out of
	STANDBY
276be8b opensm: Dump info functions update for per module logging
64b512a opensm/osm_vendor_ibumad.c: Make binding log message clearer
e70c8c1 opensm: Add enum for FILE_ID for per module logging
2a2db8c opensm: Add per module logging support
e21b106 opensm: Cosmetic changes
3ddb2e3 opensm: Add partition manager configuration doc to docs
9586649 opensm/opensm_release_notes-3.3.txt: Update Unsupported IB Compliance
	Statements
826b5c4 opensm/osm_ucast_dfsssp.c: Use osm_log_is_active
b2cad9d opensm/complib/cl_fleximap.h: Cosmetic changes
322a310 opensm/osm_ucast_ftree.c: Add a couple of asserts
e3a946d opensm: Add FDR10 support
6cea3df opensm/osm_sa_portinfo_record.c: Add SA PortInfoRecord support
	for CapabilityMask2 matching
9ac7eeb opensm: Add infrastructure support for CapabilityMask2 field in
	PortInfo
8bc7c30 opensm: make loopback console compile on by default.
566b462 opensm/ib_types.h: Update SA PortInfoRecord component masks
480de4a opensm: Use forward extensible and safer way to compare mkey_lmc
	field in PortInfo attribute
22ca966 opensm: enable perfmgr build by default
4250c59 opensm: perfmgr only run sweep timer when enabled
1810672 Support scatter ports
dd21107 Support port shifting
1c2a298 OpenSM torus routing order list
b92d21f opensm: Create all directories in database path on Windows
83b6752 opensm/osm_subnet.c: In osm_subn_destroy, delete service records
0fc8124 opensm: Add OSM_VENDOR_ID_OPENIB support
c0d8b56 opensm/osm_sa_node_record.c: In nr_rcv_create_nr, only set some
	variables when needed
9acaba0 opensm/osm_helper.c: Add some missing fields to
	osm_dump_portinfo_record
8a43aea Allow comma in plugin names parsing
cdf227c opensm: Proper mfttop initialization when starting/restarting
cde0c0d opensm: Convert remaining helper routines for GID printing format
bc5743c opensm: Add support for MaxCreditHint and LinkRoundTripLatency to
	osm_dump_port_info
6cd34ab opensm: Add Dell to known vendor list
003d6bd opensm: Add more info for traps 144 and 256-259 in osm_dump_notice
5b0c5de opensm/osm_ucat_ftree.c Enhance min hops counters usage
0715b92 ib_types.h: Add ib_switch_info_get_state_opt_sl2vlmapping routine
2ddba79 opensm: Remove some __ and __osm_ prefixes
ea0691f opensm/iba/ib_types.h: Add PortXmit/RcvDataSL PerfMgt attributes
9c79be5 ib_types.h: Adding BKEY violation trap (259)
c608ea6 opensm: Add and utilize ib_gid_is_notzero routine
b639e64 opensm: Handle trap repress on trap 144 generation
b034205 Add pkey table support to osm_get_all_port_attr
876605b opensm/ib_types.h: Add attribute ID for PortCountersExtended
aae3bbc opensm: PortInfo requests for discovered switches
0147b09 opensm/osm_lid_mgr: use single array for used_lids
a9225b0 opensm/Makefile.am: remove osm_build_id.h junk file generation
8e3a57d opensm/osm_console.c: Add list of SMs to status command
3d664b9 opensm/osm_console.c : Added dump_portguid function to console to
	generate a list of port guids matching one or more regexps
85b35bc opensm/osm_helper.c: print port number as decimal
8674cb7 opensm: sort port order for routing by switch loads
80c0d48 opensm: rescan config file even in standby
8b7aa5e opensm/osm_subnet.c enable log_max_size opt update
8558ee5 opensm/include/iba/ib_types.h: Add xmit_wait for PortCounters
ecde2f7 opensm/osm_subnet.c support subnet configuration rescan and update
58c45e4 opensm/osm_log.c save log_max_size in subnet opt in MB
cf88e93 opensm: Add new partition keyword for all hca, switches and routers
4bfd4e0 opensm: remove libibcommon build dependencies
3718fc4 opensm/event_plugin: link opensm with -rdynamic flag
587ce14 opensm/osm_inform.c report IB traps to plugin
ced5a6e opensm/opensm/osm_console.c: move reporting of plugins to "status"
	command.
696aca2 opensm: Add configurable retries for transactions
0d932ff opensm/osm_sa_mcmember_record.c: optimization in zero mgid comparison
254c2ef opensm/osm_sm_mad_ctrl.c: In sm_mad_ctrl_send_err_cb, set init
	failure on PKeyTable and QoS initialization failure
83bd10a opensm: Reduce heap consumption by multicast routing tables (MFTs)
cd33bc5 opensm: Add some additional HP vendor IDs/OUIs
f78ec3a opensm/osm_mcast_tbl.(h c): Make max_mlid_ho be maximum MLID configured
2d13530 opensm: Add infrastructure support for PortInfo
	IsMulticastPkeyTrapSuppressionSupported
3ace760 opensm: Reduce heap consumption by unicast routing tables (LFTs)
eec568e osmtest: Add SA get PathRecord stress test
aabc476 opensm: Add infrastructure support for more newly allocated PortInfo
	CapabilityMask bits
c83c331 opensm: improve multicast re-routing requests processing
46db92f opensm: Parallelize (Stripe) MFT sets across switches
00c6a6e opensm: Parallelize (Stripe) LFT sets across switches
e21c651 opensm/osm_base.h: Add new SA ClassPortInfo:CapabilityMask2 bit
	allocations
09056b1 opensm/ib_types.h: Add CounterSelect2 field to PortCounters attribute
6a63003 opensm: Add ability to configure SMSL
25f071f opensm/lash: Set minimum VL for LASH to use
622d853 opensm/osm_ucast_ftree.cd: Added support for same level links
8146ba7 opensm: Add new Sun vendor ID
1d7dd18 opensm/osm_ucast_ftree.c: Enhanced Fat-Tree algorithm
e07a2f1 Add LMC support to DOR routing
1acfe8a opensm: Add SuperMicro to list of recognized vendors
f02f40e opensm: implement 'connect_roots' option in fat-tree routing
748d41e opensm SA DB dump/restore: added option to dump SA DB on every sweep
b03a95e complib/cl_fleximap: add cl_fmap_match() function
b7a8a87 opensm/include/iba/ib_types.h: adding Congestion Control definitions
fa356f8 opensm: Add support for optimized SLtoVLMappingTable programming
8aaae91 Dimension port order file support
7662eec opensm: Add option to specify prefix to syslog messages
2382cf3 opensm: Add update_desc command to opensm console
7cbe193 opensm: toggle sweeping V3
6f61d8f opensm/osmeventplugin: added new events to monitor SM
84cf603 opensm/main.c: force stdout to be line-buffered
b3bb0ab opensm/osm_dump.c: Dump SL2VL tables if routing engine might have
	modified them
8a08719 opensm/osm_dump.c: dump SL2VL tables in debug verbosity level when
	QoS is on
fc908c9 opensm/osm_sa_multipath_record.c: Add mtu validation if supplied
687e1f8 opensm/osm_sa_mcmember_record.c: Add mtu validation if supplied
76f5b09 opensm/osm_sa_path_record.c: Add mtu validation if supplied
9f38fae opensm/osm_helper: Add ib_mtu_is_valid
655230b opensm/osm_sa_multipath_record.c: Add rate validation if supplied
cb1484d opensm/osm_sa_mcmember_record.c: Add rate validation if supplied
485d068 opensm/osm_sa_path_record.c: Add rate validation if supplied
300f4d9 opensm/osm_helper: Add ib_rate_is_valid
9b50961 opensm: Change osm_routing_engine struct to not use C++ reserved word
c9c0aa6 opensm/man/torus-2QoS.conf.5.in: Update portgroup_max_ports section
3c97f06 opensm: Add the precreation of multicast groups
a9b9f09 opensm/osm_sminfo_rcv.c: Handle SMP status
1190c15 opensm/osm_switch.c: In osm_switch_set_hops, return, error when port_num is invalid
3d149db Changed sl_path API to include slid and dlid only
6cfb0eb Optimized and deadlock-free routing algorithm for InfiniBand
45f93ec opensm: Add additional IBM vendor ID/OUI
c386eb2 opensm/osm_state_mgr.c: Cosmetic change to log message
703e596 opensm: Add support for partition enforcement types to accommodate IBA extended link speeds
a2a03a8 Check block_num validity in set_guidinfo() and del_guidinfo() requests
e6ec61f end error resoponse to invalid LID in GUIDInfo request
7fce500 opensm/Makefile.am: Add doc/opensm-sriov.txt to docs
264aeb1 opensm: Add documentation for SRIOV support
c639832 opensm: Enhance osm_physp_share_this_pkey for allow_both_pkeys policy
b17b63c opensm: When allowing both pkeys, on a switch external, (peer) port eliminate limited pkey when full pkey with same base is present
a758da2 opensm: Add command line option for allow_both_pkeys
f412de3 opensm: Update partition documentation and man page for (allowing) both (limited and full) memberships in the same partition
726ce6a Support allowing both full and limited members of same partition
4ccf32f opensm/PKeyMgr: Support pkey index reuse when there are no longer any previously unused indices available
eb375a6 opensm/osm_pkey_mgr.c: Detect pkey table overflow in pkey_mgr_update_port
411e742 opensm/PkeyMgr: Don't change end port pkey index when simultaneously adding and removing partitions
15e7223 opensm/osm_sa_guidinfo_record.c: In set_guidinfo, better SM reassigned guid handing
e79b725 opensm: Handle SubnSet GUIDInfo asynchronously from GUIDInfoRecord handling
96c741d opensm: Some cosmetic formatting changes
1d5e370 opensm/osm_sa_guidinfo_record.c: Better status for SA response
efd3ba2 opensm/osm_sa.c: Change log level of message
db8b7da opensm/osm_sa_service_record.c: Alias GUID support
5330986 opensm/osm_sa_multipath_record.c: Add support for alias GUIDs
44168c9 opensm/osm_sa_guidinfo_record.c: In del_guidinfo, validate guid not in use
63eb65b opensm: Add multicast support for alias GUIDs
700d15f opensm/osm_sa_path_record.c: Add support for alias GUIDs
f818387 opensm/osm_sa_guidinfo_record.c: Use OSM_VENDOR_ID_OPENIB define rather than IB_OPENIB_OUI
97e360e opensm: Dump/load SA GUIDInfoRecords
fe74f1d opensm: Make SA assigned guids persistent across port down/up events
eb8f1d9 opensm: Add support for alias GUIDs
b3b1861 opensm: osm_subnet.c: Updated patch to add error-reporting to the parsing of opensm.conf
cd8a708 opensm/man/opensm.8.in: Add description for OSM_LOG_SYS logging flag
1308e5c opensm/osm_console.c: Add display of FDR10 ports to portstatus_parse
f4722b0 opensm: Reset client reregistration when receiving handover

1.3 Library API Changes

  None

1.4 Software Dependencies

OpenSM depends on the installation of libibumad package (distributed as
part of OFA IB management together with OpenSM) and IB stack presence,
in particular libibumad uses user_mad kernel interface ('ib_umad' kernel
module). The qualified driver versions are provided in Table 2,
"Qualified IB Stacks".

Also, building of QoS manager policy file parser requires flex, and either
bison or byacc installed.

1.5 Supported Devices Firmware

The main task of OpenSM is to initialize InfiniBand devices. The
qualified devices and their corresponding firmware versions
are listed in Table 3.

2 Known Issues And Limitations
------------------------------

* No Service / Key associations:
  There is no way to manage Service access by Keys.

* No SM to SM SMDB synchronization:
  Puts the burden of re-registering services, multicast groups, and
  inform-info on the client application (or IB access layer core).

3 Unsupported IB Compliance Statements
--------------------------------------
The following section lists all the IB compliance statements which
OpenSM does not support. Please refer to the IB specification for detailed
information regarding each compliance statement.

* C14-22 (Authentication):
  M_Key M_KeyProtectBits and M_KeyLeasePeriod shall be set in one
  SubnSet method. As a work-around, an OpenSM option is provided for
  defining the protect bits.

* C14-67 (Authentication):
  On SubnGet(SMInfo) and SubnSet(SMInfo) - if M_Key is not zero then
  the SM shall generate a SubnGetResp if the M_Key matches, or
  silently drop the packet if M_Key does not match.

* C15-0.1.23.4 (Authentication):
  InformInfoRecords shall always be provided with the QPN set to 0,
  except for the case of a trusted request, in which case the actual
  subscriber QPN shall be returned.

* o13-17.1.2 (Event-FWD):
  If no permission to forward, the subscription should be removed and
  no further forwarding should occur.

* C14-44 (Initialization):
  If the SM discovers that it is missing an M_Key to update CA/RT/SW,
  it should notify the higher level.

* C14-62.1.1.12 (Initialization):
  PortInfo:M_Key - Set the M_Key to a node based random value.

* C14-62.1.1.13 (Initialization):
  PortInfo:M_KeyProtectBits - set according to an optional policy.

* C14-62.1.1.24 (Initialization):
  SwitchInfo:DefaultPort - should be configured for random FDB.

* C14-62.1.1.32 (Initialization):
  RandomForwardingTable should be configured.

* o15-0.1.12 (Multicast):
  If the JoinState is SendOnlyNonMember = 1 (only), then the endport
  should join as sender only.

* o15-0.1.8 (Multicast):
  If a request for creating an MCG with fields that cannot be met,
  return ERR_REQ_INVALID (currently ignores SL and FlowLabelTClass).

* C15-0.1.8.6 (SA-Query):
  Respond to SubnAdmGetTraceTable - this is an optional attribute.

* C15-0.1.13 Services:
  Reject ServiceRecord create, modify or delete if the given
  ServiceP_Key does not match the one included in the ServiceGID port
  and the port that sent the request.

* C15-0.1.14 (Services):
  Provide means to associate service name and ServiceKeys.

4 Bug Fixes
-----------
---------------------------------------------------------------------------------------------
 4.5.x
---------------------------------------------------------------------------------------------
8ffceae MOFED: Fix in double failover elimination feature
80a6376 OFA: Support diverse paths for LMC > 0 when scatter_ports is enabled
83288a2 MOFED: remove reboot_tracking_callback
43f8b22 MOFED: Remove healthy ports unhealthy_ports_tbl
9cb9f55 MOFED: remove function aging_tracker_callback
38f136a MOFED: Parse hm_unhealthy under exclusive lock
4598958 OFA: call cl_disp_shutdown for SA SET dispatcher
f2ca348 MOFED: Add use scatter for switch LID flag
---------------------------------------------------------------------------------------------
4.3.x
---------------------------------------------------------------------------------------------
4d1ae72 MOFED: invalidate cache due to multicast routing errors
95db829 MOFED: send client reregistration in case of SM LID change
07962a2 OFA: Added dispatcher for SA set and delete requests
d05779d MOFED: Removing TARA code from MOFED #2
948c373 OFA: Wrong message verbosity in case of allow_both
713c9d5 MOFED: fix conditions for sending MEPI(Get)
02c0615 MOFED: set default value of support_mlnx_enhanced_link to FALSE
a3e43bc MOFED: Improved ERR 4C05 message - added the LID of the requester.
b6fff7a MOFED: Remove heldback file existence validation after parsing of
opensm.conf
30993aa OFA: Allow updating opensm string parameter with (null) default
3662c8e MOFED: avoid continuing discovery when SM port is unresponsive
c3c9592 MOFED: disable IMR support when not all members were added to tree
6eae38b MOFED: fix memory leak in mcast_mgr_subdivide_const when malloc fails
30a3d91 MOFED: Write port reset decision reason to log file
262eac0 OFA: Added MLID to error message 0A06
f921087 MOFED: disable no_discover option for unhealthy CA ports
de7572b MOFED: different port reset action parameter for each speed type
ab7951f MOFED: added failed routes counting to default mulitcast algorithms
1d2f5fb MOFED: added ability for multicast routing functions to count failed
routes
bf0050e OFA: osm_port_info_rcv.c: In osm_pi_rcv_process, move assert before
first log message
71c087f OFA: Use calloc instead of malloc in osm_pkey_mgr.c
cbbffd0 MOFED: set PortState to IB_LINK_NO_CHANGE when performing physical
reset
7eb6fa8 MOFED: Extra line feed in unhealthy port dump record
a6a060c MOFED: Fix error message for sm port/peer marked for
isolate/no_discover
bb92d38 MOFED: clear all data from the old routing.
e3e9af9 OFA: Avoid handling SubnAdmGetMulti requests when OpenSM is overloaded
c992bbc OFA: removed/update old comments from osm_sa_mad_ctrl.c
61f14c4 MOFED: fixed disabling Mellanox extended speeds
c26241a MOFED: fix bad casting convertng log_max_size from MB to bytes
712621a MOFED: Fix printing error when using default value for fdr10
parameter.
6775fbd OFA: osm_console.c: Handle LinkSpeed[Ext]Active 0 for portstatus
command
f004791 OFA: osm_console.c: Fix unknown width port reporting for portstatus
command
58f49f3 OFA: osm_console_io.c: In is_authorized, STRING_UNKNOWN is define
374fbf9 OFA: Fix the difference in osm_opensm struct size between OpenSM and
plugin(s)
fca2650 MOFED: Fix crash when resetting opensm's node link
b6112a6 MOFED: force heavy sweep and invalidate cache when resetting sw-to-sw
ports
83137bf MOFED: fix sending port physical state when performing logical reset
6d86c6a OFA: added missing keyword in partition definition in opensm MAN page
and partition.txt
4b66a62 MOFED: changed osm_subn_t.log_max_size type to uint32_t
2c7af9f MOFED: Removed unused parameter from update_ignored_status
43c9ae2 MOFED: Handle valgrind memory warnings (uninitialized value)
9e5a5d8 MOFED: fix ASSERT for SM isolated port in case of sweep_hop_0
---------------------------------------------------------------------------------------------
4.2.x
---------------------------------------------------------------------------------------------
7f05469 MOFED: Disable unhealthy feature by default
9f7c662 OFA: Better logging of 1F05 and 1F03 error messages
56a9eaf MOFED: Added LFT errors handling to mcast_mgr_build_global_root_stree
ea37df0 MOFED: fix ucast_cache invalidation upon ND change
c579401 MOFED: Fix bug when setting subnet_initialization_error flag in RCH.
30592ce MOFED: Fix error message syntax in osm_sm_mad_ctrl.c
f253ab2 MOFED: Fix debug message for skip NI feature
bf0b6ed OFA: Duplicate error code in osm_sa_mad_ctrl.c
7a0eee1 OFA: osm_perfmgr.c: Fix perfmgr sweep_state race
1c53bdc OFA: osm_perfmgr.c: Add log message when perfmgr sweep is skipped
e5ae2ea OFA: osm_perfmgr.c: Remove unnecessary log message
68ea7db OFA: fix return value checkings in opensm.init script
8f3e207 OFA: Removed duplicate calls to ib_port_info_compute_rate
b1ba4c1 OFA: Shortening long lines while calculating rate
2523f98 MOFED: fix leak when deleting rbox objects of removed toplogies
9ee313e MOFED: Fix RCH MC bug - infinite loop
04335e2 OFA: missing CR in drop_mgr_check_node
63d166e MOFED: Master SM priority reducing fails with double failover
elimination
c430deb OFA: Skip state_mgr_check_tbl_consistency when no LID changed by lid
manager
b628626 MOFED: RCH - remove rbox objects of deleted topologies
d4a5ac7 OFA: osmtest/main.c: Fix osmtest short option for with GRH
b0c6351 osmtest: Add grh test
1857596 MOFED: RCH - Verify each border sw in torus has t_sw pointer
f81d820 MOFED: Fix bug in 'skip NI for unhealthy port during heavy sweep'
ef1494f OFA: opensm/osm_sa_path_record.c: Search for requester port should be
under lock
9eab7d3 MOFED: Add support for comments in pgrp/topo/rch parsers
7c6f645 OFA: Fix memory leak in ftree fabric_rank.
75e10a9 MOFED: RCH - added rch support for sw2sw routing
8fc2e8e MOFED: Fix additional issues in topology building
36aaf7a MOFED: Update topology list of port when removing port from topo
d07d3ac MOFED: RCH: additional fixes for isolated nodes support
3640e7a MOFED: Updated topology id validation in topology parser
3b0ea6d MOFED: RCH - Delete items from topology subnet which has no connection
3607a1b MOFED: RCH: opensm crash when topology has no switches
8ff590f MOFED: RCH parser - support hexadecimal values for path bit
b0a6765 MOFED: Fix bug while creating subnet for new topology
82613f3 MOFED: remove double space in printing log message in osm_mcast_mgr.c
2aae01b OFA: osm_ucast_mgr.c: Use LFT block of all port 0 to indicate resend
705d75d OFA: dfsssp: avoid crash due to port initialisation errors
bbb3cfd MOFED: RCH: opensm may crash if there are topologies without routing
engine
cefbb47 MOFED: No need to send trap 65 and remove AGUIDs from ignored port
214cfb5 MOFED: fixed uninitialized variable when setting mft tables
d09f3c6 MOFED: fixed updating switch ranks by ftree routing engine
856cae8 MOFED: fixed root validity check for global hub based mtrees
1ccd9e5 OFA: osm_ucast_dfsssp.c: prevent double free error
accd5ab MOFED: opensm/osm_ucast_pqft.c: Fix crash in pqft sw_2_sw routing
d089ce2 MOFED: opensm/osm_ucast_pqft.c: Incorrect return value when unable to
parse PQFT configuration
df71439 MOFED: opensm/osm_ucast_pqft.c: Fix uninitialized warning
4eec1ee Mofed: RCH - fix bug in torus while iterating border switches layer
84050d4 MOFED: fix problematic optimization of inline methods in osm_torus.c
538caed MOFED: opensm/osm_subnet.c: Add unhealthy action description in conf
file
b411561 OFA: Literal in ERR number
623c83a OFA: osm_port.c: Improve ERR 4108 log message
d7adf94 MOFED: opensm/osm_ucast_pqft.c: Fix use after free
c5a87f2 MOFED: Support null pointer in get_b_arr and set_b_arr methods
---------------------------------------------------------------------------------------------
Before 4.1.x
--------------------------------------------------------------------------------------------
4.1 Major Bug Fixes
56a89a7  OFA: osm_ucast_mgr.c: Use LFT block of all port 0 to indicate resend
4312ddb  OFA: Fix memory leak in ftree fabric_rank.
385398d  OFA: opensm: Fix minhop population in fabric with duplicate lids
df3383d  OFA: opensm/osm_drop_mgr.c: fix timeouts on Get Pkey from ext switch ports
c6685f5  OFA: opensm: Fix dropping node after setPkey mad
f5faf3f  OFA: opensm: Fix getting timeout for pkeyGet for sw port 0
3c69a64  OFA: opensm: fixing pkey get timeout
f16bce5  MOFED: Add ServiceRecord to drop_event_subscription description
f02a984  OFA: opensm/osm_ucast_cache.c: Fix memory leak in ucast_cache
fe0fff6  OFA: opensm: Fix incorrect comparison of IPv6 MGID when searching for SNM MLID
c7ab03d  MOFED: memory leak in mcast_mgr_build_spanning_tree_const for MCG with one member
35ca5bf  OFA: opensm: Fix race in MASTER handover mechanism
181e8d4  MOFED: opensm/osm_state_mgr.c: Fix SM crash on handover when service records persist
26beb24  OFA: opensm/osm_db_files.c: Fix memory leak when deleting entries from osm db
f97cac9  MOFED: Fix Resource leak in osm_setup_routing_engines (coverity #44191)
2a383fc  OFA: fixed memory leak in per_module_logging configuration parameter
7707827  MOFED: fixing memory leak in destroying default_opts
b76e16c  OFA: osm_sa_path_record.c: Fix rate setting issue in SA PR handling
320467c  OFA: opensm/osm_qos_policy.c: fix memory leak when parsing policy file
92dd89d  UFM: opensm/osm_mcast_tbl.c: Fix crash in osm_mcast_tbl_clear_mlid()
0aa12ba  OFA: opensm/osm_trap_rcv.c : fix crash in babbling port feature
2be253b  OFA: opensm: Fix crash during handover
9875537  OFA: Fix opensm crash after handover
397b0c1  OFA: opensm/osm_db_files.c : Fix resource leak guid2lid parser
---------------------------------------------------------------------------------------------
Before 4.1.5
---------------------------------------------------------------------------------------------
a322f51 Skip TID 0 on 32 bit wraparound for SMP, SA and PerfMgt queries
cded9af Fix transaction id casting
3585f8b opensm: Fix crash found with ucast cache
74e12d9 opensm: fix part_enforce parameter parsing crash
647a98e Fixed crash in sm_state_mgr_send_master_sm_info_req() during fabric
	merge
63ebd0d Fix crash in ucast cache when chain of switches connected back at once
	to the fabric
3b21d6f Fix crash in ucast cache when ucast cache invalidates after updating
	one of the switches
5654e22 Fix invalid error check, which lead to segfault
7bf7482 fix segfault corner case w/ updn routing and LMC > 0
18990fa opensm: set IS_SM bit during opensm init
3551389 fix local port smlid in osm_send_trap144()
a6de48d opensm/osm_link_mgr.c initialize SMSL
82df467 opensm/osm_req.c: Shouldn't reveal port's MKey on Trap method
45ebff9 opensm/osm_console_io.h: Modify osm_console_exit so only the
	connection is killed, not the socket
d10660a opensm/osm_req.c: In osm_send_trap144, set producer type according
	to node type
8a2d2dd opensm/osm_node_info_rcv.c: create physp for the newly discovered
	port of the known node
39b241f opensm/lid_mgr: fix duplicated lid assignment
b44c398 opensm: invalidate routing cache when entering master state
595f2e3 opensm: update LFTs when entering master
8406c65 opensm: fix port chooser
fa90512 opensm/osm_vendor_*_sa: fix incompatibility with QLogic SM
7ec9f7c opensm: discard multicast SA PR with wildcard DGID
5cdb53f opensm/osm_sa_node_record.c use comp mask to match by LID or GUID
55f9772 opensm: Return single PathRecord for SubnAdmGet with DGID/SGID wild
	carded
5ec0b5f opensm: compress IPV6 SNM groups to use a single MLID
26e7e83 opensm/osm_lid_mgr: fix couple of duplicate LIDs bugs
fedc419 opensm: Multicast root switch calculation
6772fdb opensm: Fix sl2vl configuration
dd3470f complib/cl_timer.c: fixing cl_timer calculation
ae1bcdd opensm/osm_lid_mgr.c: Allow switch lids to be non LMC aligned
593547e Wrong handling of MC create and delete traps
4c822b0 opensm/osm_prtn.c: removing TopSpin hack
8214e2a opensm: Add support for SwitchInfo:MulticastFDBTop
1e544ba opensm: fixed memory leak in multicast spanning tree calculation
0456b3f Fixed multicast groups reconfiguration during heawy sweep
9ad844f Fix ucast cache crash, when switch doesn't have valid phys ports
07aa9fa opensm: fix crash in osm_ucast_mgr
076bd38 opensm/osm_ucast_cache.c: fix crash in ucast cache when switch with lid 0 dropped

4.2 Other Bug Fixes
ebe63fb  MOFED: configure.in: add source directory path for copied files
ce37e93  Makefile.am: fixing debian files included
447dbe2  debian: Fix debian support
c711bee  MOFED: RCH: node description shows wrong names
479e3e0  OFA: opensm/osm_trap_rcv.c: fix race condition during sweep
9d479a9  MOFED: opensm/osm_subnet.c: Add unhealthy action description in conf file
6b7aaf3  MOFED: opensm/osm_subnet.c: fix hm_sw_manual_action
5acc8ab  MOFED: opensm: Fix timestamp in unhealthy ports dump
950b166  OFA: opensm/osm_state_mgr.c: Fix error print in state_mgr_check_tbl_consistency()
bd998e0  OFA: opensm/osm_mcast_mgr.c: Fix wrong comparison in mcast_mgr_subdivide()
b0a10c7  MOFED: port groups - fixed bug on hostname qualifier
5d29f47  4.1.5 branch
0765192  MOFED: fix port groups parser bug on port-name parsing
afe921e  MOFED: print max_lid in dump_ucast_lfts (instead of dumped_lids)
feff6ef  MOFED: RCH - add support for ucast cache
1f7bdd6  osm_prtn.c: reduce log level for missing partition configuration file
6722e8e  OFA: active_transition parameter in PortInfo(Set) context may not be initialized
f3264ae  MOFED: Coverity #45936 - Safer usage of strcat while printing port group
af142c1  opensm: Fix incorrect switch info proccessing
6b11d80  OFA: Fix unhealthy manual mode
ef700ca  OFA: dfsssp: send multicast forwarding tables to switches
b07dc83  OFA: dfsssp: send multicast forwarding tables to switches
ad7e73d  MOFED: Fix wrong removal from list during multithreaded processing
0465e7d  MOFED: Misleading result code in mcast_mgr_set_mftables
225a2f4  MOFED: Duplicated error code 0A10
53e450c  MOFED: TARA memory leak fix in bad flow
02a00ed  MOFED: Add copyright to osm_ucast_tor.h
873941d  MOFED: TARA memory leak fix
09efc65  MOFED: moved line 'sm->p_subn->force_client_rereg = FALSE;' in do_sweep
ce39257  MOFED: Moved topology manager to run after lid manager (in do_sweep)
62dd129  MOFED: Support dump file per routing engine
523bf68  osm_state_mgr.c Add info to some error messages
ffe4f27  MOFED: Add pgrp, rch and topo policy files to crc
be71120  MOFED: Added osm_topo_parser_l.c to PML
3c09404  MOFED: Fixed switch comparison in dump_ucast_routes
eafc332  OFA: opensm/osm_link_mgr.c: Fix uninitialized value (physp0)
20f45cd  MOFED: complete redesign for rch feature
7f47521  osm_sa_path_record.c: Eliminate extraneous space in 1F1A log message
9ef3c4d  osm_db_files.c: Add osm_db_domain_init failure handling into test program
7df05f9  OFA: osm_db_files.c: Handle memory allocation failure in osm_db_domain_init
806edfe  OFA: Use after free in osm_prtn_delete
9009fe9  MOFED: Add yacc/lex files of rch and port group parsers to PML
a30d8ce  MOFED: opensm: Add missing brackets
8ac3c40  MOFED: fix not dumping empty predefined mc groups
b57b182  OFA: opensm/osm_subnet.c: Wrong default definition for seterr_action
97292c4  OFA: complib/Makefile.am: fixing adding 'cl_crc.h'
6ab7669  MOFED: adding status output to 'opensmd' script in DEBIAN
37285ff  MOFED: Add copyright to yacc/lex rch/port_grp files
4ec5c0d  MOFED: Add yacc/lex files of rch and port group parsers to PML
60e43fa  OFA: opensm/osm_trap_rcv.c: Fix locking in aging callback
0daa8db  OFA: osm_subnet.c: Make change for double strdup consistent with upstream
f582bb8  OFA: osm_subnet.c: Fix compile warning introduced by commit 3ce0002680d197bb7d26700ab2
a1f2e12  OFA: opensm/osm_state_mgr.c: Fix initializing si_context.lft_top_change
fd3e8c9  MOFED: opensm/osm_ucast_updn.c: Fix access to not-allocated memory
8af3bed  OFA: opensm/osm_lid_mgr.c: Don't configure MTU and LMC on base sp0
05f2285  MOFED: Port Groups: improve handling of predefined groups allocation failure
3ac25d6  MOFED: print_desc size can be greater than IB_NODE_DESCRIPTION_SIZE
b54510b  MOFED: Fixing tbl_size that exceeds the size of p_member->physp_members array
06e0627  MOFED: fix memory leak in subnet clean up
4f5d54c  MOFED: Removing empty strings from opensm.conf
6e51eab  MOFED: fix union/subtract rule group name parsing bug
1d37300  OFA: opensm/osm_port_info_rcv.c: Don't validate old readonly PortInfo fields if port d
18562c9  OFA: opensm: Don't mark ports/nodes capability changes as unhealthy
3664344  OFA: opensm: Validate VLArbitrationHighCap and VLArbitrationHLowCap fields
2629783  OFA: opensm/osm_port_info_rcv.c: Validate PortInfo fields for relevant port type only
c1cf283  OFA: opensm/osm_port_info_rcv.c:  Check PortState validity for all PortInfo SMPs
27830cf  OFA: opensm/osm_port_info_rcv.c: Validate existing ports' PortInfo only if it was disc
c1979cf  debian/dirs: adding '/etc/opensm' dir creation on install
f541ec4  Mofed: Moved routing engine methods from osm_opensm to osm_subnet
407eb55  MOFED: fixed forcing heavy sweep due node description changes
3cccc4a  MOFED: Initialize lft_size while creating new switches for engine subnets
4b6496c  OFA: opensm: When SM find a noisy port set its peer as unhealthy
10cb4b6  Fix for Minimal fabric MTU and Rate in SA PathRecord
a0327eb  MOFED: When node description changed, set force_heavy_sweep and force_reroute to true.
b6f4895  OFA: osm_ucast_dfsssp.c: Fix some typos
c0738e2  OFA: dfsssp - add missing and change existing return values
78f439f  OFA: update manual and usage explanation for --lfts_file
8f6b276  Minimal fabric MTU and Rate in SA PathRecord
4ab7b0e  OFA: osm_vendor_ibumad.c: Fix explicit null derefenced issue found by coverity
5a3e98c  OFA: opensm: invalidate ucast_cache when routing engine changed.
a9070ab  MOFED: add rch parser auto generated code files to per module logging
1fc13b5  MOFED: opensm/osm_port.c: Fixing asserts in alternative direct route calculation
89dd23d  MOFED: port group - initialize context used by strtok
e9d469a  MOFED:added routing chain feature - Phase I
dcf0ffd  opensm/osm_ucast_mgr.c: add a check for switch ar_configured flag
c02f99d  OFA: opensm: fix false assert message
f19174b  OFA: opensm: Fix use of event_wheel after destroyed
e0809de  OFA: opensm: Fix multithreaded updn routing engine crashing when configured via routin
349c48e  /etc/init.d/opensmd: Improve systemd integration
649fcff  OFA: opensm: Fix not invalidate ucast_cache after delete held_back_sw_file.
76d1a2b  OFA: complib/cl_event_wheel.c: Don't use floats in timeout calculation
545d041  OFA: Remove redundant unset to first_time_master_sweep
f7d6f1a  OFA: opensm: Fix illegal SMPs reporting during discovery
32fb4ae  removed prefix from qos parser files
cb7141a  MOFED: Removed redundant scatter buffer allocation
6e715f5  OFA: opensm/osm_subnet.c: resource leak on parse_hm_policy_file
e4030ba  MOFED: added port groups feature
8b6fd03  OFA: opensm: Remove validation of SM assigned fields in SMPs
43187e2  MOFED: Remove the call to sched_getcpu due to lack of support in RH5
f7436fe  MOFED: changed ftree_get_subnet signature to take ftree and not p_osm
d763fe2  OFA: opensm: Set ignore_existing_lfts when routing configuration variables or routing
5cf1b21  OFA: complib/cl_event_wheel.c: Roundup timer time to nearest msec
3ccfc9a  Updated ucast_updn to relate to subn from ucast_mgr instead of p_osm (later on be requ
bfc21e2  OFA: opensm/osm_node_info_rcv.c: No need to call validate_node_info from ni_rcv_proces
57b99fa  OFA: opensm/osm_node_info_rcv.c: Use ib_node_info_get_local_port_num instead of calcul
c5c8317  Fix linker error with clang with -O < 2
27b0737  UFM: opensm/osm_torus.c: Fix compilation warnings with clang
39ab26b  UFM: opensm/osm_ucast_tor_init.c: Fix compilation error found by clang
caa1a9b  Fix -Wtautological-compare warnings with clang
34f0d48  Revert "OFA: opensm/st.c : check return value from "new_size""
0a4b231  OFA: opensm: Change cl_event_wheel internal structures
375ec21  OFA: complib/cl_event_wheel.c: Add print of num_regs in cl_event_wheel_dump
71204e2  OFA: complib/cl_event_wheel.c: Fix duplicate error codes
6cce6e5  OFA: opensm: Fix test scenario in cl_event_wheel
ec9460a  OFA: opensm: Fix timeout recalculation in event_wheel
bec0b94  OFA: opensm/osm_indent: Enforce some opensm coding style
fe94ecb  OFA: opensm: fix: ucast_cache not invalidate after delete file
7380788  OFA: Add flags to OSM_EVENT_ID_UCAST_ROUTING_DONE
079e358  OFA: opensm: complib/cl_event_wheel.h: Some cosmetic fixes
a5c3133  osm_sa_path_record.c: Fix compilation error
9487bd2  OFA: AR: Copy new_lft to the lft to allow PathRecord calculation
e53fc33  MOFED: changed ftree to use subn from ucast mgr and not from p_osm 	this will be relev
f0b3494  MOFED: moved routing_engine attributes from osm_opensm to osm_subn 	this will be later
0fae108  OFA: opensm/osm_subnet.c: Enable update on guid_routing_order_no_scatter
655a9fd  OFA: opensm/osm_subnet.c: Enable update on max_reverse_hops
246b486  OFA: Fix duplicated code for fallback routing engine
63695c4  OFA: Fixed memory leak in priv object
fefee6d  OFA: opensm/osm_sa_sminfo_record.c: fix sminfo sa query returns all sminfo records whe
91a0f79  OFA: opensm/osm_state_mgr.c: Change: congestion control calls are made  only when CC i
f9882fb  opensm: Fix incorrect use of sizeof
0e2bc09  Revert "MOFED: opensm/osm_helper.c: fix incorrect sizeof expression in osm_dump_dr_pat
b9c2186  OFA: DFSSSP - workaround for better VL balancing
4529179  OFA: osm_console_io.c Memory leak when closing console
7ca4253  OFA: osm_console_io.c: Handle another write-strings issue
6e7c098  OFA: osm_ucast_dfsssp.c: Fix memory leak in dfsssp_do_dijkstra_routing
9a774ed  OFA: opensm/osm_port_info_rcv.c: Reread pkeys from SP0 if rswitch ebooted during a swe
ab9f29c  OFA: Fix segfault in osm_mgrp_delete_port()
97f62eb  OFA: opensm: Fix bug: comparing unsigned with negative value
09ffbb2  OFA: opensm: Fix typo 0x016%
e0a170c  main.c: Fix typo in --const_multicast useage
2b9a31c  OFA: opensm/osm_link_mgr.c: Fix uninitialized value (physp0)
4637552  OFA: osm_sa_multipath_record.c Use aliasGUIDs when building responses
083a5e2  OFA: opensm/osm_ucast_dfsssp.c: fix unused variable warning
eb8c3bc  OFA: opensm/osm_link_mgr.c: fix  uninitialized varaiable usage
a72b4db  OFA: opensm: fix faulty Set(GuidInfo) introduxed by previous commit
d38e4da  OFA: opensm/osm_trap_rcv.c: Removed un-needed lock when disabling port
b557026  OFA: dfsssp - add support for multicast
2074dc8  doc/opensm-sriov.txt: Fix typo
b234407  OFA: opensm: Better way to handle polling other MASTER SM
419215f  OFA: opensm: When SM fails to load/parse root_guids file use MinHop heuristics
190f258  OFA: osm_congestion_control.c: Simplify some code
8557ab1  OFA: osm_sa_mcmember_record.c: Improve debug log message
17d61d7  OFA: opensm/osm_state_mgr.c: Fix redundant code
4d25e0c  OFA: opensm: Resnd trap144 when detecting remote MASTER SM with lower priority
b9ce4f6  opensm: fix dfsssp uninitialized value
e8545ac  MOFED: opensm/osm_mcast_mgr.c: Better logging of multicast
5acb9a9  Fix deadlock in deadlock in osm_si_rcv_process
f24cce4  opensm/osm_sw_info_rcv.c: Fix possible double release of lock in osm_si_rcv_process
528ec32  opensm/osm_port_info_rcv.c: Fix min_sw_data_vls calculation
9f3e564  MOFED: opensm/osm_state_mgr.c: Fix incorrect calculation of rediscovery_count
da39bfe  OFA: opensm/osm_sw_info_rcv.c: Fix sending PortInfo during lightsweep
dc6d5d9  OFA: include/iba/ib_types.h: Fix shoadow declaration warnings
2c5eb63  opensm/man/osmtest.8: Add option for using full world path queries
af36095  opensm/osm_torus.c: clarify log messages on stale priv pointers
29d51b0  opensm/osm_torus.c: avoid the possibility of following stale ->priv pointers
abf3a92  opensm/osmtest: fix debug build
742c076  opensm/osm_subnet.c: Miscellaneous minor fixes
7fb13db  OFA: osmtest: Add support for full world path records back as option
feefad0  OFA: osmtest/osmtest.c: Minor reordering of code in osmtest_write_all_path_recs
807ceec  OFA: opensm/osm_ucast_ftree.c: Fix invalid debug output message
5d17297  OFA: opensm/osm_node_info_rcv.c: Fix multiple switch discovery during a sweep
bf37546  OFA: opensm/osm_port_info_rcv.c: fix physp->need_update configuration
351768e  OFA: opensm: Better handle topology changes in the fabric
4ab1f65  OFA: opensm/osmtest.c: half_world_query when creating inventory file
05e310c  OFA: opensm: change discovery order of switch data
b9976d5  OpenSM: dfsssp - moved paths from one to another VL might be counted multiple times
5f2d1fd  OpenSM: DFSSSP does not find LIDs due to wrong byte order (v2)
fd2a848  OpenSM: dfsssp - avoid unnecessary nested loop in vltable_print for OSM_LOG_INFO
4294df6  OpenSM: dfsssp - change the port traversal for sssp
eb0295d  OpenSM: dfsssp - add support for base/enhanced switch port
40aa3ce  OpenSM: dfsssp ignores differences in the lmc value
5961c9d  OFA: opensm/osm_sa_guidinfo_record.c: duplicated error number (5111)
5658a27  OFA: opensm/osmtest.c: half_world_query when creating inventory file
d0e98d7  opensm/osm_mlnx_ext_port_info_rcv.c: Make error code unique
fa10396  opensm/osm_sa_multipath_record.c: Make sure either none or both ServiceID parameters a
00f82f4  opensm/ib_types.h: Add missing IB_MPR_COMPMASK_SERVICEID define
d204109  opensm/osm_sa_path_record.c: Make sure either none or both ServiceID parameters are su
fbc1fb1  osmtest/osmtest.c: Fix typo in routine name
7a78074  OFA: opensm/osm_node_info.c: fix uninitialized scalar variable
d6329a0  opensm/osm_subnet.c: Fix log print message
fede267  OFA: opensm/osm_port.c: fix memory leak variable "p_port"
74b2c33  opensm/osm_sa_multipath_record.c: Validate required components are indicated
3170be5  opensm/osm_sa_multipath_record.c: Fix commentary typo
e886e9a  osmtest/osmt_multicast.c: Fix IPoIB MC group recognition
bf96820  osmtest/osmt_multicast.c: Fix commentary typo
20a92d8  opensm/osm_subnet.c: Better comments in opensm.conf for default_mcg_mtu/rate
43163c2  opensm/osm_sa_multipath_record.c: Fix seg fault in mpr_rcv_get_apm_paths
2f177a9  opensm/osm_subnet.c: Make generated opensm.conf more consistent
563b62c  opensm/osm_sa_multipath_record.c: Fix commentary typo
5882589  opensm: Support default MC group MTU and rate for dynamic MC group creation
b7d8998  opensm/osm_qos_policy.c: Fix sourc & destination GUID policy check
53e1f55  opensm/osm_ucast_mgr.c: Fix illegal check for p_remote_physp in ucast_mgr_process_port
26bbcb8  OFA: opensm/osm_dump.c: Fix enhanced switch port 0 handling in print_node_report
353a8df  opensm/osm_subnet.c: Cosmetic changes
5f2216b  UFM: fix race condition during sm_state_mgr_send_master_sm_info_req
71cfdd2  MOFED: opensm/osm_sw_info_rcv.c: checking switch mcast_cap was added
28600b2  Add check for physp validity
c4a6100  UFM: fix PortInfoRecord filtering by lid
c76bb06  Revert "Revert "UFM: opensm/osm_mcast_mgr.c: Fixing multicast table size calculation."
939dd87  MOFED: opensm/osm_mcast_tbl.c: Wrong assert placement
12088c1  OFA: opensm: Use IB_PATH_SELECTOR_EXACTLY rather than harded coded constant
6d89091  opensm/osm_subnet.c: Cosmetic formatting change
a147922  opensm/osm_drop_mgr.c: Fix commentary typo
760e617  opensm/osm_sa_informinfo.c: Fix infr_rcv_respond to only copy InformInfo
0f0bdda  opensm/osm_dump.c: Remove incorrect assert
2d00f4d  opensm/osm_sa: Improve SA record response handling (osm_sa_respond)
bcb39a9  MOFED: opensm/osm_subnet.c: Fixing subnet options memory leak
29155e6  OFA: opensm/ib_types.h: Fix some commentary typos
c880bcc  OFA: opensm/osm_sa_mcmember_record.c: Only use scope from MC group in copy_from_create
98e7e01  OFA: opensm/osm_congestion_control.c: Fix error code
c0629d9  OFA: opensm/osm_torus.c: torus routing should fail with VLCap 1 on switch external por
891a29d  UFM: segmentation fault on osm_qos_policy_match_rule_destroy (osm_qos_policy.c)
973aa66  opensm/osm_torus.c: In dump_torus, make sure switch is present before dumping
0259b8b  opensm/osm_sa_mcmember_record.c: Return proper scope for query with valid SA key
7becfa9  MOFED: opensm/osm_congestion_control.c: fix coverity issue fix
26a2ae0  UFM: fix bad condition in assert
8de5920  OFA: opensm/osm_torus.c: Dump torus when OSM_LOG_ROUTING specified
ebeccea  OFA: opensm/torus: Add configuration for max_changes to report
9674b81  OFA: opensm/osm_torus.c: Consolidate some parsing with parse_unsigned
156ed59  UFM: opensm/osm_ucast_tor.c: Use new version of osm_log_is_active
6bba482  opensm/include/complib/cl_packon.h: Fix some commentary typos
e90c764  UFM: fixing faulty asserts in osm_mcast_mgr.c
11b5c20  OFA: opensm/osm_[sm sa]_mad_ctrl.c: Improve unsupported attribute error message
9f04cb9  OFA: Changed #if to #ifdef when using ENABLE_OSM_PERF_MGR_PROFILE
2b75952  MOFED: Add ENABLE_MLNX_OS to osm_config.h.in
7e235d3  OFA: opensm/osm_req.c: Dump DR path when 1107 error
ce3ae01  OFA: opensm/libvendor/osm_vendor_ibumad_sa.c: Uninitialized scalar variable
996f379  MOFED: opensm/osm_opensm.c: fix minor memory leak in sminfo dispatcher shutdown
e9963e8  OFA: opensm: osm_helper.c buffers not initialized fix
df20854  MOFED: opensm/Makefile.am: adding osm_crashd.h header
8dcab2f  OFA: opensm/osm_subnet.c: Removed empty print to syslog while parsing opensm.conf
d160e40  OFA: opensm/osm_ucast_ftree.c: Fix unranked nodes bug in FTree
7c744ad  OFA: opensm/osm_db_files.c: free an array that is not heap allocated
98a1e21  MOFED: opensm/osm_state_mgr.c: fix some error messages in held back switch feature
04623b4  issue: #120450 UFM: opensm/osm_subnet.c: Add experimental tag to unsupport features
b3b049d  MOFED: opensm/osm_sm_mad_ctrl.c: Add locking to alternative DR search
7fbaf93  OFA: DFSSSP: fix a memory leak in dfsssp_build_graph
d7ad836  OFA: opensm/osm_prtn_config.c: Insert autogenerated pkey into MGID for IPoIB
322b567  OFA: opensm/osm_link_mgr.c: Fix sending PortInfo(Set) with AM SMSupportExtendedSpeeds
d790892  OFA: opensm/osm_req.c: Fix M_Key search for the case where SM is running on the switch
02bb913  OFA: opensm/osm_link_mgr.c: Set AM SMSupportExtendedSpeeds bit if port supports ExtPor
6eb87ba  OFA: opensm/osm_link_mgr.c: cosmetic chenges
b6116b8  OFA: opensm/osm_dump.c: Fix output port on SL2VL table for non switch nodes
798a05d  MOFED: opensm/osm_state_mgr.c: Improve state_mgr_is_sm_port_down
5216c89  MOFED: opensm/osm_pkey_mgr.c: Fix pkey index wraparound/reuse
2a589b7  MOFED: opensm/osm_subnet.c: removing unused opts_parse_int32() method
1737cc3  MOFED: opensm/main.c: adding enable_crashd option to OpenSM usage print
2a452ca  MOFED: inclide/opensm/osm_port.h: remove redundant OSM_ASSERTs
b2ea65f  MOFED: Improving Unicast performance
79aee53  MOFED: opensm/osm_sa_path_record.c: fixing SA full world PR deny return value
c8d890e  MOFED: Clean up the weights on the switch ports when finished with guid_routing_order
c5ac004  OFA: opensm/osm_subnet.c: Supress QoS log message each heavy sweep
a12d173  MOFED: opensm/osm_crash.c: SIGSYS signal was added to crash daemon
fdeb96b  MOFED: include/opensm/osm_port.h: Removing redundant ASSERTs
2122cfb  OFA: Fix opensm segfault in osm_ucast_ftree.c
9b82581  Revert "opensm/osm_ucast_ftree: When roots are not connected, update hop count but not
3adc533  OFA: opensm/osm_sm_mad_ctrl.c: Upon receiving trap repress we should decrease qp0_mads
8a0aa17  MOFED: opensm/osm_req.c: fix wrong behavior of req_determine_mkey()
60586b0  Revert "MOFED: opensm/osm_req.c: Remove redundant error message in"
7f944ba  MOFED: opensm/osm_sm_mad_ctrl.c: Block ADR if disabled
062d2f1  OFA: opensm/osm_sa_slvl_record.c: Fix out port for CAs and routers
fd108bb  OFA: opensm/osm_subnet.c: Cosmetic code style changes
078d973  OFA: opensm/osm_torus.c: Fix memory leak
5047870  MOFED: opensm/osm_port.c: Use OSM_ASSERT rather than CL_ASSERT
b924b03  MOFED: opensm/osm_inform_mgr.c: Use OSM_ASSERT rather than CL_ASSERT
ab18059  OFA: opensm/osm_subnet.c : Fix resource leak neighbor parser ("subn_validate_neighbor"
865a127  OFA: opensm/osm_subnet.c : Fix resource leak guid2mkey parser (guid validation functio
dcebb2b  MOFED: opensm/osm_req.c: Remove redundant error message in req_determine_mkey()
f4455ce  MOFED: opensm/osm_inform_mgr.c: fix crash in osm_flush_traps()
f87a502  OFA: opensm/osm_helper.c: Minor simplification to osm_dump_sa_mad_to_buf
9377b7d  UFM: Add guid_routing_order_no_scatter option to opensm.conf
e7f3058  MOFED: Fix crash in osm_pi_rcv_process()
1a83afb  MOFED: Add comments and cosmetic changes to discovered_physp
f392bfc  MOFED: opensm/osm_sa_informinfo.c: Reject event subscription with invalid trap number
a33270e  OFA: opensm/osm_ucast_ftree.c: Eliminate unneeded NULL pointer checks prior to calls t
33e6c1e  MOFED: opensm/osm_subnet.c: Make some newly introduced error codes unique
0185e85  OFA: opensm/osm_subnet.c: Improve error messages in subn_validate_neighbor
15996c4  OFA: opensm/osm_req.c: In req_determine_mkey, add more info when ERR 1107 occurs
78d688e  MOFED: opensm/osm_state_mgr.c: Adding external SM priority to the log.
a4be3e7  OFA: Reconfigure the fabric when receiving HANDOVER/POLLING_TIMEOUT in MASTER state
5195c8e  OFA: revert "opensm: Reset client reregistration when receiving handover"
f6107d5  UFM: opensm/osm_ucast_mgr.c: Fix derefence after NULL check in osm_ucast_mgr_process()
09a16fa  OFA: osmtest/osmt_service.c: fix check for NULL pointer
ee2cb08  OFA: opensm/osm_ucast_ftree.c : fix dereferencing null variable
127a9f6  OFA: opensm/osm_node_info_rcv.c: Use osm_dump_dr_path_v2 instead of osm_dump_dr_path
e2bbfcf  MOFED: opensm/osm_state_mgr.c: opensm-sa.dump is not created
20177f1  UFM: opensm/osm_opensm.c: Fix dereference after null check in osm_update_routing_engin
7161040  OFA: opensm/osm_torus.c: fix to crash in torus_update_osm_vlarb
58ff25c  MOFED: opensm/osm_helper.c: fix incorrect sizeof expression in osm_dump_dr_path_to_buf
1d3a39a  MOFED: opensm/osm_port_info_rcv.c: Don't modify subnet minimal values when PortState D
1c40fc2  OFA: opensm/osm_ucast_ftree.c : fix dereferencing null variable
34bb70e  OFA: osmtest/osmt_service.c : fix resource leak
c5ef3da  OFA: opensm/osm_ucast_cache.c : Fix dereference null return value
c45a2c8  OFA: opensm/st.c : check return value from "new_size"
0cb5fb3  OFA: opensm/osm_ucast_dfsssp.c : Fix resource leak
b377eb1  OFA: opensm/osm_ucast_dfsssp.c : fix dereference null return value
2db936c  OFA: opensm/osm_ucast_dfsssp.c : fix dereference before null check
531311e  OFA: opensm/osm_helper.c : fix logically dead code
8a2551d  OFA: opensm/osm_torus.c: Improve some misconfiguration error messages
7fba28f  MOFED: opensm/osm_port.c: fixing ADR path wrong selection
0d05f1d  OFA: opensm/osm_ucast_ftree.c : fix double free
80d95e7  OFA: opensm/osm_helper.c : fix Out-of-bounds read
fc95eee  OFA: opensm/osm_helper.c : fix dereference after null check
f0ab2ac  MOFED: opensm/osm_lid_mgr.c: Fix bug Unsigned compared against 0
553ca93  OFA: opensm/osm_torus.c: Minor simplification to check_qos_config
ce28761  OFA: opensm: Update doc for changes to torus routing for endport support
e112c83  OFA: opensm/osm_torus.c: Add copyright
6656f9b  OFA: opensm/include/osm_opensm.h: Fix commentary typo
301939b  OFA: opensm/osm_link_mgr.c: Commentary fix
008ba12  MOFED: Avoiding unnecessary ADR recalculations.
b6e79e1  MOFED: opensm/osm_port.c: fixing ADR max_alt_dr_path_retries check
10af855  MOFED: opensm/osm_inform.c: In is_access_permitted, skip pkey check on traps 65 & 67
0ff109d  MOFED: opensm/osm_state_mgr.c: Also flush traps/reports at end of state_mgr_sa_clean
5658722  MOFED: opensm: Change routine name from osm_report_sm_state to osm_log_sm_state
c7e35e5  MOFED: opensm: Change drop_subscriptions to drop_event_subscriptions option
898c2ef  MOFED: opensm/osm_state_mgr.c: In state_mgr_sa_clean, fix drop_subscriptions check
3986b12  MOFED: opensm/osm_state_mgr.c: Reinstate SM port down optimization
ab8b5ab  MOFED: opensm/osm_inform.c: In match_notice, fix endian in trap_type comparison
93c3e75  MOFED: Clean inform mgr_signal functions
1300317  MOFED: Remove osm_report_mgr_signal() function
a5fa91a  MOFED: Removed osm_inform_mgr_signal_continue()
97eb681  MOFED: opensm/osm_inform_mgr.c: Cosmetic changes
ec32dc7  MOFED: In case of trap coalescing don't report the event
afbc5eb  MOFED: opensm/osm_trap_rcv.c: Minimize time holding RW lock for SystemImageGUID change
60d5a6b  MOFED: opensm/osm_state_mgr.c: In state_mgr_sa_clean, flush any queued traps and repor
2bd85c3  MOFED: opensm: Change drop_subscr_on_port_rem to drop_subscriptions
eb0517c  MOFED: opensm/osm_state_mgr.c: In state_mgr_sa_clean, set missing SA dirty bit
18809a2  MOFED: opensm/osm_state_mgr.c: In state_mgr_sa_clean, fix ServiceRecord memory leak
0f707b4  MOFED: opensm/osm_state_mgr.c: In state_mgr_sa_clean, remove InformInfos first
b340f40  MOFED: opensm: Filter out traps for which there are no subscribers
aeb4186  MOFED: opensm/osm_sa_informinfo.c: Reject subscription when LIDRangeBegin > LIDRangeEn
999389e  MOFED: opensm: Don't report duplicated traps (based on TID)
466a9ff  MOFED: opensm/osm_trap_rcv.c: Validate trap number in trap_rcv_process_request
8bd107d  MOFED: opensm/osm_sa_informinfo.c: For a Set(InformInfo), validate trap number
e8b3584  MOFED: opensm/osm_inform_mgr.c: Replace &sm->p_subn->p_osm->sa.p_inform_mgr with short
8ac45c1  MOFED: opensm/osm_sa_informinfo.c: On InformInfo set, validate LIDRangeBegin/End
8462b56  MOFED: opensm: Implement SA report limiting feature
faf9639  MOFED: opensm: Separate inform/report into separate process
569d30f  MOFED: opensm: Add counter for SA reports sent and instrument sa_mads_outstanding coun
970a7e4  MOFED: opensm/osm_sa_mad_ctrl.c: In sa_mad_ctrl_send_err_callback, log notice info whe
b88fd2c  MOFED: opensm/osm_sm_state_mgr.c: Fix comment
95a1d32  MOFED: opensm/include/opensm/osm_vl15intf.h: Fix commentary cut 'n paste error
0fec33e  MOFED: opensm/complib/cl_fleximap.h: Cosmetic formatting change
1a0d55a  MOFED: opensm/libvendor/osm_vendor_ibumad.c: Commentary change
d0dc705  MOFED: When choosing alternative DR, use physp_discovered and not ports' discovery_cou
a707f36  MOFED: opensm/osm_drop_mgr.c: Fix access to out of bound port
ad92817  OFA: opensm/osm_db_pack.c: Removed uneeded asserts
579ea5a  MOFED: Initialize new ports with port_state = Down and phys_port_state = Disabled
cc00046  MOFED: Add physp_p discovery count support
a61212d  MOFED: Combine discovery_port reset and alt_dr_path_num reset in one iteration
aeecdcd  MOFED: libvendor/osm_vendor_ibumad.c: agents struct synchronization.
5dce3f4  OFA: opensm/osm_lid_mgr.c: preventing the possibility of 0x0000 LID entries in guid2li
5a9ee8e  OFA: opensm/osm_ucast_updn.c: missing ERR index was added.
92e41b0  OFA: opensm/osm_ucast_updn.c: improving root switch misconfiguration logging.
6df30e7  UFM: opensm.conf: fixing fdr10 option remarks.
d6180b0  OFA: complib: added trylock to cl_spinlock
2fc254b  OFA: opensm/osm_log: added log function to print to stream
680ec7c  OFA: opensm/osm_ucast_mgr.c: reduce ERR 3A04 messages in the log
67ed3ce  UFM: opensm/osm_ucast_tor_init.c: fix compilation warnings in osm_ucast_tor_init.c:
6abb083  OFA osm_dump.c: typo fix in dump_lid_matrix
dd64e65  OFA: opensm/osm_subnet.c: Add missing file names to module_name_str
fd6953a  UFM: Add per module logging for TARA
060cac8  UFM: Add osm_congestion_control.c to per module logging support
e75c4c4  OFA: opensm/libvendor/osm_vendor_ibumad.c: Eliminate redundant check
4803d04  OFA: opensm: complib file parser updated to skip problematic lines
b124d00  MOFED: Replace the DR in case of transaction error.
18b3242  MOFED: Add function: osm_dump_dr_path_as_buf providing DR path display as string
834668a  MOFED: opensm: add in service upgrade support (held back switches)
5ab50ff  OFA: opensm/osm_subnet.c: Use snprintf instead of sprintf
4eda850  OFA: opensm/osm_pkey.c: find common pkey bug fix
aabdaae  MOFED: Remove hosts that connected to faulty switch
7083a08  MOFED: Fix endless loop in osm_guid_mgr_process
5dd0b31  opensm/osm_vl15intf.c: Fix commentary typo
b40ada4  opensm/osm_trap_rcv.c: Eliminate unneeded trap_rcv_process_response routine
58fc5ac  opensm/complib/cl_atomic_osd.h: Fix long standing bug in cl_atomic_sub
d9639f0  opensm.spec.in: Improve portability
46eb77f  Make it possible to enable opensm with chkconfig
6dbab6d  Add command-line option --pidfile
bda929d  opensm/osm_torus.c: Cosmetic formatting change
6dd9c74  opensm/osm_ucast_updn.c: Add error codes to a couple of log messages
069343b  Correct option names in opensm man page
a607365  opensm/osm_log.h: fix function documentation
f9088f4  opensm/osm_sa.h: Cosmetic commentary change
87d5ed9  opensm/ib_types.h: Commentary and cosmetic formatting change
231888f  opensm/complib/cl_spinlock.h: Remove some unimplemented routines
31e28aa  opensm/osm_torus.c: Add error code to error log message
e5248ab  OFA: libvendor/osm_vendor_ibumad.c: call error callback if MAD validation failed
83a557d  OFA: opensm/osm_subnet.c: Only parameters that marked with can_update flag should be u
44c5b16  opensm: osm_pkey: Remove unused variables
bdd5277  opensm: Manage ports that do not support congestion control
816da0a  opensm/osm_vendor_ibumad.c: Add management class to error log message
bed3548  OFA: libvendor/osm_vendor_ibumad.c: fix mad validation in case of multipath record res
13f5e55  opensm: Add .gitignore
815660f  opensm/osm_port_info_rcv.c: use PF() hint on fatal conditions
21ea997  opensm/osm_port_info_rcv.c: check received local_port_num
690c39c  opensm/libvendor/osm_vendor_ibumad.c: validate response MAD properties
c366bbe  opensm/libvendor/osm_vendor_ibumad.c:rename "mad" to "p_mad" to indicate pointer
8a9df15  opensm/libvendor/osm_vendor_ibumad_sa.c: use wrapper function instead of direct access
f7e17aa  opensm/configure.in: check that compiler supports __builtin_expect()
ff51a12  osmtest/osmt_multicast.c: Fix 02BF error
b69a641  UFM: opensm/osm_mcast_mgr.c: Fix referencing null pointer in mcast_mgr_subdivide_const
763186f  UFM: opensm/osm_mcast_mgr.c: Referncing a pointer that might be null "p_sw"
b43a851  OFA: opensm/osm_trap_rcv.c: In trap_rcv_process_request, change locking strategy
82e8739  OFA: osmtest/osmtest.c: Close file before exit function osmtest_create_inventory_file
3cffe7d  OFA: opensm/osm_subnet.c: Use sprintf can cause buffer overflow
da2edca  UFM: Incorect memset sizeof in function osm_mcast_tbl_init
ceff181  OFA: opensm/osm[_mlnx_ext]_port_info.c: Use standard SMP status routine
e92a992  OFA: opensm/osm_sa_informinfo.c: Add missing assert in validate_ports_access_rights
1cbd8af  OFA: libvendor/osm_pkt_randomizer.c: Fix broken compilation with vendor sim
a7955aa  opensm/osm_helper.c: Add some missing new lines to log message output
74737a5  OFA: osmtest/osmtest.c: Fix resource leak in osmtest_parse_node()
e338403  OFA: osmtest/osmtest.c: Fix resource leak in osmtest_parse_path()
fc78cbc  OFA: osmtest/osmtest.c: Fix resource leak in osmtest_parse_port()
51efcf1  OFA: opensm/osm_sa_mcmember_record.c : Fix use pointer after free
1512f0d  opensm/osm_multicast.c: Fix pointer use after free
f7bf747  opensm/osm_ucast_lash.c: Fix error in the creation of LASH
2674570  OFA: opensm/osm_db_files.c : Fix pointer use after free
f669b04  OFA: Fix missing close to file descriptor
13ccffa  OFA: opensm: fix possible double free in osm_ucast_ftree.c
40e8d79  OFA: Fix for segfault in case of duplicate port GUIDs.
d72b58a  MOFED: Fix mlnx-os configure option definition
ceee82d  OFA: fix locking in trap_rcv_process_request()
00d9b30  MOFED: opensm/osm_pkey_mgr.c: Preserve index 0 for full default pkey
b2118dd  MOFED: opensm/osm_vendor_ibumad.c: Better match table eviction strategy
b08a7a3  MOFED: event API fixed to compile with g++
8859f29  OFA: fix default cc_max_outstanding_mads assignment
c070b71  MOFED: Added enhanced port_order per chassis sellection for torus2qos
f983ddc  MOFED: clear first time sweep even after subnet error
532d5ea  MOFED: Fix compilation warnings for 32bit OS
1158b04  MOFED: Fix segfault in osm_mgrp_delete_port()
b2e77ce  MOFED: Fix response to GetSMInfo
49717a4  MOFED: Fixing SMInfo response sending delayed due to multiple timeouts in the fabric.
a46b33e  opensm: fix crash in DFSSSP routing engine on reroute
ba36f81  opensm/perfmgr/console: add 'pm sweep'
e283ca6  opensm: update shared library versions
e7d4574  opensm/perfmgr: update new error codes to '54' prefix
----------------------------------------------------------------------
Before 4.1.5
----------------------------------------------------------------------
740c22b opensm/include/opensm/osm_log.h: Fix commentary cut 'n paste error
13ebee4 opensm/osm_subnet.c: Fixed ftree/updn configuration failure when
	root_guid_file points to non-existing file
8a9d267 opensm: fix locking in osm_guid_mgr_process
4d682bb opensm: Fix pthread_create() return value checks
63c6609 opensm/osm_port.h: Fix commentary typo
3e4e00b opensm/osmtest: fix osmtest ignores timeout parameter
68b1d92 opensm: perfmgr fix dump_counters
9d16039 opensm/perfmgr: fix endian conversion of PortCounters
324f269 opensm/osm_sa_inform_info.c: Fix some error log messages
1d5213a opensm/osm_madw.h: Fix a couple of cut 'n paste commentary errors
3fc662d opensm/torus-2QoS: Fix some typos in documentation
048c66e Fixed Multicast precreation parsing
086d611 Fixes in SL2VL table distribution algorithm
7d9f0c9 Fix deadlock between sminfo_set_req() and osm_sm_state_mgr()
69741e6 Fix base port0 sl2vl mapping optimization
bcda38e Fix SL2VL configuration
7e39542 Fix pre-creation of MC group with MGID containing P_Key
20e1a46 opensm/osm_congestion_control.c: Fix initialization hex string
a59072d opensm/osm_congestion_control.c: Skip TID 0 on 32 bit wraparound
7d18662 osmtest/osmtest.c: Fix permission
e7d4574 opensm/perfmgr: update new error codes to '54' prefix
e17dae6 opensm/osm_sa_portinfo_record.c: In pir_rcv_new_pir, fix switch port 0 physp
93b2f56 libvendor/osm_vendor_ibumad.c: fix unused-but-set warning
cda58af fixed unsused-but-set warning for DEBUG variables
e881d0e opensm/osmtest/osmt_multicast.: Fix typo in log message
203f3c6 opensm/osm_switch.c: Fix compile warnings
67c2538 opensm/man/opensm.8.in: Fix some typos
7338efc opensm/osmtest/osmtest.c: Fix endian in some log messages
67063ca opensm/libvendor: Fix compile warnings on 64 bit machines when building --with-osmv=sim
a8c209c opensm: fixed port order configuration in torus routing engine
7359cfc opensm/osm_ucast_mgr.c: Fix some issues found by Coverity
0150ab9 opensm/osm_ucast_ftree.c: Fix some issues found by Coverity
267a08f opensm/osm_pkey_mgr.c: Fix cast
12f772d opensm: Fix some OSM_SIGNAL and OSM_SM_SIGNAL numbering
c29c4f1 opensm/osm_sa_service_record.c: Fix minor memory leak
f936f8b opensm: fix strtoull error handling
0292ae2 opensm: fixed segfault when enable qos on fabric with no switches
619fa64 osmtest/osmt_multicast.c: Fixed another insufficient component case
1618803 opensm/osm_sa.c: Fix commentary typo
c98fec9 opensm/osm_subnet.c: Fix description of max_msg_fifo_timeout
0a3839f osmtest/osmtest.c: Fix trap flow not implemented log message
f08479a opensm/osm_base.h: Fix a commentary typo
ae966f6 osmtest/osmt_multicast.c: Fix some typos
8a3b5b9 osmtest/osmt_multicast.c: Fixed some error codes in OSM_LOG messages
c90953d osmtest/osmt_multicast.c: Fixed a couple of typos in OSM_LOG messages
f7f1ead opensm/osm_sa_mcmember_record.c: Fix handling of invalid PKey
65d3e4f opensm/osm_pkey_mgr.c: Fix commentary typo
34d61cc opensm/perfmgr: fix overflow processing
77d79b4 opensm: fixed potential null variable dereferencing in libvendor
350c6e4 opensm: fixed potential memory leak in osm_ucast_ftree()
e206872 opensm: Fixed debug message in osm_vendor_send()
1b3e93e opensm: fixed sizeof of pointer allocation in osm_ucast_lash()
f0b915a Fix SANodeRecord.nodeInfo.localPortNum
3332658 opensm: fixed memory leak in multicast spanning tree calculation
e4525b1 opensm: fixed indentation and decreased verbosity of RMPP length message
10ac4c1 Fix compile warning introduced by patch "fixed getline pointer allocation free in osm_console_io"
bf23d7c opensm: fixed getline pointer allocation free in osm_console_io
54b1583 Makefile: ChangeLog and version generation script path fix
4911e0b performance-manager-HOWTO.txt: Indicate master state
86ccaa4 opensm/osm_pkey_mgr.c: Fix pkey endian in log message
b79b079 opensm.8.in: Add mention of backing documentation for QoS policy
	file and performance manager
b4d92af opensm/osm_perfmgr.c: Eliminate duplicated error number
a10b57a opensm/osm_ucast_ftree.c: lids are always handled in host order
44273a2 opensm/osm_ucast_ftree.c: fixing bug in indexing
5cd98f7 Fix further bugs around console closure and clean up code.
6b34339 opensm/osm_opensm.c: add newline to log message
68c241c send trap144 when local priority is higher than master priority
6462999 opensm/osm_inform.c: In __osm_send_report, make sure p_report_madw
	valid before using
9b8561a opensm/console: Fixed osm_console poll to handle POLLHUP
91d0700 osm_vendor_ibumad.c: In clear_madw, fix tid endian in message
5a5136b osm_switch.h : Fixed wrong comment about return value of
	osm_switch_set_hops
c1ec8c0 osm_ucast_ftree.c: Removed useless initialization on switch indexes
418d01f opensm/osm_helper.c: use single buffer in osm_dump_dr_smp()
2c9153c opensm/osm_helper.c: consolidate dr path printing code
048c447 opensm/osm_helper.c: return then log is inactive
dd3ef0c opensm: Return error status when cl_disp_register fails
0143bf7 opensm/osm_perfmgr.c: Improve assert in osm_pc_rcv_process
6622504 osm_perfmgr.c: In osm_perfmgr_shutdown, add missing cl_disp_unregister
7b66dee opensm: remove unneeded anymore physp initializations
f11274a opensm/partition-config.txt: Update for defmember feature
d240e7d opensm/osm_sm_state_mgr.c: Remove unneeded return statement
898fb8c opensm: Improve some snprintf uses
6820e63 opensm/osm_sa_link_record.c: improve get_base_lid()
64c8d31 opensm: initialize all switch ports
555fae8 opensm/sweep: add log message before lid assignment
8e22307 opensm/console: Enhance perfmgr print_counters for better nodenames
b9721a1 opensm/osm_console.c: Improve perfmgr print_counters error message
4d8dc72 opensm/osm_inform.c: Fix sense of zero GID compare in __match_inf_rec
a98dd82 opensm/main.c: remove enable_stack_dump() call
db6d51e opensm/osm_subnet: fix crash in qos string config parameters reloading
e5111c8 opensm: proper config file rescan
e5295b2 opensm: pre-scan command line for config file option
e2f549e opensm/osm_console.c: Eliminate some extraneous parentheses
0a265dc opensm/console: dump_portguid - don't duplicate matched guids
540fefb opensm/console: dump_portguid command fixes
d96202c opensm/osm_console.c: Add missing command in help_perfmgr
ae1bd3c opensm/osm_helper.c: Add port counters to __osm_disp_msg_str
1d38b31 opensm/osm_ucast_mgr.c: Add error numbers for some OSM_LOG prin
156c749 opensm: fix structure definition for trap 257-258
5c09f4a opensm/osm_state_mgr.c: small bug in scanning lid table
72a2fa2 opensm/osm_sa.c: fixing SA MAD dump
539a4d3 opensm/osm_ucast_ftree.c Fixed bad init value for down port index
6690833 opensm/ftree: simplify root guids setup.
90e3291 opensm/ftree: cleanup ftree_sw_tbl_element_t use
c07d245 opensm/qos_config: no invalid option message on default values
b382ad8 opensm: avoid memory leaks on config parameters reloading
45f57ce opensm/osm_ucast_ftree.c: Fixed bug on index port incrementation
3d618aa opensm/osm_subnet.c: break matching when config parameter already found
44d98e3 opensm/osm_subnet.c: clean_val() remove trailing quotation
173010a opensm/doc/perf-manager-arch.txt: Fix some commentary typos
83bf6c5 opensm/osm_subnet.c fix parse functions for big endian machines
6b9a1e9 opensm/PerfMgr: Primarily fix enhanced switch port 0 perf manager
	operation
4f79a17 opensm/osm_perfmgr.c: In osm_perfmgr_init, eliminate memory leak
	on error
22da81f opensm/osm_ucast_ftree.c: fix full topology dump
aa25fcb opensm/osm_port_info_rcv.c: don't clear sw->need_update if port 0
	is active
003bd4b opensm/osm_subnet.c Fix memory leak for QOS string parameters.
9cbbab2 opensm/opensm.spec: fix event plugin config options
996e8f6 OpenSM: update osmeventplugin example for the new TRAP event.
67f4c07 opensm/lash: simplify some memory allocations
3e6bcdb opensm/lash: fix memory leaks
3ff97b9 opensm/vendor: save some stack memory
ccc7621 opensm/osm_ucast_ftree.c: fixing errors in comments
1a802b3 Corrected incoherency in __osm_ftree_fabric_route_to_non_cns comments
85a7e54 opensm/osm_sm.c: fix MC group creation in race condition
aad1af2 opensm/osm_trap_rcv.c: Improvements in log_trap_info()
f619d67 opensm/osm_trap_rcv.c: Minor reorganization of trap_rcv_process_request
084335b opensm/link_mgr: verify port's lid
d525931 opensm/osm_vendor_ibumad: Use OSM_UMAD_MAX_AGENTS rather than
	UMAD_CA_MAX_AGENTS
f342c62 opensm/osm_sa.c: don't ignore failure in osm_mgrp_add_port()
587fda4 osmtest/osmt_multicast.c: fix strict aliasing breakage warning
6931f3e opensm: make subnet's max mlid update implementation independent
30f1acd osm_ucast_ftree.c missing reset of ca_ports
ac04779 opensm: fix LFT allocation size
a7838d0 opensm/osm_ucast_cache: reduce OSM_LOG_INFO debug printouts
c027335 opensm/osm_ucast_updn.c: Further reduction in cas_per_sw allocation
e8ee292 opensm/opensm/osm_subnet.c: adjust buffer to ensure a '\n' is printed
84d9830 opensm/osm_ucast_updn.c: Reduce temporary allocation of cas_per_sw
347ad64 opensm/ib_types.h: Mask off client rereg bit in set_client_rereg
c2ab189 opensm/osm_state_mgr.c: in cleanup_switch() check only relevant
	LFT part
40c93d3 use transportable constant attributes
c8fa71a osmtest -code cleanup - use strncasecmp()
770704a opensm/osm_mcast_mgr.c: In mcast_mgr_set_mft_block, fix node GUID
	in log message
3d20f82 opensm/osm_sa_path_record.c: separate router guid resolution code
27ea3c8 opensm: fix gcc-4.4.1 warnings
c88bfd3 opensm/osm_lid_mgr.c: Fix typo in OSM_LOG message
a9ea08c opensm/osm_mesh.c: Add dump_mesh routine at OSM_LOG_DEBUG level
bc2a61e C++ style coding does not compile
6647600 opensm: remove meanless 'const' keywords in APIs
323a74f opensm/osm_qos_parser_y.y: fix endless loop
0121a81 opensm: fix endless looping in mcast_mgr
696c022 opensm: fix some obvious -Wsign-compare warnings
b91e3c3 opensm/osm_get_port_by_lid(): don't bother with lmc
ca582df opensm/osm_get_port_by_lid(): speedup a port lookup
fd846ee opensm/osm_mesh.c: simplify compare_switches() function
fe20080 osm_sa.c - void * arithmetic causes problems
220130f osm_helper.c use explicit value for struct init
0168ece use standard varargs syntax in macro OSM_LOG()
180b335 update functions to match .h prototypes
9240ef4 opensm/osm_ucast_lash: fix use after free bug
6f1a21a opensm: osm_get_port_by_lid() helper
c9e2818 opensm/osm_sa_path_record.c: validate multicast membership
225dcf5 opensm/osm_mesh.c: Remove edges in lash matrix
4dd928b opensm/osm_sa_mcmember_record.c: clean uninitialized variable use
c48f0bc opensm/osm_perfmgr_db.c: Fix memory leak of db nodes
82d3585 opensm/osm_notice.c: move logging code to separate function
9557f60 opensm/osm_inform.c: For traps 64-67, use GID from DataDetails in
	log message
e2e78d9 opensm/opensm.8.in: Indicate default rule for Default partition
08c5beb opensm/osm_sa_node_record.c: dump NodeInfo with debug verbosity
1fe88f0 opensm/multicast: merge mcm_port and mcm_info
ba75747 opensm/multicast: consolidate port addition/removing code
5e61ab8 opensm: port object reference in mcm ports list
5c5dacf opensm: fix uninitialized return value in osm_sm_mcgrp_leave()
7cfe18d osm_ucast_ftree.c: Removed reverse_hop parameters from
	fabric_route_upgoing_by_going_down
aa7fb47 opensm/multicast: kill mc group to_be_deleted flag
a4910fe opensm/osm_mcast_mgr.c: multicast routing by mlid - renaming
1d14060 opensm/multicast: remove change id tracking
5a84951 opensm: use mgrp pointer as osm_sm_mcgrp_join/leave() parameter
d8e3ff5 opensm: use mgrp pointer in port mcm_info
0631cd3 opensm doc: Indicated limited (rather than partial) partition
	membership
1010535 opensm/osm_ucast_lash.c: In lash_core, return status -1 for all errors
942e20f opensm/osm_helper.c: Add SM priority changed into trap 144 description
2372999 opensm/osm_ucast_mgr: better lft setup
e268b32 opensm/osm_helper.c: Only change method when > rather than >=
9309e8c complib/cl_event.c: change nanosec var type long
d93b126 opensm/complib: account for nsec overflow in timeout values
ef4c8ac opensm/osm_qos_policy.c: matching PR query to QoS level with pkey
c93b58b opensm: fixing some data types in osm_req_get/set
2b89177 opensm/libvendor/osm_vendor_ibumad.c: Handle umad_alloc failure in
	osm_vendor_get
2cba163 opensm/osm_helper.c: In osm_dump_dr_smp, fix endian of status
47397e3 opensm/osm_sm_mad_ctrl.c: Fix endian of status in error message
e83b7ca opensm/osm_mesh.c: Reorder switches for lash
9256239 opensm/osm_trap_rcv.c: Validate trap is 144 before checking for
	NodeDescription changed
011d9ca opensm/osm_ucast_lash.c: Handle calloc failure in generate_cdg_for_sp
59964d7 opensm: fixing handling of opt.max_wire_smps
f4e3cd0 opensm/osm_ucast_lash.c: Directly call calloc/free rather than
	create/delete_cdg
5a208bd opensm/osm_ucast_lash.c: Added error numbers to some error log messages
3b80d10 opensm/osm_helper.c: fix printing trap 258 details
f682fe0 opensm: do not configure MFTs when mcast support is disabled
cc42095 opensm/osm_sm_mad_ctrl.c: In sm_mad_ctrl_send_err_cb, indicate
	failed attribute
aebf215 opensm/osm_ucast_lash.c: Remove osm_mesh_node_delete call from
	switch_delete
1ef4694 opensm/osm_path.h: In osm_dr_path_init, only copy needed part of path
c594a2d opensm: osm_dr_path_extend can fail due to invalid hop count
46e5668 opensm/osm_lash: Fix use after free problem in osm_mesh_node_delete
81841dc opensm/osm_ucast_lash.c: Handle malloc failures better
2801203 opensm: remove extra "0x" from debug message.
88821d2 opensm/main.c: Display SMSL when specified
f814dcd opensm/osm_subnet.c: Format lash_start_vl consistent with other
	uint8 items
66669c9 opensm/main.c: Display LASH start VL when specified
31bb0a7 opensm/osm_mcst_mgr.c: check number of switches only once
75e672c opensm: find MC group by MGID using fleximap
2b7260d Clarify the syntax of the hop_weights_file
e6f0070 opensm/osm_mesh.c: Improve VL utilization
27497a0 opensm/osm_ucast_ftree.c Fix assert comparing number of CAs to CN ports
3b98131 opensm/osm_qos_policy.c: Use proper size in malloc in
	osm_qos_policy_vlarb_scope_create
e6f367d opensm/osm_ucast_ftree.c: Made error numbers unique in some log
	messages
83261a8 osm_ucast_ftree.c Count number of hops instead of calculating it
7bdf4ff opensm/osm_sa_(path multipath)_record.c: Fix typo in a couple of
	log messages
0f8ed87 opensm/osm_ucast_mgr.c: Add error numbers to some error log messages
0b5ccb4 complib/Makefile.am: prevent file duplications
e0b8ec9 opensm/osm_sminfo_rcv.c: clean type of smi_rcv_process_get_sm()
4d01005 opensm: sweep component processors return status value
6ad8d78 opensm/libvendor/osm_vendor_(ibumad mlx)_sa.c: Handle malloc
	failure in __osmv_send_sa_req
cf97ebf opensm/osm_ucast_lash.(h c): Replace memory allocation by array
957461c opensm/osm_sa.c add attribute and component mask to error message
5d339a1 osm_dump.c dump port if lft is set up
518083d osm_port.c: check if op_vls = 0 before max_op_vls comparison
b6964cb opensm/osm_port.c: Change log level of Invalid OP_VLS 0 message
	to VERBOSE
b27568c opensm/PerfMgr: Reduce host name length
bc495c0 opensm/osm_lid_mgr.c bug in opensm LID assignment
5a466fd opensm/osm_perfmgr_db.c: Remove unneeded initialization in
	perfmgr_db_print_by_name
57cf328 opensm/osm_ucast_ftree.c Increase the size of the hop table
8323cf1 opensm/PerfMgr: Remove some underbars from internal names
65b1c15 opensm: Changes to spec and make files for updated release notes
cd226c7 OpenSM: include/vendor/osm_vendor.h - Replaced #elif with no
	condition by #else
9f8bd4a management: Fixed custom_release in SPEC files
c0b8207 opensm/PerfMgr: Change redir_tbl_size to num_ports for better clarity
596bb08 opensm/osm_sa.c: check for SA DB file only if requested
2f2bd4e opensm SA DB dump/restore: load SA DB only once
4abcbf2 opensm: Added print_desc to various log messages
5e3d235 opensm/osm_vendor_ibumad.c: Move error info into single message
8e5ca10 opensm/libvendor//osm_vendor_ibumad_sa.c: uninitialized fields
d13c2b6 opensm/osm_sm_mad_ctrl.c Changes to some error messages
f79d315 opensm/osm_sm_mad_ctrl.c: Add missing call to return mad to mad pool
150a9b1 opensm/osm_sa_mcmember_record.c: print mcast join/create failures in
	VERBOSE instead of DEBUG level
9b7882a opensm/osm_vendor_ibumad.c: Change LID format to decimal in log message
5256c43 opensm/osm_vendor_mlx: fix compilation error
93db10d opensm/osm_vendor_mlx_txn.c: eliminate bunch of compilation warnings
156fdc1 opensm/osm_helper.c Log format changes
7a55434 opensm/osm_ucast_ftree.c Changed log level
a1694de opensm/osm_state_mgr.c Added more info to some error messages
fdec20a opensm/osm_trap_rcv.c: Eliminate heavy sweep on receipt of trap 145
13a32a7 opensm - standardize on a single Windows #define - take #2
b236a10 opensm/osm_db_files.c: kill useless malloc() castings
4ba0c26 opensm/osm_db_files.c: add '/' path delimited
e3b98a5 opensm/osm_sm_mad_ctrl.c: Fix qp0_mads_accounting
dbbe5b3 opensm/osm_subnet.c: fixing bug in dumping options file
f22856a opensm/osm_ucast_mgr.c: fix memory leak
0d5f0b6 opensm: osm_get_mgrp_by_mgid() helper
e3c044a osm_sa_mcmember_record.c: pass MCM Record data to mlid allocator
3dda2dc opensm/osm_sa_member_record.c: mlid independent MGID generator
1f95a3c opensm/osm_sa_mcmember_record.c: move mgid allocation code
b78add1 complib: replace intn_t types by C99 intptr_t
a864fd3 osmtest/osmt_mtl_regular_qp.c: cleaning uintn_t use
9e01318 opensm/osm_console.c: make const functions
f8c4c3e opensm/osm_mgrp_new(): add subnet db insertion
80da047 complib/fleximap: make compar callback to return int
bf7fe2d opensm: cleanup intn_t uses
0862bba opensm/main.c: opensm cannot be killed while asking for port guid
2b70193 opensm/complib: bug in cl_list_insert_array_head/tail functions
4764199 opensm - use C99 transportable data type for pointer storage
a9c326c opensm/osm_state_mgr.c: do not probe remote side of port 0
4945706 opensm/osm_mcast_mgr.c: fix return value on alloc_mfts() failures
8312a24 OpenSM: Fix unused variable compiler warning.
ab8f0a3 opensm/partition: keep multicast group pointer
a817430 opensm: Only clear SMP beyond end of PortInfo attribute
52fb6f2 opensm/osm_switch.h: Remove dead osm_switch_get_physp_ptr routine
aa6d932 opensm/osm_mcast_tbl.c: In osm_mcast_tbl_clear_mlid, use memset to
	clear port mask entry
2ad846b opensm/osm_trap_rcv.c: use source_lid and port_num for logging
b9d7756 opensm/osm_mcast_tbl: Fix size of port mask table array
11c0a9b opensm/main.c: Use strtoul rather than strtol for parsing transaction
	timeout
0608af9 opensm/osm_sm_mad_ctrl.c: In sm_mad_ctrl_send_err_cb, revert setting
	of init failure on QoS initialization failures
c6b4d4a opensm/osm_vendor_ibumad.c: Add transaction ID to osm_vendor_send
	log message
520af84 opensm/osm_sa_path_record.c: don't set dgid pointer for local subnet
4a878fb opensm/osm_mcast_mgr.c: fix osm_mcast_mgr_compute_max_hops for
	managed switch
7c48590 opensm/osm_log.c: add OSM_LOG_SYS to default flags
89f7cb6 opensm/osm_lid_mgr: use 'first_time_master_sweep' flag
0cb7fab opensm: conversion to osm_get_port_by_lid()
9d14fc0 opensm/osm_lid_mgr.c: fix memory leak
c364aa1 opensm/opensm.init.in: fix install warning on SLES11
1010c9c opensm/osm_sa_path_record.c: livelock in pr_rcv_get_path_parms
4b2cd5e opensm/vendor: fix portguids array size
52bf5b2 opensm/osm_subnet.c: fixing some options to not "hot-swappable"
8900da0 opensm/osm_subnet.{c,h}: passing options to the event plugins
051c57f Delete port only after GID OUT trap was sent
d4ebf7e opensm/complib/cl_passivelock.h: remove unneeded casting
8fdb17c opensm/complib/cl_types.h: convert cl_status_t to int
fd7fb1e opensm/osm_mcast_mgr.c: preserve root switch calculation functionality
fcb0f3a opensm/osm_mcast_mgr.c: code simplifications
444f559 opensm/osm_mcast_mgr.c: fix bug in MC root switch calculation
041ebcb opensm/osm_mcast_mgr.c: remove redundant casting
3717f53 opensm/osm_sa_pkey_record.c: optimize port selection logic
48352be opensm/osm_mcast_mgr.c: fix memory leak
f3cf83f opensm/complib/cl_ptr_vector.c: fix bug/compiler warning
27c8ebd opensm/osm_subnet.h: remove redundant function definition
f296938 opensm/osm_vl_arb_rcv.c: fix double mutex release bug
00bc48e opensm/osm_port_info_rcv.c: fix compilation warning
8823800 opensm/osm_sa.{c,h}: osm_sa_db_file_dump() return values
f4581f3 opensm/osm_qos.c: Fix typo in OSM_LOG message
e3c790a opensm/osm_update_node_desc(): minor prototype improvement
3cc68cb opensm/osm_vl_arb_rcv.c: Dump table after validating block number
7dbb96e opensm SA DB: dump only if modified
fa2106d opensm/osm_sa_infrominfo.c: fixes and simplifications in lid range check
051a1dd opensm/osm_qos.c: split switch external and end ports setup
a6c0189 opensm/osm_qos.c: merge SL2VL mapping capability check
3fe8efe opensm/osm_slvl_map_rcv.c: verify port number values received from
	network
88c372c opensm/osm_slvl_map_rcv.c: fix mutex double release bug
d282093 opensm/osm_slvl_map_rcv.c: fix port parsing on BE machine
8e9dbd3 osm_sa_path_record.c: use PR DGID by reference
7c9d375 osm_sa_path_record.c: separate mutlicast processing code
cb2d18e opensm/osm_sa_path_record.c: MGID must be specified explicitly
bd3932b opensm/osm_mcast_mgr.c: strip log-only variable
9d93de3 opensm/osm_pkey_mgr.c: Eliminate unneeded parameter from pkey_mgr_get_physp_max_blocks API
5f49472 opensm/include/osm_helper.h: Eliminate some duplicate declarations
e8ddcd4 opensm/osm_opensm.c: no report when SM is exiting
77ce7c8 complib/cl_timer: remove not needed timeval initializations
490aae2 opensm/osm_helper.c: Add some missing message names to disp_msg_str
d678a21 opensm: Modify OSM_LOG_SYS messages
4cfb481 opensm: Fix wrong messages in MC delete flow
5b82f92 opensm/osm_req.c: In osm_send_trap144, eliminate redundant clear of m_key in smp
9bf64dc opensm/osm_qos.c: Eliminate unneeded endport SL to VL setup
34b536c opensm/osm_sa_path_record.c: adding wrapper for pr_rcv_get_path_parms()
237b5d1 opensm/osm_mcast_mgr.c: Only route MLIDs with more than 1 member
a72db14 opensm/osm_trap_rcv.c: No need for heavy sweep when just NodeDescription changes
ea9a768 opensm/osmtest.c: fix bug in getting attr offset
a3dec3a iba/ib_types.h: remove assertion in ib_get_attr_offset()
6bc032a return no path when path does not exist
1592ae9 opensm: Better handling of non responsive SMAs
a69f01b opensm/osm_perfmgr.c: Remove unnecessary lock reference from Performance Manager object
167ade2 opensm: fixing compilation issues in some header files
e1c253e opensm/qos.c: Revert port ranges for calls to sl2vl_update_table().
0689f49 opensm/libvendor Reduce stack consumption
59056c7 opensm - address windows env issues
ff14200 opensm/osm_sa_multipath_record.c: livelock in mpr_rcv_get_path_parms
3f23d83 opensm/osm_sa_path_record.c: Add error code to newly added log message
7fc6cd3 ib_types.h add debug assert
4fd4ca3 osmtest - use helper function
6fdc20a opensm/complib use portable macro syntax
bf23d7c opensm: fixed getline pointer allocation free in osm_console_io
74867c7 Add node/port/qos information to some error messages
31a617d replace (long*)(long) casting with transportable data type (uintptr_t)
8da7521 opensm/st.c: fix potential core dumps
6a30911 opensm/osm_console.c: fix memory and file descriptor leaks
696f12c opensm/osm_qos_parser_y.y: fixing bunch of memory leaks on invalid values
3a7b97c opensm/osm_ucast_file.c: closing file descriptor in error path
b4575c5 opensm/osm_pkey_mgr.c: fixing small memory leak
dc0695f opensm/osm_ucast_lash.c: small bug in calculating allocated size
3c9604b opensm/osm_ucast_ftree.c: fixing another memory leak at error path
4460990 opensm/osm_ucast_ftree.c: fix small memory leak in error path
857cd6c opensm/osm_trap_rcv.c: fix possible core dump
b74bef5 opensm/osm_trap_rcv.c: No need to check for sweep for trap 145
81dade3 opensm/osm_ucast_ftree: When roots are not connected, update hop count but not lft
acf2337 osmtest/osmt_service.c: In osmt_run_service_records_flow, add missing status
6db7f4a opensm/osm_state_mgr.c: Don't signal DISCOVER to SM state machine when already DISCOVERING
28693c5 Fix autotools to include the necessary M4 files
c1c8730 osm_vl15intf.c: fixing use-after-free coredump
3353f9b opensm/osm_helper.c: use ARR_SIZE macro instead of hardcoded values
2da9849 osmtest/osmt_slvl_vl_arb.c: handling fopen() failure
f48d5ea opensm/osm_db_files.c: malloc() return value run-time check
ea3ef82 opensm/osm_db_files.c: fix small memory leak
f4a5174 opensm/osm_subnet.c: fixing small bug in error path
c18ef23 opensm/osm_mesh.c: fixing a bug in compare_switches()
83b74cd opensm/osm_helper.c: fix potential overrun of the array
85c0ac9 osmtest/osmtest.c: handle timeouts in PR stress test
ebb2c84 opensm/osm_node_info_rcv.c: move p_physp declaration under code block
5c88113 opensm/osm_node_info_rcv.c: remove useless code line
866d939 opensm/osm_sa_vlarb_record.c: removed unused variable
15a8770 opensm/osm_sa_pkey_record.c: removing unused variable
8f002b7 opensm/osm_pkey.c: removing unused function
9c0fa2f opensm/osm_sminfo_rcv.c: removing unused variable
d3f060a opensm/osm_mtree.c: removing useless 'if' statement
bbef64a libvendor/osm_vendor_mlx_sa.c: remove useless "if" statement
2da02b5 libvendor/osm_vendor_ibumad_sa.c: remove useless "if" statement
435dde0 opensm/sa: simplify osm_mcmr_rcv_find_or_create_new_mgrp() function call
e7a872d opensm/osm_qos_policy.c: change a log message
ffbe7d0 opensm: Cause status of unicast routing attempt to propogate to callers of osm_ucast_mgr_process().
673877a opensm: Make mcast_mgr_purge_tree() available outside osm_mcast_mgr.c.
b135687 opensm: Track the minimum value in the fabric of data VLs supported.
7c1ee64 opensm: Fix typo in routing section in man page and doc
d206011 opensm/osmtest/osmtest.c: inventory file parsing bugfix
e01121a fixed deprecated conversion from string constant to char* warning
a7ba101 opensm/main.c: Change size parameter in setvbuf call from 0 to BUFSIZ
2a92554 opensm/osmtest/osmt_multicast.c: Fix multicast flow failures on pkey validation
364e65b opensm/osm_dump.c: Fix FDR10 speed dumping
80e11b9 osmtest/osmt_multicast.c: Fix check of partial JoinState delete request - removing NonMember (o15.0.1.14)
78e1e4e osmtest/osmt_multicast.c: Fix check of BAD RATE when connecting to existing MGID (o15.0.1.13)
e94e972 osmtest/osmt_multicast.c: Fix first MGID=0 MC group creation case
daedad7 opensm/osmtest/osmt_multicast.c: Fix an unrealistic rate case
110ae10 opensm: fixed segfault in osm_destroy
d666205 opensm/osm_prtn.c: Fix typo in log message
f3ccb45 opensm: Remove duplicate definition of IB_MAD_STATUS_CLASS_MASK
917070c Move no_fallback_routing_engine from osm_subn_opt_t to osm_opensm_t.
d71a924 Free memory from osm_subn_opt_t when osm_subn_t destroyed
1b75fa4 Remove duplicate initialization of scatter_ports
b5f4570 Do not load configs from the default config file and specified config file
f24a089 Fix memleak and segfault
247d0d8 Fix IPoIB broadcast group creation on non-default Pkey
78d86bd opensm/osm_subnet.c: Trivial optimization to code flow in subn_verify_sl2vl
6bb41e3 opensm/complib/cl_atomic.h: Commentary changes
28ee7b9 opensm/osm_sa_class_port_info.c: Conditionalize setting of OSM_CAP2_IS_MCAST_TOP_SUPPORTED
29e59a2 Removed unused parameter "ib_mad_addr" from umad_receiver()
63ad0bb opensm/osmeventplugin/src/osmeventplugin.c: Output LIDs in decimal
17967c2 opensm/osm_switch.h: Fix commentary typo
6d3e223 opensm/osm_perfmgr.c: Enhance send error log message
08abcd4 opensm/osm_sa_mad_ctrl.c: Enhance send error log message
13f3e0f opensm/libvendor/osm_vendor_ibumad.c: Fix DR path printing on send timeouts
0dfd760 Fix suggest parentheses around operand warning
ad2dbf8 Support source-target-port-guid QoS policy configuration with ULP 'any'
080e3ad Support source-port-guid QoS policy configuration with ULP 'any'
49777a9 Fix typo in qos-ulps parsing comment
bcfe1b9 opensm/osm_torus.c: Use "OpenSM standard" error codes
683397d Fix use of GNU old-style field designator extension
719fcd4 Fix use of logical && with constant operand; switch to bitwise &
6bc87bd opensm: fix search common pkeys
a6ac5e3 opensm/osm_drop_mgr.c: GID out trap fix
7717505 opensm/osm_pkey_mgr.c: fix segfault when trying to access not allocated block
eb90efd include/opensm/osm_subnet.h: fix comment typos
0a315e3 opensm/include/iba/ib_types.h: fix comment typos and errors
125baa0 opensm/opensm.8.in: Fix cut 'n paste error
f0d14d2 opensm/osm_ucast_ftree.c: Fix some typos
841096f opensm: Fix opensm handover/relinquish corner case
bf420ac opensm/osm_helper.c: Fix commentary typo
2be999c opensm: fixed description in osm_routing_engine
cf3d185 gen_chlog.sh: fixed version ordering
8d49c5d opensm/osm_sa_guidinfo_record.c: Fix locking
8d764b8 Fix continous looping when clearing accum_pkeys table
32500a6 opensm/osm_link_mgr.c: Fix sending PortInfo Set for ports supporting extended speed
e24ff39 Fix Pkey enforcement configuration
041e47a Fix PathRecord reply to be the same for allow_both_pkeys ON and OFF
3c9b81d OpenSM/osm_prtn_config.c: Fix non-initialized pointer usage
28a40a2 Fix logging messages about op_vls and mtu mismatch
5e672a6 Fix memory leak on dfsssp_context_destroy()

* Other less critical or visible bugs were also fixed.

5 Main Verification Flows
-------------------------

OpenSM verification is run using the following activities:
* osmtest - a stand-alone program
* ibmgtsim (IB management simulator) based - a set of flows that
  simulate clusters, inject errors and verify OpenSM capability to
  respond and bring up the network correctly.
* small cluster regression testing - where the SM is used on back to
  back or single switch configurations. The regression includes
  multiple OpenSM dedicated tests.
* cluster testing - when we run OpenSM to setup a large cluster, perform
  hand-off, reboots and reconnects, verify routing correctness and SA
  responsiveness at the ULP level (IPoIB and SDP).

5.1 osmtest

osmtest is an automated verification tool used for OpenSM
testing. Its verification flows are described by list below.

* Inventory File: Obtain and verify all port info, node info, link and path
  records parameters.

* Service Record:
   - Register new service
   - Register another service (with a lease period)
   - Register another service (with service p_key set to zero)
   - Get all services by name
   - Delete the first service
   - Delete the third service
   - Added bad flows of get/delete  non valid service
   - Add / Get same service with different data
   - Add / Get / Delete by different component  mask values (services
     by Name & Key / Name & Data / Name & Id / Id only )

* Multicast Member Record:
   - Query of existing Groups (IPoIB)
   - BAD Join with insufficient comp mask (o15.0.1.3)
   - Create given MGID=0 (o15.0.1.4)
   - Create given MGID=0xFF12A01C,FE800000,00000000,12345678 (o15.0.1.4)
   - Create BAD MGID=0xFA. (o15.0.1.6)
   - Create BAD MGID=0xFF12A01B w/ link-local not set (o15.0.1.6)
   - New MGID with invalid join state (o15.0.1.9)
   - Retry of existing MGID - See JoinState update (o15.0.1.11)
   - BAD RATE when connecting to existing MGID (o15.0.1.13)
   - Partial JoinState delete request - removing FullMember (o15.0.1.14)
   - Full Delete of a group (o15.0.1.14)
   - Verify Delete by trying to Join deleted group (o15.0.1.14)
   - BAD Delete of IPoIB membership (no prev join) (o15.0.1.15)

* GUIDInfo Record:
   - All GUIDInfoRecords in subnet are obtained

* MultiPathRecord:
   - Perform some compliant and noncompliant MultiPathRecord requests
   - Validation is via status in responses and IB analyzer

* PKeyTableRecord:
  - Perform some compliant and noncompliant PKeyTableRecord queries
  - Validation is via status in responses and IB analyzer

* LinearForwardingTableRecord:
  - Perform some compliant and noncompliant LinearForwardingTableRecord queries
  - Validation is via status in responses and IB analyzer

* Event Forwarding: Register for trap forwarding using reports
   - Send a trap and wait for report
   - Unregister non-existing

* Trap 64/65 Flow: Register to Trap 64-65, create traps (by
  disconnecting/connecting ports) and wait for report, then unregister.

* Stress Test: send PortInfoRecord queries, both single and RMPP and
  check for the rate of responses as well as their validity.


5.2 IB Management Simulator OpenSM Test Flows:

The simulator provides ability to simulate the SM handling of virtual
topologies that are not limited to actual lab equipment availability.
OpenSM was simulated to bring up clusters of up to 10,000 nodes. Daily
regressions use smaller (16 and 128 nodes clusters).

The following test flows are run on the IB management simulator:

* Stability:
  Up to 12 links from the fabric are randomly selected to drop packets
  at drop rates up to 90%. The SM is required to succeed in bringing the
  fabric up. The resulting routing is verified to be correct as well.

* LID Manager:
  Using LMC = 2 the fabric is initialized with LIDs. Faults such as
  zero LID, Duplicated LID, non-aligned (to LMC) LIDs are
  randomly assigned to various nodes and other errors are randomly
  output to the guid2lid cache file. The SM sweep is run 5 times and
  after each iteration a complete verification is made to ensure that all
  LIDs that could possibly be maintained are kept, as well as that all nodes
  were assigned a legal LID range.

* Multicast Routing:
  Nodes randomly join the 0xc000 group and eventually the
  resulting routing is verified for completeness and adherence to
  Up/Down routing rules.

* osmtest:
  The complete osmtest flow as described in the previous table is run on
  the simulated fabrics.

* Stress Test:
  This flow merges fabric, LID and stability issues with continuous
  PathRecord, ServiceRecord and Multicast Join/Leave activity to
  stress the SM/SA during continuous sweeps. InformInfo Set/Delete/Get
  were added to the test such both existing and non existing nodes
  perform them in random order.

5.3 OpenSM Regression

Using a back-to-back or single switch connection, the following set of
tests is run nightly on the stacks described in table 2. The included
tests are:

* Stress Testing: Flood the SA with queries from multiple channel
  adapters to check the robustness of the entire stack up to the SA.

* Dynamic Changes: Dynamic Topology changes, through randomly
  dropping SMP packets, used to test OpenSM adaptation to an unstable
  network & verify DB correctness.

* Trap Injection: This flow injects traps to the SM and verifies that it
  handles them gracefully.

* SA Query Test: This test exhaustively checks the SA responses to all
  possible single component mask. To do that the test examines the
  entire set of records the SA can provide, classifies them by their
  field values and then selects every field (using component mask and a
  value) and verifies that the response matches the expected set of records.
  A random selection using multiple component mask bits is also performed.

5.4 Cluster testing:

Cluster testing is usually run before a distribution release. It
involves real hardware setups of 16 to 32 nodes (or more if a beta site
is available). Each test is validated by running all-to-all ping through the IB
interface. The test procedure includes:

* Cluster bringup

* Hand-off between 2 or 3 SM's while performing:
  - Node reboots
  - Switch power cycles (disconnecting the SM's)

* Unresponsive port detection and recovery

* osmtest from multiple nodes

* Trap injection and recovery


6 Qualified Software Stacks and Devices
---------------------------------------

OpenSM Compatibility
--------------------
Note that OpenSM version 3.2.1 and earlier used a value of 1 in host
byte order for the default SM_Key, so there is a compatibility issue
with these earlier versions of OpenSM when the 3.2.2 or later version
is running on a little endian machine. This affects SM handover as well
as SA queries (saquery tool in infiniband-diags).


Table 2 - Qualified IB Stacks
=============================

Stack                                    | Version
-----------------------------------------|--------------------------
The main stream Linux kernel             |   2.6.x
OFED                                     |   1.5,1.5.x
OFED                                     |   1.4
OFED                                     |   1.3
OFED                                     |   1.2
OFED                                     |   1.1
OFED                                     |   1.0

Table 3 - Qualified Devices and Corresponding Firmware
======================================================

Mellanox
Device                              |   FW versions
------------------------------------|-------------------------------
InfiniScale                         | fw-43132  5.2.000 (and later)
InfiniScale III                     | fw-47396  0.5.000 (and later)
InfiniScale IV                      | fw-48436  7.1.000 (and later)
InfiniHost                          | fw-23108  3.5.000 (and later)
InfiniHost III Lx                   | fw-25204  1.2.000 (and later)
InfiniHost III Ex (InfiniHost Mode) | fw-25208  4.8.200 (and later)
InfiniHost III Ex (MemFree Mode)    | fw-25218  5.3.000 (and later)
ConnectX IB                         | fw-25408  2.3.000 (and later)

QLogic/PathScale
Device  |   Note
--------|-----------------------------------------------------------
iPath   | QHT6040 (PathScale InfiniPath HT-460)
iPath   | QHT6140 (PathScale InfiniPath HT-465)
iPath   | QLE6140 (PathScale InfiniPath PE-880)
iPath   | QLE7240
iPath   | QLE7280

Note 1: OpenSM does not run on an IBM Galaxy (eHCA) as it does not expose
QP0 and QP1. However, it does support it as a device on the subnet.

Note 2: QoS firmware and Mellanox devices

HCAs: QoS supported by ConnectX. QoS-enabled FW release is 2_5_000 and
later.

Switches: QoS supported by InfiniScale III
Any InfiniScale III FW that is supported by OpenSM supports QoS.
