ScsiPortGetPhysicalAddress asserts for a SCSI Miniport in Windows XP

All,

My SCSI Miniport works just fine under Windows 2000. However, use of
Nero Burning Rom with a CD Writer creates havoc - apparently
ScsiPortGetPhysicalAddress is returning me an invalid physical address for
the HBA to DMA. No such problem seems to occur with Win 2k.

Under the checked build of Windows XP, the problem manifests itself
as an assert in the SCSI Port driver:
*** Assertion failed: byteOffset < deviceExtension->CommonBufferSize
*** Source File: d:\xpclient\drivers\storage\scsiport\port.c, line 2114

The issue comes up when I am allocating the SenseInfoBuffer of the
SRB to the CCB:
CCB->SenseDataPointer =
ScsiPortConvertPhysicalAddressToUlong(ScsiPortGetPhysicalAddress(deviceExten
sion, Srb, Srb->SenseInfoBuffer, &length));

While debugging I notice that the normal length of the SRB’s sense
info buffer is 18, but when the problem occurs, the length is 32, the Data
transfer length of the SRB is 36, and the CDB length is 6.

Any help would be appreciated.

TIA. Regards,
Sirish