fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / drivers / md / dm-log.h
index ced4eba..86a301c 100644 (file)
@@ -39,7 +39,7 @@ struct dirty_log_type {
         * Retrieves the smallest size of region that the log can
         * deal with.
         */
-       sector_t (*get_region_size)(struct dirty_log *log);
+       uint32_t (*get_region_size)(struct dirty_log *log);
 
         /*
         * A predicate to say whether a region is clean or not.
@@ -90,17 +90,23 @@ struct dirty_log_type {
        int (*get_resync_work)(struct dirty_log *log, region_t *region);
 
        /*
-        * This notifies the log that the resync of an area has
-        * been completed.  The log should then mark this region
-        * as CLEAN.
+        * This notifies the log that the resync status of a region
+        * has changed.  It also clears the region from the recovering
+        * list (if present).
         */
-       void (*complete_resync_work)(struct dirty_log *log,
-                                    region_t region, int success);
+       void (*set_region_sync)(struct dirty_log *log,
+                               region_t region, int in_sync);
 
         /*
         * Returns the number of regions that are in sync.
          */
         region_t (*get_sync_count)(struct dirty_log *log);
+
+       /*
+        * Support function for mirror status requests.
+        */
+       int (*status)(struct dirty_log *log, status_type_t status_type,
+                     char *result, unsigned int maxlen);
 };
 
 int dm_register_dirty_log_type(struct dirty_log_type *type);