Length parameter of ScsiPortGetPhysicalAddress

Still trying to track down my hibernate crash. When I call
ScsiPortGetPhysicalAddress (which I assume is allowed and required
because the dump/hiber driver isn’t ‘virtual’), the Length parameter is
unchanged. The return value isn’t 0 though which means the call
succeeded.

Can anyone tell me what is going on?

Thanks

James

I have some dim recollection that one should ignore the length
parameter in the dump path.
Mark Roddy

On Thu, Jan 20, 2011 at 2:58 AM, James Harper
wrote:
> Still trying to track down my hibernate crash. When I call
> ScsiPortGetPhysicalAddress (which I assume is allowed and required
> because the dump/hiber driver isn’t ‘virtual’), the Length parameter is
> unchanged. The return value isn’t 0 though which means the call
> succeeded.
>
> Can anyone tell me what is going on?
>
> Thanks
>
> James
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>

What you see in Length? Zero? What do you set it to?

I was seeing random values that were definitely not lengths. I then initialized the length to -1 before I made the call and it remained -1, so the function is updating it.

I wish this stuff was documented better. I come from a Linux background so I’m used to poor or non-existent documentation but at least then I could just look at the source code if I had any doubts about how it was supposed to work. It seems that the crash dump driver gives me the worst of both worlds :frowning:

Sent from my iPhone

On 21/01/2011, at 11:09, “xxxxx@broadcom.com” wrote:

> What you see in Length? Zero? What do you set it to?
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Is not updating it I meant

Sent from my iPhone

On 21/01/2011, at 11:24, “James Harper” wrote:

> I was seeing random values that were definitely not lengths. I then initialized the length to -1 before I made the call and it remained -1, so the function is updating it.
>
> I wish this stuff was documented better. I come from a Linux background so I’m used to poor or non-existent documentation but at least then I could just look at the source code if I had any doubts about how it was supposed to work. It seems that the crash dump driver gives me the worst of both worlds :frowning:
>
> Sent from my iPhone
>
> On 21/01/2011, at 11:09, “xxxxx@broadcom.com” wrote:
>
>> What you see in Length? Zero? What do you set it to?
>>
>> —
>> NTDEV is sponsored by OSR
>>
>> For our schedule of WDF, WDM, debugging and other seminars visit:
>> http://www.osr.com/seminars
>>
>> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

James,

Which OS? Win7/2K8R2 SP1 have a bug where the hiber/crash kernel
checks the length of the initialization parameters against the size of
the structure as defined in storport.h. So, if you have a scsiport
driver you have to lie.

Paul

On 20 January 2011 07:58, James Harper wrote:
> Still trying to track down my hibernate crash. When I call
> ScsiPortGetPhysicalAddress (which I assume is allowed and required
> because the dump/hiber driver isn’t ‘virtual’), the Length parameter is
> unchanged. The return value isn’t 0 though which means the call
> succeeded.
>
> Can anyone tell me what is going on?
>
> Thanks
>
> James
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>


Paul Durrant
http://www.linkedin.com/in/pdurrant

> James,

Which OS? Win7/2K8R2 SP1 have a bug where the hiber/crash kernel
checks the length of the initialization parameters against the size of
the structure as defined in storport.h. So, if you have a scsiport
driver you have to lie.

I am testing on a 32 bit Windows 2008 server. Do you have any links to
articles explain the R2 bug? I’m using storport now though, not
scsiport.

Thanks

James

James,

It appears Microsoft don’t have anything on their support site yet,
although I guess that’s because they’ve not actually issued a fix yet.
It should not affect you though as the problem is limited to
win7/2k8r2 sp1. I don’t have any experience of storport so I don’t
have any other suggestions.

Paul

On 21 January 2011 10:42, James Harper wrote:
>> James,
>>
>> ? Which OS? Win7/2K8R2 SP1 have a bug where the hiber/crash kernel
>> checks the length of the initialization parameters against the size of
>> the structure as defined in storport.h. So, if you have a scsiport
>> driver you have to lie.
>>
>
> I am testing on a 32 bit Windows 2008 server. Do you have any links to
> articles explain the R2 bug? I’m using storport now though, not
> scsiport.
>
> Thanks
>
> James
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer
>


Paul Durrant
http://www.linkedin.com/in/pdurrant

Thanks Paul.

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-438331-
xxxxx@lists.osr.com] On Behalf Of Paul Durrant
Sent: Friday, 21 January 2011 21:59
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Length parameter of ScsiPortGetPhysicalAddress

James,

It appears Microsoft don’t have anything on their support site yet,
although I guess that’s because they’ve not actually issued a fix yet.
It should not affect you though as the problem is limited to
win7/2k8r2 sp1. I don’t have any experience of storport so I don’t
have any other suggestions.

Paul

On 21 January 2011 10:42, James Harper wrote:
> >> James,
> >>
> >> ? Which OS? Win7/2K8R2 SP1 have a bug where the hiber/crash kernel
> >> checks the length of the initialization parameters against the size of
> >> the structure as defined in storport.h. So, if you have a scsiport
> >> driver you have to lie.
> >>
> >
> > I am testing on a 32 bit Windows 2008 server. Do you have any links to
> > articles explain the R2 bug? I’m using storport now though, not
> > scsiport.
> >
> > Thanks
> >
> > James
> >
> >
> > —
> > NTDEV is sponsored by OSR
> >
> > For our schedule of WDF, WDM, debugging and other seminars visit:
> > http://www.osr.com/seminars
> >
> > To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
> >
>
>
>
> –
> Paul Durrant
> http://www.linkedin.com/in/pdurrant
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer