MSI Vector/Processor Mapping

Hi all,

Does anyone know how to retrieve the mapping information between a given MSI vector and one of the processors in driver? I believe the mapping is platform specific and Windows OS has the configuration handy.

Thanks a lot.

It’s handed to you in your IRP_MN_START_DEVICE. See the Resources
parameter.


Jake Oshins
Hyper-V I/O Architect
Windows Kernel Group

This post implies no warranties and confers no rights.


wrote in message news:xxxxx@ntdev…
> Hi all,
>
> Does anyone know how to retrieve the mapping information between a given
> MSI vector and one of the processors in driver? I believe the mapping is
> platform specific and Windows OS has the configuration handy.
>
> Thanks a lot.
>

Jake,

If I am not working on StorPort miniport driver, it wouldn’t be a problem to me. It seems miniport driver is limited on accessing lots of information. I do receive IRP_MN_START_DEVICE and the associated IRP information. Question is how can I access information like IO_CONNECT_INTERRUPT_PARAMETERS, which has all the details ?

Thanks a lot.

It sounds like you just answered your own question. You have access to
IRP_MN_START_DEVICE. The information is there.


Jake Oshins
Hyper-V I/O Architect
Windows Kernel Group

This post implies no warranties and confers no rights.


wrote in message news:xxxxx@ntdev…
> Jake,
>
> If I am not working on StorPort miniport driver, it wouldn’t be a problem
> to me. It seems miniport driver is limited on accessing lots of
> information. I do receive IRP_MN_START_DEVICE and the associated IRP
> information. Question is how can I access information like
> IO_CONNECT_INTERRUPT_PARAMETERS, which has all the details ?
>
> Thanks a lot.
>

Per MSDN document, the OriginalRequest of SRB is the pointer to the original IRP. However, it contains a bogus CurrentStackLocation when I receive IRP_MN_START_DEVICE. Please correct me if I am wrong.

Thanks a lot.