X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=profile.c;h=855dde3e6d1efb2c316d28265be80754d604283b;hp=0e2b97d4a0933896532b4891bd650dcf63c16da0;hb=79f9ec8f0a402b23b0ebf574f5e6b0ac4b8cd2fd;hpb=15dc1934435dc84d66547c4fc92d936224d7238f diff --git a/profile.c b/profile.c index 0e2b97d4..855dde3e 100644 --- a/profile.c +++ b/profile.c @@ -93,6 +93,24 @@ void profile_add_hooks(struct thread_data *td) if (!ops) return; - td->fill_io_u_off = ops->fill_io_u_off; - td->fill_io_u_size = ops->fill_io_u_size; + if (ops->io_ops) + td->prof_io_ops = *ops->io_ops; +} + +int profile_td_init(struct thread_data *td) +{ + struct prof_io_ops *ops = &td->prof_io_ops; + + if (ops->td_init) + return ops->td_init(td); + + return 0; +} + +void profile_td_exit(struct thread_data *td) +{ + struct prof_io_ops *ops = &td->prof_io_ops; + + if (ops->td_exit) + ops->td_exit(td); }