linux/drivers/md/md-cluster.h
<<
>>
Prefs
   1
   2
   3#ifndef _MD_CLUSTER_H
   4#define _MD_CLUSTER_H
   5
   6#include "md.h"
   7
   8struct mddev;
   9struct md_rdev;
  10
  11struct md_cluster_operations {
  12        int (*join)(struct mddev *mddev, int nodes);
  13        int (*leave)(struct mddev *mddev);
  14        int (*slot_number)(struct mddev *mddev);
  15        int (*resync_info_update)(struct mddev *mddev, sector_t lo, sector_t hi);
  16        int (*metadata_update_start)(struct mddev *mddev);
  17        int (*metadata_update_finish)(struct mddev *mddev);
  18        void (*metadata_update_cancel)(struct mddev *mddev);
  19        int (*resync_start)(struct mddev *mddev);
  20        int (*resync_finish)(struct mddev *mddev);
  21        int (*area_resyncing)(struct mddev *mddev, int direction, sector_t lo, sector_t hi);
  22        int (*add_new_disk)(struct mddev *mddev, struct md_rdev *rdev);
  23        void (*add_new_disk_cancel)(struct mddev *mddev);
  24        int (*new_disk_ack)(struct mddev *mddev, bool ack);
  25        int (*remove_disk)(struct mddev *mddev, struct md_rdev *rdev);
  26        int (*gather_bitmaps)(struct md_rdev *rdev);
  27        int (*lock_all_bitmaps)(struct mddev *mddev);
  28        void (*unlock_all_bitmaps)(struct mddev *mddev);
  29};
  30
  31#endif /* _MD_CLUSTER_H */
  32