diff --git a/src/fsslower/fsslower.c b/src/fsslower/fsslower.c index 3fa93a41d1ca62443569fc6bd3a6d028153986c1..f3cde5810afe1dd7075b4df10f313bf24c8072ed 100644 --- a/src/fsslower/fsslower.c +++ b/src/fsslower/fsslower.c @@ -13,3 +13,33 @@ enum fs_type { NFS, XFS, }; + +static struct fs_config { + const char *fs; + const char *op_funcs[F_MAX_OP]; +} fs_configs[] = { + [BTRFS] = { "btrfs", { + [F_READ] = "btrfs_file_read_iter", + [F_WRITE] = "btrfs_file_write_iter", + [F_OPEN] = "btrfs_file_open", + [F_FSYNC] = "btrfs_sync_file", + }}, + [EXT4] = { "ext4", { + [F_READ] = "ext4_file_read_iter", + [F_WRITE] = "ext4_file_write_iter", + [F_OPEN] = "ext4_file_open", + [F_FSYNC] = "ext4_sync_file", + }}, + [NFS] = { "nfs", { + [F_READ] = "nfs_file_read", + [F_WRITE] = "nfs_file_write", + [F_OPEN] = "nfs_file_open", + [F_FSYNC] = "nfs_file_fsync", + }}, + [XFS] = { "xfs", { + [F_READ] = "xfs_file_read_iter", + [F_WRITE] = "xfs_file_write_iter", + [F_OPEN] = "xfs_file_open", + [F_FSYNC] = "xfs_file_fsync", + }}, +};