• Home
  • History
  • Annotate
  • Raw
  • Download

Lines Matching refs:ops

25 static int check_engine_ops(struct ioengine_ops *ops)  in check_engine_ops()  argument
27 if (ops->version != FIO_IOOPS_VERSION) { in check_engine_ops()
28 log_err("bad ioops version %d (want %d)\n", ops->version, in check_engine_ops()
33 if (!ops->queue) { in check_engine_ops()
34 log_err("%s: no queue handler\n", ops->name); in check_engine_ops()
41 if (ops->flags & FIO_SYNCIO) in check_engine_ops()
44 if (!ops->event) { in check_engine_ops()
45 log_err("%s: no event handler\n", ops->name); in check_engine_ops()
48 if (!ops->getevents) { in check_engine_ops()
49 log_err("%s: no getevents handler\n", ops->name); in check_engine_ops()
52 if (!ops->queue) { in check_engine_ops()
53 log_err("%s: no queue handler\n", ops->name); in check_engine_ops()
60 void unregister_ioengine(struct ioengine_ops *ops) in unregister_ioengine() argument
62 dprint(FD_IO, "ioengine %s unregistered\n", ops->name); in unregister_ioengine()
63 flist_del(&ops->list); in unregister_ioengine()
64 INIT_FLIST_HEAD(&ops->list); in unregister_ioengine()
67 void register_ioengine(struct ioengine_ops *ops) in register_ioengine() argument
69 dprint(FD_IO, "ioengine %s registered\n", ops->name); in register_ioengine()
70 INIT_FLIST_HEAD(&ops->list); in register_ioengine()
71 flist_add_tail(&ops->list, &engine_list); in register_ioengine()
76 struct ioengine_ops *ops; in find_ioengine() local
80 ops = flist_entry(entry, struct ioengine_ops, list); in find_ioengine()
81 if (!strcmp(name, ops->name)) in find_ioengine()
82 return ops; in find_ioengine()
91 struct ioengine_ops *ops; in dlopen_ioengine() local
107 ops = dlsym(dlhandle, engine_lib); in dlopen_ioengine()
108 if (!ops) in dlopen_ioengine()
109 ops = dlsym(dlhandle, "ioengine"); in dlopen_ioengine()
117 if (!ops) { in dlopen_ioengine()
121 get_ioengine(&ops); in dlopen_ioengine()
124 if (!ops) { in dlopen_ioengine()
130 ops->dlhandle = dlhandle; in dlopen_ioengine()
131 return ops; in dlopen_ioengine()
136 struct ioengine_ops *ops, *ret; in load_ioengine() local
149 ops = find_ioengine(engine); in load_ioengine()
150 if (!ops) in load_ioengine()
151 ops = dlopen_ioengine(td, name); in load_ioengine()
153 if (!ops) { in load_ioengine()
161 if (check_engine_ops(ops)) in load_ioengine()
165 memcpy(ret, ops, sizeof(*ret)); in load_ioengine()