How to get drivers/devices are using specific irq number

Hi,

Any method or tool to get which drivers/devices are using a specific irq?

Thanks
Wayne

Device Manager->View->Resources by Type

-scott


Scott Noone
Software Engineer
OSR Open Systems Resources, Inc.
http://www.osronline.com

“Wayne Gong” wrote in message news:xxxxx@ntdev…
> Hi,
>
> Any method or tool to get which drivers/devices are using a specific irq?
>
> Thanks
> Wayne
>

On 2009/2/18 23:29, Scott Noone wrote:

Device Manager->View->Resources by Type

Got it. Thanks.

Another question is, when some devices share a interrupt number, how
does windows interrupt manager send interrupt to these devices? I mean
what sort does manager use. Who register first will receive interrupt
first, is that right?

Thanks
Wayne

>I mean what sort does manager use. Who register first will receive

interrupt first, is that right?

There some order imposed here, though I suspect that falls under the
category of an implementation detail. Why do you care?

-scott


Scott Noone
Software Engineer
OSR Open Systems Resources, Inc.
http://www.osronline.com

“Wayne Gong” wrote in message news:xxxxx@ntdev…
>
>
> On 2009/2/18 23:29, Scott Noone wrote:
>> Device Manager->View->Resources by Type
>
> Got it. Thanks.
>
> Another question is, when some devices share a interrupt number, how does
> windows interrupt manager send interrupt to these devices? I mean what
> sort does manager use. Who register first will receive interrupt first, is
> that right?
>
> Thanks
> Wayne
>

>

Device Manager->View->Resources by Type

That will only tell you which IRQ’s have been allocated to which drivers
by the pnp manager. If that’s what you want to know then fine, but keep
it in mind.

James

> There some order imposed here, though I suspect that falls under the

category of an implementation detail. Why do you care?

I am trying to figure out why two disks which my scsiport driver
serviced has very different performance. Just want to check interrupt
method I am using first.

Thanks
Wayne

It’s extremely unlikely the order in which the interrupt service routines would cause “very different performance.”

Peter
OSR

>

It’s extremely unlikely the order in which the interrupt service
routines
would cause “very different performance.”

But it’s one of the joys of coding for virtual devices with scsiport.

Assuming Wayne’s PV drivers operate in the same manner as mine, we use
the fact that the IRQ gets passed down the chain of handlers. If one of
the handlers isn’t quite doing the right thing then obviously problems
will arise.

James

> Assuming Wayne’s PV drivers operate in the same manner as mine, we use

the fact that the IRQ gets passed down the chain of handlers. If one of
the handlers isn’t quite doing the right thing then obviously problems
will arise.

Yes, I am wandering too. Hope I am in right way, at least find a
illustration to approve ’ ha, that’s OK’

Thanks
Wayne

Your disks ain’t got no interrupts; the controllers the disks are connected
to manage the IRQL resources and the interrupt vector. Given the two disks
are on the same controller, the SCSIPORT/miniport driver associated with
that controller will be assigned and manage the IRQL and vector for that
resource. Assuming you own the miniport, are you processing ALL LUNs on
every interrupt service call? That’s a common backwater that can easily kill
performance; you only process one LUN per each interrupt which may well mean
you get the first one but never check for another. If poor little LUN 4 has
a request, but LUN 1 has more activity, 4 will never be serviced because you
only handle one per interrupt.


The personal opinion of
Gary G. Little

“Wayne Gong” wrote in message news:xxxxx@ntdev…
>
>> There some order imposed here, though I suspect that falls under the
>> category of an implementation detail. Why do you care?
>
> I am trying to figure out why two disks which my scsiport driver serviced
> has very different performance. Just want to check interrupt method I am
> using first.
>
> Thanks
> Wayne
>

One quick way to test that is to disable/enable your SCSIPORT driver using
Device Manager. Once enabled, the SCSIPORT will now be at the TOP of the IRQ
chain, and if a recalcitrant driver in the chain is the problem, you should
see better performance in your storage system.

Caveate: if the controller is the BOOT device, disableing it will force a
reboot, and the reboot will again structure the same problematic interrupt
chain order.


The personal opinion of
Gary G. Little

“Wayne Gong” wrote in message news:xxxxx@ntdev…
>
>> Assuming Wayne’s PV drivers operate in the same manner as mine, we use
>> the fact that the IRQ gets passed down the chain of handlers. If one of
>> the handlers isn’t quite doing the right thing then obviously problems
>> will arise.
>
> Yes, I am wandering too. Hope I am in right way, at least find a
> illustration to approve ’ ha, that’s OK’
>
> Thanks
> Wayne
>