All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-trace-devel@vger.kernel.org
Cc: "Steven Rostedt (Google)" <rostedt@goodmis.org>
Subject: [PATCH 05/23] libtracefs: Free tracing_dir in case of remount
Date: Thu, 28 Dec 2023 15:35:27 -0500	[thread overview]
Message-ID: <20231228203714.53294-6-rostedt@goodmis.org> (raw)
In-Reply-To: <20231228203714.53294-1-rostedt@goodmis.org>

From: "Steven Rostedt (Google)" <rostedt@goodmis.org>

On remount, the tracing directory may move, and the tracing_dir needs to be
updated. If tracing_dir is the same it is simply returned, but if it is not,
it has to be calculated again. This was fixed but if it was changed, the old
tracing_dir was never freed.

Always free the tracing_dir before calculating a new one. This also requires
changing the type by removing the "const" attribute.

Fixes: 92c9292a ("libtracefs: Have tracefs_{tracing,debug}_dir() make sure it's still mounted")
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
---
 src/tracefs-utils.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/tracefs-utils.c b/src/tracefs-utils.c
index ef90677cf617..e67b698f5b99 100644
--- a/src/tracefs-utils.c
+++ b/src/tracefs-utils.c
@@ -248,7 +248,7 @@ static int test_dir(const char *dir, const char *file)
  */
 const char *tracefs_tracing_dir(void)
 {
-	static const char *tracing_dir;
+	static char *tracing_dir;
 
 	/* Do not check custom_tracing_dir */
 	if (custom_tracing_dir)
@@ -257,6 +257,7 @@ const char *tracefs_tracing_dir(void)
 	if (tracing_dir && test_dir(tracing_dir, "trace"))
 		return tracing_dir;
 
+	free(tracing_dir);
 	tracing_dir = find_tracing_dir(false, true);
 	return tracing_dir;
 }
-- 
2.42.0


  parent reply	other threads:[~2023-12-28 20:36 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-28 20:35 [PATCH 00/23] libtracefs: Several updates Steven Rostedt
2023-12-28 20:35 ` [PATCH 01/23] libtracefs Documentation: Fix tracefs_event_file_exists() issues Steven Rostedt
2023-12-28 20:35 ` [PATCH 02/23] libtracefs testing: Use one tep handle for most tests Steven Rostedt
2023-12-28 20:35 ` [PATCH 03/23] libtracefs: Free "missed_followers" of instance Steven Rostedt
2023-12-28 20:35 ` [PATCH 04/23] libtracefs: Free buf in clear_func_filter() Steven Rostedt
2023-12-28 20:35 ` Steven Rostedt [this message]
2023-12-28 20:35 ` [PATCH 06/23] libtracefs: Free dynamic event list in utest Steven Rostedt
2023-12-28 20:35 ` [PATCH 07/23] libtracefs: Reset tracing before and after unit tests Steven Rostedt
2023-12-28 20:35 ` [PATCH 08/23] libtracefs: Add API to remove followers from an instance or toplevel Steven Rostedt
2023-12-28 20:35 ` [PATCH 09/23] libtracefs: Increase splice to use pipe max size Steven Rostedt
2023-12-28 20:35 ` [PATCH 10/23] libtracefs: Add tracefs_instance_file_write_number() Steven Rostedt
2023-12-28 20:35 ` [PATCH 11/23] libtracefs: Add API to read tracefs_cpu and return a kbuffer Steven Rostedt
2023-12-28 20:35 ` [PATCH 12/23] libtracefs: Add tracefs_instance_get/set_buffer_percent() Steven Rostedt
2023-12-28 20:35 ` [PATCH 13/23] libtracefs: Add tracefs_instance_clear() API Steven Rostedt
2023-12-28 20:35 ` [PATCH 14/23] libtracefs utest: Add test to test tracefs_instance_set/get_buffer_percent() Steven Rostedt
2023-12-28 20:35 ` [PATCH 15/23] libtracefs: Add kerneldoc comments to tracefs_instance_set_buffer_size() Steven Rostedt
2023-12-28 20:35 ` [PATCH 16/23] libtracefs: Add tracefs_load_headers() API Steven Rostedt
2023-12-28 20:35 ` [PATCH 17/23] libtracefs: Add API to extract ring buffer statistics Steven Rostedt
2023-12-28 20:35 ` [PATCH 18/23] libtracefs: Add tracefs_instance_set/get_subbuf_size() Steven Rostedt
2023-12-28 20:35 ` [PATCH 19/23] libtracefs: Add ring buffer memory mapping APIs Steven Rostedt
2023-12-28 20:35 ` [PATCH 20/23] libtracefs: Add TIMESTAMP_USECS_DELTA to simplify SQL timestamp compares Steven Rostedt
2023-12-28 20:35 ` [PATCH 21/23] libtracefs: Also clear max_graph_depth on reset Steven Rostedt
2023-12-28 20:35 ` [PATCH 22/23] libtracefs: Add PID filtering API Steven Rostedt
2023-12-28 20:35 ` [PATCH 23/23] libtracefs: Add updating and reading snapshot buffers Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231228203714.53294-6-rostedt@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=linux-trace-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.