Lun Reset Test With Outstanding IO - All Disks
This is an optional test that will execute repeated cycles on every disk. Each cycle will attempt to time out an IO request on every disk once by withholding the request from the miniport. This will trigger Storport to send a RESET_LUN, at which point the test will either forward the held IO request to the miniport together with the RESET_LUN or complete the held IO request and forward only the RESET_LUN. The test comes in several flavors:
- Lun Reset Test With Outstanding IO - All Disks - Forwards the held request and tests resets on all disks on the controller in parallel.
- Lun Reset Test With Outstanding IO - Single Disk - Forwards the held request and tests resets on the first disk on the controller by PhysicalDrive number.
- Lun Reset Test Without Outstanding IO - All Disks - Completes the held request and tests resets on all disks on the controller in parallel.
- Lun Reset Test Without Outstanding IO - Single Disk - Completes the held request and tests resets on the first disk on the controller by PhysicalDrive number.
- Bus Reset Test - Same as Lun Reset Test With Outstanding IO - All Disks, but it will also fail the RESET_LUN command on purpose so that Storport will send a Bus Reset.
Test details
Specifications | Device.Storage.Controller |
Platforms |
|
Expected run time (in minutes) | 60 |
Category | Certification Reliability |
Timeout (in minutes) | 3600 |
Requires reboot | true |
Requires special configuration | false (A required test driver will be installed as a part of the test run. The user does not need to perform any special configurations.) |
Type | automatic |
Running the test
This test should be run on a non-boot storage controller. Running on a boot controller is possible, but requires at least one non-boot disk attached. This test will not run on the boot disk. The expected result is for that no IOs will be stuck in the miniport after the RESET_LUN and RESET_BUS operations. Verification is done by restarting the machine after the test. This test is run in a dual-initiator setup. At the scheduled time, you must select two machines connected to the shared storage to test.
On the primary machine (Server1), the test queries the disks that are connected to the selected HBA.
- During a Single-Disk test, one disk is selected, and the test performs resets on that disk from both servers (Server1 and Server2).
- During an All Disks test, the test queries all disks connected to the HBA that is being tested and performs resets on all of the disks from both servers (Server1 and Server2).
Resets on one initiator should not adversely affect the other initiator. For a Single Disk test, ensure that the two initiators are running the test against the same physical disk in the shared storage.
Troubleshooting
For troubleshooting, use a debugger to verify that the test driver is loaded at boot during this part of the test: StorPortShimLib: ShimInitialize called StorPortShimLib: Entering DriverAdd. CoreTestShim installed. Done with registry checks StorPortShimLib: Hooking driver: <StorPortMiniportName>.sys.
More information
Parameters
Parameter name | Parameter description |
---|---|
WDKDeviceID | Device instance path of test device |
LLU_LclAdminUsr | Administrator account to run test |
LLU_NetAccessOnly | User to access test network share |
WDKHardwareID | Hardware ID of test device |
TestDuration | Test Duration in seconds |
TestName | Test to run |