            IBM(R) Subsystem Device Driver DSM Version 2.5.0.0 README for 
            Windows 2008 x86, Windows 2008 R2, Windows Server 2012, Windows Server 2012 R2, 
            Windows Server 2012 Server Core, Windows Server 2012 R2 Server Core,
            Windows Server 2016, Windows Server 2016 Server Core
                          
                                 June 30, 2017

-------------------------------------------------------------------------------
CONTENTS

1.0    About this README file
1.1    Who should read this README file
1.2    How to get help
2.0    Prerequisites for SDDDSM
3.0    SDDDSM change history
3.1    Defects Fixed
3.2    New Features
3.3    Feature Details and Restrictions
3.4    Known issues
3.5    Known issues and workaround details
4.0    User license agreement for IBM device drivers
4.1    Background / Purpose
4.2    Definitions
4.3    License grant
4.4    Responsibilities
4.5    Confidential information
4.6    Limitation of liability
4.7    Termination
4.8    Representations and warranties
4.9    General provisions
4.10   Appendix A
5.0    Notices
6.0    Trademarks and service marks

-------------------------------------------------------------------------------

1.0  About this README file

     Welcome to IBM Subsystem Device Driver DSM(SDDDSM). 
     This README file contains the most recent information about the IBM 
     Subsystem Device Driver DSM, Version 2 Release 5 Modification 0 Level 0 
     Build 22.06.17-a(SDDDSM 2.5.0.0) for Windows 2008 x86,
     Windows 2008 R2, Windows Server 2012, Windows Server 2012 R2, 
     Windows Server 2012 Server Core, Windows Server 2012 R2 Server Core,
     Windows Server 2016,Windows Server 2016 Server Core.

     IBM recommends that you go to this Web site to get the most current
     information about this release of SDDDSM:
     
     http://www-01.ibm.com/support/docview.wss?uid=ssg1S4000350

     You should carefully review the following information available through
     this site:

     1.  The most current README file. This will contain corrections to the
     readme file, corrections to the SDDDSM User's Guide, and documentation
     updates made discovered since this copy of the README was prepared.    

     2.  The SDDDSM User's Guide. SDDDSM can be installed in so many
     different environments/configurations so detailed information about each
     environment is placed in the appropriate chapter of the SDDDSM User's Guide.
     The 'Summary of Changes' section of the SDDDSM User's Guide can help you
     quickly determine if the latest changes affect you.  

     3.  The Flashes.  As we become aware of any information that is likely to
     impact a broad set of our customers, Flashes are prepared and posted on
     this site.  You should review this section periodically to see any new
     Flashes that have been posted since your last review.

     4.All supported storages are provided in the above link. Click on 
     "Support Matrix for SDD SDDPCM and SDDDSM" link for SDDDSM supported storage.    
  
   
     For prerequisites information, be sure to look in the SDDDSM User's Guide
     as well as the prerequisites section of this readme file for the latest
     updates.


1.1  Who should read this README file

     This README file is intended for storage administrators, system
     programmers, and performance and capacity analysts. 

       
1.2  How to get help

     Go to the following Web site for SDDDSM technical support 
     
     http://www-947.ibm.com/support/entry/portal/product/system_storage/storage_software/other_software_products/system_storage_multipath_subsystem_device_driver?productContext=-1564959213 

     Call one of the following numbers to obtain nontechnical or administrative
     support, such as hardware and software orders, hardware maintenance,
     services contract of entitlement, and invoices:

        .For commercial or state and local support operations:
          1-877-426-6006 (Listen to the voice prompts)

        .For business partner support operations:
          1-800-426-9990

        .For federal government support operations:
          1-800-333-6705

-------------------------------------------------------------------------------

2.0  Prerequisites for SDDDSM

     OSes: Windows Server 2008
           Windows Server 2008 R2 
           Windows Server 2012   
           Windows Server 2012 Server Core 
           Windows Server 2012 R2  
           Windows Server 2012 R2 Server Core 
           Windows Server 2016   
           Windows Server 2016 Server Core 

     SDD:  If SDD is installed on the system then it must be uninstalled prior to install SDDDSM.

     Hotfixes: the following hotfixes must be installed prior to install SDDDSM

        For W2K8: 
        KB967349  This hotfix is recommedned when access to the storage device 
                  fails after disconnect all data cables and then reconnect 
                  them.
                  For detail, please go to the following link:
                  http://support.microsoft.com/kb/967349

     Note:Please check with Microsoft if there is any change in above links. 

  
2.1 How to install SDDDSM package
    =============================
1. Select the package depending on your requirement i.e 32/64 bit package. 
2. Unzip the SDDDSM package. 
3. Open a command prompt (with Administrative privileges).
4. Go to the SDDDSM Driver location. 
5. Run setup.exe (requires Administrative privileges)
6. Follow the instructions and say "Yes" accordingly. 
7. Restart the machine. 
8. Verify SDDDSM is installed successfully by running "datapath query version". 


2.2 How to uninstall SDDDSM package
    ===============================
1. Open a command prompt (with Administrative privileges)
2. Go to the SDDDSM Driver location. 
2. Run "setup -u"
3. Restart the machine. 


     
3.0  SDDDSM Change History

===============================================================================

3.1  Defects Fixed
    
    Defects fixed in 2.5.0.0
    5584 Windows Server 2016 Driver Compatiblity Changes.
    5616 Disk Surprise removals/Hyper-V VM Failovers.
    5621 Issue with "Least IO and Weight" load balance policy.
    5618 I/O failures in "two path configuration" because of fail over logic in 2480.
    5615 Hyper-V Crash or I/O issues while unmapping the Luns from storage.
    5601 Disks loosing PR Registrations with "rmhostport".
    5617 SAN Boot Crash.
    5596 Missing "mpiolist.exe".
    5600 sddShowCSVLuns script issues.
    5583 Issue with "datapath query port" output.
    
    Defects fixed in 2.4.8.0
    5576 Removed few unnecessary prints during PRIN Read call which were
         flooding the sdd logs.
    5436 Fixed "datapath query device -c" device count issue that included
         closed devices.
        
    Defects fixed in 2.4.7.1
    5542 When NPIV enters into Transitional state from Disabled with all the SDDDSM paths 
         in Non-Preferred state, the paths to the Virtual ports also become Non-Preferred.
         This path configuration cause IO failures as soon as NPIV moves into Enabled state.

    Defects fixed in 2.4.7.0
    5527 NPIV Issue with SDDDSM - Shows All TPG Ports in NON-OPTMIZED state with NPIV Disabled.
    5536 Win2k12 Crash upon changing the state of fctargetportmode

    Defects fixed in 2.4.6.0
    5458 SDDDSM Setup.exe file not signed
    5473 T2 recovery changes
    5481 Update "sample_sddsrv.conf" file

    Defects fixed in 2.4.5.1
    5459  On a hyper-v setup with CSVs, when NAR is run on a 3 cluster node, 
          I/Os exits due to reservation loss

    Defects fixed in 2.4.5.0
    5323  Wrong description of adapter in SDDDSM logs.     
    5327  datapth query device output lable should be changed.
    5339  Removal of "-l" option from datapath query          
    5341  Error messages shuld be consistent for removed devices.
    5412  Specific message should be displayed for failing size of LUN   
    5419  SDDDSM directory list log issue.                       
    5424  sdddsm "dpq logs" error                                
    5425  Datapath query not showing the devices.                
    5427  No check for numerical value for "-d" option           
    5440  ODX KCQ addition                                               
    5452  LB policy is writing on prefered and non prefered paths        

    Defects fixed in 2.4.4.0
    5396  In 7.3.0.x SVC when "rmnode" command is triggered PR registration-
          reservation gets deleted and because of that SDDDSM loses all the 
          paths to the LUN leading to I/O failure. 
    5264  Wrong message while making online adapter online again          
    5272  Failover policy for path selection corrected to choose optimized paths first.                       
    5276  SDD is not clearing the error count for LUNs                    
    5288  SDD is displaying big loop when device range is not valid.      
    5289  change path status to scsi standard.                            
    5291  SDDDSM Installer is not checking the previous version          
    5292  Load balance policy is showing as optimized policy only.       
    5313  sddgetdata.bat does not flush logs cached in the sdd driver    
    5315  SDDDSM installer is not cheking the SDDDSM version properly.   
    5320  Wrong Adapter Status when any of the device path is offline.   
    5332  "Datapath.exe" crashes on wrong adapter number.                
    5337  SDDDSM goes into the infinite loop when looses all the paths.  
    5338  SDDDSM showing wrong messages after aborting software installer
    5342  SDDDSM is not checking for present paths of LUNS.              
    5351  There is no check for numeric value in datapath commands       
    5352  SDDDSM is showing wrong message for datapath commands.         
    5354  Adapter port is not coming to online state.                    
    5362  "Adaptstat" command is not giving any error message.           
    5363  SDDDSM is not recognising the adapter state.                   
    5372  datapath query device in loop fails to bring on closed devices 
    5376  "Datapath.exe" crashes on more than 10 digit number.           
    5379  SDDDSM Installer does not check for invalid parameters.        
    5381  SDDDSM silent uninstaller gives wrong message.                 
    5382  SDDDSM Installer is giving wrong messages                      
    5386  change Adapter Port label to Adapter  in datapath query output.
    
    Defects fixed in 2.4.3.x
    4851  Sandboot systems sometime crashes when reinstalling SDDDSM 
    4919  Garbage information get printed in event 17 & 18 
    4933  HyperV clients lost access when connected thru 2 paths 
    4940  Fix buffer overrun in tracing code
    4973  Potential Crash on Windows 2008 Cluster(PMR 48817 and 18717)
    4991  Under high san error loads, the windows sdddsm sql server crashed
          (PMR 78254)
    5181  Workaround for the failures during inquiry and read capacity 
          commands on win2012.
    5193  New enforcement by Microsoft on Win2012 certification such as
          running static code verification. 
    5198  Datapath should not show/list Closed paths, removed devices and
          disabled adapters.If the unavailable/closed path/device comes back
          online, the path/device number should be restored.
          If the adapter is enabled, it should be seen in datapath output.
    5206  HBA details not reported by hbainfo.exe on Windows 2012 server.
    5210  For Win 2k3 with MSCS and VXVM 5.1 SP2, if one host in the cluster  
          with 2 nodes was shutdown abruptly then the other hosts was having 
          3 out of 4 paths failing with reservation conflict.
    5215  Workaround for system crash that occurred while 
          running Microsoft's MSDT tool on Win2K3 64 bit machine.
    5226  "Subsystem Device Driver DSM" command prompt shortcut is not 
          visible in Start Apps in Win2K12. 
    5230  In Win2K12 MS Cluster when resources are moved from first host
          to second host and if I/O are running on first host then
          they go into infinite retry. 
    5248  When Windows 2012 Server Core, with cluster setup and numerous 
          Hyper-V 3.0 Vms, is under heavy i/o stress causing extensive 
          memory usage, paging and cpu utilization it crashes while handling 
          an invalid buffer.
    5249  In Device Manager MPIO property sheet on close reports an unknown error.              
    5251  "retry not needed" mesg unneccesarily adding noise to the logs.  
    5252  Failover policy does not check path registration status.            
    5253  Window datapath query fails to display lun size > 2TB.           
    5254  Crash on Windows 2008 R2 due to invalid/stale path entry in SDDDSM . 
    5271  datapath query adapter shows active adapter list instead of active adapter port list.

    Defects fixed in 2.4.2.x
        4590  Load Balancing issues 
    S1012281  SASWWPN shows only one port
      238707  Oracle DB crash at secondary power off in PPRC
        4726  Unable to restore a path when TargetPdo==NULL due to
              race condition
        4733  Add retry delay for sense 2/4/C not ready errors
        4735  Remove Ds4K/5K support from the driver and sdddsm.inf file
        4738  Reduce sdddsm trace logging for CSV reservation errors.
    


    Defects fixed in 2.4.1.x
    4558  Upgrade MPIO package to 1.22 from 1.21 (2.4.1.1-1)
          (http://support.microsoft.com/Default.aspx?id=961640)
    4590  Incorrectly configured more than 32 paths
    4591  Force retry on the same path after SrbStatus 0e, bus reset
    4593  Force additional retry after 3 repeatable errors within the
              predefined time threshold 
    4567  Upgrade MPIO package to 1.23 from 1.22 (2.4.1.2-2)
          (http://support.microsoft.com/Default.aspx?id=961640)

      
     Defects fixed in 2.4.0.x
     96242  Disk Manager hang after resource moved to another cluster
     4467  Datapath query devicestats fails with a -d option.
     4474  Datapath set last adapter returns a wrong message.
     4475  Datapath set last path returns a wrong message.
     4447  EventLog indicates that always Path0 to the device came online.
     4446  System Crashes when the bootdisk is unmaped from one host wwpn
           in 2145.
     214897  Datapath query wwpn fails intermittently.
     4336  Unmounting Virtual Devices in Microsoft virtual Server Fails.
     4334  Fix exit message for non-Administrator user installing SDDDSM on
           W2K8.

     Defects fixed in 2.3.0.x
     4327  Datapath query device -d supports all devices

     Defects fixed in 2.2.0.x
     208338  Disable ports does not take paths offline
     4267  X64 Host crashes after receiving a TPC probe.
     4239  SDDDSM failed a path during concurrent esm download

     Defects fixed in 2.1.1.x
     3775  System crash when REPORT TARGET PORT GROUP fails due to lun not
           ready

  
===============================================================================

3.2  New Features

     Features added in 2.5.0.0
     5594 SCSI behavior change for Spectrum Virtualize.
     5593 Standalone SAS support.
     5592 Enhanced SDDGETDATA.BAT file to capture additional logs.
     5591 Increased SDD Log retention period.
     5590 Enhanced pathtest.exe tool for SDD Verbose log/debug
     
     Features added in 2.4.8.0
     5548 Enhanced Path Failover Mechanism.
     5558 New IO Routing Options for SQST/LQD/LBYTES LB Policies.
     5466 New Preferred Path Option.
     5551 New Query Port Option with Datapath.
     
     Features added in 2.4.7.0
     5510 PR management tool - GUI enhancement and support for all SCSI 3 PR
          commands. 
     5524 Enhanced "datapath query adapter -a" 
     5524 "sddShowCSVLuns.ps1" power shell script to show Clustered Shared Volume details

     Features added in 2.4.6.0
     5300 Support for extended SRB type
     5301 Quick failover to active node during SVC upgrade
     5405 Automatic NDVM re-scan
     5447 Format CLI output with color highlights
     5463 Add local timestamp to sdd log entry in the windows event mgmt
     5465 Support for hardware re-scan using a datapath command
     5471 Increase Log count and size by default

     Features added in 2.4.5.0
     5302  Path performance plug-in
     5406  Additional load balance policies
     5407  iSCSI Support
     5408  iSCSI in Hyper-v support
     5409  FC in Hyper-v support
     5420  Extend failgroup limit per adapter

     Features added in 2.4.4.0
     5275  Removed device should get deleted from SDD queue.
     5281  Provide cluster LUN reservation status on datapth query
     5333  Datapath query messages should be changed.
     5334  Error message should be changed for adaptstats query.
     5336  SDD should show the invalid device in single statement.
     5387  datapath should allow user to see internal build version of SDD

     Features added in 2.4.3.x
     4934  Display DS8800 8 ports FC adapter by 'datapath query portmap'
           xxxx Support IBM Storwize V7000   
     5107  Datapath should show lun/device size in output.
     5213  Ability to dynamically configure the size and count of 
           SDD log file(s)

     Features added in 2.4.2.x
     4657  SASWWPN using saswwpn.bat

     Features added in 2.4.1.x
     4534  Support Windows Enterprise Business Server(EBS)
     4559  Drop support of DS4K and DS5K devices. The user must uninstall
           the prior version of SDDDSM before installing the new SDDDDSM to
           remove the device definition from the host. 
     4567  Enhanced trace statement and updrade MPIO package to 1.23.3790.2451
          
     Features added in 2.4.0.x
     4326  RSSM support 
     
     Features added in 2.2.0.x
     4116  Windows 2008 Support

     Features added in 2.1.1.x
          3810  event log support in SDDDSM
     3755,3751  support essutil in SDDDSM
     3104,3745  support 'datapath clear count' in SDDDSM
     3772,3745  support 'datapath query version' in SDDDSM
     3505,3745  Support '-i' and '-d' option in 'datapath query device' to 
                run datapath repeatedly and by model
     3690,3745  support change policy dynamically using 'datapath set policy'
          3746  display SCSI address of paths using '-s' in 'datapath query
                device'

        
===============================================================================

3.3  Feature/Defect Details and Restrictions

     4657  SASWWPN using saswwpn.bat (download sasflash.exe from LSI website)
           For the feature to work you will have to download the sasflash 
           utility from LSI website and replace it in the SDDDSM package.
           Follow the procedure mentioned below to do so
          
           Note:The below link or steps could change if LSI modifies them.
          
             a> Visit the following link
                https://www.broadcom.com
             b> Search for "Installer_P20_for_Windows"
             c> Unzip the downloaded package.
             d> Get the "sasflash.exe" 
             e> Replace it with the sasflash.exe in SDDDSM package.
             f> Install the new package on the server.

             Note:              
             If SDDDSM is already installed on the server, get the sasflash.exe
             using the procedure above till step "d" and then replace the file
             "sasflash.exe" in "\Program Files\IBM\SDDDSM\" with the new one.
    
     4934  "datapath query essmap"  and "datapath query portmap" commands are
            only supposed to be used by IBM  PFE. 
            
     5616  Disk Surprise removals/Hyper-V VM Failovers.
      	   A workaround has been added to synchronize the multiple failovers issued by mpio to sdddsm.Otherwise this would
      	   cause some inconsitent device/path states to be maintained between mpio and sdddsm.
     
     5621  Issue with "Least IO and Weight" load balance policy.
     	   There were issues with IO re-balance on all the paths during failover and failback.This has been fixed by resetting 
     	   the adapter IO statastics, while the adapter state moves from failed to normal.
     
     5618  I/O failures in "two path configuration" because of fail over logic in 2480.
     	   There were issues with fail over logic added in 2480 while disks have only 2 paths remaining, causing IO failures.
     	   This has been fixed for the 2 path scenarios.
    
     5615  Hyper-V Crash or I/O issues while unmapping the Luns from storage.               
	   On Windows Server 2008, if there is a Hyper-V hosted on a SAN Disk and if one of the other mapped disk to this Parent 
           Host is un-mapped ,then there are chances of seeing Hyper-V crashes.



     
===============================================================================

3.4  Known Issues

     There is a known issue of "host crash" while installing sdddsm driver in Windows 2008 X64 (SP2).
     
     SDDDSM 2.5.0.0 is not supported with Windows 2008 X64 OS.   
     
     
=================================================================================

3.5  Known issues and workaround details

     
-------------------------------------------------------------------------------

4.0  User license agreement for IBM device drivers

     NOTICE: PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE
     PROGRAM AND DOCUMENTATION. IBM(R) WILL ONLY LICENSE THIS PROGRAM
     AND DOCUMENTATION TO YOU IF YOU FIRST ACCEPT THE TERMS OF THIS
     AGREEMENT. BY USING THE PROGRAM AND DOCUMENTATION, YOU AGREE TO
     ABIDE BY THESE TERMS AND APPLICABLE COPYRIGHT LAWS. IBM LIMITS
     YOUR ACCEPTANCE OF THE PROGRAM AND DOCUMENTATION TO THE TERMS
     OF THIS AGREEMENT.

     The Program and Documentation is owned by International Business
     Machines Corporation or one of its subsidiaries (IBM) or IBM
     suppliers, and is copyrighted and licensed, not sold. IBM does
     not transfer title to this Program and Documentation to you.
     The terms of this Agreement apply to any additional license copy
     of the Program or Documentation that IBM authorizes you to make.
     The term "Program" means the original program and all whole or
     partial copies of it, including portions merged with other
     programs. A Program consists of machine-readable instructions
     and related license materials.

     Under this Agreement, IBM provides you with a license to use
     the Program and Documentation only.

4.1  Background/Purpose

     IBM provides certain device drivers and Documentation under this
     Agreement. The device drivers and library support that IBM provides
     under this Agreement are in object code form only. Appendix A of this
     Agreement indicates the server platforms that are supported. IBM uses
     announcements to withdraw service for device drivers, feature codes,
     etc., on hardware and/or operating system platforms. IBM reserves
     the right to change the Programs or Documentation at any time without
     prior notice.

4.2  Definitions

     Derivative Work is a work based on a preexisting work, including
     a compilation. A Derivative Work prepared without the authorization
     of the copyright owner of the preexisting work would constitute
     a copyright infringement.

     Documentation is the Program documentation that IBM provides to you
     as follows: IBM Subsystem Device Driver and README files.

     Object Code is machine-readable instructions in Object Code format.
     It is substantially in  binary form and directly executable by
     a computer after suitable processing but without the intervening
     steps of compilation or assembly.

     Program is the IBM Subsystem Device Driver in Object Code form.

4.3  License grant

     IBM grants you a revocable, nontransferable, nonexclusive, worldwide,
     paid-up copyright license to:

     1. Use the Program and Documentation solely on the platforms and
     with the applicable IBM devices described in Appendix A of this
     Agreement.

     2. Maintain one copy of the Program for backup purposes only.

     Your license to the Programs and Documentation terminates when
     you no longer rightfully possess the IBM device described in
     Appendix A.

     This Agreement does not grant you any right or license to prepare
     Derivative Works of the Program and Documentation. Nothing in this
     Agreement grants either party any rights or licenses under any
     patents or patent applications regardless of whether use and/or
     execution of the software licensed herein may be construed to
     practice one or more patents.

4.4  Responsibilities

     You agree to use the Program and Documentation only with the IBM
     device described in Appendix A of this Agreement. You will not:

     1. otherwise copy, display, transfer, adopt, modify or distribute
        in any form, the Program and Documentation, except as IBM
        expressly authorizes in the Documentation
     2. decompile, disassemble, reverse engineer, or in any way modify
        the Program or Documentation
     3. sell, rent, lease, sublicense the Program or Documentation,
        unless explicitly permitted by law without the possibility
        of contractual waiver; and sublicense or assign the
        license for the Program and Documentation

4.5  Confidential information

     Any information which either party may disclose to the other
     party shall not be deemed to be confidential. If the parties
     require the exchange of confidential information, such exchange
     will be made under a separate written confidentiality agreement.

4.6  Limitation of liability

     IN NO EVENT SHALL IBM OR ITS SUPPLIERS BE LIABLE FOR COSTS OF
     PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF DATA, LOST
     PROFITS, BUSINESS INTERRUPTION OR ANY SPECIAL, INCIDENTAL, INDIRECT,
     CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES , EVEN IF ADVISED OF
     THE POSSIBILITY OF SUCH DAMAGES AND NOTWITHSTANDING THE FAILURE OF
     ESSENTIAL PURPOSE OF ANY REMEDY.

     You acknowledge that circumstances may arise where, because of a
     default on IBM's part or other liability, you may be entitled to
     recover damages. Under any such circumstances, you agree that in
     each such instance, regardless of the basis on which you are
     entitled to claim damages, IBM shall be liable only up to an amount
     equal to five thousand  U.S. dollars ($5,000). This limitation will
     not apply to claims relating to bodily injury (including death), and
     damage to real property and personal property.

4.7  Termination

     Termination for Cause. If either party fails to perform its
     obligations hereunder, then the other party may terminate this
     Agreement or the license granted hereunder for cause.

     Effect of Termination. The rights and licenses granted to you under
     this Agreement shall automatically terminate upon the termination of
     this Agreement.

4.8  Representations and warranties

     THE PROGRAM AND DOCUMENTATION IS PROVIDED ON AN "AS IS" BASIS.
     IBM MAKES NO REPRESENTATION OR WARRANTY, EXPRESS OR IMPLIED, WITH
     RESPECT TO THE PROGRAM AND DOCUMENTATION.IBM DISCLAIMS
     THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
     PARTICULAR PURPOSE AND NON-INFRINGEMENT. THE ENTIRE RISK ARISING
     OUT OF THE USE OR PERFORMANCE OF THE PROGRAM AND DOCUMENTATION
     REMAINS WITH YOU.


4.9  General Provisions

     Transfer. You may transfer possession of the program and its media
     and Documentation to another pay with the transfer of the IBM device
     described in Appendix A on which such Program is used with.
     If you do so, you must give the other party a copy of these terms
     and provide all user documentation to that party, and such party
     must first agree to such terms before it uses the Program and
     Documentation. Upon transfer of the Program and Documentation,
     you must destroy all your copies of the Program and Documentation.

     Severability. If any provision of this Agreement is found to be
     illegal or unenforceable, the remainder of this Agreement shall
     continue in full force and effect provided that the
     Agreement still effectuates the parties' original intent.

     Governing Law and Jury Trial Waiver. This Agreement shall be governed
     by the laws of the State of New York, excluding its conflict of law
     rules. Each party hereby agrees to waive its rights to a trial by
     jury.

     Modifications. No modification to this Agreement, nor any waiver
     of any rights, shall be effective unless agreed to in a writing
     that is executed by both parties, and the waiver of any breach or
     default of this Agreement shall not constitute a waiver of any
     other right or of any subsequent breach or default.

     Limitations on Legal Actions. Neither party will bring a legal action
     against the other more than two (2) years after the cause of action
     arose. Both parties will act in good faith to resolve disputes.

     Order of Precedence. In the event of a conflict in terms between
     this Agreement and another agreement, the terms of this Agreement
     shall take precedence and prevail over such other terms.

     Entire Agreement. This Agreement constitutes the entire and
     exclusive agreement between the parties with respect to this
     subject matter. All previous discussions and agreements
     with respect to this subject matter are superseded by this Agreement.

4.10 Appendix A

     This Appendix indicates:

     1. Which specific IBM devices the Program and Documentation are to be
        used with:

        IBM devices: IBM TotalStorage SAN Volume Controller

     2. For what specific server platforms the Program and Documentation
        are to be used on and for what software requirements apply to
        the use of the Program and Documentation reference
        the ESS Open Systems Support Web page,located at:

            www.ibm.com/storage/support/2145 for
            IBM TotalStorage SAN Volume Controller support

    CONTINUING WITH THIS INSTALLATION CONSTITUTES YOUR ACCEPTANCE OF THE
    TERMS OF THE ABOVE 'USER LICENSE AGREEMENT FOR IBM DEVICE DRIVERS'

-------------------------------------------------------------------------------

5.0  Notices

     This information was developed for products and services offered
     in the U.S.A.

     IBM may not offer the products, services,or features discussed in
     this document in other countries. Consult your local IBM
     representative for information on the products and services
     currently available in your area. Any reference to an IBM product,
     program, or service is not intended to state or imply that only
     that IBM product, program, or service may be used.

     Any functionally equivalent product, program, or service that does
     not infringe any IBM intellectual property right may be used
     instead. However, it is the user's responsibility to evaluate and
     verify the operation of any non-IBM product, program, or service.

     IBM may have patents or pending patent applications covering subject
     matter described in this document. The furnishing of this document
     does not give you any license to these patents.

     You can send license inquiries, in writing, to:

        IBM Director of Licensing
        IBM Corporation
        North Castle Drive
        Armonk, NY 10504-1785
        U.S.A.

     For license inquiries regarding double-byte (DBCS) information,
     contact the IBM Intellectual Property Department in your country or
     send inquiries,in writing, to:

        IBM World Trade Asia Corporation
        Licensing
        2-31 Roppongi 3-chome, Minato-ku
        Tokyo 106, Japan

     The following paragraph does not apply to the United Kingdom or any
     other country where such provisions are inconsistent with local law:

     INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION
     "AS IS" WITHOUT WARRANTY OF ANY KIND,EITHER EXPRESS OR IMPLIED,
     INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
     NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
     PURPOSE. Some states do not allow disclaimer of express or implied
     warranties in certain transactions, therefore, this statement may not
     apply to you.

        Any references in this information to non-IBM Web sites are provided
        for convenience only and do not in any manner serve as an endorsement
        of those Web sites. The materials at those Web sites are not part of
        the materials for this IBM product and use of those Web sites is at
        your own risk.

     This information could include technical inaccuracies or
     typographical errors. Changes are periodically made to the
     information herein; these changes will be incorporated in new
     editions of the publication. IBM may make improvements and/or
     changes in the product(s) and/or the program(s) described in
     this publication at any time without notice.

     IBM may use or distribute any of the information you supply in any
     way it believes appropriate without incurring any obligation to you.

        Licensees of this program who wish to have information
        about it for the purpose of enabling: (i) the exchange of information
        between independently created programs and other programs
        (including this one) and (ii) the mutual use of the information which
        has been exchanged, should contact:
                IBM Corporation
                Information Enabling Requests
                Dept. DZWA
                5600 Cottle Road
                San Jose, CA 95193
                U.S.A.

        Such information may be available, subject to appropriate
        terms and conditions, including in some cases, payment of a fee.

        The licensed program described in this document and all licensed
        material available for it are provided by IBM under terms of the
        IBM License Agreement for Non-Warranted Programs.

     Any performance data contained herein was determined in a
     controlled environment. Therefore, the results obtained in other
     operating environments may vary significantly. Some measurements
     may have been made on development-level systems and there is no
     guarantee that these measurements will be the same on generally
     available systems. Furthermore, some measurement may have been
     estimated through extrapolation. Actual results may vary. Users
     of this document should verify the applicable data for their specific
     environment.

     Information concerning non-IBM products was obtained from the
     suppliers of those products, their published announcements or
     other publicly available sources. IBM has not tested those
     products and cannot confirm the accuracy of performance,
     compatibility or any other claims related to non-IBM products.
     Questions on the capabilities of non-IBM products should be
     addressed to the suppliers of those products.

     This information contains examples of data and reports used in
     daily business operations. To illustrate them as completely
     as possible, the examples include the names of individuals,
     companies, brands, and products. All of these names are fictitious
     and any similarity to the names and addresses used by an actual
     business enterprise is entirely coincidental.

===============================================================================

     IBM agreement for licensed internal code

     +---- Read Before Using -----------------------------------------------+
     |IMPORTANT                                                             |
     |                                                                      |
     |YOU ACCEPT THE TERMS OF THIS IBM LICENSE AGREEMENT FOR MACHINE CODE BY|
     |YOUR USE OF THE HARDWARE PRODUCT OR MACHINE CODE. PLEASE READ THE     |
     |AGREEMENT CONTAINED IN THIS BOOK BEFORE USING THE HARDWARE PRODUCT.SEE|
     |IBM agreement for licensed internal code.                             |
     |                                                                      |
     +----------------------------------------------------------------------+

     You accept the terms of this Agreement(3)  by your initial use of a
     machine that contains IBM Licensed Internal Code (called "Code"). These
     terms apply to Code used by certain machines IBM or your reseller
     specifies (called "Specific Machines"). International Business Machines
     Corporation or one of its subsidiaries ("IBM") owns copyrights in Code
     or has the right to license Code. IBM or a third party owns all copies
     of Code, including all copies made from them.

     If you are the rightful possessor of a Specific Machine, IBM grants you
     a license to use the Code (or any replacement IBM provides) on, or in
     conjunction with, only the Specific Machine for which the Code is
     provided. IBM licenses the Code to only one rightful possessor at a
     time.

     Under each license, IBM authorizes you to do only the following: 
     1. execute the Code to enable the Specific Machine to function according
        to its Official Published Specifications (called "Specifications");
     2. make a backup or archival copy of the Code (unless IBM makes one
        available for your use), provided you reproduce the copyright notice
        and any other legend of ownership on the copy. You may use the copy
        only to replace the original, when necessary; and
     3. execute and display the Code as necessary to maintain the Specific
        Machine.

     You agree to acquire any replacement for, or additional copy of, Code
     directly from IBM in accordance with IBM's standard policies and
     practices. You also agree to use that Code under these terms.

     You may transfer possession of the Code to another party only with the
     transfer of the Specific Machine. If you do so, you must 1) destroy all
     your copies of the Code that were not provided by IBM, 2) either give
     the other party all your IBM-provided copies of the Code or destroy
     them, and 3) notify the other party of these terms. IBM licenses the
     other party when it accepts these terms. These terms apply to all Code
     you acquire from any source.

     Your license terminates when you no longer rightfully possess the
     Specific Machine.

     Actions you must not take

     You agree to use the Code only as authorized above. You must not do, for
     example, any of the following: 
     1. Otherwise copy, display, transfer, adapt, modify, or distribute the
        Code (electronically or otherwise), except as IBM may authorize in
        the Specific Machine's Specifications or in writing to you;
     2. Reverse assemble, reverse compile, or otherwise translate the Code
        unless expressly permitted by applicable law without the possibility
        of contractual waiver;
     3. Sublicense or assign the license for the Code; or
     4. Lease the Code or any copy of it. 
     
-------------------------------------------------------------------------------

6.0  Trademarks and service marks

     The following terms are trademarks of the International Business
     Machines Corporation in the United States, or other countries,
     or both:

        AIX
        AS/400
        Enterprise Storage Server
        HACMP/6000
        IBM
        IBM logo
        IBM TotalStorage
        iSeries
        Netfinity
        NetVista
        Operating System/400
        pSeries
        RS/6000
        Seascape
        SP
        System/360
        System/370
        System/390
        The eServer Logo
        TotalStorage
        Versatile Storage Server
        xSeries
        zSeries
        z/Architecture
        z/OS

     Microsoft, Windows, Windows NT, and the Windows logo are registered
     trademarks of Microsoft Corporation.

     Java and all Java-based trademarks are trademarks of Sun Microsystems,
     Inc. in the United States, other countries, or both.

     UNIX is a registered trademark of The Open Group in the United States
     and other countries.

     Other company, product, and service names may be trademarks or
     service marks of others.

-------------------------------------------------------------------------------
(C) Copyright IBM Corporation 2000 - 2017. All rights reserved.






