%{ /* * fsprof.fist: collect latency distributions for all * file system operations. * * OS and hardware independent version. * aggregate_post and aggregate_pre functions * are CPU and OS specific and must be exported. * * Copyright (c) 2006 Nikolai Joukov and Erez Zadok * Copyright (c) 2006 Stony Brook University */ unsigned long long aggregate_pre(int op); void aggregate_post(int op, unsigned long long init_cycle); %} debug off; license "GPL"; %% %op:all:precall { unsigned long long fsprof_init_cycle = aggregate_pre(fistOP_%op); } %op:all:postcall { aggregate_post(fistOP_%op, fsprof_init_cycle); } %% /* * FS aggregate statistics module. * Copyright (c) 2006 Nikolai Joukov and Erez Zadok * Copyright (c) 2006 SUNY at Stony Brook */