Daniel,

 

I notice a gradual creep up in memory used by ganesha when I set up long running load tests.  So, I started my tests with mmleak.so preloaded (https://github.com/malahal/mmleak).

( malahal – Compliments on mmleak.  Very nice memory debugging tool). 

 

After about 15 hours of tests I shrank/processed the information dumped by mmleak.

 

The following is the current counts of the addresses where memory is allocated – without a corresponding free.  The first one is reasonable because I have Entries_HWMark = 500000. 

 

All locations from Nfs-ganesha V2.7.6

 

Count           Location.      Allocation line

 500,000      0x52aad0.    /src/src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_lru.c:1788

 

1,700,985     0x539186.   /src/src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_hash.h:209

1,700,985     0x53b2b3.   /src/src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_helpers.c:392

 

8,992,812     0x541186.   /src/src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_helpers.c:2214

9,015,224     0x538c82.   /src/src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_int.h:651

 

  1. Does having 9 million  mdcache_dir_entry_t allocated from mdc_readdir_chunk_object (mdcache_helpers.c 2214) and corresponding mdcache_key_dup (mdcache_int.h) seem high?
  2. There are 1.7 million entry_export_map (mdcache_helpers.c 392) and cih_hash_key allocations (mdcache_hash.h 209) that as far as I can tell are from mdcache_alloc_entry line 735.  Does it seem odd that with 500,000 mdcache entries we have 1.7 million export maps and hash keys?

 

Thoughts?

 

Thanks,

Vandana