struct _BlueSkyStore;
typedef struct _BlueSkyStore BlueSkyStore;
+struct _BlueSkyLog;
+typedef struct _BlueSkyLog BlueSkyLog;
+
void bluesky_store_init();
BlueSkyStore *bluesky_store_new(const gchar *type);
void bluesky_store_free(BlueSkyStore *store);
uint64_t next_inum; /* Next available inode for allocation */
BlueSkyStore *store;
+ BlueSkyLog *log;
/* Accounting for memory used for caches. Space is measured in blocks, not
* bytes. We track both total data in the caches and dirty data (total
BlueSkyFS *bluesky_init_fs(gchar *name, BlueSkyStore *store);
void bluesky_superblock_flush(BlueSkyFS *fs);
+gboolean bluesky_inode_is_ready(BlueSkyInode *inode);
+
int64_t bluesky_get_current_time();
void bluesky_inode_update_ctime(BlueSkyInode *inode, gboolean update_mtime);
uint64_t bluesky_fs_alloc_inode(BlueSkyFS *fs);
void bluesky_flushd_invoke(BlueSkyFS *fs);
void bluesky_flushd_invoke_conditional(BlueSkyFS *fs);
void bluesky_inode_do_sync(BlueSkyInode *inode);
+void bluesky_flushd_thread_launch(BlueSkyFS *fs);
void bluesky_debug_dump(BlueSkyFS *fs);