Confusion between mutex and semaphore naming
There's a semaphore implementation and option coming, so rename the
bits.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/fio.c b/fio.c
index 6e25c5f..1594bf6 100644
--- a/fio.c
+++ b/fio.c
@@ -49,7 +49,7 @@
int shm_id = 0;
int temp_stall_ts;
-static struct fio_sem *startup_sem;
+static struct fio_mutex *startup_mutex;
static volatile int fio_abort;
static int exit_value;
@@ -822,14 +822,14 @@
td->io_hist_tree = RB_ROOT;
td_set_runstate(td, TD_INITIALIZED);
- fio_sem_up(startup_sem);
- fio_sem_down(td->mutex);
+ fio_mutex_up(startup_mutex);
+ fio_mutex_down(td->mutex);
/*
- * the ->mutex semaphore is now no longer used, close it to avoid
+ * the ->mutex mutex is now no longer used, close it to avoid
* eating a file descriptor
*/
- fio_sem_remove(td->mutex);
+ fio_mutex_remove(td->mutex);
/*
* May alter parameters that init_io_u() will use, so we need to
@@ -1213,7 +1213,7 @@
exit(ret);
}
}
- fio_sem_down(startup_sem);
+ fio_mutex_down(startup_mutex);
}
/*
@@ -1268,7 +1268,7 @@
m_rate += td->o.ratemin;
t_rate += td->o.rate;
todo--;
- fio_sem_up(td->mutex);
+ fio_mutex_up(td->mutex);
}
reap_threads(&nr_running, &t_rate, &m_rate);
@@ -1317,7 +1317,7 @@
setup_log(&agg_io_log[DDIR_WRITE]);
}
- startup_sem = fio_sem_init(0);
+ startup_mutex = fio_mutex_init(0);
set_genesis_time();
@@ -1333,6 +1333,6 @@
}
}
- fio_sem_remove(startup_sem);
+ fio_mutex_remove(startup_mutex);
return exit_value;
}
diff --git a/fio.h b/fio.h
index 0c5b648..d7875b0 100644
--- a/fio.h
+++ b/fio.h
@@ -563,7 +563,7 @@
unsigned long long io_skip_bytes;
unsigned long long this_io_bytes[2];
unsigned long long zone_bytes;
- struct fio_sem *mutex;
+ struct fio_mutex *mutex;
/*
* State for random io, a bitmap of blocks done vs not done
diff --git a/init.c b/init.c
index 6599729..d860179 100644
--- a/init.c
+++ b/init.c
@@ -466,7 +466,7 @@
f->real_file_size = -1ULL;
}
- td->mutex = fio_sem_init(0);
+ td->mutex = fio_mutex_init(0);
td->ts.clat_stat[0].min_val = td->ts.clat_stat[1].min_val = ULONG_MAX;
td->ts.slat_stat[0].min_val = td->ts.slat_stat[1].min_val = ULONG_MAX;
diff --git a/mutex.c b/mutex.c
index 17e62c9..f3c8326 100644
--- a/mutex.c
+++ b/mutex.c
@@ -8,43 +8,43 @@
#include "mutex.h"
-void fio_sem_remove(struct fio_sem *sem)
+void fio_mutex_remove(struct fio_mutex *mutex)
{
- close(sem->sem_fd);
- munmap(sem, sizeof(*sem));
+ close(mutex->mutex_fd);
+ munmap(mutex, sizeof(*mutex));
}
-struct fio_sem *fio_sem_init(int value)
+struct fio_mutex *fio_mutex_init(int value)
{
- char sem_name[] = "/tmp/.fio_sem.XXXXXX";
- struct fio_sem *sem = NULL;
+ char mutex_name[] = "/tmp/.fio_mutex.XXXXXX";
+ struct fio_mutex *mutex = NULL;
pthread_mutexattr_t attr;
pthread_condattr_t cond;
int fd;
- fd = mkstemp(sem_name);
+ fd = mkstemp(mutex_name);
if (fd < 0) {
- perror("open sem");
+ perror("open mutex");
return NULL;
}
- if (ftruncate(fd, sizeof(struct fio_sem)) < 0) {
- perror("ftruncate sem");
+ if (ftruncate(fd, sizeof(struct fio_mutex)) < 0) {
+ perror("ftruncate mutex");
goto err;
}
- sem = mmap(NULL, sizeof(struct fio_sem), PROT_READ | PROT_WRITE,
+ mutex = mmap(NULL, sizeof(struct fio_mutex), PROT_READ | PROT_WRITE,
MAP_SHARED, fd, 0);
- if (sem == MAP_FAILED) {
- perror("mmap sem");
+ if (mutex == MAP_FAILED) {
+ perror("mmap mutex");
close(fd);
- sem = NULL;
+ mutex = NULL;
goto err;
}
- unlink(sem_name);
- sem->sem_fd = fd;
- sem->value = value;
+ unlink(mutex_name);
+ mutex->mutex_fd = fd;
+ mutex->value = value;
if (pthread_mutexattr_init(&attr)) {
perror("pthread_mutexattr_init");
@@ -57,36 +57,36 @@
pthread_condattr_init(&cond);
pthread_condattr_setpshared(&cond, PTHREAD_PROCESS_SHARED);
- pthread_cond_init(&sem->cond, &cond);
+ pthread_cond_init(&mutex->cond, &cond);
- if (pthread_mutex_init(&sem->lock, &attr)) {
+ if (pthread_mutex_init(&mutex->lock, &attr)) {
perror("pthread_mutex_init");
goto err;
}
- return sem;
+ return mutex;
err:
- if (sem)
- fio_sem_remove(sem);
+ if (mutex)
+ fio_mutex_remove(mutex);
- unlink(sem_name);
+ unlink(mutex_name);
return NULL;
}
-void fio_sem_down(struct fio_sem *sem)
+void fio_mutex_down(struct fio_mutex *mutex)
{
- pthread_mutex_lock(&sem->lock);
- while (sem->value == 0)
- pthread_cond_wait(&sem->cond, &sem->lock);
- sem->value--;
- pthread_mutex_unlock(&sem->lock);
+ pthread_mutex_lock(&mutex->lock);
+ while (mutex->value == 0)
+ pthread_cond_wait(&mutex->cond, &mutex->lock);
+ mutex->value--;
+ pthread_mutex_unlock(&mutex->lock);
}
-void fio_sem_up(struct fio_sem *sem)
+void fio_mutex_up(struct fio_mutex *mutex)
{
- pthread_mutex_lock(&sem->lock);
- if (!sem->value)
- pthread_cond_signal(&sem->cond);
- sem->value++;
- pthread_mutex_unlock(&sem->lock);
+ pthread_mutex_lock(&mutex->lock);
+ if (!mutex->value)
+ pthread_cond_signal(&mutex->cond);
+ mutex->value++;
+ pthread_mutex_unlock(&mutex->lock);
}
diff --git a/mutex.h b/mutex.h
index c4b0d8e..85f5f69 100644
--- a/mutex.h
+++ b/mutex.h
@@ -3,17 +3,17 @@
#include <pthread.h>
-struct fio_sem {
+struct fio_mutex {
pthread_mutex_t lock;
pthread_cond_t cond;
unsigned int value;
- int sem_fd;
+ int mutex_fd;
};
-extern struct fio_sem *fio_sem_init(int);
-extern void fio_sem_remove(struct fio_sem *);
-extern inline void fio_sem_down(struct fio_sem *);
-extern inline void fio_sem_up(struct fio_sem *sem);
+extern struct fio_mutex *fio_mutex_init(int);
+extern void fio_mutex_remove(struct fio_mutex *);
+extern inline void fio_mutex_down(struct fio_mutex *);
+extern inline void fio_mutex_up(struct fio_mutex *);
#endif