nuttx-apps/benchmarks/fio/0007-external-fio-add-engine-init.patch
chenrun1 e9172a3195 fio:Added fio download link and corresponding fix patch
Source code:https://github.com/ldorau/fio

Signed-off-by: chenrun1 <chenrun1@xiaomi.com>
2024-04-08 14:11:31 +08:00

182 lines
4.9 KiB
Diff

From b167af3a9446506c6b3f48c0b03ae58bb3f1e9d4 Mon Sep 17 00:00:00 2001
From: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
Date: Sat, 10 Jun 2023 15:01:29 +0800
Subject: [PATCH 07/10] external/fio: add engine init
Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
---
engines/cpu.c | 2 +-
engines/exec.c | 2 +-
engines/falloc.c | 2 +-
engines/fileoperations.c | 2 +-
engines/ftruncate.c | 2 +-
engines/mmap.c | 2 +-
engines/net.c | 2 +-
engines/null.c | 2 +-
engines/sync.c | 2 +-
libfio.c | 24 ++++++++++++++++++++++++
10 files changed, 33 insertions(+), 9 deletions(-)
diff --git fio/engines/cpu.c fio/engines/cpu.c
index ce74dbce..564a3d7a 100644
--- fio/engines/cpu.c
+++ fio/engines/cpu.c
@@ -326,7 +326,7 @@ static struct ioengine_ops ioengine = {
.option_struct_size = sizeof(struct cpu_options),
};
-static void fio_init fio_cpuio_register(void)
+void fio_cpuio_register(void)
{
register_ioengine(&ioengine);
}
diff --git fio/engines/exec.c fio/engines/exec.c
index 20e50e00..a9025264 100644
--- fio/engines/exec.c
+++ fio/engines/exec.c
@@ -383,7 +383,7 @@ static struct ioengine_ops ioengine = {
.option_struct_size = sizeof(struct exec_options),
};
-static void fio_init fio_exec_register(void)
+void fio_exec_register(void)
{
register_ioengine(&ioengine);
}
diff --git fio/engines/falloc.c fio/engines/falloc.c
index 4b05ed68..9fc3bd5b 100644
--- fio/engines/falloc.c
+++ fio/engines/falloc.c
@@ -101,7 +101,7 @@ static struct ioengine_ops ioengine = {
.flags = FIO_SYNCIO
};
-static void fio_init fio_syncio_register(void)
+void fio_syncio_falloc_register(void)
{
register_ioengine(&ioengine);
}
diff --git fio/engines/fileoperations.c fio/engines/fileoperations.c
index ed0456c0..b302cda5 100644
--- fio/engines/fileoperations.c
+++ fio/engines/fileoperations.c
@@ -303,7 +303,7 @@ static struct ioengine_ops ioengine_filedelete = {
};
-static void fio_init fio_fileoperations_register(void)
+void fio_fileoperations_register(void)
{
register_ioengine(&ioengine_filecreate);
register_ioengine(&ioengine_filestat);
diff --git fio/engines/ftruncate.c fio/engines/ftruncate.c
index c7ad038c..7ed859a4 100644
--- fio/engines/ftruncate.c
+++ fio/engines/ftruncate.c
@@ -41,7 +41,7 @@ static struct ioengine_ops ioengine = {
.flags = FIO_SYNCIO | FIO_FAKEIO
};
-static void fio_init fio_syncio_register(void)
+void fio_syncio_ftruncate_register(void)
{
register_ioengine(&ioengine);
}
diff --git fio/engines/mmap.c fio/engines/mmap.c
index 55ba1ab3..a47b9686 100644
--- fio/engines/mmap.c
+++ fio/engines/mmap.c
@@ -327,7 +327,7 @@ static struct ioengine_ops ioengine = {
#endif
};
-static void fio_init fio_mmapio_register(void)
+void fio_mmapio_register(void)
{
register_ioengine(&ioengine);
}
diff --git fio/engines/net.c fio/engines/net.c
index c6cec584..0f9fd6be 100644
--- fio/engines/net.c
+++ fio/engines/net.c
@@ -1450,7 +1450,7 @@ static int str_hostname_cb(void *data, const char *input)
return 0;
}
-static void fio_init fio_netio_register(void)
+void fio_netio_register(void)
{
register_ioengine(&ioengine_rw);
#ifdef CONFIG_LINUX_SPLICE
diff --git fio/engines/null.c fio/engines/null.c
index 68759c26..2b4695c4 100644
--- fio/engines/null.c
+++ fio/engines/null.c
@@ -176,7 +176,7 @@ static struct ioengine_ops ioengine = {
.flags = FIO_DISKLESSIO | FIO_FAKEIO,
};
-static void fio_init fio_null_register(void)
+void fio_null_register(void)
{
register_ioengine(&ioengine);
}
diff --git fio/engines/sync.c fio/engines/sync.c
index 339ba999..f1047114 100644
--- fio/engines/sync.c
+++ fio/engines/sync.c
@@ -490,7 +490,7 @@ static struct ioengine_ops ioengine_pvrw2 = {
};
#endif
-static void fio_init fio_syncio_register(void)
+void fio_syncio_register(void)
{
register_ioengine(&ioengine_rw);
register_ioengine(&ioengine_prw);
diff --git fio/libfio.c fio/libfio.c
index 1a891776..b634fbc7 100644
--- fio/libfio.c
+++ fio/libfio.c
@@ -350,6 +350,28 @@ static int endian_check(void)
return 0;
}
+extern void fio_cpuio_register(void);
+extern void fio_exec_register(void);
+extern void fio_syncio_register(void);
+extern void fio_syncio_ftruncate_register(void);
+extern void fio_syncio_falloc_register(void);
+extern void fio_fileoperations_register(void);
+extern void fio_mmapio_register(void);
+extern void fio_netio_register(void);
+extern void fio_null_register(void);
+void fio_engine_init(void)
+{
+ fio_cpuio_register();
+ fio_exec_register();
+ fio_syncio_register();
+ fio_syncio_ftruncate_register();
+ fio_syncio_falloc_register();
+ fio_fileoperations_register();
+ fio_mmapio_register();
+ fio_netio_register();
+ fio_null_register();
+}
+
int initialize_fio(char *envp[])
{
long ps;
@@ -431,6 +453,8 @@ int initialize_fio(char *envp[])
page_mask = ps - 1;
fio_keywords_init();
+
+ fio_engine_init();
return 0;
}
--
2.34.1