> It may be that completing the SRB with SRB_STATUS_SELECTION_TIMEOUT
may be proper.
Couldn’t hurt to try. We have a driver for the ISP2x00, and it
completes SRBs with SELECTION_TIMEOUT when a device has gone ‘missing’
(we have lost our login to it). This is what SCSIPORT seems to expect
when inquiring non-existent targets during its initial scan for devices.
I guess it would be misleading to return INVALID_PATH_ID when you’ve
told SCSIPORT you have a number of busses and its inquiry SRB has a
PathId within that range.
Dave Cox
Hewlett-Packard Co.
HPSO/SSMO (Santa Barbara)
https://ecardfile.com/id/Dave+Cox
-----Original Message-----
From: Gary Little [mailto:xxxxx@delphieng.com]
Sent: Monday, September 11, 2000 8:56 AM
To: NT Developers Interest List
Subject: [ntdev] RE: SCSI driver and SRB_INVALID_PATH_ID
David,
Sorry about the tardiness of this message. I normally work at home on
Fridays and for some reason OSR ListServ will not accept messages from me at
home, even though I have signed up from that address. Oh well.
Yes, it is the initiator that stalls. As to who is originating the SRB, that
I can only assume. Since the system is in the process of initializing I can
only guess that it is the part of the file/disk management system that is
finding partitions, etc. etc. etc. At least this is what I see in the screen
information being dumped by the checked build Hal that I am using.
The proper solution was to apply a proper setup and initialization to the
target fiber channel card, or to fail installation if that cannot be done…
However, I need to be able to close this whole, since Murphy says more
customers than I want to count are going to fall into it. It may be that
completing the SRB with SRB_STATUS_SELECTION_TIMEOUT may be proper.
-----Original Message-----
From: COX,DAVID (HP-Roseville,ex1)
[mailto:david_cox2@hp.com]
Sent: Thursday, September 07, 2000 6:10 PM
To: NT Developers Interest List
Subject: [ntdev] RE: SCSI driver and
SRB_INVALID_PATH_ID
Hmm. Is the initiator host the one that’s hanging? I
assumed it was,
and I meant: which software in that host sent the inquiry
SRB to your
miniport driver?
Dave Cox
Hewlett-Packard Co.
HPSO/SSMO (Santa Barbara)
https://ecardfile.com/id/Dave+Cox
-----Original Message-----
From: Gary Little [mailto:xxxxx@delphieng.com]
Sent: Thursday, September 07, 2000 5:53 PM
To: NT Developers Interest List
Subject: [ntdev] RE: SCSI driver and SRB_INVALID_PATH_ID
The target is the FC with the erroneous initialization, and
obviously the
inquiry is coming from the initiator FC with a good
initialization. Most
likely, through several resets and reboots of the system,
though not power
cycled, the “bad system” is in a “the lights are on but no
one’s home”
state.
Thanks Dave, that’s some good information.
Gary
-----Original Message-----
From: COX,DAVID (HP-Roseville,ex1)
[mailto:david_cox2@hp.com]
Sent: Thursday, September 07, 2000 5:38 PM
To: NT Developers Interest List
Subject: [ntdev] RE: SCSI driver and
SRB_INVALID_PATH_ID
I don’t know about returning an error code.
You’ve got to
complete the
SRB and tell SCSIPORT you’re ready to handle
the next SRB
for that HBA
and LUN. This takes several calls to
ScsiPortNotification().
Who is sending the inquiry? Upon
completion, the SRB status
field
should be checked for the flag
SRB_STATUS_QUEUE_FROZEN
indicating the
LUN queue has been frozen by SCSIPORT. If
it has, no
subsequent SRBs
will be passed to the HBA (they will just
pile up in the
queue). In
that event, you’ve got to send down a
SRB_FUNCTION_RELEASE_QUEUE
request.
Dave Cox
Hewlett-Packard Co.
HPSO/SSMO (Santa Barbara)
https://ecardfile.com/id/Dave+Cox
-----Original Message-----
> From: Gary Little
[mailto:xxxxx@delphieng.com]
> Sent: Thursday, September 07, 2000 5:17 PM
> To: NT Developers Interest List
> Subject: SCSI driver and
SRB_INVALID_PATH_ID
>
> Systems: 2 Dual CPUs, Win2k/Nt 4 Sp6,
FibreChannel
w/ISP2200
>
> During system initialization, my SCSI
miniport StartIo
function is called
> with a SCSI inquiry (CDB[0]=12). This is a
fibrechannel
card, and if the
> remote adapter is in an indeterminate, or
erroneous state,
when I return
> SRB_INVALID_PATH_ID from the DPC function,
ScsiPort seems
to hang.
>
> Now, by indeterminate, I mean that the
system was booted
earlier and taken
> all the way to login. The driver for the
fibrechannel card
(FC) loaded and
> initialized the card successfully. The
system was then
re-booted to a
> system that attempted to load the FC
driver, but faulted
on a bad
> parameter, and as a consequence never
initialized the FC.
Since power was
> never dropped to the system, the card
never underwent a
LIP (typical
> fibrechannel terminology (at least here)).
>
> When the SCSI initiator attempted to send
an inquiry, the
initiator’s FC
> card reported an invalid port, or returned
a SCSI error
and sense data
> indicating that the port was logged out,
and the miniport
returned
> SRB_INVALID_PATH_ID to ScsiPort. The
system either hung or
was in the
> mother of all timeouts.
>
> The question is: What is the proper
response to a logged
out port?
>
>
You are currently subscribed to ntdev as:
xxxxx@delphieng.com
To unsubscribe send a blank email to
$subst(‘Email.Unsub’)
You are currently subscribed to ntdev as: david_cox2@hp.com
To unsubscribe send a blank email to
$subst(‘Email.Unsub’)
You are currently subscribed to ntdev as:
xxxxx@delphieng.com
To unsubscribe send a blank email to
$subst(‘Email.Unsub’)
You are currently subscribed to ntdev as: david_cox2@hp.com
To unsubscribe send a blank email to $subst(‘Email.Unsub’)