mirror of
https://github.com/versity/scoutfs.git
synced 2026-04-24 07:20:29 +00:00
Add the client work which is regularly scheduled to ask the server for log merging work to do. The relatively simple client work gets a request from the server, finds the log roots to merge given the reqeust seq, performs the merge with a btree call and callbacks, and commits the result to the server. Signed-off-by: Zach Brown <zab@versity.com>
41 lines
1.9 KiB
C
41 lines
1.9 KiB
C
#ifndef _SCOUTFS_CLIENT_H_
|
|
#define _SCOUTFS_CLIENT_H_
|
|
|
|
int scoutfs_client_alloc_inodes(struct super_block *sb, u64 count,
|
|
u64 *ino, u64 *nr);
|
|
int scoutfs_client_get_log_trees(struct super_block *sb,
|
|
struct scoutfs_log_trees *lt);
|
|
int scoutfs_client_commit_log_trees(struct super_block *sb,
|
|
struct scoutfs_log_trees *lt);
|
|
int scoutfs_client_get_roots(struct super_block *sb,
|
|
struct scoutfs_net_roots *roots);
|
|
u64 *scoutfs_client_bulk_alloc(struct super_block *sb);
|
|
int scoutfs_client_advance_seq(struct super_block *sb, u64 *seq);
|
|
int scoutfs_client_get_last_seq(struct super_block *sb, u64 *seq);
|
|
int scoutfs_client_lock_request(struct super_block *sb,
|
|
struct scoutfs_net_lock *nl);
|
|
int scoutfs_client_lock_response(struct super_block *sb, u64 net_id,
|
|
struct scoutfs_net_lock *nl);
|
|
int scoutfs_client_lock_recover_response(struct super_block *sb, u64 net_id,
|
|
struct scoutfs_net_lock_recover *nlr);
|
|
int scoutfs_client_srch_get_compact(struct super_block *sb,
|
|
struct scoutfs_srch_compact *sc);
|
|
int scoutfs_client_srch_commit_compact(struct super_block *sb,
|
|
struct scoutfs_srch_compact *res);
|
|
int scoutfs_client_get_log_merge(struct super_block *sb,
|
|
struct scoutfs_log_merge_request *req);
|
|
int scoutfs_client_commit_log_merge(struct super_block *sb,
|
|
struct scoutfs_log_merge_complete *comp);
|
|
int scoutfs_client_send_omap_response(struct super_block *sb, u64 id,
|
|
struct scoutfs_open_ino_map *map);
|
|
int scoutfs_client_open_ino_map(struct super_block *sb, u64 group_nr,
|
|
struct scoutfs_open_ino_map *map);
|
|
int scoutfs_client_get_volopt(struct super_block *sb, struct scoutfs_volume_options *volopt);
|
|
int scoutfs_client_set_volopt(struct super_block *sb, struct scoutfs_volume_options *volopt);
|
|
int scoutfs_client_clear_volopt(struct super_block *sb, struct scoutfs_volume_options *volopt);
|
|
|
|
int scoutfs_client_setup(struct super_block *sb);
|
|
void scoutfs_client_destroy(struct super_block *sb);
|
|
|
|
#endif
|