I wrote a FSFD driver. When a client request arrives I mark its IRP for
pending and return STATUS_PENDING to complete request when something
interesting happens. Client uses several threads and synchronous
DeviceIoControl. The problem is when I complete a request all client threads
which are waiting on DeviceIoControl release. One of them receives valid
data. All the rest are returned untouched data buffer.
Have anyone noticed this behavior?
Alexey Logachyov
xxxxx@vba.com.by
VirusBlokAda ltd.
http://www.vba.com.by
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Do all of “the client’s” threads use the same single (global?) KEVENT
to wait? Maybe the same IRP, too? :-))) Looks like something is wrong
somewhere…
— Alexey Logachyov wrote:
> I wrote a FSFD driver. When a client request arrives I mark its IRP for
> pending and return STATUS_PENDING to complete request when something
> interesting happens. Client uses several threads and synchronous
> DeviceIoControl. The problem is when I complete a request all client threads
> which are waiting on DeviceIoControl release. One of them receives valid
> data. All the rest are returned untouched data buffer.
>
> Have anyone noticed this behavior?
>
> Alexey Logachyov
> xxxxx@vba.com.by
> VirusBlokAda ltd.
> http://www.vba.com.by
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@yahoo.com
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
__________________________________________________
Do You Yahoo!?
Send your FREE holiday greetings online!
http://greetings.yahoo.com
—
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
Happy New 2002 Year!
I solved my problem. Was my fault. I passed NULL as an OVERLAPPED pointer
though MSDN says it is a no-no for devices opened with FILE_FLAG_OVERLAPPED.
Alexey Logachyov
xxxxx@vba.com.by
VirusBlokAda ltd.
http://www.vba.com.by
----- Original Message -----
From: “Ntdev Reader”
To: “NT Developers Interest List”
Sent: Saturday, December 29, 2001 9:48 PM
Subject: [ntdev] Re: IoCompleteRequest
> Do all of “the client’s” threads use the same single (global?) KEVENT
> to wait? Maybe the same IRP, too? :-))) Looks like something is wrong
> somewhere…
>
> — Alexey Logachyov wrote:
> > I wrote a FSFD driver. When a client request arrives I mark its IRP for
> > pending and return STATUS_PENDING to complete request when something
> > interesting happens. Client uses several threads and synchronous
> > DeviceIoControl. The problem is when I complete a request all client
threads
> > which are waiting on DeviceIoControl release. One of them receives valid
> > data. All the rest are returned untouched data buffer.
> >
> > Have anyone noticed this behavior?
> >
> > Alexey Logachyov
> > xxxxx@vba.com.by
> > VirusBlokAda ltd.
> > http://www.vba.com.by
> >
> >
> >
> > —
> > You are currently subscribed to ntdev as: xxxxx@yahoo.com
> > To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
>
>
> __________________________________________________
> Do You Yahoo!?
> Send your FREE holiday greetings online!
> http://greetings.yahoo.com
>
> —
> You are currently subscribed to ntdev as: xxxxx@vba.com.by
> To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
—
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com