#include <unistd.h>
#include <errno.h>
#include <assert.h>
-#include "fio.h"
-#include "os.h"
+
+#include "../fio.h"
+#include "../os.h"
#ifdef FIO_HAVE_POSIXAIO
{
struct posixaio_data *pd = malloc(sizeof(*pd));
+ memset(pd, 0, sizeof(*pd));
pd->aio_events = malloc(td->iodepth * sizeof(struct io_u *));
+ memset(pd->aio_events, 0, td->iodepth * sizeof(struct io_u *));
td->io_ops->data = pd;
return 0;
}
-struct ioengine_ops ioengine = {
+static struct ioengine_ops ioengine = {
.name = "posixaio",
.version = FIO_IOOPS_VERSION,
.init = fio_posixaio_init,
return 1;
}
-struct ioengine_ops ioengine = {
+static struct ioengine_ops ioengine = {
.name = "posixaio",
.version = FIO_IOOPS_VERSION,
.init = fio_posixaio_init,
};
#endif
+
+static void fio_init fio_posixaio_register(void)
+{
+ register_ioengine(&ioengine);
+}
+
+static void fio_exit fio_posixaio_unregister(void)
+{
+ unregister_ioengine(&ioengine);
+}