> -----Original Message-----
From: Joe Moriarty [mailto:xxxxx@east.sun.com]
Sent: Thursday, September 20, 2001 11:20 AM
To: NT Development List
Subject: Looking for AntonAnton,
I hope your out there. I am currently trying to write a SCSI
miniport driver that calls down to another driver to do it’s I/O.
James Kirby told me that I should get a hold of you to discuss
some of the problems that I am having.Here’s the jist:
- In my completion routine to my lower level driver, I
supposedly have to make a call to a fake LUN to get the SCSI port
driver in the right context to complete my original SRB.Does this fake LUN have to exist (did Inquiry command to the Fake
LUN address need to respond with valid data, if so, then what
type of device do you assign to the fake LUN). Or does a Fake
LUN mean any address that does not have a device responding
(SRB_STATUS_SELECTION_TIMEOUT).
- When I make the call back into the port driver targeted for
the fake LUN, do I have to be at passive level? I am running a
check version of WinXp and everytime I call into the port driver I getEX: Pageable code called at IRQL 2
*** Assertion failed: FALSE
*** Source File: d:\nt\drivers\storage\ide\atapi\internal.c, line 58373)Does the HAB have to support tagged queing?
pConfigInfo->TaggedQueueing = TRUE;
I ask this because I have to set the SRB Flag bit
SRB_FLAGS_BYPASS_FROZEN_QUEUE in the SRB sent to
the fake LUN.Thanks In Advance,
JoeThanks In Advance,
Joe>Yes the IO completion routine.
>1) What’s the major and minor function for creating the fake IOCTL IRP
>below? I assume this is headed towards //Device/ScsiPortX. Correct.>[Yes. You can use the functions in the DDK to build a device IO control
>request (IRP). You will need to make the request a PASSTHROUGH (See SPTI
>in the DDK).>2) The flag for bypassing the queue is it setting the TaggedQueueing
>field to FALSE in the PORT_CONFIGURATION_INFORMATION for the HBA. Or is
>it a value set in the QueueAction field of the fake LUN SRB. I do not
>support queing so I don’t know if I really have to set anything here.>[#define SRB_FLAGS_BYPASS_FROZEN_QUEUE 0x00000010
>You should discuss this with Anton from the mailing list. He uses this
>method in several of his drivers. I have chosen not to use this method,
>so I have no practrical experience in getting one of these drivers to
>work.]>3) When I get to my call to the fake LUN. I assume that this is the
>point were you tell the port driver that you have completed the request
>and are now ready for the next request.>[Yes]
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com