I am working on a Windows CE 3.0 file system driver, that uses
FSDMGR_ReadDiskEx. This functions is called with a FSD_SCATTER_GATHER_INFO
argument. FSDMGR translates this request to a function call DISK_IOCTL_WRITE
call of the lower block driver with a SG_REQ argument.

The online help requests from the block driver, that the member sr_status
should contain the error code or ERROR_SUCCESS. I am missing a corresponding
member in the FSD_SCATTER_GATHER_INFO.

What is the correct way to pass error information from the block driver
through FSDMGR to the file system driver?

/Helge

RE: Passing error code through FSDMGR by arogers

arogers
Tue Jan 11 12:13:36 CST 2005

Since the sr_status member of the SG_REQ structure is ignored by FSDMGR,
the proper way for a block driver to return an error code on i/o failure is
to use SetLastError(). If the block driver returns FALSE for an i/o
request, FSDMGR_ReadDiskEx will return the result of GetLastError() to the
calling FSD.

Andrew Rogers
Microsoft Windows CE

___________________________________________________________
To reply directly, remove "online" from my email address.
This posting is provided "AS IS" with no warranties, and confers no rights.

--------------------
> From: "Helge Kruse" <Helge.Kruse-nospam@gmx.net>
> Subject: Passing error code through FSDMGR
> Date: Fri, 10 Dec 2004 13:18:38 +0100
> Lines: 15
> X-Priority: 3
> X-MSMail-Priority: Normal
> X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
> X-RFC2646: Format=Flowed; Original
> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
> Message-ID: <#7cqiJr3EHA.4004@tk2msftngp13.phx.gbl>
> Newsgroups: microsoft.public.windowsce.platbuilder
> NNTP-Posting-Host: 62.52.4.125
> Path:
cpmsftngxa10.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGP08.phx.gbl!tk2msftngp13
phx.gbl
> Xref: cpmsftngxa10.phx.gbl microsoft.public.windowsce.platbuilder:59104
> X-Tomcat-NG: microsoft.public.windowsce.platbuilder
>
> I am working on a Windows CE 3.0 file system driver, that uses
> FSDMGR_ReadDiskEx. This functions is called with a
FSD_SCATTER_GATHER_INFO
> argument. FSDMGR translates this request to a function call
DISK_IOCTL_WRITE
> call of the lower block driver with a SG_REQ argument.
>
> The online help requests from the block driver, that the member sr_status
> should contain the error code or ERROR_SUCCESS. I am missing a
corresponding
> member in the FSD_SCATTER_GATHER_INFO.
>
> What is the correct way to pass error information from the block driver
> through FSDMGR to the file system driver?
>
> /Helge
>
>
>