Re: IoRequestDpc results in IRQ_NOT_LESS_



>From DDK docs:

"Callers of IoRequestDpc must be running at DIRQL."

"chi tai" <chi-tai@xxxxxxxxxxxxxxxxx> wrote in message
news:d2nfm6$t2v$04$1@xxxxxxxxxxxxxxxxxxxx
> Hello,
>
> first, thanks for the last support. It was a great help to me.
>
> I have the following problem.
> A call to IoRequestDpc ( deviceObject, NULL, (PVOID) TRUE ) at the end of
> a routine running at DISPATCH_LEVEL (returning
> STATUS_MORE_PROCESSING_REQUIRED) cause a bug check with the parameters
> indicating 0xA: IRQL_NOT_LESS_OR_EQUAL, and a write access ( 0x...1
> parameter 3 ).
> According the WinDbg and it's documentation, this is a page fault means a
> write access to a address actually not mapped in the physical memory.
>
> If i don't queue a dpc, the routine ends up as expected.
> I also tried to raise the IRQL to a higher level before queueing a dpc,
> but it behaves the same.
>
> Whithin the routine i only access data that is in nonpaged memory and even
> if a return statement at the very beginning of the DPC-Routine is set, it
> results in this bug check.
>
> I need to queue a dpc to commence a process of several actions, so what's
> the faulty ?
> Isn't this the right way ?
>
> Maybe this is an easy exercise for anyone, but i don't know why this bug
> check appears. Have someone had this problem before ?
>
> Thanks in advance !
>
> Chi-Tai


.



Relevant Pages

  • Re: IoRequestDpc results in IRQ_NOT_LESS_
    ... If i don't queue a dpc, the routine ends up as expected. ... I also tried to raise the IRQL to a higher level before queueing a dpc, ... Whithin the routine i only access data that is in nonpaged memory and even if a return statement at the very beginning of the DPC-Routine is set, it results in this bug check. ...
    (microsoft.public.development.device.drivers)
  • IoRequestDpc results in IRQ_NOT_LESS_
    ... If i don't queue a dpc, the routine ends up as expected. ... I also tried to raise the IRQL to a higher level before queueing a dpc, ... Whithin the routine i only access data that is in nonpaged memory and even if a return statement at the very beginning of the DPC-Routine is set, it results in this bug check. ...
    (microsoft.public.development.device.drivers)
  • Re: [linux-pm] question on resume()
    ... Rafael is wrong; wake_updoesn't remove a task from a wait queue. ... Thus calling wake_upon a task in the refrigerator will accomplish ... The I/O's completion routine generally _will_ end up calling ...
    (Linux-Kernel)
  • Re: KeSetEvent in InterruptServiceRotine , cant pass DriverVerifier test
    ... You cannnot use KeSetEvent in an interrupt service routine, ... You will need to queue a DPC ... and the perform the KeSetEvent from the DPC routine. ... > When my device have a interrupt event,then driver's InterrupServiceRotine ...
    (microsoft.public.development.device.drivers)
  • Re: PCI interrupt response time
    ... You can have many DPC queues, ... instance in a given queue. ... With the interrupts occurring so close ... >>> copies into the DPC as well as the data processing but that hasn't ...
    (microsoft.public.win32.programmer.kernel)