X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=libust%2Flttng-ust-abi.c;h=16566c876664df8ae6a9e812ea126d2aa652ed77;hb=d33db5686925d2df0398b378b4751916b6139cf5;hp=0c0d6bb726f9c62804f9f17ee7f726bd5627bf93;hpb=381c0f1ef474e0ae8a96b3753470ca4bda45c764;p=lttng-ust.git diff --git a/libust/lttng-ust-abi.c b/libust/lttng-ust-abi.c index 0c0d6bb7..16566c87 100644 --- a/libust/lttng-ust-abi.c +++ b/libust/lttng-ust-abi.c @@ -179,13 +179,8 @@ void objd_table_destroy(void) for (i = 0; i < objd_table.allocated_len; i++) { struct obj *obj = _objd_get(i); - const struct objd_ops *ops; - if (!obj) - continue; - ops = obj->u.s.ops; - if (ops->release) - ops->release(i); + (void) objd_unref(i); } free(objd_table.array); objd_table.array = NULL; @@ -408,7 +403,10 @@ int lttng_abi_create_channel(int session_objd, chan_param->subbuf_size, chan_param->num_subbuf, chan_param->switch_timer_interval, - chan_param->read_timer_interval); + chan_param->read_timer_interval, + &chan_param->shm_fd, + &chan_param->wait_fd, + &chan_param->memory_map_size); if (!chan) { ret = -EINVAL; goto chan_error; @@ -751,6 +749,7 @@ int lttng_rb_release(int objd) buf = priv->buf; channel = priv->ltt_chan; free(priv); + channel->ops->buffer_read_close(buf, channel->handle); return objd_unref(channel->objd); }