Prev: Cheap USB device that never autoplays or asks for driver
Next: Building a driver without a debug section.
From: yushang on 26 Sep 2009 08:45 Dear all , is it possible to receive a SRB with NULL DataBuffer ? The SCSI command is SCSIOP_READ (0x28) and the DataTransferLength is not zero . Thanks in advance
From: Alexander Grigoriev on 26 Sep 2009 11:01 This means the buffer doesn't have any user mode or kernel mode mapping. Usually that's paging IO or lazy write. You can only use DataBuffer of a read/write command to pass to StorBuildScatterGatherList. "yushang" <yusunn(a)gmail.com> wrote in message news:54ee6542-7535-4cc1-abe8-08542d7dc427(a)i4g2000prm.googlegroups.com... > Dear all , is it possible to receive a SRB with NULL DataBuffer ? The > SCSI command is SCSIOP_READ (0x28) and the DataTransferLength is not > zero . Thanks in advance
From: yushang on 26 Sep 2009 11:26 On Sep 26, 11:01 pm, "Alexander Grigoriev" <al...(a)earthlink.net> wrote: > This means the buffer doesn't have any user mode or kernel mode mapping. > Usually that's paging IO or lazy write. > > You can only use DataBuffer of a read/write command to pass to > StorBuildScatterGatherList. > > "yushang" <yus...(a)gmail.com> wrote in message > > news:54ee6542-7535-4cc1-abe8-08542d7dc427(a)i4g2000prm.googlegroups.com... > > > Dear all , is it possible to receive a SRB with NULL DataBuffer ? The > > SCSI command is SCSIOP_READ (0x28) and the DataTransferLength is not > > zero . Thanks in advance Is DataBuffer related to MapBuffers of PORT_CONFIGURATION_INFORMATION ? If so , it seems this is a functionality provided by Scsiport layer . And I got the SRB directly from the disk class dirver. It seems there is nothing to do with Scsiport .
From: Maxim S. Shatskih on 26 Sep 2009 15:48 > functionality provided by Scsiport layer . And I got the SRB directly > from the disk class dirver. At this level, Srb->DataBuffer is probably undefined, and the buffer is at Irp->MdlAddress -- Maxim S. Shatskih Windows DDK MVP maxim(a)storagecraft.com http://www.storagecraft.com
From: Alexander Grigoriev on 26 Sep 2009 15:48 Originally, DataBuffer contains the same as MmGetMdlVirtualAddress(Irp->Mdl)+offset (offset is non-zero if SRB is a result of breaking a big request to smaller chenks). Storport/Scsiport can replace it with mapped buffer address, if MapBuffers requires that. "yushang" <yusunn(a)gmail.com> wrote in message news:e3de83e6-8388-429b-8526-02ac7d254e85(a)v15g2000prn.googlegroups.com... > On Sep 26, 11:01 pm, "Alexander Grigoriev" <al...(a)earthlink.net> > wrote: >> This means the buffer doesn't have any user mode or kernel mode mapping. >> Usually that's paging IO or lazy write. >> >> You can only use DataBuffer of a read/write command to pass to >> StorBuildScatterGatherList. >> >> "yushang" <yus...(a)gmail.com> wrote in message >> >> news:54ee6542-7535-4cc1-abe8-08542d7dc427(a)i4g2000prm.googlegroups.com... >> >> > Dear all , is it possible to receive a SRB with NULL DataBuffer ? The >> > SCSI command is SCSIOP_READ (0x28) and the DataTransferLength is not >> > zero . Thanks in advance > > Is DataBuffer related to MapBuffers of > PORT_CONFIGURATION_INFORMATION ? If so , it seems this is a > functionality provided by Scsiport layer . And I got the SRB directly > from the disk class dirver. It seems there is nothing to do with > Scsiport .
|
Next
|
Last
Pages: 1 2 3 Prev: Cheap USB device that never autoplays or asks for driver Next: Building a driver without a debug section. |