Ref: NumberofRequests in ScsiMiniport drivers

Hi All,

I am not getting more than 2 pending commands in
miniport drivers when I can support more than that.

I am setting the registry setting “NumberOfRequests”
to 128

During miniport driverEntry, I am setting
TaggedQueuing = TRUE;
MultipleRequestPerLu = TRUE;

In my startIo, I am doing the following:

if (Srb->SrbFlags & SRB_FLAGS_QUEUE_ACTION_ENABLE)
ScsiPortNotification(
NextLuRequest,
DeviceExtension,
Srb->PathId,
Srb->TargetId,
Srb->Lun );
else
ScsiPortNotification(
NextRequest,
DeviceExtension );

I think the reason might be that I am not getting any
tagged commands.

Size of My NoncachedExtension is around 12k and sizeof
SrbExtension is 576 bytes.

I am running Iometer to run Ios.

Any ideas.

Thanks and Regards,
Gurpreet


Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com

also if your miniport is fabricating INQUIRY data (becuase it’s a
virtual driver, or because you’re exposing non-SCSI devices, etc…)
make sure you set the tagged queueing bit (CommandQueue i believe) in
the INQUIRY data that you pass back or you won’t get tagged requests.

-p


From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@attotech.com
Sent: Thursday, February 17, 2005 12:10 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Ref: NumberofRequests in ScsiMiniport
drivers

Just always use NextLuRequest.

It should be pretty easy to find out if you are getting any
tagged commands. You won’t during the bus scan, and after a certain
number of certain kinds of errors (if any), the port driver will turn
off Tagged Commands until the next boot.

Jerry.

>>>>>
Hi All,

I am not getting more than 2 pending commands in
miniport drivers when I can support more than that.

I am setting the registry setting “NumberOfRequests”
to 128

During miniport driverEntry, I am setting
TaggedQueuing = TRUE;
MultipleRequestPerLu = TRUE;

In my startIo, I am doing the following:

if (Srb->SrbFlags & SRB_FLAGS_QUEUE_ACTION_ENABLE)
ScsiPortNotification(
NextLuRequest,
DeviceExtension,
Srb->PathId,
Srb->TargetId,
Srb->Lun );
else
ScsiPortNotification(
NextRequest,
DeviceExtension );

I think the reason might be that I am not getting any
tagged commands.

Size of My NoncachedExtension is around 12k and sizeof
SrbExtension is 576 bytes.

I am running Iometer to run Ios.

Any ideas.

Thanks and Regards,
Gurpreet
<<<<<< —
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as:
xxxxx@windows.microsoft.com
To unsubscribe send a blank email to
xxxxx@lists.osr.com

Thanks.
I checked out the same thing with my storport driver.
I was getting only 20 commands pending at any one
point of time.
I investigated furthur and I came across a function
StorPortSetDeviceQueueDepth. Using this, now I have
around 200 commands pending (setting the queue depth
to 200) per Lun.
The maximum I saw pending with me 600 commands for 5
Luns.
I thought I can have 254 outstanding per LUN. SO
254*5.

Is there any way to do the same in the scsiport
miniport drivers.

Thanks and Regards,
Gurpreet

— Peter Wieland
wrote:

> also if your miniport is fabricating INQUIRY data
> (becuase it’s a
> virtual driver, or because you’re exposing non-SCSI
> devices, etc…)
> make sure you set the tagged queueing bit
> (CommandQueue i believe) in
> the INQUIRY data that you pass back or you won’t get
> tagged requests.
>
> -p
>
>
>
>
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf
> Of
> xxxxx@attotech.com
> Sent: Thursday, February 17, 2005 12:10 PM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] Ref: NumberofRequests in
> ScsiMiniport
> drivers
>
>
>
> Just always use NextLuRequest.
>
> It should be pretty easy to find out if you are
> getting any
> tagged commands. You won’t during the bus scan, and
> after a certain
> number of certain kinds of errors (if any), the port
> driver will turn
> off Tagged Commands until the next boot.
>
> Jerry.
>
>
> >>>>>>
> Hi All,
>
> I am not getting more than 2 pending commands in
> miniport drivers when I can support more than that.
>
> I am setting the registry setting
> “NumberOfRequests”
> to 128
>
> During miniport driverEntry, I am setting
> TaggedQueuing = TRUE;
> MultipleRequestPerLu = TRUE;
>
> In my startIo, I am doing the following:
>
> if (Srb->SrbFlags & SRB_FLAGS_QUEUE_ACTION_ENABLE)
>
> ScsiPortNotification(
> NextLuRequest,
> DeviceExtension,
> Srb->PathId,
> Srb->TargetId,
> Srb->Lun );
> else
> ScsiPortNotification(
> NextRequest,
> DeviceExtension );
>
> I think the reason might be that I am not getting
> any
> tagged commands.
>
> Size of My NoncachedExtension is around 12k and
> sizeof
> SrbExtension is 576 bytes.
>
> I am running Iometer to run Ios.
>
> Any ideas.
>
> Thanks and Regards,
> Gurpreet
> <<<<<< —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as:
> xxxxx@windows.microsoft.com
> To unsubscribe send a blank email to
> xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: unknown
> lmsubst tag argument: ‘’
> To unsubscribe send a blank email to
xxxxx@lists.osr.com

__
Do you Yahoo!?
The all-new My Yahoo! - What will yours do?
http://my.yahoo.com

Hi Peter,

My test enviornment was wrong.
I am getting 200*lun IOs for storport driver.

Thanks,
Gurpreet
— Peter Wieland
wrote:

> also if your miniport is fabricating INQUIRY data
> (becuase it’s a
> virtual driver, or because you’re exposing non-SCSI
> devices, etc…)
> make sure you set the tagged queueing bit
> (CommandQueue i believe) in
> the INQUIRY data that you pass back or you won’t get
> tagged requests.
>
> -p
>
>
>
>
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf
> Of
> xxxxx@attotech.com
> Sent: Thursday, February 17, 2005 12:10 PM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] Ref: NumberofRequests in
> ScsiMiniport
> drivers
>
>
>
> Just always use NextLuRequest.
>
> It should be pretty easy to find out if you are
> getting any
> tagged commands. You won’t during the bus scan, and
> after a certain
> number of certain kinds of errors (if any), the port
> driver will turn
> off Tagged Commands until the next boot.
>
> Jerry.
>
>
> >>>>>>
> Hi All,
>
> I am not getting more than 2 pending commands in
> miniport drivers when I can support more than that.
>
> I am setting the registry setting
> “NumberOfRequests”
> to 128
>
> During miniport driverEntry, I am setting
> TaggedQueuing = TRUE;
> MultipleRequestPerLu = TRUE;
>
> In my startIo, I am doing the following:
>
> if (Srb->SrbFlags & SRB_FLAGS_QUEUE_ACTION_ENABLE)
>
> ScsiPortNotification(
> NextLuRequest,
> DeviceExtension,
> Srb->PathId,
> Srb->TargetId,
> Srb->Lun );
> else
> ScsiPortNotification(
> NextRequest,
> DeviceExtension );
>
> I think the reason might be that I am not getting
> any
> tagged commands.
>
> Size of My NoncachedExtension is around 12k and
> sizeof
> SrbExtension is 576 bytes.
>
> I am running Iometer to run Ios.
>
> Any ideas.
>
> Thanks and Regards,
> Gurpreet
> <<<<<< —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as:
> xxxxx@windows.microsoft.com
> To unsubscribe send a blank email to
> xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: unknown
> lmsubst tag argument: ‘’
> To unsubscribe send a blank email to
xxxxx@lists.osr.com

__
Do you Yahoo!?
Yahoo! Mail - You care about security. So do we.
http://promotions.yahoo.com/new_mail

Hi Peter,

The fix for the miniport driver is working fine with
Windows 2003 Build 3790.1289. I am getting 191 maximum
number of commands pending in the driver. It is not
going beyond this number. I was hoping to get around
230 as I have incrreased the “NumberofRequests” to
1000.

For Windows 2000 SP4, the same driver code doesnt
work.
I am still getting 1 outstanding commands per LUN.

Do you know of any reason.

Thanks,
Gurpreet

— Peter Wieland
wrote:

> also if your miniport is fabricating INQUIRY data
> (becuase it’s a
> virtual driver, or because you’re exposing non-SCSI
> devices, etc…)
> make sure you set the tagged queueing bit
> (CommandQueue i believe) in
> the INQUIRY data that you pass back or you won’t get
> tagged requests.
>
> -p
>
>
>
>
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf
> Of
> xxxxx@attotech.com
> Sent: Thursday, February 17, 2005 12:10 PM
> To: Windows System Software Devs Interest List
> Subject: Re: [ntdev] Ref: NumberofRequests in
> ScsiMiniport
> drivers
>
>
>
> Just always use NextLuRequest.
>
> It should be pretty easy to find out if you are
> getting any
> tagged commands. You won’t during the bus scan, and
> after a certain
> number of certain kinds of errors (if any), the port
> driver will turn
> off Tagged Commands until the next boot.
>
> Jerry.
>
>
> >>>>>>
> Hi All,
>
> I am not getting more than 2 pending commands in
> miniport drivers when I can support more than that.
>
> I am setting the registry setting
> “NumberOfRequests”
> to 128
>
> During miniport driverEntry, I am setting
> TaggedQueuing = TRUE;
> MultipleRequestPerLu = TRUE;
>
> In my startIo, I am doing the following:
>
> if (Srb->SrbFlags & SRB_FLAGS_QUEUE_ACTION_ENABLE)
>
> ScsiPortNotification(
> NextLuRequest,
> DeviceExtension,
> Srb->PathId,
> Srb->TargetId,
> Srb->Lun );
> else
> ScsiPortNotification(
> NextRequest,
> DeviceExtension );
>
> I think the reason might be that I am not getting
> any
> tagged commands.
>
> Size of My NoncachedExtension is around 12k and
> sizeof
> SrbExtension is 576 bytes.
>
> I am running Iometer to run Ios.
>
> Any ideas.
>
> Thanks and Regards,
> Gurpreet
> <<<<<< —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as:
> xxxxx@windows.microsoft.com
> To unsubscribe send a blank email to
> xxxxx@lists.osr.com
>
>
> —
> Questions? First check the Kernel Driver FAQ at
> http://www.osronline.com/article.cfm?id=256
>
> You are currently subscribed to ntdev as: unknown
> lmsubst tag argument: ‘’
> To unsubscribe send a blank email to
xxxxx@lists.osr.com

__________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com