Windows 2003 R2 breaks SAN HBA drivers

S

Siddhartha Jain

Equipment tested
=============
1. IBM DS4300
2. QLogic QLA 2340 HBA
3. IBM x366 Quad Proc (EM64T)

Software tested
===========
1. Windows 2003 R2 x64 Enterprise Edition
2. Windows 2003 R2 Enterprise Edition (32-bit)
3. QLogic drivers for Windows 2003 x64 (Storport version 9.1.0.16)
4. Microsoft drivers for Windows 2003 x64 (SCSI port )
5. Qlogic drivers for Windows 2003 (Storport ver 9.1.0.16)
6. Qlogic drivers for Windows 2003 (SCSIport ver 9.1.0.13)

Nothing works on R2!!! I can get the volume to appear in "Disk
Management" but the volume cannot be formatted throwing an error that
says "Format incomplete. Operation could be completed". Oddly, the
volume shows as "Healthy".

I can say R2 breaks the drivers because all drivers work fine on pre-R2
releases. Any tweaks/workarounds for R2 are welcome.

- Siddhartha
 
J

John_B

Hi

I'm also havnig some trouble with 2K3 R2 and the Qlogic Storpor
driver (HBA QLA 2340). I found installing the SCSI miniport drive
solved my problems although hardly a good solution

Have you made any more progress since
 
S

Siddhartha Jain

John_B said:
Hi,

I'm also havnig some trouble with 2K3 R2 and the Qlogic Storport
driver (HBA QLA 2340). I found installing the SCSI miniport driver
solved my problems although hardly a good solution.

Have you made any more progress since ?

Not really. I am still stuck at the same place. Where did you get the
SCSI miniport drivers? I had a lengthy email exchange with Qlogic
support at the end of which they told me that I was probably using some
driver from an OEM called Engenio (ver 9.1.1.16 distributed by IBM with
the Storage Manager). To me, thats BS. The driver author for 9.1.1.16
is clearly shown as Qlogic and other drivers like 9.1.0.16 that I
downloaded from Qlogic site don't work either. I think Qlogic is simply
ducking the issue.

- Siddhartha
 
P

Peter

Not really. I am still stuck at the same place. Where did you get the
SCSI miniport drivers? I had a lengthy email exchange with Qlogic
support at the end of which they told me that I was probably using some
driver from an OEM called Engenio (ver 9.1.1.16 distributed by IBM with
the Storage Manager). To me, thats BS. The driver author for 9.1.1.16
is clearly shown as Qlogic and other drivers like 9.1.0.16 that I
downloaded from Qlogic site don't work either. I think Qlogic is simply
ducking the issue.

Did you ask them if they started Windows 2003 R2 certification process for
ANY of their products?
 
S

Siddhartha Jain

Peter said:
Did you ask them if they started Windows 2003 R2 certification process for
ANY of their products?

The IBM engineer who showed up flatly refused to support Win2k3 R2 (32
and x64 versions). Qlogic's stance has been ambivalent. Initially, they
said they'd take upto march to release R2 drivers but then a recent
mail suggested that their "higher-tier" support said that the current
drivers should work as well. Then they changed their mind and came up
with the Engenio story. Unfortunately, since the HBA's been supplied by
IBM, I cannot push Qlogic hard enough.


- Siddhartha
 
J

John_B

Where did you get the SCSI miniport drivers

From her
http://support.qlogic.com/support/os_detail.asp?productid=253&osid=8

The problems I'm having is to do with issuing SPTI commands, the SCS
miniport allowed the SPTI to pass commands to my fibre target wher
as the Storport didn't

What I'll be doing this week is to swap the Qlogic card for a Emule
card and drivers to see if there is any difference. I'll report bac
here on my findings
 
S

Siddhartha Jain

John_B said:
From here
http://support.qlogic.com/support/os_detail.asp?productid=253&osid=85

The problems I'm having is to do with issuing SPTI commands, the SCSI
miniport allowed the SPTI to pass commands to my fibre target where
as the Storport didn't.

What I'll be doing this week is to swap the Qlogic card for a Emulex
card and drivers to see if there is any difference. I'll report back
here on my findings.

Ohh! You are using the 32-bit R2 version. We have been trying to use
the x64 R2 version. Just for testing, I did install the 32-bit R2
version a couple of weeks back and it didn't work too so I reasoned
something's broken in the entire R2 release.

- Siddhartha
 
J

John_B

Hi

Yep I'm on 2003 server R2 32bit, it appears the problem I was havin
with SPTI commands looks like a MS problem seeing as a Emulex HBA an
Storport driver behaves exactly the same as the Qlogic HBA an
Storport driver

Anyone have any idea who I should email at Microsoft about a develope
level technical issue
 
A

Alexander Grigoriev

Try to post to microsoft.public.<something>

What problem you're getting, anyway? Do you mean SCSI_PASS_THROUGH_INDIRECT
IOCTL doesn't work as expected?
 
J

John_B

What problem you're getting, anyway? Do you mea
SCSI_PASS_THROUGH_INDIRECT
IOCTL doesn't work as expected?

The basic problem is that when the SCSI miniport QL driver wa
installed this allowed IOCTL_SCSI_PASS_THROUGH_DIRECT to talk to a
'unmapped' SCSI device (RAID system) using \\.\Scsix: where 'x' is
bus number.

When the Storport driver was installed the code that was previousl
working stopped working, GetLastError() returned 2 i.e. file no
found

I did suspect the Qlogic Storport driver but having seen an Emule
Storport driver do exactly the same thing (on a different OS instal
as well - 2K3 SP1) it looks like it's something different (or no
working / broken) in the Storport driver stack.

Strictly speaking the Storport driver may be doing the correct thing
if a device is reporting a LUN is not connected then why should an
SCSI commands be allowed to be sent to it, just that the SCS
miniport does not behave the same
 
K

karenire

Hi All,

I am also looking at the same issue. I initially tried to use the
QLogic 2300 (2Gb FC HBA) and today I am testing with a LSI 7204XP-LC
(4Gb HBA).

With both HBA it is possible to send down an inquiry command using
IOCTL_SCSI_PASS_THROUGH_DIRECT. When I try to send down a different
scsi command, e.g. receive diagnostic 0x1c I get an error. The CDB for
the request was:
0x1c 0x01 0x80 0x00 0x50 0x00

While the LSI HBA gives the same error as the QLogic one, it does
however give the better error response. The following sense information
is returned:

0x70 0x00 0x05 0x00
0x00 0x00 0x00 0x0a
0x00 0x00 0x00 0x00
0x24 0x00 0x00 0x00

The SCSI specification isn't one of my core skills but from reading the
specification my understanding is that 0x05 indicates an illegal
request, 0x24 indicates that there is an invalid field in the CDB. The
request is blocked by Windows 2003 R2. It does not reach the target.

The next step I tried was to send down the following CDB:
0x1c 0x00 0x00 0x00 0x00 0x00

This CDB was able to passthrough the server and caused an assert in the
target. I suspect that Microsoft have changed the specification
slightly for the CDB. I haven't been able to figure out what they have
done yet though.

Karen.
 
K

karenire

Hi All,

While still using the LSI 7204XP-LC HBA for testing. I changed the CDB
to 0x1c 0x01 0x01 0x00 0x50 0x00 and I got a valid response from the
target.

The only difference between the two CDB's is byte 2. In my original
attempt it was 0x80 (this failed) and in my last attempt it was 0x01
(this succeeded). Setting the value to 0x80 is a vendor specific
request. If the value is set to 0x01 this is requesting information
which is part of the standard SCSI spec. It appears as if the windows
server is blocking vendor specific SCSI commands.

I have rechecked this using the QLogic HBA and I see the same results.
It looks like windows 2003 is blocking vendor specific SCSI commands.
Can you check if your problem is the same.

Karen.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top