函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\trace\trace.c Create Date:2022-07-27 13:05:37
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:The current tracer is copied to avoid a global locking* all around.

函数原型:static void *s_start(struct seq_file *m, loff_t *pos)

返回类型:void

参数:

类型参数名称
struct seq_file *m
loff_t *pos
3531  iter等于private
3532  tr等于tr
3533  cpu_file等于cpu_file
3534  void * p = NULL
3535  l等于0
3544  mutex_lock( & race_types_lock is used to protect the trace_types list.)
3545  如果此条件成立可能性小(为编译器优化)(current_trace && name != name)则trace等于current_trace
3547  mutex_unlock - release the mutex*@lock: the mutex to be released* Unlock a mutex that has been locked by this task previously.* This function must not be used in interrupt context. Unlocking* of a not locked mutex is not allowed.
3554  如果非 it's true when current open file is snapshot atomic_inc( & mporary disable recording )
3557  如果pos不等于pos
3558  ent = NULL
3559  cpu等于0
3560  idx等于负1
3562  如果cpu_file恒等于RING_BUFFER_ALL_CPUS
3565  否则tracing_iter_reset(iter, cpu_file)
3568  leftover等于0
3569 pl小于pos循环
3572  否则
3577  如果leftoverp等于iter
3579  否则
3580  l等于pos减1
3581  p等于s_next(m, p, & l)
3585  trace_event_read_lock()
3586  trace_access_lock(cpu_file)
3587  返回:p