Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


is DPC queue display in !pcr broken?

wdwd Member - All Emails Posts: 29
I'm trying to use !pcr to look at queued DPCs. The command:
7: kd> !pcr 0
KPCR for Processor 0 at fffff80197b04000:
Major 1 Minor 1
NtTib.ExceptionList: fffff801992a0000
NtTib.StackBase: fffff801992a1080
NtTib.StackLimit: 0000000003bbf128
NtTib.SubSystemTib: fffff80197b04000
NtTib.Version: 0000000097b04180
NtTib.UserPointer: fffff80197b047f0
NtTib.SelfTib: 000000007fea7000

SelfPcr: 0000000000000000
Prcb: fffff80197b04180
Irql: 0000000000000000
IRR: 0000000000000000
IDR: 0000000000000000
InterruptMode: 0000000000000000
IDT: 0000000000000000
GDT: 0000000000000000
TSS: 0000000000000000

CurrentThread: fffff80197b5ca00
NextThread: ffffe00102f0b6c0
IdleThread: fffff80197b5ca00

DpcQueue: Unable to read nt!_KDPC_DATA.DpcListHead.Flink @ fffff80197b06f00

Based on the command below, nt!_KDPC_DATA has no element named DpcListHead.


7: kd> dt nt!_KDPC_DATA
+0x000 DpcList : _KDPC_LIST
+0x010 DpcLock : Uint8B
+0x018 DpcQueueDepth : Int4B
+0x01c DpcCount : Uint4B
+0x020 ActiveDpc : Ptr64 _KDPC

I can walk the list manually by following DpcList, but isn't that what the command is supposed to do?

thanks!

Comments

  • raj_rraj_r Member - All Emails Posts: 983
    doesn't !dpcs <processor> provide the info ?

    kd> !dpcs 0
    CPU Type KDPC Function




    On 8/12/16, [email protected] <[email protected]> wrote:
    > I'm trying to use !pcr to look at queued DPCs. The command:
    > 7: kd> !pcr 0
    > KPCR for Processor 0 at fffff80197b04000:
    > Major 1 Minor 1
    > NtTib.ExceptionList: fffff801992a0000
    > NtTib.StackBase: fffff801992a1080
    > NtTib.StackLimit: 0000000003bbf128
    > NtTib.SubSystemTib: fffff80197b04000
    > NtTib.Version: 0000000097b04180
    > NtTib.UserPointer: fffff80197b047f0
    > NtTib.SelfTib: 000000007fea7000
    >
    > SelfPcr: 0000000000000000
    > Prcb: fffff80197b04180
    > Irql: 0000000000000000
    > IRR: 0000000000000000
    > IDR: 0000000000000000
    > InterruptMode: 0000000000000000
    > IDT: 0000000000000000
    > GDT: 0000000000000000
    > TSS: 0000000000000000
    >
    > CurrentThread: fffff80197b5ca00
    > NextThread: ffffe00102f0b6c0
    > IdleThread: fffff80197b5ca00
    >
    > DpcQueue: Unable to read nt!_KDPC_DATA.DpcListHead.Flink @
    > fffff80197b06f00
    >
    > Based on the command below, nt!_KDPC_DATA has no element named DpcListHead.
    >
    >
    > 7: kd> dt nt!_KDPC_DATA
    > +0x000 DpcList : _KDPC_LIST
    > +0x010 DpcLock : Uint8B
    > +0x018 DpcQueueDepth : Int4B
    > +0x01c DpcCount : Uint4B
    > +0x020 ActiveDpc : Ptr64 _KDPC
    >
    > I can walk the list manually by following DpcList, but isn't that what the
    > command is supposed to do?
    >
    > thanks!
    >
    >
    > ---
    > WINDBG is sponsored by OSR
    >
    > OSR is hiring!! Info at http://www.osr.com/careers
    >
    >
    > MONTHLY seminars on crash dump analysis, WDF, Windows internals and software
    > drivers!
    > Details at <http://www.osr.com/seminars&gt;
    >
    > To unsubscribe, visit the List Server section of OSR Online at
    > <http://www.osronline.com/page.cfm?name=ListServer&gt;
    >
  • wdwd Member - All Emails Posts: 29
    Hi Raj. Thanks, yes it does...

    On Fri, Aug 12, 2016 at 2:05 PM, raj r wrote:

    > doesn't !dpcs provide the info ?
    >
    > kd> !dpcs 0
    > CPU Type KDPC Function
    >
    >
    >
    >
    > On 8/12/16, [email protected]il.com wrote:
    > > I'm trying to use !pcr to look at queued DPCs. The command:
    > > 7: kd> !pcr 0
    > > KPCR for Processor 0 at fffff80197b04000:
    > > Major 1 Minor 1
    > > NtTib.ExceptionList: fffff801992a0000
    > > NtTib.StackBase: fffff801992a1080
    > > NtTib.StackLimit: 0000000003bbf128
    > > NtTib.SubSystemTib: fffff80197b04000
    > > NtTib.Version: 0000000097b04180
    > > NtTib.UserPointer: fffff80197b047f0
    > > NtTib.SelfTib: 000000007fea7000
    > >
    > > SelfPcr: 0000000000000000
    > > Prcb: fffff80197b04180
    > > Irql: 0000000000000000
    > > IRR: 0000000000000000
    > > IDR: 0000000000000000
    > > InterruptMode: 0000000000000000
    > > IDT: 0000000000000000
    > > GDT: 0000000000000000
    > > TSS: 0000000000000000
    > >
    > > CurrentThread: fffff80197b5ca00
    > > NextThread: ffffe00102f0b6c0
    > > IdleThread: fffff80197b5ca00
    > >
    > > DpcQueue: Unable to read nt!_KDPC_DATA.DpcListHead.Flink
    > @
    > > fffff80197b06f00
    > >
    > > Based on the command below, nt!_KDPC_DATA has no element named
    > DpcListHead.
    > >
    > >
    > > 7: kd> dt nt!_KDPC_DATA
    > > +0x000 DpcList : _KDPC_LIST
    > > +0x010 DpcLock : Uint8B
    > > +0x018 DpcQueueDepth : Int4B
    > > +0x01c DpcCount : Uint4B
    > > +0x020 ActiveDpc : Ptr64 _KDPC
    > >
    > > I can walk the list manually by following DpcList, but isn't that what
    > the
    > > command is supposed to do?
    > >
    > > thanks!
    > >
    > >
    > > ---
    > > WINDBG is sponsored by OSR
    > >
    > > OSR is hiring!! Info at http://www.osr.com/careers
    > >
    > >
    > > MONTHLY seminars on crash dump analysis, WDF, Windows internals and
    > software
    > > drivers!
    > > Details at
    > >
    > > To unsubscribe, visit the List Server section of OSR Online at
    > >
    > >
    >
    > ---
    > WINDBG is sponsored by OSR
    >
    > OSR is hiring!! Info at http://www.osr.com/careers
    >
    >
    > MONTHLY seminars on crash dump analysis, WDF, Windows internals and
    > software drivers!
    > Details at
    >
    > To unsubscribe, visit the List Server section of OSR Online at <
    > http://www.osronline.com/page.cfm?name=ListServer&gt;
    >



    --
    *Wade Dawson*
    *DT Multimedia*
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Kernel Debugging 30 Mar 2020 OSR Seminar Space
Developing Minifilters 15 Jun 2020 LIVE ONLINE
Writing WDF Drivers 22 June 2020 LIVE ONLINE
Internals & Software Drivers 28 Sept 2020 Dulles, VA