I am following this stackoverflow post What do the different columns in the "!heap -flt -s xxxx" windbg command represent
I am trying to understand the information printed out for one of the heaps that using up a lot of memory.
I can understand most of the columns but on my windbg, I see an additional column. Most of my entries are marked as Internal. I wonder what that means. I have done !gflags +ust
. So, I can see the call stack for making the memory allocation. I can do it on most of the entries except the ones marked as Internal.
What does Internal mean? Is it something related to the implementation of LFH? If this is the internal implementation of LFH, how and when will these Internal heap entries return to the free list? It's holding up my memory for no reasons now.
Here is the output of !heap -h 0000000002330000
for your reference.
Index Address Name Debugging options enabled
8: 02330000
Segment at 0000000002330000 to 0000000002340000 (00010000 bytes committed)
Segment at 00000000032b0000 to 00000000033b0000 (00100000 bytes committed)
Segment at 00000000065a0000 to 00000000067a0000 (00200000 bytes committed)
Segment at 00000000067a0000 to 0000000006ba0000 (00400000 bytes committed)
Segment at 0000000006d80000 to 0000000007580000 (006f2000 bytes committed)
Flags: 08001002
ForceFlags: 00000000
Granularity: 16 bytes
Segment Reserve: 01000000
Segment Commit: 00002000
DeCommit Block Thres: 00000400
DeCommit Total Thres: 00001000
Total Free Size: 0000274d
Max. Allocation Size: 000007fffffdefff
Lock Variable at: 00000000023301f8
Next TagIndex: 0000
Maximum TagIndex: 0000
Tag Entries: 00000000
PsuedoTag Entries: 00000000
Virtual Alloc List: 02330118
Uncommitted ranges: 023300f8
FreeList[ 00 ] at 0000000002330158: 0000000007454600 . 00000000032e3de0 (24 blocks)
Heap entries for Segment00 in Heap 0000000002330000
0000000002330000: 00000 . 00a70 [101] - busy (a6f)
0000000002330a70: 00a70 . 00860 [101] - busy (85f)
00000000023312d0: 00860 . 038b0 [101] - busy (38af)
0000000002334b80: 038b0 . 00330 [100]
0000000002334eb0: 00330 . 00b60 [101] - busy (b34)
0000000002335a10: 00b60 . 00160 [101] - busy (134)
0000000002335b70: 00160 . 00090 [101] - busy (5c)
0000000002335c00: 00090 . 00090 [101] - busy (5c)
0000000002335c90: 00090 . 00040 [100]
0000000002335cd0: 00040 . 00090 [101] - busy (5c)
0000000002335d60: 00090 . 00020 [100]
0000000002335d80: 00020 . 00130 [101] - busy (104)
0000000002335eb0: 00130 . 00080 [101] - busy (53)
0000000002335f30: 00080 . 00090 [101] - busy (65)
0000000002335fc0: 00090 . 01060 [101] - busy (1034)
0000000002337020: 01060 . 01020 [101] - busy (ff0) Internal
0000000002338040: 01020 . 00420 [101] - busy (3f0) Internal
0000000002338460: 00420 . 00090 [101] - busy (64)
00000000023384f0: 00090 . 00260 [101] - busy (234)
0000000002338750: 00260 . 00090 [101] - busy (5c)
00000000023387e0: 00090 . 00080 [101] - busy (54)
0000000002338860: 00080 . 00080 [101] - busy (4c)
00000000023388e0: 00080 . 00030 [100]
0000000002338910: 00030 . 00090 [101] - busy (5c)
00000000023389a0: 00090 . 00090 [101] - busy (64)
0000000002338a30: 00090 . 00260 [101] - busy (234)
0000000002338c90: 00260 . 00060 [101] - busy (35)
0000000002338cf0: 00060 . 00160 [101] - busy (134)
0000000002338e50: 00160 . 00260 [101] - busy (234)
00000000023390b0: 00260 . 00160 [101] - busy (134)
0000000002339210: 00160 . 000c0 [101] - busy (94)
00000000023392d0: 000c0 . 00080 [101] - busy (4c)
0000000002339350: 00080 . 000c0 [101] - busy (84)
0000000002339410: 000c0 . 000c0 [101] - busy (84)
00000000023394d0: 000c0 . 000c0 [101] - busy (94)
0000000002339590: 000c0 . 000c0 [101] - busy (94)
0000000002339650: 000c0 . 000a0 [101] - busy (6c)
00000000023396f0: 000a0 . 000c0 [101] - busy (94)
00000000023397b0: 000c0 . 000a0 [101] - busy (6c)
0000000002339850: 000a0 . 000a0 [101] - busy (6c)
00000000023398f0: 000a0 . 02020 [101] - busy (1ff0) Internal
000000000233b910: 02020 . 000a0 [101] - busy (74)
000000000233b9b0: 000a0 . 00060 [101] - busy (35)
000000000233ba10: 00060 . 02020 [101] - busy (1ff0) Internal
000000000233da30: 02020 . 000a0 [101] - busy (6c)
000000000233dad0: 000a0 . 000c0 [101] - busy (94)
000000000233db90: 000c0 . 000a0 [101] - busy (6c)
000000000233dc30: 000a0 . 00060 [100]
000000000233dc90: 00060 . 001c0 [101] - busy (194)
000000000233de50: 001c0 . 00260 [101] - busy (234)
000000000233e0b0: 00260 . 000b0 [101] - busy (80)
000000000233e160: 000b0 . 00020 [100]
000000000233e180: 00020 . 000c0 [101] - busy (94)
000000000233e240: 000c0 . 000a0 [101] - busy (6c)
000000000233e2e0: 000a0 . 000a0 [101] - busy (74)
000000000233e380: 000a0 . 001c0 [101] - busy (194)
000000000233e540: 001c0 . 00020 [100]
000000000233e560: 00020 . 000c0 [101] - busy (84)
000000000233e620: 000c0 . 000c0 [101] - busy (84)
000000000233e6e0: 000c0 . 000c0 [101] - busy (94)
000000000233e7a0: 000c0 . 000c0 [101] - busy (94)
000000000233e860: 000c0 . 00260 [101] - busy (234)
000000000233eac0: 00260 . 000b0 [101] - busy (82)
000000000233eb70: 000b0 . 00350 [100]
000000000233eec0: 00350 . 00330 [101] - busy (2fc)
000000000233f1f0: 00330 . 00440 [101] - busy (40c)
000000000233f630: 00440 . 00420 [101] - busy (3f0) Internal
000000000233fa50: 00420 . 00460 [100]
000000000233feb0: 00460 . 000b0 [101] - busy (80)
000000000233ff60: 000b0 . 00060 [100]
000000000233ffc0: 00060 . 00040 [111] - busy (3d)
0000000002340000: 00000000 - uncommitted bytes.
Heap entries for Segment01 in Heap 0000000002330000
00000000032b0000: 00000 . 00070 [101] - busy (6f)
00000000032b0070: 00070 . 0c470 [101] - busy (c440) Internal
00000000032bc4e0: 0c470 . 00280 [101] - busy (254)
00000000032bc760: 00280 . 000a0 [101] - busy (70)
00000000032bc800: 000a0 . 00080 [101] - busy (4c)
00000000032bc880: 00080 . 00080 [101] - busy (58)
00000000032bc900: 00080 . 00070 [101] - busy (48)
00000000032bc970: 00070 . 00080 [101] - busy (4b)
00000000032bc9f0: 00080 . 00070 [101] - busy (42)
00000000032bca60: 00070 . 00080 [101] - busy (4d)
00000000032bcae0: 00080 . 000a0 [101] - busy (72)
00000000032bcb80: 000a0 . 00080 [101] - busy (51)
00000000032bcc00: 00080 . 000b0 [101] - busy (7c)
00000000032bccb0: 000b0 . 00070 [101] - busy (46)
00000000032bcd20: 00070 . 00080 [101] - busy (4c)
00000000032bcda0: 00080 . 00080 [101] - busy (4f)
00000000032bce20: 00080 . 00080 [101] - busy (52)
00000000032bcea0: 00080 . 00090 [101] - busy (5d)
00000000032bcf30: 00090 . 00080 [101] - busy (4b)
00000000032bcfb0: 00080 . 00070 [101] - busy (43)
00000000032bd020: 00070 . 00080 [101] - busy (4a)
00000000032bd0a0: 00080 . 00080 [101] - busy (49)
00000000032bd120: 00080 . 00070 [101] - busy (48)
00000000032bd190: 00070 . 00070 [101] - busy (44)
00000000032bd200: 00070 . 000a0 [101] - busy (69)
00000000032bd2a0: 000a0 . 00070 [101] - busy (46)
00000000032bd310: 00070 . 00070 [101] - busy (3c)
00000000032bd380: 00070 . 000c0 [101] - busy (8c)
00000000032bd440: 000c0 . 00070 [101] - busy (3c)
00000000032bd4b0: 00070 . 00090 [101] - busy (5c)
00000000032bd540: 00090 . 00090 [101] - busy (5c)
00000000032bd5d0: 00090 . 00090 [101] - busy (5c)
00000000032bd660: 00090 . 000a0 [101] - busy (5c)
00000000032bd700: 000a0 . 00070 [101] - busy (44)
00000000032bd770: 00070 . 00090 [101] - busy (5c)
00000000032bd800: 00090 . 00070 [101] - busy (3c)
00000000032bd870: 00070 . 00050 [100]
00000000032bd8c0: 00050 . 00260 [101] - busy (234)
00000000032bdb20: 00260 . 00070 [101] - busy (3c)
00000000032bdb90: 00070 . 00090 [101] - busy (5c)
00000000032bdc20: 00090 . 00070 [101] - busy (3c)
00000000032bdc90: 00070 . 00070 [101] - busy (3c)
00000000032bdd00: 00070 . 00090 [101] - busy (5c)
00000000032bdd90: 00090 . 00070 [101] - busy (3c)
00000000032bde00: 00070 . 00070 [101] - busy (3c)
00000000032bde70: 00070 . 00090 [101] - busy (5c)
00000000032bdf00: 00090 . 00070 [101] - busy (3c)
00000000032bdf70: 00070 . 00cc0 [100]
00000000032bec30: 00cc0 . 00330 [101] - busy (2fc)
00000000032bef60: 00330 . 00440 [101] - busy (40a)
00000000032bf3a0: 00440 . 00220 [100]
00000000032bf5c0: 00220 . 00330 [101] - busy (2fc)
00000000032bf8f0: 00330 . 04020 [101] - busy (3ff0) Internal
00000000032c3910: 04020 . 02020 [101] - busy (1ff0) Internal
00000000032c5930: 02020 . 00210 [100]
00000000032c5b40: 00210 . 01020 [101] - busy (ff0) Internal
00000000032c6b60: 01020 . 01020 [101] - busy (ff0) Internal
00000000032c7b80: 01020 . 00440 [101] - busy (40c)
00000000032c7fc0: 00440 . 00440 [101] - busy (40a)
00000000032c8400: 00440 . 00430 [101] - busy (3f0) Internal
00000000032c8830: 00430 . 02020 [101] - busy (1ff0) Internal
00000000032ca850: 02020 . 02020 [101] - busy (1ff0) Internal
00000000032cc870: 02020 . 01020 [101] - busy (ff0) Internal
00000000032cd890: 01020 . 00420 [101] - busy (3f0) Internal
00000000032cdcb0: 00420 . 00420 [101] - busy (3f0) Internal
00000000032ce0d0: 00420 . 00420 [101] - busy (3f0) Internal
00000000032ce4f0: 00420 . 003a0 [100]
00000000032ce890: 003a0 . 02020 [101] - busy (1ff0) Internal
00000000032d08b0: 02020 . 02020 [101] - busy (1ff0) Internal
00000000032d28d0: 02020 . 01020 [101] - busy (ff0) Internal
00000000032d38f0: 01020 . 00420 [101] - busy (3f0) Internal
00000000032d3d10: 00420 . 00420 [101] - busy (3f0) Internal
00000000032d4130: 00420 . 003a0 [100]
00000000032d44d0: 003a0 . 00420 [101] - busy (3f0) Internal
00000000032d48f0: 00420 . 01020 [101] - busy (ff0) Internal
00000000032d5910: 01020 . 04020 [101] - busy (3ff0) Internal
00000000032d9930: 04020 . 01020 [101] - busy (ff0) Internal
00000000032da950: 01020 . 04020 [101] - busy (3ff0) Internal
00000000032de970: 04020 . 01020 [101] - busy (ff0) Internal
00000000032df990: 01020 . 04020 [101] - busy (3ff0) Internal
00000000032e39b0: 04020 . 00420 [101] - busy (3f0) Internal
00000000032e3dd0: 00420 . 00020 [100]
00000000032e3df0: 00020 . 04020 [101] - busy (3ff0) Internal
00000000032e7e10: 04020 . 02020 [101] - busy (1ff0) Internal
00000000032e9e30: 02020 . 01020 [101] - busy (ff0) Internal
00000000032eae50: 01020 . 02020 [101] - busy (1ff0) Internal
00000000032ece70: 02020 . 01020 [101] - busy (ff0) Internal
00000000032ede90: 01020 . 000f0 [100]
00000000032edf80: 000f0 . 01020 [101] - busy (ff0) Internal
00000000032eefa0: 01020 . 01020 [101] - busy (ff0) Internal
00000000032effc0: 01020 . 02020 [101] - busy (1ff0) Internal
00000000032f1fe0: 02020 . 02020 [101] - busy (1ff0) Internal
00000000032f4000: 02020 . 00420 [101] - busy (3f0) Internal
00000000032f4420: 00420 . 00160 [100]
00000000032f4580: 00160 . 02020 [101] - busy (1ff0) Internal
00000000032f65a0: 02020 . 02020 [101] - busy (1ff0) Internal
00000000032f85c0: 02020 . 02020 [10