============================ R E L E A S E N O T E S ============================ Broadcom NetXtreme II iSCSI Offload Driver Copyright (c) 2007 - 2009 Broadcom Corporation All rights reserved. NOTE: This driver requires KB957910 when running on Server2003 (virtual miniport support for crashdump). This hotfix can be downloaded from http://support.microsoft.com/kb/957910. For F6 installation to iSCSI drive, the hotfix has to be slip-streamed to the Windows 2003 installation CD. Version 5.2.11.0 (December 17, 2009) ================================== - Cont00045001 - iSCSI boot - 5709 - MPIO: MS initiator shows "reconnecting" when plugging in the primary port Version 5.2.10.0 (December 14, 2009) ================================== - Cont00044641 - Windows iSCSI Offload: Windows iSCSI Offload: Running Ndis driver load/unload with L4 traffic causes LUNs to go offline - Fix condition where failed send targets request were not completing to WMI Version 5.2.9.0 (December 1, 2009) ================================== - Cont00044718 - Fixed a problem where IPv6 parameters are not configured if system is booted with IPv4 path. Version 5.2.8.0 (November 24, 2009) ================================== - Cont00044654 - Windows iSCSI Offload: Cannot discover an iscsi target Version 5.2.7.0 (November 20, 2009) ================================== - Cont00043984 - Extra iSCSI connections are created when CHAP ID field is populated - Cont00043593 - Fixed a problem where iSCSI boot IPv4 failed if IPv4 parameters had been configured with BACS. - Cont00044127 - Fixed problem where statically configured IPv4 parameter is not displayed in BACS when system is booted with IPv6 path. Version 5.2.6.0 (November 03, 2009) ================================== - Cont00044091 - Windows 2003 BSOD during hibernation testing - Cont00044260 - Windows iSCSI Offload: When persistent targets are enabled and unreachable event log is flooded Version 5.2.5.0 (September 11, 2009) ================================== - Cont00043314 - Windows iSCSI Offload: When resource reservations are set in BACS and TOE is 0, HBA gets no IPv6 - Cont00043585 - Update T5.2 driver's inf product_version string to 14.2.0 - Cont00043331 - Can not exit MCS GUI, on the reconnecting interface Version 5.2.4.0 (August 28, 2009) ================================== - INF Updates - Built with WDK 6001.18000:env=Server2003 Version 5.2.3.0 (August 27, 2009) ================================== - Remove link state check when initiating connections, persistent targets were not showing up as "reconnecting" - Cont00042527 - iBoot-Win2008R2: IPv4 address missing when booting to IPv6 target - Fix a memory leak where connection resources were not freed if session recovery was in progress during shutdown - Every connection gets it's own path and neighbor structures, no more sharing - ARP cache timeout is decreased from 20 minutes to 1 minute Version 5.2.2.0 (August 17, 2009) ================================== - Remove link state check when waiting for login completion Version 5.2.1.0 (August 14, 2009) ================================== - Cont00043167 - W2k3SP2x64 Locks up during reboot after Windows Updates are installed - Fixed a problem where Router Advertisement and DHCPv6 are not configured on the interface if there is no static IPv6 address configured in the registry. iSCSI boot path does doesn't have this problem. This problem was introduced in v5.2.0. Version 5.2.0.0 (August 13, 2009) ================================== - Cont00042645 - Make FindTargetClone compare also target portal IP address and port - Cont00042328 - iBoot:Win2008R2-7229: Eventviewer error: Login request failed. The login response packet is given in the dump data. - Cont00042460 - iBoot:Win2008R2: iSCSI Boot MPIO team via 2nd NIC's HBA path failed - Cont00042527 - IPv4 information is missing in BACS when system is booted with IPv6 path. - Cont00043122 - Windows iSCSI Offload: Xinan: Initiator displays CHAP incorrectly as Mutual CHAP - Cont00041253 - Windows iSCSI Offload: UNH - Login Test #24.1 C bit - Enhanced driver in OIS boot path so that IPv6 Router Advertisement configuration is in SYNC with iSCSI ROM configuration. - Built with WDK 7600.16385.0:env=Server2003, previous OIS versions were built with WDK 6001.18000:env=Server2003 - Remove crashdump libs Version 5.0.11.0 (October 15, 2009) ================================== - Cont00044091 - Windows 2003 BSOD during hibernation testing Version 5.0.10.0 (October 13, 2009) ================================== - Cont00042460 - iBoot:Win2008R2: iSCSI Boot MPIO team via 2nd NIC's HBA path failed Version 5.0.9.0 (July 28, 2009) ================================== - Cont00042645 - Persistent iSCSI connections are missing after reboot (mutual CHAP enabled) Version 5.0.8.0 (July 6, 2009) ================================== - Fix WMI query bug Version 5.0.7.0 (June 20, 2009) ================================== - Cont00040581 - Win 7-7127: Clicking on the MCS tab will cause interface to hang - Cont00041811 - 5709:VBD:Win7: bxvbda!l4_abort+bc; Assert is seen while passing L4 sockdie traffic to SLB team and disable VBD Version 5.0.6.0 (May 27, 2009) ================================== - Change default DHCPv6 address prefix to be 64 bits, was 128 bits in previous versions. - Cont00041177 - Windows iSCSI Offload: Xinan: Not able to discover target. - Cont00041357 - Fixed a problem where MPIO failed in an iSCSI boot IPv6 environment. This only happens in non-static IPv6 configuration and system is booted with one cable only. - Cont00041507 - 5709 Fails to Free/Mount/Dismount Media Device with OIS v5.0.4/5.0.5. Version 5.0.5.0 (May 13, 2009) ================================== - Cont00041140 - Fixed a problem where ISCSI Boot IPv6 fails when interface is configured with VLAN enabled. - Cont00041114 - initialize global::ripcbinfo.gbl Version 5.0.4.0 (May 8, 2009) ================================== - Fixed MTU to MSS calculation which broke in 5.0.0.0 - Cont00039944 - Reduce CPU use when iSCSI is at idle Version 5.0.3.0 (May 1, 2009) ================================== - Fixed a problem where iSCSI boot IPv6 fails if source/destination IPv6 addresses are not link-local addresses. - Cont00040905 - 5709: Break "bxois!WaitForLoginCompleteion+84 " occurs when booting to W2K3x86 via iboot L4 path (DHCP enabled) Version 5.0.2.0 (April 29, 2009) ================================== - Added iSCSI boot IPv6 support. Version 5.0.1.0 (April 16, 2009) ================================== - Cont00040172 - Windows iSCSI Offload: processkcqe break running Iometer stress with multiple I/O sizes - Cont00039491 - No IPv6 Link Local address reported in WMI PortInfo class - Reverted Cont00038174 - Cont00040244 - iSCSI: Win7: "bxois!reserve_active_local+1ec" When trying to discover targets - Cont00040326 - iSCSI: bxois!reserve_active_local+1ec Version 5.0.0.0 (February 18, 2009) ================================== - Cont00038521 - Windows iSCSI Offload: Add Jumbo Frame support to iSCSI HBA for NX2 1G devices - Cont00038174 - Windows iSCSI Offload: Targets status shows reconnecting while HBA get different ip address from DHCP server - Cont00039517 - LOM becomes unresponsive during dual port load/unload + traffic stress when connected to iSCSI target. - Added jumbo frame support - Change SRB mapping mode from STOR_MAP_NON_READ_WRITE_BUFFERS to STOR_MAP_NO_BUFFERS Version 4.8.101.0 (March 2, 2009) ================================== - Cont00039712 - iSCSI boot: Crashdump doesn't create dump file when connecting to target via second port with Independant target portal enabled ---------------------------- Contains crashdump library Version 4.8.5 March 2, 2009 ---------------------------- Fixes: ============= 1. Problem : Crashdump driver doesn't create dump file in an MPIO configuration were there are more than 3 offload devices in the system. (CQ#39712) Cause: In the above scenario, OIS driver would pass valid iBFT to the crash dump library and virtual addresses of devices might get swapped. Change: Changed the iSCSI crash dump driver to check this condition to make sure that virtual addresses of devices match with NIC0 and NIC1 in the iBFT table. Version 4.8.100.0 (February 12, 2009) ================================== - Cont00039517 - LOM becomes unresponsive during dual port load/unload + traffic stress when connected to iSCSI target. Version 4.8.8.0 (February 11, 2009) ================================== - Cont00039138 - CQ39518: Everest 1.0- iSCSI boot: Crashdump doesn't create dump file when connecting to target via second Quiver NIC with MPIO enabled ---------------------------- Contains crashdump library Version 4.8.3 February 11, 2009 ------------------------------- Fixes: ============= 1. Problem : Crashdump driver doesn't create dump in some corner cases with 10G-based devices. (CQ#39518) Cause: Context block was not fully initialized before submitting to the device. Change: Driver initialization routine was changed to initialize context block completely. Version 4.8.50.0 (January 30, 2009) ================================== - Cont00039354 - Windows iSCSI: Tape test fails when running against a AIT-5 Sony tape drive - Cont00039396 - Update inf file product_version" to "12.8.0" Version 4.8.7.0 (January 13, 2009) ================================== - Cont00039138 - Everest1.5:OIS:Mezz - X64_0x9F_IMAGE_bxois.sys during reboot after running netperf stress with iscsi background traffic on 1 function Version 4.8.6.0 (January 8, 2009) ================================== - Cont00039152: workaround for WMI buffer overflow problem. To be rootcaused with MS assist, MS bug suspected. - Enable DHCPv6 support - Cont00039079 - Galactus: Assertion of OIS driver seen after stress test on all ports Version 4.8.5.0 (January 6, 2009) ================================== - Cont00038116 - BACS3: iSCSI: IPv6 address format not being correctly read by registry - Cont00039121 - Windows iSCSI Offload: Everest 1.5 cx4: Blue screen at X64_0x50_W_bxois!memset+b0 while connecting max connections. - Change copyright year to 2009 Version 4.8.4.0 (December 30, 2008) ================================== - Cont00038937 - Windows iSCSI Offload: Cannot discover and login to target using static ipv6 address. - Cont00039091 - Windows iSCSI Offload: X64_0x0_bxois!ConnStateChangeCommitWorkitem+2f4 Version 4.8.3.0 (December 5, 2008) ================================== - Cont00038837 - Windows iSCSI Offload: Everest 1.5 Krypton Mezz: Not able to login to Equallogic target Version 4.8.2.0 (November 17, 2008) ================================== - Added UEFI boot support. - Cont00034995 - Windows iSCSI Offload: Delayed write failed running Nuclear Stress to 5708 overnight - Cont00037002 - Fixed a problem where system gets BSOD when device is continously enabled/disabled with DTM. - Cont00037351 - Broadcom iSCSI offload returns incorrect status upon cable failure - Cont00038356 - Everest1.5:ISCSI:Mezz - W2K3x64 - HP branded INF missing necessary lines to install OIS driver - Cont00038428 - Everest: Add support for OEM 10Gb devices to iSCSI offload driver - Changed to load Unified Crash Dump drivers for both Teton/Xinan and Everest devices in Win2k8 environment. The same crash dump driver (bnxcdx.sys or bnxcd64.sys) is used for all devices. - Integrated the following crash dump library for Win2K3 environment. ---------------------------- Contains crashdump library Version 4.8.0 November 14, 2008 ---------------------------- Enhancements: ============= 1. Added support for BCM57711 with SFP+ support. Version 4.8.1.0 (November 3, 2008) ============================== - Initial release to support 57711 Version 4.6.16.0 (October 31, 2008) ============================== - Cont00038245 - 5709:ISCSI:TOE: bxois!ksif_dereference+11 Bsod occured while passing traffic to slb team - Set history queue size to match SQ size on Everest. It used to be SQsize / 2 Version 4.6.15.0 (October 20, 2008) ============================== - Remove the fix for Cont00038023, it did not work as expected. Also remove the associated ASSERT since it is invalid, arm CQ can be entered via race. Version 4.6.14.0 (October 17, 2008) ============================== - Cont00037861 - TOE:iSCSI: BSOD occurred while running iLab's TOE - Fix:Pass LUN to ResetLun TM WQE. - Cont00038023 - Windows iSCSI Offload: X64_0x0_bxois!E_ArmCq+197 running SUMS, consider the CQ unarmed only if a kCQE with a CID != 0xFFFFFFFF arrives. Version 4.6.13.0 (October 17, 2008) ============================== ---------------------------- Contains crashdump library Version 4.6.13 October 16,2008 ---------------------------- Enhancements: ============= 1. Added crashdump support for iSCSI offload path with BCM5771x devices in Windows 2003. (CQ#37708) Version 4.6.12.0 (October 16, 2008) ==================================== - Cont00037951 - Windows iSCSI Offload:Everest:A1: X64_0xD1_lsi_sas+16ced exceeding resource reservations - This version of the driver is built with the WLH version of scsiwmi.lib - Cont00037866 - Everest 1.0:ISCSI:Basp5: evbda!um_clnt_unbind+471; Assert occured when shutting down SUT after passing heavy iscsi, sockdie, and chariot traffic - Enable ksock refcount tracing in the debug build Version 4.6.11.0 (October 13, 2008) ==================================== - Cont00037787 - Windows iSCSI Offload:Everest:A1: bxois!MarkConnectionInactive break running SUMS - Cont00037792 - BSOD after reboot with OIS 4.6.10 (if <64 tasks configured) Version 4.6.10.0 (October 2, 2008) ==================================== - Cont00034843 - Windows iSCSI Offload:iSCSI device not able to get IPv6 address from DHCP - new doorbell mapping to support EVBD mapping doorbells as needed Version 4.6.9.0 (September 29, 2008) ==================================== - Fix a bug where the connection could get stuck in "waiting for completion DPC to complete, befor going to shutdown or abort". - Cont00037583 - Everest1.0: iSCSI boot - When booting using 2 path MPIO, alternating path indicates reconnecting - Cont00037402 - Windows iSCSI Offload: Everest: A1: bxois!InsertHeadList+3d while running Read/Write stress test - multiple sessions - Cont00037578 - Windows iSCSI Offload: Everest: A1: X64_0x0_evbda!um_clnt_unbind+471 while running device reset - Cont00037392 - Windows iSCSI Offload: Break while running Common Scenario Stress on DTM 0xD1_W_bxois!T_ArmCq+64 Version 4.6.8.0 (September 25, 2008) ==================================== - Log header digest errors properly, previous drivers would log both header and data digest errors as "data digest error" - Fix a bug where the connection state could be changed incorrectly while we are waiting for recovery. - Cont00037232 - Windows iSCSI Offload:Everest:A1: bxois!ConnStateChangePump running Nuclear Stress - Cont00037357 - Windows iSCSI Offload:Everest:A1: System gets debug break while running meatgrinder - Cont00036966 - Windows iSCSI Offload:Everest:A1: X64_0x0_bxois!PollCq running SUMStress - Cont00037402 - Windows iSCSI Offload:Everest:A1: bxois!InsertHeadList+3d while running Read/Write stress test - multiple sessions Version 4.4.28.0 (September 17, 2008) ==================================== - OEM refresh, same as 4.6.7.0, only version number and INFs rolled back to T4.4 Version 4.6.7.0 (September 15, 2008) ==================================== - Cont00037345 - Fixed a problem where MPIO doesn't work on Everest in iSCSI boot mode. Version 4.6.6.0 (September 10, 2008) ================================== - Cont00037170 Protect against route being deleted from under our feet before we have a chance to offload the connection - FIX: When TCP connect times out, OIS was not returning error code to WMI request - Added iSCSI boot support for Everest device. - Cont00037222: Windows iSCSI Offload: Everest: A1: initiator loses iscsi connection while passing traffic with meatgrinder - Cont00037204 - Windows iSCSI Offload: Error while removing persistent target with OIS v4.6.5 (Cont00037079 regression) - Cont00036508 - Add Win2003 F6 installation support for E1.0/E1.5 Version 4.6.5.0 (September 5, 2008) ============================== - Cont00037079 - iSCSI target session drop after a host reboot on Broadcom 5709C NIC (multiple persistent connections to the same target) - Cont00037103 - Broadcom 5709C iSCSI off-load driver and iSCSI Log-in Request Failed Error - UNH test warning: DUT closes connection after receiving NopIn that reopens command window - Cont00036986 - Windows iSCSI Offload:Everest:A1: break 0x0_VRF_bxois!ChangeConnState running r/w stress multi session - Cont00036901 - Windows iSCSI Offload:Everest:A1: DTM - Fails WMI MSISCSI_TCPIPConfig test. (Introduced in 4.6.0.0) - Cont00037083 - Everest: Blue screen occurs when attempting to run BACS diagnostics, create_fctx() was outputing a pointer even though the function failed - Make INFs unicode - Fix all prefast warnings Version 4.6.4.0 (August 15, 2008) ============================== - Fix an issue introduced in 4.6.3.0 where connection recovery would never succeed on Everest Version 4.6.3.0 (August 14, 2008) ============================== - Fix an issue where seq_2_notify could be written too frequently on Everest - Add new device IDs - reset redirect request, to make sure we won't fall into infinite loop if redirected target fails login or doesn't connect Version 4.6.2.0 (July 31, 2008) ============================== - Fix an NMI problem on Teton/Xinan caused by setting PTEs backwards in the init offload 2 kWQE. Version 4.6.1.0 (July 30, 2008) ============================== - Cont00036114 - Windows iSCSI Offload: show performance objects in PerfMon. Previously they were only shown if MS iSCSI port was enabled. - Cont00031528 - Windows iSCSI Offload: BACS should show IP address of iscsi interface - Cont00035153 - Product version string for T4.6 should be 12.6.0 - iSCSI OIS driver - Detect FW initialization failure - Remove some asserts that were invalid for Teton/Xinan Version 4.6.0.0 (July 15, 2008) ============================== - Remove the L4_IOC_SET_STACK_PARAMS call from ftsk, this OIS driver will only work with VBDs 4.6.x and newer - Use DataTransferLength instead of MmGetMdlByteCount() when building SGLs just in case MDLs arrive chained. - Add Everest 1.0 IDs to the INF files - Add a 3rd init offload kWQE for Everest, it contains additional info about the first queue pages which Everest needs - Check Adapter->EnableIpv6 flag before allowing IPv6 connections Version 4.4.27.0 (July 1, 2008) ============================== - Cont00036103 - iSCSI offload does not discover more than 200 volumes using SendTargets Version 4.4.26.0 (June 19, 2008) ============================== - Cont00035775 - iSNS_DispatchTransactionResult break coming out of s4 (previous fix was incomplete) - Cont00035941 - X64_0x7E_bxois!l4if_ofld_path+28d running SUMStress ---------------------------- Contains crashdump library Version 4.4.2 June 17, 2008 ---------------------------- Fixes: ============= 1. Problem : Crashdump driver failed to create dump file when iSCSI target is HP MSA 1510i. Cause: Crashdump driver doesn't handle WRITE correctly when storport requests to write a block that is larger than iSCSI target's MaxRecvDataSegmentLength. Change: Fixed driver to handle above case correctly by sending first burst and multiple Data-out segments after R2T is received. Version 4.4.25.0 (June 11, 2008) ============================== - Cont00035715 - iSCSI offload does not properly implement temporary redirect - Cont00035322 - Windows iSCSI Offload: Xinan firmware report incorrect stats - Cont00035372 - STOP 7e running driver load/unload overnight 5709sB2 - Cont00035775 - iSNS_DispatchTransactionResult break coming out of s4 - Cont00035615 - 0xD1_W_bxois!CommandPump running SuperUltraMegaStress - Cont00035692 - DriverName field is NULL when MSiSCSI_HBAInformation is queried Version 4.4.24.0 (May 13, 2008) ============================== - Cont00035296 - Windows iSCSI Offload: DTM - WMI Test fails when there are no active connections on one of ports with both ports enabled - During iSCSI boot, windows iSCSI session will now reinstate BIOS iSCSI session Version 4.4.23.0 (April 29, 2008) ============================== ---------------------------- Contains crashdump library Version 4.4.1 April 28, 2008 ---------------------------- Fixes: ============= 1. Problem : Crashdump driver intermittently takes a long time to create dump file in the following scenarios: * MPIO is enabled. * Boot with secondary NIC and primary NIC doesn't have valid link. * DHCP is enabled on the primary NIC. * Do crashdump with primary NIC. (CQ#34971) Cause: Since primary NIC doesn't have link during boot, crashdump driver detects that and it starts a DHCP procedure to acquire IP address for the primary interface. There is a bug in the timeout logic (processor tick overflows) that can cause this timeout logic to fail. Change: Fixed DHCP timeout logic. Version 4.4.22.0 (April 24, 2008) ============================== ---------------------------- Contains crashdump library Version 4.4.0 April 23, 2008 ---------------------------- Fixes: ============= 1. Problem : Crashdump driver doesn't create dump file in the following scenarios: * Boot with offload path. * MPIO is enabled. * "Use Independent Target Portal" is enabled. * Boot with primary NIC and crashdump with secondary NIC (e.g cable on primary NIC is unplugged). (CQ#34934) Cause: Crashdump driver didn't extract second set of target portal information for the secondary NIC. Change: Updated crashdump driver to extract second set of target portals information for the secondary adapter. 2. Problem : Crashdump driver failed to generate dump file when booting from secondary interfacfe and CHAP is enabled in an MPIO configuration. (CQ#34935) Cause : Due to recent changes, MPIO mode is always enabled when secondary NIC is enabled. However, crashdump driver still relies on MPIO bit in the NVRAM on the primary NIC. This causes the crashdump driver not to use CHAP information from the primary NIC. Change: Updated crashdump driver to ignore MPIO configuration bit in the NVRAM. 3. Problem : Crashdump driver fail to perform mutual chap authentication. Change : Updated crashdump driver to initialize target CHAP information in the target block before invoking iSCSI login procedure. Version 4.4.21.0 (April 17,2008) ============================== - Cont00034779 - WindowsiSCSI:iSCSI Session drops and does not recover when Extracting and installing MS Initiator on W2k3 installed via iscsi_txtModesetup. - Cont00034801 - Windows iSCSI Offload: DTM - Sleep Stress Test has problems going into S1 with v4.4.20 - Cont00034772 - Windows iSCSI Offload: DTM - Plug and Play test breaks with ois v4.4.20 - Cont00034735 - Windows iSCSI Offload: Xinan: Stop 7e running driver load/unload on both ports - Add more debug information in some event log entries - Cont00034810 - Windows iSCSI Offload: iscsi driver assigns an additional static IPv6 address to the iscsi adapter when assigning a static IPv6 address - IPv6 router advertisement processing turned ON by default if registry config doesn't exist - Pad zero data to unusual SRBs that have Xfer length > Mdl->ByteCount Version 4.4.20.0 (April 9, 2008) ============================== - Cont00034701 - Windows iSCSI Offload: Unable to remove persistent target with ois v4.4.19 - iSCSI boot with MPIO now allows user to configure DHCP flag, TargetIP and Target PortNumber on per a port basis. - Cont00034572 - iBoot via OIS: BSOD (stop F4 error) seen after fail-over - If iSCSI session is in recovery, return SRB_STATUS_BUSY for READ/WRITE requests. Same for outstanding requests at the time session failure was first detected. - DHCP address now released when interface is destoryed to prevent a future callback with an invalid context - Static IPv6 addresses are now supported - IPv6 Router Solicitation is now supported if configured ON in the registry, soliciations only occur during initial load and link down/up events - fixed FTSK interface configuration issues when two ports are brought up at the same time - added product_version registry value - remove Everest IDs from the INFs Version 4.4.19.0 (April 3, 2008) ============================== - IPv6 router solicitation implemented which occurs during load and link down/up - fixed a memory leak in the FTSK mbuf code that occurs at the socket layer - Cont00034587 - fix crash when MPIO stand-by connection was plugged back after the system is fully boot up, while DHCP is used. - Cont00034552 - IP address was not shown for static IP - Cont00034484 - Memory dump file is not created when a 2k3 machine crashes. Crashdump lib is back in the ois driver since KB943295 does not support virtual mode crash dump. The crashdump lib path is used on 2k3 and only supports teton & xinan, not Everest. Longhorn crash is supported by the virtual model so it will work for all chips. Version 4.4.18.0 (March 28, 2008) ============================== - Fix address family when connecting using zero value local address. - Clean out some unneeded debug ASSERTS. Version 4.4.17.0 (March 27, 2008) ============================== - Added IPv6 route entry vs route timer reference counting - OIS now return multiple IPv6 addresses for MSiSCSI_PortalInfo class - FTSK l2if now accepts all multicast needed for IPv6 Neighbor Discovery - Cont00034461 - Add hardware IDs to INFs for 10G adapters Version 4.4.16.0 (March 24, 2008) ============================== - Cont00034342 - Windows iSCSI Offload: Xinan: iSCSI Initiators hangs after login to multiple sessions - Cont00034232 - Windows iSCSI offload: system breaks while formatting iscsi disk in IPv6 environment - Fixed FTSK memory leak when getting memory buffer - Fixed FTSK reference count on VBD packet pool - Fixed MSS size for non jumbo IPv6 - Workaround for SendTargets. Now scrubs TargetAddresses that have IPv6 address with scope ID Version 4.4.15.0 (March 12, 2008) ============================== - iSCSI asynch msg "target requests logout" will be handled with a logout-buschange-login-buschange. Some targets use this as a mechanism to change their access list / LUN mappings - fixed a race condition that could corrupt the ftsk IPv6 input queue - ftsk now reserves proper IPv6 active connection info and uses high ephemeral port values - ftsk now ensures neighbor information is uploaded after a synchronous path upload - ftsk no longer advertises a DHCP Client Identifier because the iSCSI boot code also does not use a client identifier, this change was made because some DHCP servers will assign a different IP address to ftsk because address cache lookups can be based on the client identifier Version 4.4.14.0 (March 7, 2008) ============================== - ftsk protocol domain management has been modified to support both Teton and Xinan cards simultaneously on the same system Version 4.4.13.0 (March 5, 2008) ============================== - Built with WDK 6001.18000 - Support Everest crashdump - iscsicli ping now works with IPv6 addresses - ftsk debug messages now contain an ftsk context block pointer Version 4.4.12.0 (February 27, 2008) ============================== - Reset HSI structures for Everest before connection recovery - Fix a bug with connection logout during system shutdown - Fix an FTSK bug where a mutex was being acquired in a spinlocked section Version 4.4.11.0 (February 25, 2008) ============================== - Added iscsi_conn_id to the destroy kWQE so that the Everest VBD can release the right memory resources - Fix a bug where BD flags (first/last) were being set in the wrong BDs - Cont00033906 - Secondary target shows inactive when connect to another target via iscsiboot - Enable IPv6 Version 4.4.10.0 (February 8, 2008) ============================== - Fix everest IDs in the INfs - Lots of FTSK updates in preparation for IPV6, this version still only supports IPV4 - Cont00033777 - Workaround for "Login Failed" case caused by certain noncompliant iSCSI targets. - Cont00033447 - check return values from calls before proceeding when initializing interface - Cont00033616 - Use spinlock instead of interlocked slist for workitem pool. Slist was prone to ABA problem in the long load/unload run. - Cont00033616 - Synchronize all ks_ calls with the ftsk worker thread: post a request and wait for its completion. Actual request is done inside the thread. - Cont00033616 - Post all callbacks from VBD into the worker thread, rather than executing in line. - Make sure CompleteOrDie is set for logout. - If iSCSI session is in recovery, return SRB_STATUS_BUS_RESET instead of SRB_STATUS_BUSY for new SRBs Version 4.4.9.0 (January 24, 2008) ============================== - Cont00033610: Don't reset fOffline immediately on reconnection, give the recovery callback a chance to examine it and call storport notification. - Cont00033595 - set OUT OF RESOURCES error code when iSCSI initial offload fails - Cont00033185 Windows iSCSI Offload: UNH - Login Test #25.1 Redirection: previous fix for TargetPortalTag was incorrect. - Add release signatures to drivers (prep.cmd) - Add Everest support, same driver works on both Teton/Xinan and Everest - Update INFs with Everest IDs - All builds are for Server2003: no crashdumplib, virtual model only, same binary works on both 2K3 and LH - Requires KB943295 when running on Server2003 (virtual model support for server2003) - KB932755 (extended storport functions) is no longer required - Removed GetUncachedExtension() workaround for case SRX070629602239 (send targets) and SRX070827600652 (WMI buffer size w/PAE) - Remove PCI device register read from ArmCQ() Version 4.4.8.0 (January 10, 2008) ============================== - Memory leak fix in FTSK - WQEs are pre-filled with zeros and reserved members are no longer accessed Version 4.4.7.0 (January 7, 2008) ============================== - Same as 4.0.7.0 but different version number and XINAN enabled INFs Version 4.0.7.0 (January 7, 2008) ============================== - Don't try to do iscsi logout after TCP connection failure Version 4.4.6.0 (December 12, 2007) ============================== - Same as 4.0.6.0 but different version number and XINAN enabled INFs Version 4.0.6.0 (December 12, 2007) ============================== - Separate txtsetup.oem from VBD for W2K3 - Cont00032940 - WMI byte alignment fixed. Version 4.4.5.0 (December 7, 2007) ============================== - Same as 4.0.5.0 but different version number and XINAN enabled INFs Version 4.0.5.0 (December 7, 2007) ============================== - Cont00032908 - Max transfer length up from 0x20000 to 0x40000 to allow large WMI session info buffers (needed w/many sessions) - MinimumQueuedCommands registry parameter added, to prevent pipeline starvation with event coalescing. - offload/upload race condition fix backported from Perforce Version 4.4.4.0 (November 20, 2007) ============================== - Same as 4.0.4.0 but different version number and XINAN enabled INFs Version 4.0.4.0 (November 20, 2007) ============================== - TCP windows scale option disabled, since the firmware doesn't actually support it for offloaded connections - Per LUN queue depth set to 254 - Persistent logins deferred until after interface IP address is configured. - Added more event logging. - Cont00032768 Fix for PnP test where there is no remove after surprise remove Version 4.4.3.0 (November 20, 2007) ============================== - Same as 4.0.3.0 but different version number and XINAN enabled INFs Version 4.0.3.0 (November 20, 2007) ============================== - VSS Build - Cont00032530 - Windows iSCSI Boot: Target status showed as reconnecting after using iSCSI Boot to connect - Cont00032544 - Windows iSCSI Offload: Stop 0x7E issuing iSCSIcli ping - Cont00032568 - iSCSI ois: Win2008 DVD installation fails with BSOD during installing the ois driver - Cont00032603 - iSCSIOffload: Fails to Do iSCSI Boot Version 4.4.2.0 (November 15, 2007) ============================== - Same as 4.0.2.0 but different version number and XINAN enabled INFs Version 4.0.2.0 (November 15, 2007) ============================== - Fix an issue in FTSK where the ping management context got corrupted via a timer Version 4.4.1.0 (November 14, 2007) ============================== - Same as 4.0.1.0 but different version number and XINAN enabled INFs Version 4.0.1.0 (November 13, 2007) ============================== - First build using Perforce - FTSK is statically linked into OIS - Event coalescing factor is 32 in the INF - No more separate F6 driver - Cont00032173 - Windows iSCSI Offload: BSOD occurs while running automated pqa scripts and brcmioutil application ------------------------------- Contains crashdump library version 4.0.1 November 13, 2007 ------------------------------- Enhancements: ============= 1. Redefined some TCP/IP routine names to eliminate linking conflicts with iSCSI offload driver. Fixes: ============= 1. Problem : Crash Dump driver doesn't create dump in the following configuration: * MPIO is enabled. * CHAP authentication is enabled. * Primary NIC is not connected. Cause : Crash Dump driver didn't use CHAP configuration from the primary NIC when it's creating a dump file with secondary NIC. Change : Changed Crash Dump driver to use CHAP configuration from the primary NIC. This fix also requires iSCSI Boot ROM driver v2.6.2 or newer. Version 3.7.1.32 (October 12, 2007) ============================== - Cont00031818 - Windows iSCSI Offload: DTM - iSCSI Plug and Play test fails - Cont00031819 - LUN reset causes unwanted session teardown and recovery Version 3.7.1.31 (October 10, 2007) ============================== - Cont00031543 - ois iSCSI Boot: SUT BSOD during the fail-back test Version 3.7.1.30 (October 8, 2007) ============================== - Drivers are named bxois.sys, regardless of arch - Cont00031399 - F6 Installation support - Cont00031709 - CNIC - BSOD in storport.sys when running iSCSI offload & L4 traffic while booted in OS via iscsi_boot - Fix ReportTargetMappings class to report correct number of LUNs - Fix for ITT queu corruption during stress test - return SRB_STATUS_LINK_DOWN when connectivity lost - Interop fix: don't check for MaxVersion in Login response - UNH fix: echo TTT and LUN in the TEXT exchange. - UNH fix: check for invalid TTT. ------------------------------- Contains crashdump library version 3.7.8 October 8, 2007 ------------------------------- Fixes: ============= 1. Problem : Crash Dump driver doesn't create dump when LUN number is not zero in system that is booted with offload path. (CQ#31758) Cause : Crash Dump driver didn't extract LUN information from the iSCSI block. Change : Changed Crash Dump driver to extract LUN information from the iSCSI block. Version 3.7.1.29 (October 2, 2007) ============================== - added event coalescing support. Disabled in the INF, because released firmware is built with it disabled. - Fix issue with MS iSCSI GUI not able to manage more than 24 sessions - Fix handler for SCSI Bus Reset - Fixed bad hardware IDs in the OEM INF files ------------------------------- Contains crashdump library version 3.7.7 October 2, 2007 ------------------------------- Fixes: ============= 1. Problem : Crash Dump driver doesn't create dump in the following configurations: * iSCSI boot is configured in MPIO mode. * Both NICs are configured so that TCP/IP parameters are acquired with DHCP. * iSCSI boot is booted with secondary NIC and primary NIC is not attached to the network. * Primary cable is connected back to the network and secondary NIC is detached before crash dump is initiated. (CQ#31396) Cause : iSCSI boot cannot acquire TCP/IP parameters for the primary NIC since there is no cable during iSCSI boot. Change : Implemented DHCP function in the Crash dump driver so that it will initiate DHCP procedure on the NIC that doesn't have valid TCP/IP paratemers. 2. Problem : Crash Dump driver doesn't use bootable iSCSI target when two iSCSI targets are used in a non-MPIO environment. One of these two iSCSI targets is not an accessible target. This issue doesn't occur in iSCSI offload case. (CQ#31546) Cause : Crash dump driver doesn't check for bootable target when it retrieves iSCSI target information from the iBFT table. Change : Changed the the iBFT parsing logic to retrieve iSCSI target that was used to boot in a non-MPIO environment. 3. Problem : Crash Dump driver doesn't create dump when iSCSI target is on different subnet. (CQ#31535) Cause : TCP/IP stack in the Crash Dump Driver was not configured correctly to handle connections on the different subnet. Change : Configured TCP/IP stack to handle traffic destined on different subnets over the routers. Version 3.7.1.28 (September 28, 2007) ============================== - Coordinated fix with FTSK v3.7.4 to handle invalidating route table entries when DHCP renews on link up event - Fix a TN bug where the MIN/MAX rules are not checked correctly, fixes UNH login test 18.1 - INFs will land the driver file as bxois.sys for all platforms, crashdump on 2k3 requires the filename to match the servicename ------------------------------- Contains crashdump library version 3.7.6 September 27, 2007 ------------------------------- Enhancements: ============= 1. Enhanced to support Crash Dump when system is booted with iSCSI offload path in Win2K3 environment. (CQ#31292) Cause : Win2k3 doesn't support native iSCSI crash dump as specified in MSFT iSCSI crash dump specification. Change : Implemented crash dump support as it has been done in SCSI/ATA storage miniport. Crash dump driver is integrated/piggybacked with iSCSI offload driver. Version 3.7.1.27 (September 24, 2007) ============================== - Cont00031050 - Missing OEM Branding for 5706/5708 family - Cont00031492 - Windows iSCSI Offload: system only connect 64 targets when configured to connect 100 targets - Cont00031512 - Windows iSCSI Offload: 0xD1_bxoisx!FlushCommand - break running maxluns - Add registry parameter DisableDelayedAck, NOPOutInterval, ConnectionTimeout, PortDownTimeout - Add WMI iSCSI statistics - advance RQ for all unsolicited data CQE, in context of PollCq. Version 3.7.1.26 (September 17, 2007) ============================== - Fix a TN bug where we were not responding with NotUnderstood, fixes UNH login test 7.6 - Fix UHN login test 25.1, login redirection test - LAA stored in VBD registry is not programmed if we booted from the adapter, this is to avoid DHCP issues w/our MAC address changing - Cont00031335 - hang when adding 19th iscsi connection, no longer using map_mailboxq_base() and unmap_mailboxq_base(), requires new VBD - Cont00031219 - iSCSI Boot - Offload: System BSOD after multiple iSCSI reboots - Cont00021890 - Windows iSCSI Offload: Unable to automatically renew IP address from DHCP server after HBA is disconnected and reconnected in a different subnet - Cont00030986 - Windows iSCSI Offload: Persistent targets cannot be removed after enabling PAE - Cont00030191 - Windows iSCSI Offload: x64 "Add Target Portal - Incorrect function" GUI error Version 3.7.1.25 (September 10, 2007) ============================== - HSI interface changes - Cont00031315 - Win2k3 "Login failed" error, caused by interface change Version 3.7.1.24 (September 7, 2007) ============================== - Cont00031248 - "Access Denied" error upgrading drivers in Win2003 - Allow IP configuration even if GetVBDRegInfo() fails - Query maximum number of allowed connections from the VBD Version 3.7.1.23 (September 4, 2007) ============================== - Cont00031230 IP address configuration bug introduced in 3.7.1.22 - Cont00031229 Win2k3x64 driver disable/enable takes approx. 2 minutes. Bug introduced in 3.7.1.22 - Cont00031231 iscsi device takes longer time to uninstall and disable-enable. Bug introduced in 3.7.1.22 - Login fixes for neagive login testing - iSNS code has a small delay before calling ks_abort() to avoid a race condition in FTSK Version 3.7.1.22 (August 31, 2007) ============================== - Add DHCP boot support (still need new ftsk interface) - Boot block parameters override VBD registry parameters (IP configuration) Version 3.7.1.21 (August 28, 2007) ============================== - Cont00031126 Driver no longer limiting number of connections internally, but will defer to license enforcement. - Cont00031126 Will allow boot from SAN untagged when no VLAN_ID configured. Version 3.7.1.20 (August 22, 2007) ============================== - Handle disconnects from CONNSTATE_NOFFLD_CONNECTED state, for some Equalogic login/logout stress issues. - Use IP information from boot block if it is present, if not, use registry IP info - Add support for MPIO boot - Compare MAC addresses on boot target setup so we do not log in to the boot target on all instances of OIS Version 3.7.1.19 (August 10, 2007) ============================== - Cont00030962 Fixed boot with one way CHAP. Added boot with two way CHAP. - Add NCU WMI Classes Version 3.7.1.18 (July 26, 2007) ============================== - Handle Passive abort (TCP_RST) correctly in driver. - Cont00030781 - Login redirect broken in previous release because we were not zeroing txt negotiation data structures between logins. Version 3.7.1.17 (July 25, 2007) ============================== - Fix target compatibility exception handling - Split single INF file into 3 per platform INFs Version 3.7.1.16 (July 24, 2007) ============================== - No longer built with Beta3 WDK, now we are using WDK 6001-16549 released by Microsoft on 7/11/2007 - Minor INF fixes to issues detected by chkinf, also change version #'s to 3.7.X.X - iSCSI Boot fixes Cont00029929, Cont00030578, Cont00030714 - Support for TaskReporting key added. - Cont00030370 resolved. the digest option list is now offerd in the order "None,CRC32C" - To avoid calling AllocateSharedMemory for BD list during SCSI command with a big buffer, BD is now always built in the preallocated session memory, at Submit() time. - FIX: Don't call ClaenupAdapter in ScsiStopAdapter. This breaks hibernation. - Fix: Logged-in sessions (including boot and persistent) were deleted across hibernation. Version 0.0.1.15 (July 20, 2007) ============================== - Cont00030498, Cont00030626, Cont00030667, Cont00030671 fixed - When running DTM test, operator should add DWORD value DontSaveTargetChallenge equal 1 to the registry at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BXOIS\Parameters\Device: DontSaveTargetChallenge 1 - Target compatibility exception bits are read from the registry - Target devices will be be surprise removed after PortDownTimeout seconds. 60 sec. hard code. - Persistent target login with two-way CHAP is delayed until initiator CHAP secret is aviailable - DMA verifier fix: Use only AllocateSharedBuffer for internal DMA buffers - Cont00030561, Cont00030671 - Target challenge reuse check can be disabled, to allow DTM test to run - Login statistics collected. - BASE64 decoding fixed (Cont00030624) - Fix: Cont00030624 Login requests with zero data length were not going to the wire - iSNS improvements: Registration and shutdown are non-blocking; Registration is retried every 60 seconds, if failed; if ESI was not received from the server within the registration period, the initiator re-registers itself - PersistentTargets key can now be deleted by an administrator (driver reinstall required to apply this, if 0.0.1.14 was installed) Version 0.0.1.14 (July 17, 2007) ============================== - INF creates the PersistenTargets registry key with local system access only - Report maximum transfer length to storport as 128KB to avoid R2T bug on stringbean - Supprot for Base64 binary values in CHAP, support for validating Challenges against reflection - Cont00029641, Cont00030561, Cont00030486, Cont00030517, Cont00030586, Cont00029594 resolved. Version 0.0.1.13 (July 10, 2007) ============================== - requires VBD 3.7.6990 - Cont00030188, Cont30401, Cont00029595, Cont00030392, Cont00030441 fixed - Support WQEs that have both R and W bits clear, R/W wqe bits are based on SRB flags bits - Basic CHAP and mutual CHAP implemented - PING implemented - Don't double complete WMISrb when login fails due to timeout - Fixed session recovery under heavy IO load - Watchdog connections that in in state IN_LOGIN, IN_LOGOUT. q.v. Connections states RFC 3260 - Support Async Message PDU - Support Reject PDU Version 0.0.1.12 (July 3, 2007) ============================== - Cont00029614, Cont00029988, Cont00029908, Cont00029682, Cont00029628 resolved - Unconfigured interface will not cause driver to fail load/install - NotUnderstood and C-bit support added to the login. - hibernation supported. The targets are re-connected upon return from hibernation. - WMI ScsiInquiry, ScsiReportLuns, ScsiReadCapacity supported. - Reset redirect flag on manual logout. - manual logout will now abort session recovery - TMF LUN_RESET - Connection states in line with RFC 3260 Version 0.0.1.11 (June 22, 2007) ============================== - WMI SRB request processing moved to workitem thread, to simplify synchronization - Queue activity watched for timeout. If there is no completion for long time, the connection goes to recovery. - new login code - add BusType=9 (iSCSI) to the INF - proactive NOP out - session recovery for NOP timeout, passive shutdown/abort Version 0.0.1.10 (June 12, 2007) ============================== - Windows 2003 supported (storport update KB932755 required, VBD update required) - all WMI processing and HW command responses are handled in a workitem thread, to serialize all slow path - iSNS client works reliably - INF file updated with all supported cards IDs - target redirect supported - iSCSI boot will now boot to desktop, reboot/shutdown still bugchecks - persistent login fixes - text negotiation workaround for OFMarker/IfMarker=Notunderstood Version 0.0.1.9 (May 30, 2007) ============================== - fix a sense data reporting bug - Change the way IndicateCompletionWorkPresent() is called - Fix persistent target cleanup - 1 second delay in ISMCloseTcpConnectionComplete() to workaround a firmware race condition Version 0.0.1.8 (May 29, 2007) ============================== - login/logout fixes, improved session management - unload driver logs out all connections Version 0.0.1.7 (May 25, 2007) ============================== - peristent login fixes, persistent target remove - clone target fixes for persistent support - assert on sense data - make a quick fix to prevent a crash on a second login attempt (fixes Cont00029726) Version 0.0.1.6 (May 24, 2007) ============================== - nop out fix, must use a local ITT to track the request - changes to interface exchange code - peristent regitry writes are in place, not reads (no login on reboot yet) - fix for key values returned with Irrelevant to not instantly fail login - change SQ/RQ/CQ to use common buffer instead of non paged pool Version 0.0.1.5 (May 18, 2007) ============================== - final nop out fixes to correct completion and SQ wqe counts - minor changes to CommandPump() Version 0.0.1.4 (May 17, 2007) ============================== - More nop out fixes, more fixes still to come... Version 0.0.1.3 (May 17, 2007) ============================== - Fast path command flow improvements - Provide auto sense data - Nop out fixes - Send targets support Version 0.0.1.2 (May 14, 2007) ============================== - SQ overflow fixes - Text fixes made by Shmulik Version 0.0.1.1 (May 2, 2007) ============================== - Alex has ITT synchronization fixes - WQE timing measurements in debug build - Hack tn.c so we can log in to targets that specify a TargetAlias - Fix an assert in ReleaseConnNumber() - PnP remove fixes Version 0.0.1.0 (April 27, 2007) ============================== - Initial Release. Following known issues: - Logout does not work