X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=linux_module%2Fmemcheck.c;h=b6878500a1bb35ad196bb64d09338d7377088ebc;hb=60ad6a41c6d0ee08ed689e8505eb0c3df0c2a289;hp=2ab86b237a8219d2d5ae3390cb13371f772f9a62;hpb=4a63fd4cef38da57f4b44d8ac88737faa0a12846;p=palacios.git diff --git a/linux_module/memcheck.c b/linux_module/memcheck.c index 2ab86b2..b687850 100644 --- a/linux_module/memcheck.c +++ b/linux_module/memcheck.c @@ -1,3 +1,8 @@ +/* + Palacios memory allocation-checking framework + (c) Peter Dinda, 2013 + */ + #include #include #include @@ -172,6 +177,9 @@ void palacios_memcheck_deinit() printmem("ALLOCATED MEMORY AT DEINIT",m); } } + + palacios_spinlock_deinit(&lock); + INFO("MEMCHECK: DEINITED\n"); // Note that this function could garbage collect at this @@ -257,7 +265,8 @@ void palacios_memcheck_free(void *addr,unsigned long size, palacios_memcheck_mem memcheck_state_t *m=find_mem_entry(addr,0,type); // don't care about the size now if (!m){ - DEBUG("MEMCHECK: FREEING UNTRACKED %s MEMORY AT 0x%p FOR %lu BYTES\n",TYPE_TO_STR(type),addr,size); + DEBUG("MEMCHECK: FREEING UNTRACKED %s MEMORY AT 0x%p FOR %lu BYTES - stack trace follows\n",TYPE_TO_STR(type),addr,size); + dump_stack(); return; }