[Gluster-devel] statedump support for the new mem-pool implementation

Niels de Vos ndevos at redhat.com
Tue Aug 22 12:02:59 UTC 2017

On Wed, Jul 19, 2017 at 04:40:46PM +0200, Niels de Vos wrote:
> Hi Raghavendra,
> Soumya mentioned that you have been looking at, or planning to do so,
> adding support for state-dumps for mem-pools. Could you point me to the
> BZ or GitHub Issue that has been filed for this already? I'd like to
> follow progress and review any changes that are sent.
> In case you have not had time to look into the details, I might be able
> to put something together. I've been working on memory leaks for a while
> now, and just started to improve the initialization and cleanup of the
> mem-pools.

Some details about improving statedump to include mem-pool bits have
been mentioned in https://github.com/gluster/glusterfs/issues/307

A first set of patches that makes it possible to statedump the
accounting through mem_pool_new(), mem_get() and mem_put() are available
for review:

  mem-pool: add tracking of mem_pool that requested the allocation
  - https://review.gluster.org/18073

  mem-pool: count allocations done per user-pool
  - https://review.gluster.org/18074

  mem-pool: track glusterfs_ctx_t in struct mem_pool
  - https://review.gluster.org/18075

  statedump: add support for dumping basic mem-pool info
  - https://review.gluster.org/18076

These changes do not include any statistics about the global mem-pools
or the sweeper-thread. This is something that can be added at a later
time. The immediate use-case that these patches help with, is
identifying memory leaks (missing mem_put() calls) for the allocated
memory pools.

Thanks to anyone who'll review or give any comments :-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: not available
URL: <http://lists.gluster.org/pipermail/gluster-devel/attachments/20170822/849c1113/attachment.sig>

More information about the Gluster-devel mailing list