Patch "rtla/timerlat_hist: Abort event processing on second signal" has been added to the 6.6-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    rtla/timerlat_hist: Abort event processing on second signal

to the 6.6-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     rtla-timerlat_hist-abort-event-processing-on-second-.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit c0f013eee3f06c1ef0a3bd7bcfeb6de49b31d12c
Author: Tomas Glozar <tglozar@xxxxxxxxxx>
Date:   Thu Jan 16 15:49:30 2025 +0100

    rtla/timerlat_hist: Abort event processing on second signal
    
    [ Upstream commit d6899e560366e10141189697502bc5521940c588 ]
    
    If either SIGINT is received twice, or after a SIGALRM (that is, after
    timerlat was supposed to stop), abort processing events currently left
    in the tracefs buffer and exit immediately.
    
    This allows the user to exit rtla without waiting for processing all
    events, should that take longer than wanted, at the cost of not
    processing all samples.
    
    Cc: John Kacur <jkacur@xxxxxxxxxx>
    Cc: Luis Goncalves <lgoncalv@xxxxxxxxxx>
    Cc: Gabriele Monaco <gmonaco@xxxxxxxxxx>
    Link: https://lore.kernel.org/20250116144931.649593-5-tglozar@xxxxxxxxxx
    Signed-off-by: Tomas Glozar <tglozar@xxxxxxxxxx>
    Signed-off-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/tools/tracing/rtla/src/timerlat_hist.c b/tools/tracing/rtla/src/timerlat_hist.c
index 1525e88c6cf96..a985e57954820 100644
--- a/tools/tracing/rtla/src/timerlat_hist.c
+++ b/tools/tracing/rtla/src/timerlat_hist.c
@@ -952,6 +952,14 @@ static int stop_tracing;
 static struct trace_instance *hist_inst = NULL;
 static void stop_hist(int sig)
 {
+	if (stop_tracing) {
+		/*
+		 * Stop requested twice in a row; abort event processing and
+		 * exit immediately
+		 */
+		tracefs_iterate_stop(hist_inst->inst);
+		return;
+	}
 	stop_tracing = 1;
 	if (hist_inst)
 		trace_instance_stop(hist_inst);




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux