Re: [PATCH net-next] sctp: move trace_sctp_probe_path into sctp_outq_sack

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

 





>From: Kevin Kou <qdkevin.kou@xxxxxxxxx>
>Date: Thu, 26 Dec 2019 12:29:17 +0000
>
>> This patch is to remove trace_sctp_probe_path from the TP_fast_assign
>> part of TRACE_EVENT(sctp_probe) to avoid the nest of entry function,
>> and trigger sctp_probe_path_trace in sctp_outq_sack.
> ...
>
>Applied, but why did you remove the trace enabled check, just out of
>curiosity?

Actually, the check in trace_sctp_probe_path_enabled also done in
trace_sctp_probe_path according to the Macro definition, both check
if (static_key_false(&__tracepoint_##name.key)).



include/linux/tracepoint.h
#define __DECLARE_TRACE(name, proto, args, cond, data_proto, data_args) \
	extern struct tracepoint __tracepoint_##name;			\
	static inline void trace_##name(proto)				\
	{								\
		if (static_key_false(&__tracepoint_##name.key))		\
			__DO_TRACE(&__tracepoint_##name,		\
				TP_PROTO(data_proto),			\
				TP_ARGS(data_args),			\
				TP_CONDITION(cond), 0);			\
		if (IS_ENABLED(CONFIG_LOCKDEP) && (cond)) {		\
			rcu_read_lock_sched_notrace();			\
			rcu_dereference_sched(__tracepoint_##name.funcs);\
			rcu_read_unlock_sched_notrace();		\
		}							\
	}
			
			
	static inline bool						\
	trace_##name##_enabled(void)					\
	{								\
		return static_key_false(&__tracepoint_##name.key);	\
	}



[Index of Archives]     [Linux Networking Development]     [Linux OMAP]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux