Work on reducing memory pinned by the inode map.
[bluesky.git] / bluesky / bluesky-private.h
index 7ebd728..61238eb 100644 (file)
@@ -385,14 +385,9 @@ typedef struct {
 typedef struct {
     uint64_t inum;
 
-    /* The ID of the most recent version of the inode. */
-    BlueSkyCloudID id;
-
-    /* The location where that version is written in the cloud. */
-    BlueSkyCloudPointer location;
-
-    /* If the cloud log entry exists in memory, then a pointer to it, otherwise
-     * NULL. */
+    /* A pointer to the cloud log entry for this inode.  This may or may not
+     * actually have data loaded (it might just contain pointers to the data
+     * location, and in fact this will likely often be the case). */
     BlueSkyCloudLog *item;
 } InodeMapEntry;
 
@@ -414,6 +409,7 @@ typedef struct {
 InodeMapEntry *bluesky_inode_map_lookup(GSequence *inode_map, uint64_t inum,
                                         int action);
 BlueSkyCloudLog *bluesky_inode_map_serialize(BlueSkyFS *fs);
+void bluesky_inode_map_minimize(BlueSkyFS *fs);
 
 gboolean bluesky_checkpoint_load(BlueSkyFS *fs);