!sysptes 4 and Windows 2003 R2 32bit Std/Ent

Hi All,

I’m having a PTE issue on my Citrix servers and get the familiar “Unable to get System PTE individual lock consumer information” when using LiveKD

I’ve installed VS 08 and WDK 7.1 in trying to update the PDB file, but am getting hundreds of errors relating to the WDK header files while trying to use cl.exe which is part of VS 08.

I know this is documented that WDK and VS don’t like to work together, but has someone got this working, or can someone help get me a modified PDB so I can track my problem please.

Sorry, about this, but I am not a programmer, only a Citrix techie.

Geoff

Attention: NOTICE & DISCLAIMER

This e-mail is intended only for the person to whom it is addressed. If an addressing or transmission error has misdirected
this e-mail, please notify the sender by replying to this e-mail. If you are not the intended recipient, please delete this
e-mail and do not use, disclose, copy, print or rely on the e-mail in any manner. Any views expressed in this message are
those of the individual sender, except where the message states otherwise and the sender is authorised to state them to be
the views of any such entity. To the extent permitted by law, Flight Centre UK Ltd does not accept or assume any liability,
responsibility or duty of care for any use of or reliance on this e-mail by anyone, other than the intended recipient.

Flight Centre UK Ltd may monitor outgoing and incoming e-mails and other telecommunications on its e-mail and
telecommunications systems. By replying to this e-mail you give your consent to such monitoring.

#####################################################################################
This e-mail message has been scanned for Viruses and Content and cleared
by MailMarshal
#####################################################################################

>I’ve installed VS 08 and WDK 7.1 in trying to update the PDB file, but am

getting hundreds of errors relating to the >WDK header files while trying
to use cl.exe which is part of VS 08.

At first I wasn’t sure what you were talking about, but then I found this
blog post:

http://www.remkoweijnen.nl/blog/2009/04/16/unable-to-get-system-pte-individual-lock-consumer-information-error-when-using-sysptes-4-in-windbg/

Is that what you’re trying to follow? If so, that person left out a few
minor details necessary to actually make this work :slight_smile:

First, their command line uses a mythical, “headers” directory as the
include path. So, that’s why you’re getting so many build errors. You need
to point the compiler to the WDK header files to resolve your errors. Also,
you don’t need VS at all, you can do this entirely with the WDK.

I’ll try to break down the actual steps you need to do:

  1. First, figure out which kernel PDB you’re using. You can do this in
    WinDBG:

1: kd> lml mnt
start end module name
804d4000 806b9000 nt (pdb symbols)
c:\websymbols\ntkrnlmp.pdb\785137BF3F3C484BA434E743DFECA8033\ntkrnlmp.pdb

Grab that PDB from your symbol cache and copy it someplace like,
c:\ptetracker

  1. Create a ptetracker.c file in the same directory as the PDB with the
    following in it:

#include <ntddk.h>

typedef struct PTE_TRACKER {
LIST_ENTRY ListEntry;
PMDL Mdl; PFN_NUMBER Count;
PVOID SystemVa;
PVOID StartVa;
ULONG Offset;
ULONG Length;
PFN_NUMBER Page;
struct {
ULONG IoMapping: 1;
ULONG Matched: 1;
ULONG CacheAttribute : 2;
ULONG Spare : 28;
};
PVOID CallingAddress;
PVOID CallersCaller;
} PTE_TRACKER, *PPTE_TRACKER;

PTE_TRACKER PteTracker;

3) Open up a Server 2003 build environment window and execute the following
command:

cl.exe /Zi /Gz /c /Fdntkrnlmp /IC:\WinDDK\7600.16385.1\inc\ddk
/Ic:\winddk\7600.16385.1\inc\crt /D_X86
=1 PteTracker.c

NOTE: You’ll need to replace the /Fd parameter with the name of your kernel
(it differs depending on the Windows version).

4) Copy the PDB from c:\ptetracker back to the original location that you
found in step 1.

If it all works properly, you should be able to open LiveKD again and
execute this command:

dt nt!_pte_tracker

And get a structure definition.

Good luck!

-scott


Scott Noone
Consulting Associate
OSR Open Systems Resources, Inc.
http://www.osronline.com

“Geoff Croxson” wrote in message
news:xxxxx@ntdev…
Hi All,

I’m having a PTE issue on my Citrix servers and get the familiar “Unable to
get System PTE individual lock consumer information” when using LiveKD

I’ve installed VS 08 and WDK 7.1 in trying to update the PDB file, but am
getting hundreds of errors relating to the WDK header files while trying to
use cl.exe which is part of VS 08.

I know this is documented that WDK and VS don’t like to work together, but
has someone got this working, or can someone help get me a modified PDB so I
can track my problem please.

Sorry, about this, but I am not a programmer, only a Citrix techie.

Geoff

Attention: NOTICE & DISCLAIMER
This e-mail is intended only for the person to whom it is addressed. If an
addressing or transmission error has misdirected this e-mail, please notify
the sender by replying to this e-mail. If you are not the intended
recipient, please delete this e-mail and do not use, disclose, copy, print
or rely on the e-mail in any manner. Any views expressed in this message
are those of the individual sender, except where the message states
otherwise and the sender is authorised to state them to be the views of any
such entity. To the extent permitted by law, Flight Centre UK Ltd does not
accept or assume any liability, responsibility or duty of care for any use
of or reliance on this e-mail by anyone, other than the intended recipient.
Flight Centre UK Ltd may monitor outgoing and incoming e-mails and other
telecommunications on its e-mail and telecommunications systems. By replying
to this e-mail you give your consent to such monitoring.

This e-mail message has been scanned for Viruses and Content and cleared by
MailMarshal</ntddk.h>