[ofa-general] ***SPAM*** [PATCH] opensm: update Release Notes for OpenSM version 3.2
Sasha Khapyorsky
sashak at voltaire.com
Sat Oct 11 14:51:13 PDT 2008
Update Release Notes for OpenSM version 3.2
Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>
---
opensm/doc/opensm_release_notes-3.2.txt | 294 ++++++++++++++++++-------------
1 files changed, 175 insertions(+), 119 deletions(-)
diff --git a/opensm/doc/opensm_release_notes-3.2.txt b/opensm/doc/opensm_release_notes-3.2.txt
index 7728849..68178c4 100644
--- a/opensm/doc/opensm_release_notes-3.2.txt
+++ b/opensm/doc/opensm_release_notes-3.2.txt
@@ -17,104 +17,161 @@ This document includes the following sections:
dependencies)
2 Known Issues And Limitations
3 Unsupported IB compliance statements
-4 Major Bug Fixes
+4 Bug Fixes
5 Main Verification Flows
6 Qualified software stacks and devices
1.1 Major New Features
-* QoS manager (experimental)
- This QoS manager implementation is in accordance with IBA QoS Annex.
- Highly configurable QoS Policy is parsed from OpenSM QoS policy file.
- Valid QoS parameters will be reported in SA PathRecord and
- MultiPathRecord. In addition simple QoS levels per ULPs configuration
- is supported too.
-
-* Performance Manager
- When enabled it collects a fabric port counters and able to log it or
- to pass to external program via event plugin interface. It handles
- counters overflow, supports LID/QP redirection and is able to work
- when OpenSM is in master, standby, and inactive states.
-
-* Dimension Order routing (DOR) algorithm
- DOR Unicast routing algorithm - based on the Min Hop algorithm, but
- avoids port equalization except for redundant links between the
- same two switches. This provides deadlock free routes for hypercubes
- when the fabric is cabled as a hypercube and for meshes when cabled
- as a mesh (see details in OpenSM man page).
-
-* Routing improvements
- Speedup the current routing algorithms default MinHops, Up/Down and
- LASH and lid matrix generation. Fat Tree routing engine is able to work
- with not pure fat free topology.
-
-* Multiple IB routers support
- OpenSM now able to keep configurable subnet prefix to router table.
- SA will report path to this routers when SA PathRecord was issued with
- non-local DGID.
-
-* Node map
- This is possible to name nodes in this config file. Those names will be
- used for logging and by QoS configuration.
-
-* PKey index support
- Proper support for PKey index in GSI queries.
-
-* Incremental LFTs, PKey, SL2VL, and VLarbitration table updates
- OpenSM will only fetch those tables in first heavy sweep and then
- will maintain this internally.
-
-* Fast port and switch detector
- When port and/or switch was externally reset and it was fast so sweep
- doesn't find this device as disconnected OpenSM will detect this by
- changed port states and handle accordingly.
-
-* Duplicated GUIDs/port moving detector
- OpenSM will be able to detect port moving during a fabric discovery
- and will not report duplicated GUIDs in this case.
-
-* Multicast rerouting speedup
- Now OpenSM will calculate and setup multicast forwarding tables for
- all altered multicast groups and not for each one.
-
-* Event plugin API
- OpenSM allows to load dynamically various plugin modules.
-
-* Many generic improvements
+* Routing Chaining
+ Routing chaining is the ability to configure the order in which routing
+ algorithms are applied in opensm, i.e. '-R ftree,updn,minhop' - try
+ using ftree routing. If ftree fails, try updn. If updn fails, try
+ minhop.
+
+* Solicited Node Multicast addresses consolidation
+ When this mode is used (enabled with --consolidate_ipv6_snm_req option)
+ OpenSM will map all IPv6 Solicited Node Multicast address join requests
+ into a single Multicast group with address ff10:601b::1:ff00:0. In this
+ way limited MLID space is saved. The feature is very useful with large
+ (~> 1024 nodes) clusters.
+
+* OpenSM sweep state machine rework
+ Huge and buggy OpenSM sweep state machine was fully rewritten in safer
+ and more effective synchronous manner.
+
+* Multi lid routing balancing for updn/minhop routing algorithms
+ When LMC > 0 is used OpenSM will ensure to generate routing paths via
+ different switches and when possible chassis.
+
+* Preserve base lid routes when LMC > 0
+ When LMC > 0 is used OpenSM will preserve routing paths for base lids
+ as it would be with LMC = 0. In this way traffic on each LID level is
+ not affected by LMC changes.
+
+* Ordered routing paths balancing
+ This adds ability to predefine the port order in which routing paths
+ balancing is performed by OpenSM. Helps to improve performance
+ dramatically (40-50%) for applications with known communication
+ pattern. Activated with --guid_routing_order_file command line option.
+
+* Unified OpenSM configuration
+ Now there is "conventional" config file instead of hidden option cache
+ file (opensm.opts). OpenSM will find this in a default place (consult
+ man page for exact value) or the file name can be specified with '-F'
+ command line option. Also there is an option ('-c') to generate config
+ file template.
+
+* Query remote SMs during light sweep
+ Master OpenSM will query remote standby SMs periodically to catch its
+ possible state changes and react accordingly (as required by IBA spec).
+
+* Predefined port ids for Up/Down algorithm
+ This is useful as Up/Down fine tuning tool - the algorithm will use
+ predefined port IDs instead of GUIDs for its decision about direction.
+ Activated with --ids_guid_file command line option.
+
+* Improved plugin API version 2.
+ Now OpenSM will provide to plugins the access to all data structures.
+ This make it possible to implement powerful multi purpose plugins. All
+ OpenSM header files are installed now and specific configuration/build
+ options are exported via generated osm_config.h header file.
+
+* Many code improvements, optimizations and cleanups
+
+* Automatic daily snapshots generation.
+ This is is not a "feature", but simplifies the access to recent OpenSM
+ bits.
1.2 Minor New Features:
-* Daemon mode can be activated with -B option.
+* Cleanup cl_qlock_pool memory allocator - speedup memory allocations
-* Support multiple scopes for IPoIB multicast groups in partition config.
+* Support for configurable (via OSM_UMAD_MAX_PENDING environment variable)
+ size of pending MADs pool.
-* Loopback connection handling
- Loopback connection is not interpreted as duplicated GUID anymore.
+* Set packet life time to subnet timeout option rather than default
-* Connect root nodes option for Up/Down routing engine.
- When this option is specified Up/Down will create routing paths between
- its root nodes.
+* Enforce routing paths rebalancing on switch reconnection
-* Dump and log filenames changed from osm* to opensm*.
+* In Up/Down routing algorithm compare GUID values in host byte order
-* Support loopback console
- Socket console with only local access.
+* Add 'switchbalance' and 'lidbalance' commands for OpenSM console
-* Configurable config directory (the default value is /etc/opensm) and
- configurable default values of OpenSM config filenames.
+* Respond to new trap 144 node description update flag
-* Add option for force SDR link speed
- Add option to opensm.opts to force link speed. Currently, only forcing
- to SDR link speed is supported. This option is not supported as a
- command line option.
+* Add '--connect_roots' command line options. This preserves connectivity
+ between root nodes in Up/Down routing algorithm
-* Better packaging
- Building and RPM packaging were improved and simplified.
+* Setting SL in the IPoIB MCast groups in accordance with QoS policy
-* Handle "babbling" ports
- When a babbling port (port which causes a frequent trap generation) is
- detected, OpenSM will disable the port which should terminate the trap
- storm.
+* Dump auto detected root node guids in Up/Down routing algorithm
+
+* Unify OpenSM dumpers code
+
+* Unify various guid files parsers - add generic nodenamemap style parser
+
+* When root node guids were provided in file update the list on each
+ Up/Down run
+
+* During ./configure show values of configuration dirs and files
+
+* Make prefix routes config file name configurable
+
+* Add a Performance Manager HOWTO to the docs and the dist
+
+* Support separate SA and SM keys as clarified in IBA 1.2.1
+
+* Remove AM_MAINTAINER_MODE in ./configure
+
+* Make vendor type OSM_VENDOR_INTF_OPENIB (libibumad) to be default
+
+* Build osm_perfmgr_db.* content only when PerfMgr is enabled.
+
+* Move PerfMgr event_db_dump_file to common OpenSM dump dir
+
+* Allow space separated strings as values in OpenSM config
+
+* Support for multiple event plugins
+
+* Add '--version' command line option
+
+* Add '--create-config <file-name>' command line option
+
+* Speedup and simplify logging code
+
+* Speedup multicast processing in SA DB
+
+* In log messages convert unicast LIDs from hex to decimal format and
+ GIDs from hex to IPv6 address format
+
+* Handle all possible ports in "ignore-guids" file
+
+* Add 'reroute' console command
+
+* Remove many install-exec-hook from Makefiles
+
+* Some cleanups in LASH routing algorithm code
+
+* In Makefiles remove -rpath and explicit -lpthread, -ldl from LDFLAGS
+ (move to configurator)
+
+* Install all OpenSM header files
+
+* Improve locking in SM Info receiver
+
+* Add new OSM_EVENT_ID_SUBNET_UP event for plugins
+
+* Redo lex and yacc files generation in conventional way
+
+* Add a missing Node Description check on light sweep.
+
+* Move vendor specific compilation defines from command to generated
+ config.h file
+
+* Provide useful error message when log file opening fails
+
+* Add generated osm_config.h file with OpenSM specific defines
1.3 Library API Changes
@@ -209,76 +266,75 @@ information regarding each compliance statement.
* C15-0.1.14 (Services):
Provide means to associate service name and ServiceKeys.
-4 Major Bug Fixes
+4 Bug Fixes
-----------------
-The following is a list of bugs that were fixed. Note that other less critical
-or visible bugs were also fixed.
-
-* osm_ucast_ftree.c: do load-leveling of non-CN routes
+4.1 Major Bug Fixes
-* osm_ucast_ftree.c: ignore port 0 and loopbacks on switches
+* Set SA attribute offset to 0 when no records are returned
-* lash: fix possible segfault in osm_get_lash_sl()
+* Send trap 64 only after new ports are in ACTIVE state.
-* osm_ucast_ftree.c: fixing coredump in fat-tree routing
+* Fix in sending client reregistration bit
-* osm_sa_slvl_record: fix overflow crash
+* Fix default OpenSM SM Key byte order
-* Break multicast rerouting requests processing when heavy sweep is
- scheduled.
+* Fix in sending Multicast groups creation/deletion notification (Traps
+ 66,67)
-* updn: report fallback properly
+* Don't startup automatically on SuSE based systems
-* Fix incorrect identification of routing engine used
+4.2 Other Bug Fixes
-* Don't zero base LID when invalid value is received
+* opensm/osm_console.c: fix seg fault when running "portstatus ca" in
+ the console
-* lash: fix wrong allocation size
+* opensm: fix potential core dumps where osm_node_get_physp_ptr can
+ return NULL
-* Fixing broken logic in 'process world' part of LinkRecord processing
+* opensm/osm_mcast_mgr: limit spanning tree creation recursion to value
+ of max hops (64)
-* Fix lmc_mask bit order in osm_sa_link_record.c
+* opensm: switch LFTs incremental update fix
-* Adding missing comparison by to_lid/from_lid in LinkRecord processing
+* opensm/osm_state_mgr.c: fix segmentation fault
-* Broken logic when scanning subnet for PIR request
+* opensm: eliminate some potential NULL pointer dereferences
-* No interactive games in daemon mode
+* opensm/osm_console.c: fix guid parsing
-* Fixing memory leak in node description
+* opensm: fix off by 1 issue with max_lid and max_multicat_lid_ho
-* Fix PortInfo update issues for switch port 0
+* opensm: fix potentially wrong port_guid initialization
-* Changed method_mask type in user_mad interface in accordance with
- kernel ABI
+* opensm/configure.in: fix wrong HAVE_DEFAULT_OPENSM_CONFIG_FILE define
+ generation
-* Use umad_get_issm_path() in osm_vendor_set_sm()
+* opensm: fix snprintf() usage
-* Report message fix
+* opensm/osm_sa_lft_record: validate LFT block number
-* Uninitialized variables usage fix
+* opensm/osm_sa_lft_record: pass block parameter in host byte order
-* osm_ucast_ftree.c: Possible NULL ptr seg fault
+* opensm/include/Makefile.am: don't duplicate header files in EXTRA_DIST
-* osm_mcast_mgr.c: Possible NULL ptr seg fault
+* opensm/osm_sa_class_port_info.c: fix over bound array access
-* TrapRepress was failing for mkey != 0
+* osmtest/osmt_service.c: fix over bound array access
-* IB_PR_COMPMASK was used in MPR
+* osmtest: fix qpn encoding in osmtest_informinfo_request()
-* Set hop limit when creating ipoib multicast groups
+* opensm/osm_vendor_mlx_sa.c: handling attribute offset of 0
-* Fix outstanding mad counters tracking on the error paths.
+* opensm: fix segfault corner case when osm_console_init fails
-* Report new ports before handover mastership
+* opensm/console: close console socket on cleanup path
-* Fix opvls and neighbormtu when remote port invalid.
+* opensm/osm_ucast_lash: fix buffer overflow
-* Bug in coding trying to set vl_arb_high_limit when PortInfo.base_lid
- was still zero.
+* opensm: fix broken IPv6 SNM consolidation code
-* Protect SMInfo response against port moving issue.
+* Other less critical or visible bugs were also fixed.
5 Main Verification Flows
-------------------------
--
1.6.0.1.196.g01914
More information about the general
mailing list