diff --git a/src/gpu/GrMemoryPool.cpp b/src/gpu/GrMemoryPool.cpp
index 0fd7e90..adf4684 100644
--- a/src/gpu/GrMemoryPool.cpp
+++ b/src/gpu/GrMemoryPool.cpp
@@ -55,6 +55,7 @@
         fSize += block->fSize;
         SkDEBUGCODE(++fAllocBlockCnt);
     }
+    SkASSERT(kAssignedMarker == fTail->fBlockSentinal);
     SkASSERT(fTail->fFreeSize >= size);
     intptr_t ptr = fTail->fCurrPtr;
     // We stash a pointer to the block header, just before the allocated space,
@@ -80,6 +81,7 @@
     SkASSERT(kAssignedMarker == allocData->fSentinal);
     SkDEBUGCODE(allocData->fSentinal = kFreedMarker);
     BlockHeader* block = allocData->fHeader;
+    SkASSERT(kAssignedMarker == block->fBlockSentinal);
     if (1 == block->fLiveCount) {
         // the head block is special, it is reset rather than deleted
         if (fHead == block) {
@@ -119,6 +121,7 @@
         reinterpret_cast<BlockHeader*>(sk_malloc_throw(paddedSize));
     // we assume malloc gives us aligned memory
     SkASSERT(!(reinterpret_cast<intptr_t>(block) % kAlignment));
+    SkDEBUGCODE(block->fBlockSentinal = kAssignedMarker);
     block->fLiveCount = 0;
     block->fFreeSize = size;
     block->fCurrPtr = reinterpret_cast<intptr_t>(block) + kHeaderSize;
@@ -128,6 +131,8 @@
 }
 
 void GrMemoryPool::DeleteBlock(BlockHeader* block) {
+    SkASSERT(kAssignedMarker == block->fBlockSentinal);
+    SkDEBUGCODE(block->fBlockSentinal = kFreedMarker); // FWIW
     sk_free(block);
 }
 
@@ -138,6 +143,7 @@
     SkASSERT(block);
     int allocCount = 0;
     do {
+        SkASSERT(kAssignedMarker == block->fBlockSentinal);
         allocCount += block->fLiveCount;
         SkASSERT(prev == block->fPrev);
         if (prev) {
diff --git a/src/gpu/GrMemoryPool.h b/src/gpu/GrMemoryPool.h
index 1dd1732..43826d3 100644
--- a/src/gpu/GrMemoryPool.h
+++ b/src/gpu/GrMemoryPool.h
@@ -58,6 +58,9 @@
     void validate();
 
     struct BlockHeader {
+#ifdef SK_DEBUG
+        uint32_t     fBlockSentinal;  ///< known value to check for bad back pointers to blocks
+#endif
         BlockHeader* fNext;      ///< doubly-linked list of blocks.
         BlockHeader* fPrev;
         int          fLiveCount; ///< number of outstanding allocations in the
