X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fmdadm.git;a=blobdiff_plain;f=mdadm.h;h=9dacdc4df7cbe1a4e2922e455f75f00cf7d05419;hp=6bf0c6259ce4b17e0348d22b6b52be809de1ce41;hb=4e5528c6f7b66f40617dabb232bc6c016bb86204;hpb=d52690acc48b3dcea1785d038fa12fc3de11d0a1 diff --git a/mdadm.h b/mdadm.h index 6bf0c625..9dacdc4d 100644 --- a/mdadm.h +++ b/mdadm.h @@ -411,9 +411,16 @@ extern struct superswitch { /* for mdmon */ int (*open_new)(struct supertype *c, struct active_array *a, int inst); + /* This tells the metadata handler that all data up to sync_pos is + * known to be insync, and will stay insync until told otherwise. + * All data beyond sync_pos may not be insync. + * If sync_pos == 0, this marks the array as 'dirty'. + * If sync_pos == ~0, this marks it as fully 'clean'. + * If other numbers cannot be stored, they should be treated as 0. + * mark_clean is always called with a sync_pos of 0 before any + * write to an array with redundancy is allowed. + */ void (*mark_clean)(struct active_array *a, unsigned long long sync_pos); - void (*mark_dirty)(struct active_array *a); - void (*mark_sync)(struct active_array *a, unsigned long long resync); void (*set_disk)(struct active_array *a, int n, int state); void (*sync_metadata)(struct active_array *a);