X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=libringbuffer%2Fshm.c;h=994204d1e0a2463829a8e73e3cb0cf078eae1c0f;hb=e575aeab639f05b5ea456e8123a95c0553db3bb7;hp=fc7fbfb2c0642ca0c410ddae0c6cd1a45b5a792e;hpb=4318ae1be57eb7983ab4857a7a8eeb4a030a8216;p=lttng-ust.git diff --git a/libringbuffer/shm.c b/libringbuffer/shm.c index fc7fbfb2..994204d1 100644 --- a/libringbuffer/shm.c +++ b/libringbuffer/shm.c @@ -17,6 +17,7 @@ #include #include #include +#include struct shm_object_table *shm_object_table_create(size_t max_nb_obj) { @@ -203,11 +204,13 @@ void shmp_object_destroy(struct shm_object *obj) { int ret, i; - ret = munmap(obj->memory_map, obj->memory_map_size); - if (ret) { - PERROR("umnmap"); - assert(0); - } + if (!obj->is_shadow) { + ret = munmap(obj->memory_map, obj->memory_map_size); + if (ret) { + PERROR("umnmap"); + assert(0); + } + } ret = close(obj->shm_fd); if (ret) { PERROR("close");