mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 20:48:49 +08:00
stm: Mark the functions of writing STM with notrace
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-7-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>
This commit is contained in:
parent
9b5e3ff6b9
commit
9dfed80d87
@ -425,7 +425,7 @@ static int stm_file_assign(struct stm_file *stmf, char *id, unsigned int width)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
static ssize_t stm_write(struct stm_data *data, unsigned int master,
|
static ssize_t notrace stm_write(struct stm_data *data, unsigned int master,
|
||||||
unsigned int channel, const char *buf, size_t count)
|
unsigned int channel, const char *buf, size_t count)
|
||||||
{
|
{
|
||||||
unsigned int flags = STP_PACKET_TIMESTAMPED;
|
unsigned int flags = STP_PACKET_TIMESTAMPED;
|
||||||
@ -1121,8 +1121,9 @@ void stm_source_unregister_device(struct stm_source_data *data)
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(stm_source_unregister_device);
|
EXPORT_SYMBOL_GPL(stm_source_unregister_device);
|
||||||
|
|
||||||
int stm_source_write(struct stm_source_data *data, unsigned int chan,
|
int notrace stm_source_write(struct stm_source_data *data,
|
||||||
const char *buf, size_t count)
|
unsigned int chan,
|
||||||
|
const char *buf, size_t count)
|
||||||
{
|
{
|
||||||
struct stm_source_device *src = data->src;
|
struct stm_source_device *src = data->src;
|
||||||
struct stm_device *stm;
|
struct stm_device *stm;
|
||||||
|
@ -133,7 +133,7 @@ int stm_source_register_device(struct device *parent,
|
|||||||
struct stm_source_data *data);
|
struct stm_source_data *data);
|
||||||
void stm_source_unregister_device(struct stm_source_data *data);
|
void stm_source_unregister_device(struct stm_source_data *data);
|
||||||
|
|
||||||
int stm_source_write(struct stm_source_data *data, unsigned int chan,
|
int notrace stm_source_write(struct stm_source_data *data, unsigned int chan,
|
||||||
const char *buf, size_t count);
|
const char *buf, size_t count);
|
||||||
|
|
||||||
#endif /* _STM_H_ */
|
#endif /* _STM_H_ */
|
||||||
|
Loading…
Reference in New Issue
Block a user