From: Junio C Hamano Date: Sun, 04 Jan 2026 02:19:18 GMT Subject: Re: [PATCH v2] fsmonitor: fix khash memory leak in do_handle_client Message-ID: In-Reply-To: Paul Tarjan writes: > On Thu, Jan 1, 2026 at 1:14 PM Junio C Hamano wrote: >> >> "Paul Tarjan via GitGitGadget" writes: >> >> > From: Paul Tarjan >> > >> > The do_handle_client() function allocates a khash table to de-duplicate >> > pathnames when responding to client requests. However, kh_release_str() >> > was used instead of kh_destroy_str(). The release function only frees >> > internal arrays (flags, keys, vals) but not the struct itself, which is >> > allocated by kh_init_str() via xcalloc. This caused a 40-byte leak per >> > client request. >> > >> > Fix by using kh_destroy_str() which properly frees both internal arrays >> > and the struct itself. Also move the cleanup to the cleanup section and >> > initialize shown to NULL so that kh_destroy_str() is safe to call on all >> > exit paths. >> > >> > Signed-off-by: Paul Tarjan >> > --- >> >> This is already in v4 of the other larger fsmonitor-linux patch, >> right? > > Correct. I sent it separately since it is currently a bug in existing > code and you might want to merge it sooner. Thanks.