hi all,
in my Win2k device driver I am using Fast Ioctl… entry point.
The driver works absolutely fine as long as my device doesnot interrupt…
but as soon as my device interrupts… & i am in side my Fast Ioctl entry
point… the driver crashes (with message
DRIVER_IRQL_NOT_LESS_OR_EQUAL)…
Now i have a few questions…
Documents say, for Fast Ioctls it is mandatory to complete the I/O request
in context of the calling process… & if interrupt occurs in between… i
guess there is a context-switch & my driver crashes… does this sound
relevant… or there is something else to it??? Moreover… strange part is
the driver crashes even if i donot access any addresses i get from I/O
request… how’s that???
Can anyone please elaborate on concept of Fast Ioctl. & the does & don’ts
if possible… it’ll be great if i can get link to some relevant page on
net…
Any suggestions are welcome…
Thanx,
SP.
Interrupts are usally asynchronous events. A interrupt will interrupt
current executing code, context will be saved into a trap frame, isr
executed, then upon interrupt return, normal execution of the interrupted
code will be resumed. So thats not why your driver crashes.
However, you dont give us enough information to deduce a correct answer.
Please, downlaod latest Windbg, install a checked OS build, install
coresponding OS symbols, your driver symbols, and paste us all crash
relevant information. Including a stack dump, please. paste directly from
Windbg.
Elaborating the consept of FastIo in detail is beyond the purpose of this
mailing list. The subject is preety vast.
----- Original Message -----
From: “Shailesh”
To: “NT Developers Interest List”
Sent: Monday, September 09, 2002 7:37 PM
Subject: [ntdev] Fast Ioctl => Win2k
> hi all,
>
> in my Win2k device driver I am using Fast Ioctl… entry point.
> The driver works absolutely fine as long as my device doesnot interrupt…
> but as soon as my device interrupts… & i am in side my Fast Ioctl entry
> point… the driver crashes (with message
> DRIVER_IRQL_NOT_LESS_OR_EQUAL)…
>
> Now i have a few questions…
>
> Documents say, for Fast Ioctls it is mandatory to complete the I/O request
> in context of the calling process… & if interrupt occurs in between… i
> guess there is a context-switch & my driver crashes… does this sound
> relevant… or there is something else to it??? Moreover… strange part is
> the driver crashes even if i donot access any addresses i get from I/O
> request… how’s that???
>
> Can anyone please elaborate on concept of Fast Ioctl. & the does & don’ts
> if possible… it’ll be great if i can get link to some relevant page on
> net…
>
> Any suggestions are welcome…
>
> Thanx,
>
> SP.
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@rdsor.ro
> To unsubscribe send a blank email to %%email.unsub%%
>
…
i’ve done everything as u said & in ur said manner & posted the report on
this list as *****Fatal System Error 0x0000d1… please refer to it…
& let me know if something else needs to be done.
thanx,
SP.