intel_th: Mark sth_stm_packet() with notrace
authorChunyan Zhang <zhang.chunyan@linaro.org>
Mon, 21 Nov 2016 07:57:21 +0000 (15:57 +0800)
committerSteven Rostedt <rostedt@goodmis.org>
Tue, 22 Nov 2016 22:47:56 +0000 (17:47 -0500)
If CONFIG_STM_SOURCE_FTRACE is selected, Function trace data can be
writen to sink via STM, all functions that related to writing data
packets to STM should be marked 'notrace' to avoid being traced by
Ftrace, otherwise the program would stall into an endless loop.

Link: http://lkml.kernel.org/r/1479715043-6534-5-git-send-email-zhang.chunyan@linaro.org
Signed-off-by: Chunyan Zhang <zhang.chunyan@linaro.org>
Acked-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
drivers/hwtracing/intel_th/sth.c

index e1aee61dd7b394425c825b649971825bbec33381..b0344462464873abdeb9795f0ac813dde779748e 100644 (file)
@@ -67,10 +67,13 @@ static void sth_iowrite(void __iomem *dest, const unsigned char *payload,
        }
 }
 
-static ssize_t sth_stm_packet(struct stm_data *stm_data, unsigned int master,
-                             unsigned int channel, unsigned int packet,
-                             unsigned int flags, unsigned int size,
-                             const unsigned char *payload)
+static ssize_t notrace sth_stm_packet(struct stm_data *stm_data,
+                                     unsigned int master,
+                                     unsigned int channel,
+                                     unsigned int packet,
+                                     unsigned int flags,
+                                     unsigned int size,
+                                     const unsigned char *payload)
 {
        struct sth_device *sth = container_of(stm_data, struct sth_device, stm);
        struct intel_th_channel __iomem *out =