X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=libust%2Ftype-serializer.c;h=dcaea1ef029664bbb22218b84ea663378af0c91d;hb=93c2f02399d2c9fad48acfcea5f4f9ef508a9493;hp=2c278dfe0f2a9222503e2b20caf80c0119b9e273;hpb=fdf7490f0edd76321265f70dce48f0435509b67e;p=lttng-ust.git diff --git a/libust/type-serializer.c b/libust/type-serializer.c index 2c278dfe..dcaea1ef 100644 --- a/libust/type-serializer.c +++ b/libust/type-serializer.c @@ -82,6 +82,14 @@ void _ltt_specialized_trace(const struct marker *mdata, void *probe_data, if (!chan->active) continue; + /* If a new cpu was plugged since the trace was started, we did + * not add it to the trace, and therefore we write the event to + * cpu 0. + */ + if(cpu >= chan->n_cpus) { + cpu = 0; + } + /* reserve space : header and data */ ret = ltt_reserve_slot(chan, trace, data_size, largest_align, cpu, &buf, &slot_size, &buf_offset, &tsc,