Regarding Pseudo SCSI Miniport driver

Hi All,
I am developing a Pseudo SCSI miniport driver for iSCSI on Windows NT4.0.
iSCSI requirements need :-

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.

I want to know how I can achieve this in my SCSI miniport driver.
If it has to be Pnp driver then how to develop a Pnp Scsi miniport driver on
Windows NT 4.0.

TIA
Rahul Gupta


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

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
Sent: Monday, December 10, 2001 10:46 PM
To: NT Developers Interest List
Subject: [ntdev] Regarding Pseudo SCSI Miniport driver

Hi All,
I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
NT4.0. iSCSI requirements need :-

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.

I want to know how I can achieve this in my SCSI miniport driver. If it
has to be Pnp driver then how to develop a Pnp Scsi miniport driver on
Windows NT 4.0.

TIA
Rahul Gupta


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

Jamey,

Would you please tell why I cannot call TDI from SCSI miniport? And why
it has to fail under stress? B/s I have such a driver working…

Regards,
Anton

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.


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

hi jamey,
I have the prototype working already and I am able to access Tdi. What I am
facing is a design problem.Since this driver is being developed for iSCSI
I need …

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.
    Any clues ??

TIA
Rahul Gupta

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, December 11, 2001 12:44 PM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
Sent: Monday, December 10, 2001 10:46 PM
To: NT Developers Interest List
Subject: [ntdev] Regarding Pseudo SCSI Miniport driver

Hi All,
I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
NT4.0. iSCSI requirements need :-

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.

I want to know how I can achieve this in my SCSI miniport driver. If it
has to be Pnp driver then how to develop a Pnp Scsi miniport driver on
Windows NT 4.0.

TIA
Rahul Gupta


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

Rahul,

To solve similar problem in my port (not miniport) driver I used:

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  • Issue IOCTL_DISK_FIND_NEW_DEVICES to
    Device\Harddisk0\Partition0. The Disk class
    rescans all Device\ScsiportX devices,
    claim all new disk devices and create new
    Device\HarddiskX\PartitionX devices

  • scan MACHINE\SYSTEM\DISK\Information key and
    assign drive letters to all new partitions

  1. To Remove a SCSI HBA upon user’s request.
    Any clues ??

I have no working solution for this yet. An idea is:
first, your app must unmount the partition, and delete
the drive letter. Then you probably need call your driver
(say, through custom IOCTL) to tell it to delete
device associated data, disconnect from server etc.
Then you probably need to destroy Device\HarddiskX
somehow.

regards,

Gera.

PS, regarding TDI calls from miniport - it, of course, works.
No hacks needed. The potential problem is WHQL as
miniports are not supposed to call anything but ScsiPortXXX.

TIA
Rahul Gupta

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, December 11, 2001 12:44 PM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
Sent: Monday, December 10, 2001 10:46 PM
To: NT Developers Interest List
Subject: [ntdev] Regarding Pseudo SCSI Miniport driver

Hi All,
I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
NT4.0. iSCSI requirements need :-

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.

I want to know how I can achieve this in my SCSI miniport driver. If it
has to be Pnp driver then how to develop a Pnp Scsi miniport driver on
Windows NT 4.0.

TIA
Rahul Gupta


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@setengineering.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

You can dead-lock the queue. It can happen; rarely, but it can happen.

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@hotmail.com
Sent: Tuesday, December 11, 2001 6:25 AM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

Jamey,

Would you please tell why I cannot call TDI from SCSI miniport? And why
it has to fail under stress? B/s I have such a driver working…

Regards,
Anton

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

More…

A few interesting points/questions:

  • Why did MS implement SBP2 as a SCSI port driver and not a miniport?
    Unless there are some unforeseen issues, you would have expected them to
    use a miniport. SPB2 must call the 1394 bus driver and the OHCI (or
    whatever standard is in use) driver. Since this can cause a problem in a
    miniport; synchronization and performance, I suspect they chose to write
    a SCSI port driver.

  • Why is Microsoft implementing their iSCSI driver as a SCSI port driver
    and not a SCSI miniport driver? Again, I suspect they are aware of the
    issues, like we are, that prevent you from developing a robust and
    working miniport driver that must rely on calling into other device
    driver.

Would you say that there is the possibility that Microsoft knows
something that you do not?

Food for thought…

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
Sent: Tuesday, December 11, 2001 6:53 AM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

Rahul,

To solve similar problem in my port (not miniport) driver I used:

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  • Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
    Disk class rescans all Device\ScsiportX devices, claim all new disk
    devices and create new Device\HarddiskX\PartitionX devices

  • scan MACHINE\SYSTEM\DISK\Information key and
    assign drive letters to all new partitions

  1. To Remove a SCSI HBA upon user’s request.
    Any clues ??

I have no working solution for this yet. An idea is:
first, your app must unmount the partition, and delete
the drive letter. Then you probably need call your driver
(say, through custom IOCTL) to tell it to delete
device associated data, disconnect from server etc.
Then you probably need to destroy Device\HarddiskX
somehow.

regards,

Gera.

PS, regarding TDI calls from miniport - it, of course, works. No hacks
needed. The potential problem is WHQL as miniports are not supposed to
call anything but ScsiPortXXX.

TIA
Rahul Gupta

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, December 11, 2001 12:44 PM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
Sent: Monday, December 10, 2001 10:46 PM
To: NT Developers Interest List
Subject: [ntdev] Regarding Pseudo SCSI Miniport driver

Hi All,
I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
NT4.0. iSCSI requirements need :-

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.

I want to know how I can achieve this in my SCSI miniport driver. If
it has to be Pnp driver then how to develop a Pnp Scsi miniport driver

on Windows NT 4.0.

TIA
Rahul Gupta


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To

unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@setengineering.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

How do you get around SCSIPORT holding spinlocks? Have you tested on MPU
machines? What is your performance like?

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
Sent: Tuesday, December 11, 2001 6:53 AM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

Rahul,

To solve similar problem in my port (not miniport) driver I used:

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  • Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
    Disk class rescans all Device\ScsiportX devices, claim all new disk
    devices and create new Device\HarddiskX\PartitionX devices

  • scan MACHINE\SYSTEM\DISK\Information key and
    assign drive letters to all new partitions

  1. To Remove a SCSI HBA upon user’s request.
    Any clues ??

I have no working solution for this yet. An idea is:
first, your app must unmount the partition, and delete
the drive letter. Then you probably need call your driver
(say, through custom IOCTL) to tell it to delete
device associated data, disconnect from server etc.
Then you probably need to destroy Device\HarddiskX
somehow.

regards,

Gera.

PS, regarding TDI calls from miniport - it, of course, works. No hacks
needed. The potential problem is WHQL as miniports are not supposed to
call anything but ScsiPortXXX.

TIA
Rahul Gupta

-----Original Message-----
From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
Sent: Tuesday, December 11, 2001 12:44 PM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

No, it is not supported. You are not able to call TDI or NDIS from a
SCSI miniport. There are some hacks to work around it, but they are
hacks and will fail under stress.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
Sent: Monday, December 10, 2001 10:46 PM
To: NT Developers Interest List
Subject: [ntdev] Regarding Pseudo SCSI Miniport driver

Hi All,
I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
NT4.0. iSCSI requirements need :-

  1. To detect a New SCSI Host Bus Adapter which may come up upon user’s
    request.
  2. To Remove a SCSI HBA upon user’s request.

I want to know how I can achieve this in my SCSI miniport driver. If
it has to be Pnp driver then how to develop a Pnp Scsi miniport driver

on Windows NT 4.0.

TIA
Rahul Gupta


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To

unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@setengineering.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

I agree that implementing iSCSI as a port is better than as a miniport.
btw, In my message I say “my port (not miniport) driver” :slight_smile:

But the question was about emulating PNP functionality on NT4,
not about driver model. This problem exists on NT4 irrespective
what driver model you have selected.

----- Original Message -----
From: “Jamey Kirby”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 10:11 AM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> More…
>
> A few interesting points/questions:
>
> - Why did MS implement SBP2 as a SCSI port driver and not a miniport?
> Unless there are some unforeseen issues, you would have expected them to
> use a miniport. SPB2 must call the 1394 bus driver and the OHCI (or
> whatever standard is in use) driver. Since this can cause a problem in a
> miniport; synchronization and performance, I suspect they chose to write
> a SCSI port driver.
>
> - Why is Microsoft implementing their iSCSI driver as a SCSI port driver
> and not a SCSI miniport driver? Again, I suspect they are aware of the
> issues, like we are, that prevent you from developing a robust and
> working miniport driver that must rely on calling into other device
> driver.
>
> Would you say that there is the possibility that Microsoft knows
> something that you do not?
>
> Food for thought…
>
> Jamey
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> Sent: Tuesday, December 11, 2001 6:53 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> Rahul,
>
> To solve similar problem in my port (not miniport) driver I used:
>
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > request.
>
> - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
> Disk class rescans all Device\ScsiportX devices, claim all new disk
> devices and create new Device\HarddiskX\PartitionX devices
>
> - scan MACHINE\SYSTEM\DISK\Information key and
> assign drive letters to all new partitions
>
>
> > 2) To Remove a SCSI HBA upon user’s request.
> > Any clues ??
>
> I have no working solution for this yet. An idea is:
> first, your app must unmount the partition, and delete
> the drive letter. Then you probably need call your driver
> (say, through custom IOCTL) to tell it to delete
> device associated data, disconnect from server etc.
> Then you probably need to destroy Device\HarddiskX
> somehow.
>
> regards,
>
> Gera.
>
> PS, regarding TDI calls from miniport - it, of course, works. No hacks
> needed. The potential problem is WHQL as miniports are not supposed to
> call anything but ScsiPortXXX.
>
>
>
>
> >
> > TIA
> > Rahul Gupta
> >
> >
> > -----Original Message-----
> > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > Sent: Tuesday, December 11, 2001 12:44 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > No, it is not supported. You are not able to call TDI or NDIS from a
> > SCSI miniport. There are some hacks to work around it, but they are
> > hacks and will fail under stress.
> >
> > Jamey
> >
> >
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > Sent: Monday, December 10, 2001 10:46 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> >
> >
> > Hi All,
> > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > NT4.0. iSCSI requirements need :-
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > request.
> > 2) To Remove a SCSI HBA upon user’s request.
> >
> > I want to know how I can achieve this in my SCSI miniport driver. If
> > it has to be Pnp driver then how to develop a Pnp Scsi miniport driver
>
> > on Windows NT 4.0.
> >
> >
> > TIA
> > Rahul Gupta
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To
>
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

If you mean calling ScsiPortNotification from outside miniport
context - this issue was already thoroughly discussed in this list.
I just read the postings :slight_smile:

The perfomance was about 6Mbytes/sec, when my driver was a miniport.
It is full port driver now but perfomance numbers are similar.

----- Original Message -----
From: “Jamey Kirby”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 10:11 AM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> How do you get around SCSIPORT holding spinlocks? Have you tested on MPU
> machines? What is your performance like?
>
> Jamey
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> Sent: Tuesday, December 11, 2001 6:53 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> Rahul,
>
> To solve similar problem in my port (not miniport) driver I used:
>
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > request.
>
> - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
> Disk class rescans all Device\ScsiportX devices, claim all new disk
> devices and create new Device\HarddiskX\PartitionX devices
>
> - scan MACHINE\SYSTEM\DISK\Information key and
> assign drive letters to all new partitions
>
>
> > 2) To Remove a SCSI HBA upon user’s request.
> > Any clues ??
>
> I have no working solution for this yet. An idea is:
> first, your app must unmount the partition, and delete
> the drive letter. Then you probably need call your driver
> (say, through custom IOCTL) to tell it to delete
> device associated data, disconnect from server etc.
> Then you probably need to destroy Device\HarddiskX
> somehow.
>
> regards,
>
> Gera.
>
> PS, regarding TDI calls from miniport - it, of course, works. No hacks
> needed. The potential problem is WHQL as miniports are not supposed to
> call anything but ScsiPortXXX.
>
>
>
>
> >
> > TIA
> > Rahul Gupta
> >
> >
> > -----Original Message-----
> > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > Sent: Tuesday, December 11, 2001 12:44 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > No, it is not supported. You are not able to call TDI or NDIS from a
> > SCSI miniport. There are some hacks to work around it, but they are
> > hacks and will fail under stress.
> >
> > Jamey
> >
> >
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > Sent: Monday, December 10, 2001 10:46 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> >
> >
> > Hi All,
> > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > NT4.0. iSCSI requirements need :-
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > request.
> > 2) To Remove a SCSI HBA upon user’s request.
> >
> > I want to know how I can achieve this in my SCSI miniport driver. If
> > it has to be Pnp driver then how to develop a Pnp Scsi miniport driver
>
> > on Windows NT 4.0.
> >
> >
> > TIA
> > Rahul Gupta
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To
>
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

Poor programming is poor programming; it matters not what model you use.

Jamey

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
Sent: Tuesday, December 11, 2001 10:03 AM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

If you mean calling ScsiPortNotification from outside miniport context -
this issue was already thoroughly discussed in this list. I just read
the postings :slight_smile:

The perfomance was about 6Mbytes/sec, when my driver was a miniport. It
is full port driver now but perfomance numbers are similar.

----- Original Message -----
From: “Jamey Kirby”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 10:11 AM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> How do you get around SCSIPORT holding spinlocks? Have you tested on
> MPU machines? What is your performance like?
>
> Jamey
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> Sent: Tuesday, December 11, 2001 6:53 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> Rahul,
>
> To solve similar problem in my port (not miniport) driver I used:
>
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon
user’s
> > request.
>
> - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0.
> The Disk class rescans all Device\ScsiportX devices, claim all new
> disk devices and create new Device\HarddiskX\PartitionX devices
>
> - scan MACHINE\SYSTEM\DISK\Information key and
> assign drive letters to all new partitions
>
>
> > 2) To Remove a SCSI HBA upon user’s request.
> > Any clues ??
>
> I have no working solution for this yet. An idea is:
> first, your app must unmount the partition, and delete
> the drive letter. Then you probably need call your driver (say,
> through custom IOCTL) to tell it to delete device associated data,
> disconnect from server etc. Then you probably need to destroy
> Device\HarddiskX somehow.
>
> regards,
>
> Gera.
>
> PS, regarding TDI calls from miniport - it, of course, works. No hacks

> needed. The potential problem is WHQL as miniports are not supposed to

> call anything but ScsiPortXXX.
>
>
>
>
> >
> > TIA
> > Rahul Gupta
> >
> >
> > -----Original Message-----
> > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > Sent: Tuesday, December 11, 2001 12:44 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > No, it is not supported. You are not able to call TDI or NDIS from a

> > SCSI miniport. There are some hacks to work around it, but they are
> > hacks and will fail under stress.
> >
> > Jamey
> >
> >
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > Sent: Monday, December 10, 2001 10:46 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> >
> >
> > Hi All,
> > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > NT4.0. iSCSI requirements need :-
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon
user’s
> > request.
> > 2) To Remove a SCSI HBA upon user’s request.
> >
> > I want to know how I can achieve this in my SCSI miniport driver. If

> > it has to be Pnp driver then how to develop a Pnp Scsi miniport
> > driver
>
> > on Windows NT 4.0.
> >
> >
> > TIA
> > Rahul Gupta
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To

> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
> > To
>
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> > —
> > You are currently subscribed to ntdev as:
> > xxxxx@setengineering.com To unsubscribe send a blank email to
> > leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

I would suggest you use interrupts instead of polling the device. MUCH
faster.

Gary G. Little
Broadband Storage, Inc.
xxxxx@broadstor.com
xxxxx@inland.net
(949) 7372731

-----Original Message-----
From: Gera Kazakov [mailto:xxxxx@setengineering.com]
Sent: Tuesday, December 11, 2001 10:03 AM
To: NT Developers Interest List
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

If you mean calling ScsiPortNotification from outside miniport
context - this issue was already thoroughly discussed in this list.
I just read the postings :slight_smile:

The perfomance was about 6Mbytes/sec, when my driver was a miniport.
It is full port driver now but perfomance numbers are similar.

----- Original Message -----
From: “Jamey Kirby”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 10:11 AM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> How do you get around SCSIPORT holding spinlocks? Have you tested on MPU
> machines? What is your performance like?
>
> Jamey
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> Sent: Tuesday, December 11, 2001 6:53 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> Rahul,
>
> To solve similar problem in my port (not miniport) driver I used:
>
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > request.
>
> - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
> Disk class rescans all Device\ScsiportX devices, claim all new disk
> devices and create new Device\HarddiskX\PartitionX devices
>
> - scan MACHINE\SYSTEM\DISK\Information key and
> assign drive letters to all new partitions
>
>
> > 2) To Remove a SCSI HBA upon user’s request.
> > Any clues ??
>
> I have no working solution for this yet. An idea is:
> first, your app must unmount the partition, and delete
> the drive letter. Then you probably need call your driver
> (say, through custom IOCTL) to tell it to delete
> device associated data, disconnect from server etc.
> Then you probably need to destroy Device\HarddiskX
> somehow.
>
> regards,
>
> Gera.
>
> PS, regarding TDI calls from miniport - it, of course, works. No hacks
> needed. The potential problem is WHQL as miniports are not supposed to
> call anything but ScsiPortXXX.
>
>
>
>
> >
> > TIA
> > Rahul Gupta
> >
> >
> > -----Original Message-----
> > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > Sent: Tuesday, December 11, 2001 12:44 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > No, it is not supported. You are not able to call TDI or NDIS from a
> > SCSI miniport. There are some hacks to work around it, but they are
> > hacks and will fail under stress.
> >
> > Jamey
> >
> >
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > Sent: Monday, December 10, 2001 10:46 PM
> > To: NT Developers Interest List
> > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> >
> >
> > Hi All,
> > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > NT4.0. iSCSI requirements need :-
> > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > request.
> > 2) To Remove a SCSI HBA upon user’s request.
> >
> > I want to know how I can achieve this in my SCSI miniport driver. If
> > it has to be Pnp driver then how to develop a Pnp Scsi miniport driver
>
> > on Windows NT 4.0.
> >
> >
> > TIA
> > Rahul Gupta
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To
>
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


You are currently subscribed to ntdev as: xxxxx@broadstor.com
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

We have a toolkit library for sale which will solve all these tasks for you.
It is called VSPORT. It is very similar to SCSIPORT (though without DMA or interrupt support - use the usual kernel facilities for
them), but the miniports are completely deserialized and can use any kernel functions.
It also allows the miniport to be portable across NT4/w2k with minimal number of #ifdefs.
It also allows the miniport to signal the rest of the OS about LUN arrival/removal, yes, on NT4 too.

Max

----- Original Message -----
From: “Rahul Gupta”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 9:45 AM
Subject: [ntdev] Regarding Pseudo SCSI Miniport driver

> Hi All,
> I am developing a Pseudo SCSI miniport driver for iSCSI on Windows NT4.0.
> iSCSI requirements need :-
> 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> request.
> 2) To Remove a SCSI HBA upon user’s request.
>
> I want to know how I can achieve this in my SCSI miniport driver.
> If it has to be Pnp driver then how to develop a Pnp Scsi miniport driver on
> Windows NT 4.0.
>
>
> TIA
> Rahul Gupta
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>


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

Lokks like you just do not understand the point of the discussion

----- Original Message -----
From: “Jamey Kirby”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 12:08 PM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> Poor programming is poor programming; it matters not what model you use.
>
> Jamey
>
> -----Original Message-----
> From: xxxxx@lists.osr.com
> [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> Sent: Tuesday, December 11, 2001 10:03 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> If you mean calling ScsiPortNotification from outside miniport context -
> this issue was already thoroughly discussed in this list. I just read
> the postings :slight_smile:
>
> The perfomance was about 6Mbytes/sec, when my driver was a miniport. It
> is full port driver now but perfomance numbers are similar.
>
> ----- Original Message -----
> From: “Jamey Kirby”
> To: “NT Developers Interest List”
> Sent: Tuesday, December 11, 2001 10:11 AM
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> > How do you get around SCSIPORT holding spinlocks? Have you tested on
> > MPU machines? What is your performance like?
> >
> > Jamey
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> > Sent: Tuesday, December 11, 2001 6:53 AM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > Rahul,
> >
> > To solve similar problem in my port (not miniport) driver I used:
> >
> > > 1) To detect a New SCSI Host Bus Adapter which may come up upon
> user’s
> > > request.
> >
> > - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0.
> > The Disk class rescans all Device\ScsiportX devices, claim all new
> > disk devices and create new Device\HarddiskX\PartitionX devices
> >
> > - scan MACHINE\SYSTEM\DISK\Information key and
> > assign drive letters to all new partitions
> >
> >
> > > 2) To Remove a SCSI HBA upon user’s request.
> > > Any clues ??
> >
> > I have no working solution for this yet. An idea is:
> > first, your app must unmount the partition, and delete
> > the drive letter. Then you probably need call your driver (say,
> > through custom IOCTL) to tell it to delete device associated data,
> > disconnect from server etc. Then you probably need to destroy
> > Device\HarddiskX somehow.
> >
> > regards,
> >
> > Gera.
> >
> > PS, regarding TDI calls from miniport - it, of course, works. No hacks
>
> > needed. The potential problem is WHQL as miniports are not supposed to
>
> > call anything but ScsiPortXXX.
> >
> >
> >
> >
> > >
> > > TIA
> > > Rahul Gupta
> > >
> > >
> > > -----Original Message-----
> > > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > > Sent: Tuesday, December 11, 2001 12:44 PM
> > > To: NT Developers Interest List
> > > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> > >
> > >
> > > No, it is not supported. You are not able to call TDI or NDIS from a
>
> > > SCSI miniport. There are some hacks to work around it, but they are
> > > hacks and will fail under stress.
> > >
> > > Jamey
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: xxxxx@lists.osr.com
> > > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > > Sent: Monday, December 10, 2001 10:46 PM
> > > To: NT Developers Interest List
> > > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> > >
> > >
> > > Hi All,
> > > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > > NT4.0. iSCSI requirements need :-
> > > 1) To detect a New SCSI Host Bus Adapter which may come up upon
> user’s
> > > request.
> > > 2) To Remove a SCSI HBA upon user’s request.
> > >
> > > I want to know how I can achieve this in my SCSI miniport driver. If
>
> > > it has to be Pnp driver then how to develop a Pnp Scsi miniport
> > > driver
> >
> > > on Windows NT 4.0.
> > >
> > >
> > > TIA
> > > Rahul Gupta
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
>
> > > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> > >
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in
> > > To
> >
> > > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> > >
> > > —
> > > You are currently subscribed to ntdev as:
> > > xxxxx@setengineering.com To unsubscribe send a blank email to
> > > leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

6mbytes/sec = 50 mbits/sec = half of 100 mbit ether bandwith
Theoretically you can get twice as much, if there is no collisions etc.
how can you get your “MUCH faster”?

----- Original Message -----
From: “Gary Little”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 12:18 PM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> I would suggest you use interrupts instead of polling the device. MUCH
> faster.
>
> Gary G. Little
> Broadband Storage, Inc.
> xxxxx@broadstor.com
> xxxxx@inland.net
> (949) 7372731
>
> -----Original Message-----
> From: Gera Kazakov [mailto:xxxxx@setengineering.com]
> Sent: Tuesday, December 11, 2001 10:03 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
> If you mean calling ScsiPortNotification from outside miniport
> context - this issue was already thoroughly discussed in this list.
> I just read the postings :slight_smile:
>
> The perfomance was about 6Mbytes/sec, when my driver was a miniport.
> It is full port driver now but perfomance numbers are similar.
>
> ----- Original Message -----
> From: “Jamey Kirby”
> To: “NT Developers Interest List”
> Sent: Tuesday, December 11, 2001 10:11 AM
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> > How do you get around SCSIPORT holding spinlocks? Have you tested on MPU
> > machines? What is your performance like?
> >
> > Jamey
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> > Sent: Tuesday, December 11, 2001 6:53 AM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > Rahul,
> >
> > To solve similar problem in my port (not miniport) driver I used:
> >
> > > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > > request.
> >
> > - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
> > Disk class rescans all Device\ScsiportX devices, claim all new disk
> > devices and create new Device\HarddiskX\PartitionX devices
> >
> > - scan MACHINE\SYSTEM\DISK\Information key and
> > assign drive letters to all new partitions
> >
> >
> > > 2) To Remove a SCSI HBA upon user’s request.
> > > Any clues ??
> >
> > I have no working solution for this yet. An idea is:
> > first, your app must unmount the partition, and delete
> > the drive letter. Then you probably need call your driver
> > (say, through custom IOCTL) to tell it to delete
> > device associated data, disconnect from server etc.
> > Then you probably need to destroy Device\HarddiskX
> > somehow.
> >
> > regards,
> >
> > Gera.
> >
> > PS, regarding TDI calls from miniport - it, of course, works. No hacks
> > needed. The potential problem is WHQL as miniports are not supposed to
> > call anything but ScsiPortXXX.
> >
> >
> >
> >
> > >
> > > TIA
> > > Rahul Gupta
> > >
> > >
> > > -----Original Message-----
> > > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > > Sent: Tuesday, December 11, 2001 12:44 PM
> > > To: NT Developers Interest List
> > > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> > >
> > >
> > > No, it is not supported. You are not able to call TDI or NDIS from a
> > > SCSI miniport. There are some hacks to work around it, but they are
> > > hacks and will fail under stress.
> > >
> > > Jamey
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: xxxxx@lists.osr.com
> > > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > > Sent: Monday, December 10, 2001 10:46 PM
> > > To: NT Developers Interest List
> > > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> > >
> > >
> > > Hi All,
> > > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > > NT4.0. iSCSI requirements need :-
> > > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > > request.
> > > 2) To Remove a SCSI HBA upon user’s request.
> > >
> > > I want to know how I can achieve this in my SCSI miniport driver. If
> > > it has to be Pnp driver then how to develop a Pnp Scsi miniport driver
> >
> > > on Windows NT 4.0.
> > >
> > >
> > > TIA
> > > Rahul Gupta
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> > >
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To
> >
> > > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@broadstor.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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

> Would you please tell why I cannot call TDI from SCSI miniport?

Due to miniport context problems.

And why
it has to fail under stress? B/s I have such a driver working…

Code written with rules violation is just plain unstable, and it will fail sooner or later.
Only following the rules gives the guarantee that the code is solid.

Max


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

> A few interesting points/questions:

  • Why did MS implement SBP2 as a SCSI port driver and not a miniport?
    (skip)
  • Why is Microsoft implementing their iSCSI driver as a SCSI port driver

BTW - MS has StorPort in XP, but looks like that the miniport context issue is not solved 100% even in StorPort.

Max


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

> But the question was about emulating PNP functionality on NT4,

Lots of way of doing this. In 1999, I even wrote my own simple “PnP manager” (without INF parsing and some other things) and “PCI
bus driver” to port the WDM driver back to NT4 with as small source changes as possible.
I even had a command-line utility to print the “device manager tree”.

Max


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

Interrupts? In virtual software-only device?

Max

----- Original Message -----
From: “Gary Little”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 10:18 PM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> I would suggest you use interrupts instead of polling the device. MUCH
> faster.
>
> Gary G. Little
> Broadband Storage, Inc.
> xxxxx@broadstor.com
> xxxxx@inland.net
> (949) 7372731
>
> -----Original Message-----
> From: Gera Kazakov [mailto:xxxxx@setengineering.com]
> Sent: Tuesday, December 11, 2001 10:03 AM
> To: NT Developers Interest List
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
> If you mean calling ScsiPortNotification from outside miniport
> context - this issue was already thoroughly discussed in this list.
> I just read the postings :slight_smile:
>
> The perfomance was about 6Mbytes/sec, when my driver was a miniport.
> It is full port driver now but perfomance numbers are similar.
>
> ----- Original Message -----
> From: “Jamey Kirby”
> To: “NT Developers Interest List”
> Sent: Tuesday, December 11, 2001 10:11 AM
> Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
>
>
> > How do you get around SCSIPORT holding spinlocks? Have you tested on MPU
> > machines? What is your performance like?
> >
> > Jamey
> >
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com] On Behalf Of Gera Kazakov
> > Sent: Tuesday, December 11, 2001 6:53 AM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> >
> >
> > Rahul,
> >
> > To solve similar problem in my port (not miniport) driver I used:
> >
> > > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > > request.
> >
> > - Issue IOCTL_DISK_FIND_NEW_DEVICES to Device\Harddisk0\Partition0. The
> > Disk class rescans all Device\ScsiportX devices, claim all new disk
> > devices and create new Device\HarddiskX\PartitionX devices
> >
> > - scan MACHINE\SYSTEM\DISK\Information key and
> > assign drive letters to all new partitions
> >
> >
> > > 2) To Remove a SCSI HBA upon user’s request.
> > > Any clues ??
> >
> > I have no working solution for this yet. An idea is:
> > first, your app must unmount the partition, and delete
> > the drive letter. Then you probably need call your driver
> > (say, through custom IOCTL) to tell it to delete
> > device associated data, disconnect from server etc.
> > Then you probably need to destroy Device\HarddiskX
> > somehow.
> >
> > regards,
> >
> > Gera.
> >
> > PS, regarding TDI calls from miniport - it, of course, works. No hacks
> > needed. The potential problem is WHQL as miniports are not supposed to
> > call anything but ScsiPortXXX.
> >
> >
> >
> >
> > >
> > > TIA
> > > Rahul Gupta
> > >
> > >
> > > -----Original Message-----
> > > From: Jamey Kirby [mailto:xxxxx@storagecraft.com]
> > > Sent: Tuesday, December 11, 2001 12:44 PM
> > > To: NT Developers Interest List
> > > Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver
> > >
> > >
> > > No, it is not supported. You are not able to call TDI or NDIS from a
> > > SCSI miniport. There are some hacks to work around it, but they are
> > > hacks and will fail under stress.
> > >
> > > Jamey
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: xxxxx@lists.osr.com
> > > [mailto:xxxxx@lists.osr.com] On Behalf Of Rahul Gupta
> > > Sent: Monday, December 10, 2001 10:46 PM
> > > To: NT Developers Interest List
> > > Subject: [ntdev] Regarding Pseudo SCSI Miniport driver
> > >
> > >
> > > Hi All,
> > > I am developing a Pseudo SCSI miniport driver for iSCSI on Windows
> > > NT4.0. iSCSI requirements need :-
> > > 1) To detect a New SCSI Host Bus Adapter which may come up upon user’s
> > > request.
> > > 2) To Remove a SCSI HBA upon user’s request.
> > >
> > > I want to know how I can achieve this in my SCSI miniport driver. If
> > > it has to be Pnp driver then how to develop a Pnp Scsi miniport driver
> >
> > > on Windows NT 4.0.
> > >
> > >
> > > TIA
> > > Rahul Gupta
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> > >
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@dcmtech.co.in To
> >
> > > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@storagecraft.com To
> > unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@setengineering.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@broadstor.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
> —
> You are currently subscribed to ntdev as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>


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

Yeah, true. But if you want existing Disk class to be
on top of your port, the choices are limited.

----- Original Message -----
From: “Maxim S. Shatskih”
To: “NT Developers Interest List”
Sent: Tuesday, December 11, 2001 1:20 PM
Subject: [ntdev] RE: Regarding Pseudo SCSI Miniport driver

> > But the question was about emulating PNP functionality on NT4,
>
> Lots of way of doing this. In 1999, I even wrote my own simple “PnP manager” (without INF parsing and some other things) and “PCI
> bus driver” to port the WDM driver back to NT4 with as small source changes as possible.
> I even had a command-line utility to print the “device manager tree”.
>
> Max
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@setengineering.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com


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