I know that fragmentation typically occurs when an object collected by garbage collection is marked as a "free" block, but the object occupying the next address space is pinned. I can get a list of Free objects, but cannot seem to find out what is pinned next to it.
I dump the object, find its size, and then add its size to the original object address to get the next object, like this:
0:000> !do 0a2467c8 Free Object Size 438312(0x6b028) bytes
0:000> !do 0a2467c8+438312 Invalid object
I can never get the next, pinned object to show up. Its always invalid. What am I doing wrong here?