summaryrefslogtreecommitdiffstats
path: root/src/main.c
diff options
context:
space:
mode:
authorGravatar Gediminas Jakutis <gediminas@varciai.lt> 2021-02-15 13:08:54 +0200
committerGravatar Gediminas Jakutis <gediminas@varciai.lt> 2021-02-15 13:08:54 +0200
commit9569e629c8e73dcdc3f93b5fc6156db827d6b7b1 (patch)
tree43453709b52f3a1d3f74059c22d85a4d89a54aca /src/main.c
parent3f0c21826b4a4e59c937dc8435edb5be7100b078 (diff)
downloadalgos-ld1-9569e629c8e73dcdc3f93b5fc6156db827d6b7b1.tar.gz
algos-ld1-9569e629c8e73dcdc3f93b5fc6156db827d6b7b1.tar.bz2
algos-ld1-9569e629c8e73dcdc3f93b5fc6156db827d6b7b1.zip
cease inefficient /dev/urandom fiddling.
Instead of reading /dev/urandom like a file (i.e. overhead / extra syscalls, etc.), just use getrandom(2) directly, lol. Signed-off-by: Gediminas Jakutis <gediminas@varciai.lt>
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/main.c b/src/main.c
index e3455d1..390be6a 100644
--- a/src/main.c
+++ b/src/main.c
@@ -13,8 +13,6 @@
#include "cache.h"
#include "datagen.h"
-static char randfile[] = "/dev/urandom";
-
static struct settings settings = {0};
static int parseargs(int argc, char **argv, struct settings * settings);
@@ -38,8 +36,7 @@ int main(int argc, char **argv)
try_s((ret = parseargs(argc, argv, &settings)), early_out);
if (settings.opmode == mode_generate) {
- file_in.name = randfile;
- file_in.type = stream_chardev;
+ file_in.type = stream_randread;
file_in.n = settings.to;
} else {
file_in.name = settings.filein;
@@ -188,7 +185,7 @@ int load_io_functions(struct settings const * const s, struct stream * const in)
} else {
/* TODO */
}
- } else if (in->type == stream_chardev) { /* data generation streams do not support dumping nor any cache I/O beyond initial data generation */
+ } else if (in->type == stream_randread) { /* data generation streams do not support dumping nor any cache I/O beyond initial data generation */
if (s->format == array) {
in->get_next_element_direct = gen_get_array;
in->place_next_element_cache = cached_put_array;