[lttng-dev] sched_switch event

Thibault, Daniel Daniel.Thibault at drdc-rddc.gc.ca
Thu Feb 6 15:18:27 EST 2014


-----Message d'origine-----
>   In linux-source-3.2.0/include/trace/events/sched.h, or
>   linux-headers-3.2.0-53/include/trace/events/sched.h, or
>   lttng-modules/instrumentation/events/mainline/sched.h,
>   we have in part:
>
>	TP_fast_assign(
>		memcpy(__entry->next_comm, next->comm, TASK_COMM_LEN);
>		__entry->prev_pid	= prev->pid;
>		__entry->prev_prio	= prev->prio;
>		__entry->prev_state	= __trace_sched_switch_state(prev);
>		memcpy(__entry->prev_comm, prev->comm, TASK_COMM_LEN);
>		__entry->next_pid	= next->pid;
>		__entry->next_prio	= next->prio;
>	),

   Scratch that, lttng-modules/instrumentation/events/lttng-module/sched.h has the same code, and I now realise the TP_fast_assign is not switching the prev_comm and next_comm fields (it is correctly mapping __entry->next_comm to next->comm), it's just that the copies are declared out of order.  TP_fast_assign is essentially a parallelised process.

   Sorry about the false alarm.

Daniel U. Thibault
Protection des systèmes et contremesures (PSC) | Systems Protection & Countermeasures (SPC) Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS) R & D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence R&D Canada - Valcartier (DRDC Valcartier)
2459 route de la Bravoure
Québec QC  G3J 1X5
CANADA
Vox : (418) 844-4000 x4245
Fax : (418) 844-4538
NAC : 918V QSDJ <http://www.travelgis.com/map.asp?addr=918V%20QSDJ>
Gouvernement du Canada | Government of Canada <http://www.valcartier.drdc-rddc.gc.ca/>



More information about the lttng-dev mailing list