From b092bdee8a6d9f2d32efc51bb6ce3b836822a972 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Tue, 21 Feb 2012 16:50:00 +0100 Subject: [PATCH] The semaphore doesn't need to be shared between processes. --- src/xbt/mmalloc/mm_module.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/xbt/mmalloc/mm_module.c b/src/xbt/mmalloc/mm_module.c index 2ba57960fd..5cb60844a5 100644 --- a/src/xbt/mmalloc/mm_module.c +++ b/src/xbt/mmalloc/mm_module.c @@ -125,7 +125,7 @@ xbt_mheap_t xbt_mheap_new(int fd, void *baseaddr) mdp = (struct mdesc *) mtemp.base; mdp->fd = fd; if(!mdp->refcount){ - sem_init(&mdp->sem, 1, 1); + sem_init(&mdp->sem, 0, 1); mdp->refcount++; } } @@ -168,10 +168,8 @@ xbt_mheap_t xbt_mheap_new(int fd, void *baseaddr) if (mdp->fd < 0){ mdp->flags |= MMALLOC_ANONYMOUS; - sem_init(&mdp->sem, 0, 1); - }else{ - sem_init(&mdp->sem, 1, 1); } + sem_init(&mdp->sem, 0, 1); /* If we have not been passed a valid open file descriptor for the file to map to, then open /dev/zero and use that to map to. */ -- 2.20.1