projects
/
fio.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
a4e167e
)
[PATCH] Use mmap for mlocked memory
author
Jens Axboe
<axboe@suse.de>
Wed, 31 May 2006 09:56:49 +0000
(11:56 +0200)
committer
Jens Axboe
<axboe@suse.de>
Wed, 31 May 2006 09:56:49 +0000
(11:56 +0200)
fio.c
patch
|
blob
|
blame
|
history
diff --git
a/fio.c
b/fio.c
index 09f40afe4d8cbfac612aeb79a03f037a55a4e40a..f98cd5b8e147b79cb487f9646519027b755e213f 100644
(file)
--- a/
fio.c
+++ b/
fio.c
@@
-2240,24
+2240,23
@@
static void run_threads(void)
printf("Starting %d thread%s\n", thread_number, thread_number > 1 ? "s" : "");
printf("Starting %d thread%s\n", thread_number, thread_number > 1 ? "s" : "");
+ signal(SIGINT, sig_handler);
+ signal(SIGALRM, sig_handler);
+
if (mlock_size) {
if (mlock_size) {
- mlocked_mem = m
alloc(mlock_size
);
+ mlocked_mem = m
map(NULL, mlock_size, PROT_READ | PROT_WRITE, MAP_PRIVATE | OS_MAP_ANON, 0, 0
);
if (!mlocked_mem) {
if (!mlocked_mem) {
- perror("m
alloc
locked mem");
+ perror("m
map
locked mem");
return;
}
if (mlock(mlocked_mem, mlock_size) < 0) {
return;
}
if (mlock(mlocked_mem, mlock_size) < 0) {
- free(mlocked_mem);
- perror("mlock");
+ munmap(mlocked_mem, mlock_size);
return;
}
}
fflush(stdout);
return;
}
}
fflush(stdout);
- signal(SIGINT, sig_handler);
- signal(SIGALRM, sig_handler);
-
todo = thread_number;
nr_running = 0;
nr_started = 0;
todo = thread_number;
nr_running = 0;
nr_started = 0;
@@
-2368,7
+2367,7
@@
static void run_threads(void)
if (mlocked_mem) {
if (munlock(mlocked_mem, mlock_size) < 0)
perror("munlock");
if (mlocked_mem) {
if (munlock(mlocked_mem, mlock_size) < 0)
perror("munlock");
-
free(mlocked_mem
);
+
munmap(mlocked_mem, mlock_size
);
}
}
}
}