X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=libringbuffer%2Fring_buffer_backend.c;h=cac746c246109d792432ad552e51cc77dd916356;hb=afdf9825400f1b975a98202a3e9dcbec0a572a56;hp=816c99cb2b3a2b4c9af29886c4e0322744aec936;hpb=1fc6c5c9aa62d88f9fa995575006f7a756b1944a;p=lttng-ust.git diff --git a/libringbuffer/ring_buffer_backend.c b/libringbuffer/ring_buffer_backend.c index 816c99cb..cac746c2 100644 --- a/libringbuffer/ring_buffer_backend.c +++ b/libringbuffer/ring_buffer_backend.c @@ -278,6 +278,8 @@ int channel_backend_init(struct channel_backend *chanb, struct shm_object *shmobj; shmobj = shm_object_table_append(handle->table, shmsize); + if (!shmobj) + goto end; align_shm(shmobj, __alignof__(struct lib_ring_buffer)); set_shmp(chanb->buf[i].shmp, zalloc_shm(shmobj, sizeof(struct lib_ring_buffer))); buf = shmp(handle, chanb->buf[i].shmp); @@ -294,6 +296,8 @@ int channel_backend_init(struct channel_backend *chanb, struct lib_ring_buffer *buf; shmobj = shm_object_table_append(handle->table, shmsize); + if (!shmobj) + goto end; align_shm(shmobj, __alignof__(struct lib_ring_buffer)); set_shmp(chanb->buf[0].shmp, zalloc_shm(shmobj, sizeof(struct lib_ring_buffer))); buf = shmp(handle, chanb->buf[0].shmp);