Envoyé : 26 septembre 2013 15:55 >> If the tracers pass the consumer, and then the consumer passes the >> tracers, does the consumer stop copying the buffer contents to the snapshot >> trace? >> >> * consumer reads a number of "pass n" sub-buffers (where n is the number of >> times the tracers have gone around) >> * tracers catch up with the consumer, skip ahead, write at least one whole >> "pass n+1" sub-buffer >> * tracers then stop or slow down >> * consumer reads the "pass n+1" sub-buffer(s), then overtakes the tracers >> * consumer skips over the sub-buffer where the tracers are, finds a "pass n" >> sub-buffer >> >> If the consumer doesn't close the trace at that point, it would corrupt >> the snapshot. > > The consumer reads absolute positions in the ring-buffer, if a subbuffer has > been overwritten, it skips to the next until it reaches its end position. > The consumer will never read data that has been recorded after it started > taking the snapshot. > That is why it is important to know that we deal with absolute positions. > > Is that clearer ? > > If you want to take a look, the code for the kernel is in the function > lttng_kconsumer_snapshot_channel in > src/common/kernel-consumer/kernel-consumer.c. > You will see that we take the begin and end positions, and then iterate > subbuffer by subbuffer, if a get_subbuff(absolute_position) fails it means it > has already been reused and we > skip to the next. > > Julien
I think I get it now: the consumer skips the "pass n+1" sub-buffers and reads only the "pass n" sub-buffers it encounters during its sweep. Thanks! 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/> _______________________________________________ lttng-dev mailing list [email protected] http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
